From de22ed0700d6d8fda02578c933fafc8ed5a16a18 Mon Sep 17 00:00:00 2001
From: jurgenhaas <juergen.haas@lakedrops.com>
Date: Tue, 28 Jan 2025 17:20:30 +0100
Subject: [PATCH] Issue #3502614: Add a service user to settings and an action
 to switch to it

---
 .../events/eca_commerce_filter_conditions.md  |   2 +-
 .../events/eca_commerce_post_mail_send.md     |   2 +-
 .../eca_commerce_price_number_format.md       |   2 +-
 ...eca_commerce_referenceable_plugin_types.md |   2 +-
 .../events/content_entity_bundlecreate.md     |   3 +
 .../events/content_entity_bundledelete.md     |   3 +
 .../events/content_entity_viewmodealter.md    |   2 +
 .../eca_helper_form_field_set_value.md        |  14 +-
 .../helper/actions/eca_helper_http_request.md |   8 +-
 .../eca/metatag/events/eca_metatag_alter.md   |   2 +-
 .../eca/metatag/events/eca_metatag_tags.md    |   2 +-
 .../drupal_block_content_get_dependency.md    |   7 +
 docs/plugins/eca/misc/events/drupal_build.md  |   7 +
 .../drupal_file_upload_sanitize_name_event.md |   7 +
 .../drupal_select_page_display_variant.md     |   7 +
 toc/plugins.yml                               | 217 +++---------------
 16 files changed, 85 insertions(+), 202 deletions(-)

diff --git a/docs/plugins/eca/commerce/events/eca_commerce_filter_conditions.md b/docs/plugins/eca/commerce/events/eca_commerce_filter_conditions.md
index 6f577f7c..21fbf7da 100644
--- a/docs/plugins/eca/commerce/events/eca_commerce_filter_conditions.md
+++ b/docs/plugins/eca/commerce/events/eca_commerce_filter_conditions.md
@@ -17,7 +17,7 @@ Available since: 1.0.0
     | ----- | ----------- |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_commerce/event/eca_commerce_filter_conditions.md!}
 
diff --git a/docs/plugins/eca/commerce/events/eca_commerce_post_mail_send.md b/docs/plugins/eca/commerce/events/eca_commerce_post_mail_send.md
index a57e7cb9..948797dd 100644
--- a/docs/plugins/eca/commerce/events/eca_commerce_post_mail_send.md
+++ b/docs/plugins/eca/commerce/events/eca_commerce_post_mail_send.md
@@ -17,7 +17,7 @@ Available since: 1.0.0
     | ----- | ----------- |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_commerce/event/eca_commerce_post_mail_send.md!}
 
diff --git a/docs/plugins/eca/commerce/events/eca_commerce_price_number_format.md b/docs/plugins/eca/commerce/events/eca_commerce_price_number_format.md
index 6e1d2412..7cb59a95 100644
--- a/docs/plugins/eca/commerce/events/eca_commerce_price_number_format.md
+++ b/docs/plugins/eca/commerce/events/eca_commerce_price_number_format.md
@@ -18,7 +18,7 @@ Available since: 1.0.0
     | `[commerce_definition]` | This is the number format definition. |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_commerce/event/eca_commerce_price_number_format.md!}
 
diff --git a/docs/plugins/eca/commerce/events/eca_commerce_referenceable_plugin_types.md b/docs/plugins/eca/commerce/events/eca_commerce_referenceable_plugin_types.md
index 8e3eceec..0c5cffc9 100644
--- a/docs/plugins/eca/commerce/events/eca_commerce_referenceable_plugin_types.md
+++ b/docs/plugins/eca/commerce/events/eca_commerce_referenceable_plugin_types.md
@@ -17,7 +17,7 @@ Available since: 1.0.0
     | ----- | ----------- |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_commerce/event/eca_commerce_referenceable_plugin_types.md!}
 
diff --git a/docs/plugins/eca/content/events/content_entity_bundlecreate.md b/docs/plugins/eca/content/events/content_entity_bundlecreate.md
index e8d10390..833032e0 100644
--- a/docs/plugins/eca/content/events/content_entity_bundlecreate.md
+++ b/docs/plugins/eca/content/events/content_entity_bundlecreate.md
@@ -16,6 +16,9 @@ An entity bundle object is being created (instantiated) on runtime, without bein
     | Token | Description |
     | ----- | ----------- |
     | `[event]` | The event. |
+    | `[event:entity_type_id]` | The entity type. |
+    | `[event:bundle]` | The bundle machine name. |
+    | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
     | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
diff --git a/docs/plugins/eca/content/events/content_entity_bundledelete.md b/docs/plugins/eca/content/events/content_entity_bundledelete.md
index 554bd210..769e01e2 100644
--- a/docs/plugins/eca/content/events/content_entity_bundledelete.md
+++ b/docs/plugins/eca/content/events/content_entity_bundledelete.md
@@ -16,6 +16,9 @@ Available since: 1.0.0
     | Token | Description |
     | ----- | ----------- |
     | `[event]` | The event. |
+    | `[event:entity_type_id]` | The entity type. |
+    | `[event:bundle]` | The bundle machine name. |
+    | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
     | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
diff --git a/docs/plugins/eca/content/events/content_entity_viewmodealter.md b/docs/plugins/eca/content/events/content_entity_viewmodealter.md
index 60e48170..8b565052 100644
--- a/docs/plugins/eca/content/events/content_entity_viewmodealter.md
+++ b/docs/plugins/eca/content/events/content_entity_viewmodealter.md
@@ -16,6 +16,8 @@ Available since: 2.0.0
     | Token | Description |
     | ----- | ----------- |
     | `[event]` | The event. |
+    | `[event:view_mode]` | The view mode machine name. |
+    | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
     | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
     | `[entity]` | The entity of the event. |
diff --git a/docs/plugins/eca/helper/actions/eca_helper_form_field_set_value.md b/docs/plugins/eca/helper/actions/eca_helper_form_field_set_value.md
index 56cd3e17..699bb333 100644
--- a/docs/plugins/eca/helper/actions/eca_helper_form_field_set_value.md
+++ b/docs/plugins/eca/helper/actions/eca_helper_form_field_set_value.md
@@ -15,6 +15,12 @@ Set form field value.
 
 ## Fields
 
+`Field name`
+
+:   The input name of the form field. This is mostly found in the "name" attribute of an &lt;input&gt; form element. <em>For submit buttons within content forms:</em> Use "submit" for the labeled "Save" button, and "preview" for the labeled "Preview" button. Use <em>!!form</em> for the current form instead of form element.<br/>This field supports tokens.
+
+    {!include/plugins/eca_helper/action/eca_helper_form_field_set_value/field_name.md!}
+
 `Element key`
 
 :   The element key to set value for the form element. Example #title, #attributes.class<br/>This field supports tokens.
@@ -23,7 +29,7 @@ Set form field value.
 
 `Value`
 
-:   The default value to prepopulate.<br/>This field supports tokens.
+:   The element value.<br/>This field supports tokens.
 
     {!include/plugins/eca_helper/action/eca_helper_form_field_set_value/value.md!}
 
@@ -44,9 +50,3 @@ Set form field value.
 :   The method to set value when use Set array value.
 
     {!include/plugins/eca_helper/action/eca_helper_form_field_set_value/method.md!}
-
-`Field name`
-
-:   The input name of the form field. This is mostly found in the "name" attribute of an &lt;input&gt; form element. <em>For submit buttons within content forms:</em> Use "submit" for the labeled "Save" button, and "preview" for the labeled "Preview" button. Use <em>!!form</em> for the current form instead of form element.<br/>This field supports tokens.
-
-    {!include/plugins/eca_helper/action/eca_helper_form_field_set_value/field_name.md!}
diff --git a/docs/plugins/eca/helper/actions/eca_helper_http_request.md b/docs/plugins/eca/helper/actions/eca_helper_http_request.md
index 20b1b9a0..12f7b08d 100644
--- a/docs/plugins/eca/helper/actions/eca_helper_http_request.md
+++ b/docs/plugins/eca/helper/actions/eca_helper_http_request.md
@@ -33,6 +33,12 @@ Add Http request for ECA
 
     {!include/plugins/eca_helper/action/eca_helper_http_request/data.md!}
 
+`Data YAML`
+
+:   Use Data as yaml format.
+
+    {!include/plugins/eca_helper/action/eca_helper_http_request/data_yaml.md!}
+
 `Data Serialization`
 
 :   
@@ -65,6 +71,6 @@ Add Http request for ECA
 
 `Name of response token`
 
-:   The response value will be loaded into this specified token. You can access [token_name:body], [token_name:headers], [token_name:status] Please provide the token name only, without brackets.
+:   The response value will be loaded into this specified token. You can access [token_name:body] raw response, [token_name:json] when return is valid json, [token_name:headers], [token_name:status], [token_name:client_error] > 0 when has problem. Please provide the token name only, without brackets.
 
     {!include/plugins/eca_helper/action/eca_helper_http_request/token_name.md!}
diff --git a/docs/plugins/eca/metatag/events/eca_metatag_alter.md b/docs/plugins/eca/metatag/events/eca_metatag_alter.md
index aaa8adba..4bd49905 100644
--- a/docs/plugins/eca/metatag/events/eca_metatag_alter.md
+++ b/docs/plugins/eca/metatag/events/eca_metatag_alter.md
@@ -17,7 +17,7 @@ Available since: 1.0.0
     | ----- | ----------- |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_metatag/event/eca_metatag_alter.md!}
 
diff --git a/docs/plugins/eca/metatag/events/eca_metatag_tags.md b/docs/plugins/eca/metatag/events/eca_metatag_tags.md
index 3da19c17..fe1aa25f 100644
--- a/docs/plugins/eca/metatag/events/eca_metatag_tags.md
+++ b/docs/plugins/eca/metatag/events/eca_metatag_tags.md
@@ -17,7 +17,7 @@ Available since: 1.0.0
     | ----- | ----------- |
     | `[event]` | The event. |
     | `[event:machine_name]` | The machine name of the ECA event. |
-    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. |
+    | `[session_user]` | The user account that dispatched the event, regardless if ECA is processing models under a different account. This is only available if ECA is configured to always run under a specific account. |
 
 {!include/plugins/eca_metatag/event/eca_metatag_tags.md!}
 
diff --git a/docs/plugins/eca/misc/events/drupal_block_content_get_dependency.md b/docs/plugins/eca/misc/events/drupal_block_content_get_dependency.md
index 0166c7b8..330cb9a1 100644
--- a/docs/plugins/eca/misc/events/drupal_block_content_get_dependency.md
+++ b/docs/plugins/eca/misc/events/drupal_block_content_get_dependency.md
@@ -21,3 +21,10 @@ Fires, when getting the dependency of a non-reusable block.
 
 {!include/plugins/eca_misc/event/drupal_block_content_get_dependency.md!}
 
+## Fields
+
+`Base path of recipe`
+
+:   The base path of the recipe that got applied; e.g. if the recipe is stored in "/var/www/recipe/my_recipe" then the base path is "my_recipe". Leave empty to respond to all recipes.
+
+    {!include/plugins/eca_misc/event/drupal_block_content_get_dependency/recipe_base_path.md!}
diff --git a/docs/plugins/eca/misc/events/drupal_build.md b/docs/plugins/eca/misc/events/drupal_build.md
index 4d1f6296..77ee2100 100644
--- a/docs/plugins/eca/misc/events/drupal_build.md
+++ b/docs/plugins/eca/misc/events/drupal_build.md
@@ -21,3 +21,10 @@ Fires during the resource type build process.
 
 {!include/plugins/eca_misc/event/drupal_build.md!}
 
+## Fields
+
+`Base path of recipe`
+
+:   The base path of the recipe that got applied; e.g. if the recipe is stored in "/var/www/recipe/my_recipe" then the base path is "my_recipe". Leave empty to respond to all recipes.
+
+    {!include/plugins/eca_misc/event/drupal_build/recipe_base_path.md!}
diff --git a/docs/plugins/eca/misc/events/drupal_file_upload_sanitize_name_event.md b/docs/plugins/eca/misc/events/drupal_file_upload_sanitize_name_event.md
index 240f8c52..0e1f05e9 100644
--- a/docs/plugins/eca/misc/events/drupal_file_upload_sanitize_name_event.md
+++ b/docs/plugins/eca/misc/events/drupal_file_upload_sanitize_name_event.md
@@ -21,3 +21,10 @@ Fires during a file upload that lets subscribers sanitize the filename.
 
 {!include/plugins/eca_misc/event/drupal_file_upload_sanitize_name_event.md!}
 
+## Fields
+
+`Base path of recipe`
+
+:   The base path of the recipe that got applied; e.g. if the recipe is stored in "/var/www/recipe/my_recipe" then the base path is "my_recipe". Leave empty to respond to all recipes.
+
+    {!include/plugins/eca_misc/event/drupal_file_upload_sanitize_name_event/recipe_base_path.md!}
diff --git a/docs/plugins/eca/misc/events/drupal_select_page_display_variant.md b/docs/plugins/eca/misc/events/drupal_select_page_display_variant.md
index 16f465d8..f0a1f54a 100644
--- a/docs/plugins/eca/misc/events/drupal_select_page_display_variant.md
+++ b/docs/plugins/eca/misc/events/drupal_select_page_display_variant.md
@@ -21,3 +21,10 @@ Fires when selecting a page display variant to use.
 
 {!include/plugins/eca_misc/event/drupal_select_page_display_variant.md!}
 
+## Fields
+
+`Base path of recipe`
+
+:   The base path of the recipe that got applied; e.g. if the recipe is stored in "/var/www/recipe/my_recipe" then the base path is "my_recipe". Leave empty to respond to all recipes.
+
+    {!include/plugins/eca_misc/event/drupal_select_page_display_variant/recipe_base_path.md!}
diff --git a/toc/plugins.yml b/toc/plugins.yml
index 6f2daf9c..7effa93a 100644
--- a/toc/plugins.yml
+++ b/toc/plugins.yml
@@ -30,6 +30,7 @@
       - 'Key value store: read': plugins/eca/base/actions/eca_keyvaluestore_read.md
       - 'Key value store: write': plugins/eca/base/actions/eca_keyvaluestore_write.md
       - 'List: add item': plugins/eca/base/actions/eca_list_add.md
+      - 'List: compare items': plugins/eca/base/actions/eca_list_compare.md
       - 'List: count items': plugins/eca/base/actions/eca_count.md
       - 'List: delete data': plugins/eca/base/actions/eca_list_delete_data.md
       - 'List: remove item': plugins/eca/base/actions/eca_list_remove.md
@@ -60,117 +61,13 @@
   - 'ECA Commerce':
     - plugins/eca/commerce/index.md
     - Events:
-      - 'Cart: Add order item to cart': plugins/eca/commerce/events/eca_commerce_cart_order_item_add.md
-      - 'Cart: An entity was added to the cart': plugins/eca/commerce/events/eca_commerce_cart_entity_add.md
-      - 'Cart: Order item comparison fields': plugins/eca/commerce/events/eca_commerce_cart_order_item_comparison_fields.md
-      - 'Cart: Remove order item from cart': plugins/eca/commerce/events/eca_commerce_cart_order_item_remove.md
-      - 'Cart: The cart was emptied': plugins/eca/commerce/events/eca_commerce_cart_empty.md
-      - 'Cart: Update order item on cart': plugins/eca/commerce/events/eca_commerce_cart_order_item_update.md
-      - 'Checkout: Completion': plugins/eca/commerce/events/eca_commerce_checkout_completion.md
-      - 'Checkout: Completion register': plugins/eca/commerce/events/eca_commerce_checkout_completion_register.md
       - 'Core: Filter conditions': plugins/eca/commerce/events/eca_commerce_filter_conditions.md
       - 'Core: Post Mail Send': plugins/eca/commerce/events/eca_commerce_post_mail_send.md
       - 'Core: Referenceable Plugin Types': plugins/eca/commerce/events/eca_commerce_referenceable_plugin_types.md
-      - 'Order: After alter label': plugins/eca/commerce/events/eca_commerce_order_label.md
-      - 'Order: Assign order': plugins/eca/commerce/events/eca_commerce_order_assign.md
-      - 'Order: Create': plugins/eca/commerce/events/eca_commerce_order_create.md
-      - 'Order: Delete': plugins/eca/commerce/events/eca_commerce_order_delete.md
-      - 'Order: Insert': plugins/eca/commerce/events/eca_commerce_order_insert.md
-      - 'Order: Item create': plugins/eca/commerce/events/eca_commerce_order_item_create.md
-      - 'Order: Item delete': plugins/eca/commerce/events/eca_commerce_order_item_delete.md
-      - 'Order: Item insert': plugins/eca/commerce/events/eca_commerce_order_item_insert.md
-      - 'Order: Item load': plugins/eca/commerce/events/eca_commerce_order_item_load.md
-      - 'Order: Item predelete': plugins/eca/commerce/events/eca_commerce_order_item_predelete.md
-      - 'Order: Item presave': plugins/eca/commerce/events/eca_commerce_order_item_presave.md
-      - 'Order: Item update': plugins/eca/commerce/events/eca_commerce_order_item_update.md
-      - 'Order: Load': plugins/eca/commerce/events/eca_commerce_order_load.md
-      - 'Order: Paid': plugins/eca/commerce/events/eca_commerce_order_paid.md
-      - 'Order: Predelete': plugins/eca/commerce/events/eca_commerce_order_predelete.md
-      - 'Order: Presave': plugins/eca/commerce/events/eca_commerce_order_presave.md
-      - 'Order: Profile load': plugins/eca/commerce/events/eca_commerce_order_profiles.md
-      - 'Order: Update': plugins/eca/commerce/events/eca_commerce_order_update.md
-      - 'Payment: Create': plugins/eca/commerce/events/eca_commerce_payment_create.md
-      - 'Payment: Delete': plugins/eca/commerce/events/eca_commerce_payment_delete.md
-      - 'Payment: Filter Payment Gateways': plugins/eca/commerce/events/eca_commerce_payment_filter_payment_gateways.md
-      - 'Payment: Insert': plugins/eca/commerce/events/eca_commerce_payment_insert.md
-      - 'Payment: Load': plugins/eca/commerce/events/eca_commerce_payment_load.md
-      - 'Payment: Predelete': plugins/eca/commerce/events/eca_commerce_payment_predelete.md
-      - 'Payment: Presave': plugins/eca/commerce/events/eca_commerce_payment_presave.md
-      - 'Payment: Update': plugins/eca/commerce/events/eca_commerce_payment_update.md
       - 'Price: Number format': plugins/eca/commerce/events/eca_commerce_price_number_format.md
-      - 'Product: Create': plugins/eca/commerce/events/eca_commerce_product_create.md
-      - 'Product: Default variation': plugins/eca/commerce/events/eca_commerce_product_default_variation.md
-      - 'Product: Delete': plugins/eca/commerce/events/eca_commerce_product_delete.md
-      - 'Product: Filter Variations': plugins/eca/commerce/events/eca_commerce_product_filter_variations.md
-      - 'Product: Insert': plugins/eca/commerce/events/eca_commerce_product_insert.md
-      - 'Product: Load': plugins/eca/commerce/events/eca_commerce_product_load.md
-      - 'Product: Predelete': plugins/eca/commerce/events/eca_commerce_product_predelete.md
-      - 'Product: Presave': plugins/eca/commerce/events/eca_commerce_product_presave.md
-      - 'Product: Translation delete': plugins/eca/commerce/events/eca_commerce_product_translation_delete.md
-      - 'Product: Translation insert': plugins/eca/commerce/events/eca_commerce_product_translation_insert.md
-      - 'Product: Update': plugins/eca/commerce/events/eca_commerce_product_update.md
-      - 'Product: Variation Ajax Change': plugins/eca/commerce/events/eca_commerce_product_variation_ajax_change.md
-      - 'Product: Variation create': plugins/eca/commerce/events/eca_commerce_product_variation_create.md
-      - 'Product: Variation delete': plugins/eca/commerce/events/eca_commerce_product_variation_delete.md
-      - 'Product: Variation insert': plugins/eca/commerce/events/eca_commerce_product_variation_insert.md
-      - 'Product: Variation load': plugins/eca/commerce/events/eca_commerce_product_variation_load.md
-      - 'Product: Variation predelete': plugins/eca/commerce/events/eca_commerce_product_variation_predelete.md
-      - 'Product: Variation presave': plugins/eca/commerce/events/eca_commerce_product_variation_presave.md
-      - 'Product: Variation translation delete': plugins/eca/commerce/events/eca_commerce_product_variation_translation_delete.md
-      - 'Product: Variation translation insert': plugins/eca/commerce/events/eca_commerce_product_variation_translation_insert.md
-      - 'Product: Variation update': plugins/eca/commerce/events/eca_commerce_product_variation_update.md
-      - 'Promotion: Coupon create': plugins/eca/commerce/events/eca_commerce_promotion_coupon_create.md
-      - 'Promotion: Coupon delete': plugins/eca/commerce/events/eca_commerce_promotion_coupon_delete.md
-      - 'Promotion: Coupon insert': plugins/eca/commerce/events/eca_commerce_promotion_coupon_insert.md
-      - 'Promotion: Coupon load': plugins/eca/commerce/events/eca_commerce_promotion_coupon_load.md
-      - 'Promotion: Coupon predelete': plugins/eca/commerce/events/eca_commerce_promotion_coupon_predelete.md
-      - 'Promotion: Coupon presave': plugins/eca/commerce/events/eca_commerce_promotion_coupon_presave.md
-      - 'Promotion: Coupon update': plugins/eca/commerce/events/eca_commerce_promotion_coupon_update.md
-      - 'Promotion: Create': plugins/eca/commerce/events/eca_commerce_promotion_create.md
-      - 'Promotion: Delete': plugins/eca/commerce/events/eca_commerce_promotion_delete.md
-      - 'Promotion: Filter': plugins/eca/commerce/events/eca_commerce_promotion_filter.md
-      - 'Promotion: Insert': plugins/eca/commerce/events/eca_commerce_promotion_insert.md
-      - 'Promotion: Load': plugins/eca/commerce/events/eca_commerce_promotion_load.md
-      - 'Promotion: Predelete': plugins/eca/commerce/events/eca_commerce_promotion_predelete.md
-      - 'Promotion: Presave': plugins/eca/commerce/events/eca_commerce_promotion_presave.md
-      - 'Promotion: Translate Delete': plugins/eca/commerce/events/eca_commerce_promotion_translation_delete.md
-      - 'Promotion: Translate Insert': plugins/eca/commerce/events/eca_commerce_promotion_translation_insert.md
-      - 'Promotion: Update': plugins/eca/commerce/events/eca_commerce_promotion_update.md
-      - 'Store: Create': plugins/eca/commerce/events/eca_commerce_store_create.md
-      - 'Store: Delete': plugins/eca/commerce/events/eca_commerce_store_delete.md
-      - 'Store: Insert': plugins/eca/commerce/events/eca_commerce_store_insert.md
-      - 'Store: Load': plugins/eca/commerce/events/eca_commerce_store_load.md
-      - 'Store: Predelete': plugins/eca/commerce/events/eca_commerce_store_predelete.md
-      - 'Store: Presave': plugins/eca/commerce/events/eca_commerce_store_presave.md
-      - 'Store: Translation delete': plugins/eca/commerce/events/eca_commerce_store_translation_delete.md
-      - 'Store: Translation insert': plugins/eca/commerce/events/eca_commerce_store_translation_insert.md
-      - 'Store: Update': plugins/eca/commerce/events/eca_commerce_store_update.md
-      - 'Tax: Build': plugins/eca/commerce/events/eca_commerce_tax_build.md
-      - 'Tax: Customer profile': plugins/eca/commerce/events/eca_commerce_tax_customer_profile.md
-    - Conditions:
-      - 'Commerce: Billing address': plugins/eca/commerce/conditions/eca_commerce_commerce_order_billing_address.md
-      - 'Commerce: Current order total': plugins/eca/commerce/conditions/eca_commerce_commerce_order_total_price.md
-      - 'Commerce: Customer ID': plugins/eca/commerce/conditions/eca_commerce_commerce_order_customer.md
-      - 'Commerce: Customer email': plugins/eca/commerce/conditions/eca_commerce_commerce_order_email.md
-      - 'Commerce: Customer role': plugins/eca/commerce/conditions/eca_commerce_commerce_order_customer_role.md
-      - 'Commerce: Order contains product categories': plugins/eca/commerce/conditions/eca_commerce_commerce_order_product_category.md
-      - 'Commerce: Order contains product types': plugins/eca/commerce/conditions/eca_commerce_commerce_order_product_type.md
-      - 'Commerce: Order contains product variation types': plugins/eca/commerce/conditions/eca_commerce_commerce_order_variation_type.md
-      - 'Commerce: Order contains specific product variations': plugins/eca/commerce/conditions/eca_commerce_commerce_order_purchased_entity.md
-      - 'Commerce: Order contains specific products': plugins/eca/commerce/conditions/eca_commerce_commerce_order_product.md
-      - 'Commerce: Order currency': plugins/eca/commerce/conditions/eca_commerce_commerce_order_currency.md
-      - 'Commerce: Order type': plugins/eca/commerce/conditions/eca_commerce_commerce_order_type.md
-      - 'Commerce: Product categories': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_product_category.md
-      - 'Commerce: Product types': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_product_type.md
-      - 'Commerce: Product variation types': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_variation_type.md
-      - 'Commerce: Selected payment gateway': plugins/eca/commerce/conditions/eca_commerce_commerce_order_payment_gateway.md
-      - 'Commerce: Shipping address': plugins/eca/commerce/conditions/eca_commerce_commerce_order_shipping_address.md
-      - 'Commerce: Specific product variation': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_purchased_entity.md
-      - 'Commerce: Specific products': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_product.md
-      - 'Commerce: Store': plugins/eca/commerce/conditions/eca_commerce_commerce_order_store.md
-      - 'Commerce: Total discounted product quantity': plugins/eca/commerce/conditions/eca_commerce_commerce_order_item_quantity.md
     - Actions:
       - 'Change Price in Cart': plugins/eca/commerce/actions/eca_commerce_change_price_in_cart.md
+      - 'Order Item: Add Price Adjustment': plugins/eca/commerce/actions/eca_commerce_add_adjustment.md
   - 'ECA Config':
     - plugins/eca/config/index.md
     - Events:
@@ -181,6 +78,8 @@
       - 'Import config validation': plugins/eca/config/events/config_import_validate.md
       - 'Rename config': plugins/eca/config/events/config_rename.md
       - 'Save config': plugins/eca/config/events/config_save.md
+    - Conditions:
+      - 'Config installer sync mode': plugins/eca/config/conditions/eca_config_installer_sync_mode.md
     - Actions:
       - 'Config: read': plugins/eca/config/actions/eca_config_read.md
       - 'Config: write': plugins/eca/config/actions/eca_config_write.md
@@ -249,15 +148,6 @@
     - Actions:
       - 'Content access: grant access': plugins/eca/content_access/actions/eca_content_access_grant_access.md
       - 'Content access: revoke access': plugins/eca/content_access/actions/eca_content_access_revoke_access.md
-  - 'ECA CrowdSec':
-    - plugins/eca/crowdsec/index.md
-    - Events:
-      - 'IP banned': plugins/eca/crowdsec/events/crowdsec_banned.md
-      - 'IP blocked': plugins/eca/crowdsec/events/crowdsec_blocked.md
-      - 'IP signalled': plugins/eca/crowdsec/events/crowdsec_signalled.md
-      - 'IP unbanned': plugins/eca/crowdsec/events/crowdsec_unbanned.md
-      - 'Scenario list': plugins/eca/crowdsec/events/crowdsec_scenariolist.md
-      - 'Signal scenario list': plugins/eca/crowdsec/events/crowdsec_signalscenariolist.md
   - 'ECA Endpoint':
     - plugins/eca/endpoint/index.md
     - Events:
@@ -771,12 +661,29 @@
       - ' Wiki: update': plugins/eca/gitlab_api/actions/eca_gitlab_api_command_wiki_update.md
   - 'ECA Helper':
     - plugins/eca/helper/index.md
+    - Events:
+      - 'ECA Helper: Preprocess': plugins/eca/helper/events/eca_helper_preprocess_hook_preprocess.md
+      - 'ECA Helper: Status Messages': plugins/eca/helper/events/eca_helper_status_messages.md
     - Actions:
+      - 'ECA Helper: Form add css class': plugins/eca/helper/actions/eca_helper_form_add_class.md
+      - 'ECA Helper: Form attach library': plugins/eca/helper/actions/eca_helper_form_attach_library.md
       - 'ECA Helper: Form field get value': plugins/eca/helper/actions/eca_helper_form_field_get_value.md
       - 'ECA Helper: Form field set value': plugins/eca/helper/actions/eca_helper_form_field_set_value.md
       - 'ECA Helper: Get SERVER Variable': plugins/eca/helper/actions/eca_helper_server_variable.md
+      - 'ECA Helper: Get route name': plugins/eca/helper/actions/eca_helper_route_get.md
       - 'ECA Helper: Get/Set ThirdPartySetting': plugins/eca/helper/actions/eca_helper_third_partyS_setting.md
+      - 'ECA Helper: Header footer tag and script': plugins/eca/helper/actions/eca_helper_header_footer_tag.md
       - 'ECA Helper: Http Request': plugins/eca/helper/actions/eca_helper_http_request.md
+      - 'ECA Helper: Preprocess add css class': plugins/eca/helper/actions/eca_helper_preprocess_set_class_value.md
+      - 'ECA Helper: Preprocess attach library': plugins/eca/helper/actions/eca_helper_preprocess_attach_library.md
+      - 'ECA Helper: Preprocess get value': plugins/eca/helper/actions/eca_helper_preprocess_get_value.md
+      - 'ECA Helper: Preprocess remove item': plugins/eca/helper/actions/eca_helper_preprocess_remove_item.md
+      - 'ECA Helper: Preprocess set value': plugins/eca/helper/actions/eca_helper_preprocess_set_value.md
+      - 'ECA Helper: Quick Action': plugins/eca/helper/actions/eca_helper_quick_action.md
+      - 'ECA Helper: Remove headers': plugins/eca/helper/actions/eca_helper_header_remove.md
+      - 'ECA Helper: Set cookie': plugins/eca/helper/actions/eca_helper_cookie_set.md
+      - 'ECA Helper: Set headers': plugins/eca/helper/actions/eca_helper_header_set.md
+      - 'ECA Helper: Status Messages Alter': plugins/eca/helper/actions/eca_helper_status_messages_alter.md
   - 'ECA Helper for Workflow':
     - plugins/eca/helper_workflow/index.md
     - Actions:
@@ -825,19 +732,17 @@
       - 'Allow new routes': plugins/eca/misc/events/routing_dynamic.md
       - 'Alter route': plugins/eca/misc/events/routing_alter.md
       - 'Block content get dependency': plugins/eca/misc/events/drupal_block_content_get_dependency.md
-      - 'Build render array': plugins/eca/misc/events/drupal_section_component_build_render_array.md
       - 'Build resource type': plugins/eca/misc/events/drupal_build.md
       - 'Controller arguments have been resolved': plugins/eca/misc/events/kernel_controller_arguments.md
       - 'Controller does not return a Response instance': plugins/eca/misc/events/kernel_view.md
       - 'Controller found to handle request': plugins/eca/misc/events/kernel_controller.md
       - 'Exception status code': plugins/eca/misc/events/kernel_exception_status_code.md
-      - 'Prepare layout builder element': plugins/eca/misc/events/drupal_prepare_layout.md
+      - 'Recipe applied': plugins/eca/misc/events/drupal_recipe_applied.md
       - 'Response created': plugins/eca/misc/events/kernel_response.md
       - 'Response for request created': plugins/eca/misc/events/kernel_finish_request.md
       - 'Response was sent': plugins/eca/misc/events/kernel_terminate.md
       - 'Route building finished': plugins/eca/misc/events/routing_finished.md
       - 'Sanitize file name': plugins/eca/misc/events/drupal_file_upload_sanitize_name_event.md
-      - 'Save translated string': plugins/eca/misc/events/drupal_save_translation.md
       - 'Select page display mode': plugins/eca/misc/events/drupal_select_page_display_variant.md
       - 'Service container finished initializing': plugins/eca/misc/events/kernel_container_initialize_subrequest_finished.md
       - 'Start dispatching request': plugins/eca/misc/events/kernel_request.md
@@ -845,6 +750,7 @@
     - Conditions:
       - 'Route match': plugins/eca/misc/conditions/eca_route_match.md
     - Actions:
+      - 'Recipe: apply': plugins/eca/misc/actions/eca_apply_recipe.md
       - 'Token: load query argument': plugins/eca/misc/actions/eca_token_load_query_arg.md
       - 'Token: load route parameter': plugins/eca/misc/actions/eca_token_load_route_param.md
   - 'ECA Parameters':
@@ -857,6 +763,12 @@
     - Actions:
       - 'Get parameter': plugins/eca/parameters/actions/eca_parameter_get.md
       - 'Set parameter': plugins/eca/parameters/actions/eca_parameter_set.md
+  - 'ECA Project Browser':
+    - plugins/eca/project_browser/index.md
+    - Events:
+      - 'Alter source plugin info': plugins/eca/project_browser/events/project_browser_source_info_alter.md
+    - Actions:
+      - 'Project Browser: Alter source plugin info': plugins/eca/project_browser/actions/eca_project_browser_source_plugin_info_alter.md
   - 'ECA Push Framework':
     - plugins/eca/push_framework/index.md
     - Events:
@@ -1098,67 +1010,30 @@
 - Augmentor:
   - plugins/augmentor/index.md
   - Actions:
-    - 'Augmentor Minimal Paragraph': plugins/augmentor/actions/entity_augmentor_action_minimal_paragraph.md
     - 'Augmentor Minimal comment': plugins/augmentor/actions/entity_augmentor_action_minimal_comment.md
     - 'Augmentor Minimal contact message': plugins/augmentor/actions/entity_augmentor_action_minimal_contact_message.md
     - 'Augmentor Minimal content block': plugins/augmentor/actions/entity_augmentor_action_minimal_block_content.md
     - 'Augmentor Minimal content item': plugins/augmentor/actions/entity_augmentor_action_minimal_node.md
     - 'Augmentor Minimal email': plugins/augmentor/actions/entity_augmentor_action_minimal_easy_email.md
     - 'Augmentor Minimal flagging': plugins/augmentor/actions/entity_augmentor_action_minimal_flagging.md
-    - 'Augmentor Minimal group': plugins/augmentor/actions/entity_augmentor_action_minimal_group.md
-    - 'Augmentor Minimal group relationship': plugins/augmentor/actions/entity_augmentor_action_minimal_group_relationship.md
-    - 'Augmentor Minimal media item': plugins/augmentor/actions/entity_augmentor_action_minimal_media.md
-    - 'Augmentor Minimal order': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_order.md
-    - 'Augmentor Minimal order item': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_order_item.md
-    - 'Augmentor Minimal product': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_product.md
-    - 'Augmentor Minimal product attribute value': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_product_attribute_value.md
-    - 'Augmentor Minimal product variation': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_product_variation.md
-    - 'Augmentor Minimal profile': plugins/augmentor/actions/entity_augmentor_action_minimal_profile.md
     - 'Augmentor Minimal shortcut link': plugins/augmentor/actions/entity_augmentor_action_minimal_shortcut.md
-    - 'Augmentor Minimal store': plugins/augmentor/actions/entity_augmentor_action_minimal_commerce_store.md
     - 'Augmentor Minimal submission': plugins/augmentor/actions/entity_augmentor_action_minimal_webform_submission.md
     - 'Augmentor Minimal taxonomy term': plugins/augmentor/actions/entity_augmentor_action_minimal_taxonomy_term.md
-    - 'Augmentor Paragraph': plugins/augmentor/actions/entity_augmentor_action_paragraph.md
     - 'Augmentor comment': plugins/augmentor/actions/entity_augmentor_action_comment.md
     - 'Augmentor contact message': plugins/augmentor/actions/entity_augmentor_action_contact_message.md
     - 'Augmentor content block': plugins/augmentor/actions/entity_augmentor_action_block_content.md
     - 'Augmentor content item': plugins/augmentor/actions/entity_augmentor_action_node.md
     - 'Augmentor email': plugins/augmentor/actions/entity_augmentor_action_easy_email.md
     - 'Augmentor flagging': plugins/augmentor/actions/entity_augmentor_action_flagging.md
-    - 'Augmentor group': plugins/augmentor/actions/entity_augmentor_action_group.md
-    - 'Augmentor group relationship': plugins/augmentor/actions/entity_augmentor_action_group_relationship.md
-    - 'Augmentor media item': plugins/augmentor/actions/entity_augmentor_action_media.md
-    - 'Augmentor order': plugins/augmentor/actions/entity_augmentor_action_commerce_order.md
-    - 'Augmentor order item': plugins/augmentor/actions/entity_augmentor_action_commerce_order_item.md
-    - 'Augmentor product': plugins/augmentor/actions/entity_augmentor_action_commerce_product.md
-    - 'Augmentor product attribute value': plugins/augmentor/actions/entity_augmentor_action_commerce_product_attribute_value.md
-    - 'Augmentor product variation': plugins/augmentor/actions/entity_augmentor_action_commerce_product_variation.md
-    - 'Augmentor profile': plugins/augmentor/actions/entity_augmentor_action_profile.md
     - 'Augmentor shortcut link': plugins/augmentor/actions/entity_augmentor_action_shortcut.md
-    - 'Augmentor store': plugins/augmentor/actions/entity_augmentor_action_commerce_store.md
     - 'Augmentor submission': plugins/augmentor/actions/entity_augmentor_action_webform_submission.md
     - 'Augmentor taxonomy term': plugins/augmentor/actions/entity_augmentor_action_taxonomy_term.md
-- 'BlueSky Integration':
-  - plugins/bsky/index.md
-  - Actions:
-    - 'BlueSky: Add Facets': plugins/bsky/actions/bsky_add_facets.md
-    - 'BlueSky: Add Image': plugins/bsky/actions/bsky_add_image.md
-    - 'BlueSky: Create Post': plugins/bsky/actions/bsky_create_post.md
-    - 'BlueSky: Send Post': plugins/bsky/actions/bsky_send_post.md
-- 'Commerce Product':
-  - plugins/commerce_product/index.md
-  - Actions:
-    - 'Publish selected product': plugins/commerce_product/actions/commerce_publish_product.md
-    - 'Unpublish selected product': plugins/commerce_product/actions/commerce_unpublish_product.md
 - 'Content Moderation':
   - plugins/content_moderation/index.md
   - Actions:
     - 'Change moderation state of Content': plugins/content_moderation/actions/moderation_state_change_node.md
     - 'Change moderation state of Content block': plugins/content_moderation/actions/moderation_state_change_block_content.md
     - 'Change moderation state of Email': plugins/content_moderation/actions/moderation_state_change_easy_email.md
-    - 'Change moderation state of Group': plugins/content_moderation/actions/moderation_state_change_group.md
-    - 'Change moderation state of Media': plugins/content_moderation/actions/moderation_state_change_media.md
-    - 'Change moderation state of Profile': plugins/content_moderation/actions/moderation_state_change_profile.md
     - 'Change moderation state of Taxonomy term': plugins/content_moderation/actions/moderation_state_change_taxonomy_term.md
 - 'Drupal Remote Dashboard':
   - plugins/drd/index.md
@@ -1196,31 +1071,19 @@
   - plugins/core/index.md
   - Actions:
     - 'Display a message to the user': plugins/core/actions/action_message_action.md
-    - 'Publish Paragraph': plugins/core/actions/entity_publish_action_paragraph.md
     - 'Publish URL alias': plugins/core/actions/entity_publish_action_path_alias.md
     - 'Publish comment': plugins/core/actions/entity_publish_action_comment.md
     - 'Publish content block': plugins/core/actions/entity_publish_action_block_content.md
     - 'Publish content item': plugins/core/actions/entity_publish_action_node.md
     - 'Publish custom menu link': plugins/core/actions/entity_publish_action_menu_link_content.md
-    - 'Publish group': plugins/core/actions/entity_publish_action_group.md
-    - 'Publish media item': plugins/core/actions/entity_publish_action_media.md
-    - 'Publish product': plugins/core/actions/entity_publish_action_commerce_product.md
-    - 'Publish product variation': plugins/core/actions/entity_publish_action_commerce_product_variation.md
-    - 'Publish profile': plugins/core/actions/entity_publish_action_profile.md
     - 'Publish taxonomy term': plugins/core/actions/entity_publish_action_taxonomy_term.md
     - 'Redirect to URL': plugins/core/actions/action_goto_action.md
     - 'Send email': plugins/core/actions/action_send_email_action.md
-    - 'Unpublish Paragraph': plugins/core/actions/entity_unpublish_action_paragraph.md
     - 'Unpublish URL alias': plugins/core/actions/entity_unpublish_action_path_alias.md
     - 'Unpublish comment': plugins/core/actions/entity_unpublish_action_comment.md
     - 'Unpublish content block': plugins/core/actions/entity_unpublish_action_block_content.md
     - 'Unpublish content item': plugins/core/actions/entity_unpublish_action_node.md
     - 'Unpublish custom menu link': plugins/core/actions/entity_unpublish_action_menu_link_content.md
-    - 'Unpublish group': plugins/core/actions/entity_unpublish_action_group.md
-    - 'Unpublish media item': plugins/core/actions/entity_unpublish_action_media.md
-    - 'Unpublish product': plugins/core/actions/entity_unpublish_action_commerce_product.md
-    - 'Unpublish product variation': plugins/core/actions/entity_unpublish_action_commerce_product_variation.md
-    - 'Unpublish profile': plugins/core/actions/entity_unpublish_action_profile.md
     - 'Unpublish taxonomy term': plugins/core/actions/entity_unpublish_action_taxonomy_term.md
 - 'ECA for DRD':
   - plugins/drd_eca/index.md
@@ -1243,15 +1106,6 @@
   - plugins/flag/index.md
   - Actions:
     - 'Delete flagging (unflag)': plugins/flag/actions/flag_delete_flagging.md
-- 'Group Actions':
-  - plugins/group_action/index.md
-  - Actions:
-    - 'Group: add content': plugins/group_action/actions/group_add_content.md
-    - 'Group: add user as member': plugins/group_action/actions/group_add_member.md
-    - 'Group: remove content': plugins/group_action/actions/group_remove_content.md
-    - 'Group: remove user as member': plugins/group_action/actions/group_remove_member.md
-    - 'Group: update content': plugins/group_action/actions/group_update_content.md
-    - 'Group: update user membership': plugins/group_action/actions/group_update_member.md
 - Node:
   - plugins/node/index.md
   - Actions:
@@ -1259,19 +1113,6 @@
     - 'Make selected content not sticky': plugins/node/actions/node_make_unsticky_action.md
     - 'Make selected content sticky': plugins/node/actions/node_make_sticky_action.md
     - 'Promote selected content to front page': plugins/node/actions/node_promote_action.md
-- Pathauto:
-  - plugins/pathauto/index.md
-  - Actions:
-    - 'Update URL alias of an entity': plugins/pathauto/actions/pathauto_update_alias.md
-- 'Private Content':
-  - plugins/private_content/index.md
-  - Actions:
-    - 'Make selected content private': plugins/private_content/actions/private_content_make_private.md
-    - 'Make selected content public': plugins/private_content/actions/private_content_make_public.md
-- Prompt:
-  - plugins/prompt/index.md
-  - Actions:
-    - 'Prompt: set field value with IA': plugins/prompt/actions/prompt_set_field_value.md
 - 'Push Framework':
   - plugins/push_framework/index.md
   - Actions:
-- 
GitLab