diff --git a/.wordlist.txt b/.wordlist.txt
index 4b9965aad5..09cb602adc 100644
--- a/.wordlist.txt
+++ b/.wordlist.txt
@@ -852,6 +852,8 @@ ReverseInherited
ReviewFormDataAware
ReviewFormDataStorer
Reviewdog
+RevocationRequest
+RevocationRequestEvent
Roadmap
RouteResponse
RuleConditionService
@@ -1132,6 +1134,7 @@ YamlFileLoader
ZSH
accel
acl
+aclfacade
actionAmount
actionType
actionability
@@ -1273,6 +1276,7 @@ const
const's
contactFormData
containerfacade
+contextToken
control
copyToClipboard
copyable
@@ -1761,6 +1765,7 @@ previewable
pricecollectionfacade
pricefacade
pricefactory
+primaryKey
productCountRoute
productId
productNumber
@@ -1829,6 +1834,8 @@ rethrown
retryability
returnUrl
revalidation
+reviewFormData
+revocationRequestFormData
rfc
roadmap
rollbacking
@@ -1952,6 +1959,7 @@ systemconfigfacade
systemd
tabindex
teardown
+templateData
templated
templating
testFoo
diff --git a/README.md b/README.md
index c5788decc5..6da18cc8b1 100644
--- a/README.md
+++ b/README.md
@@ -84,10 +84,10 @@ The `/docs/assets` folder stores images, videos, and other files linked in markd
Certain files within the `shopware/shopware` repository are duplicated in the `shopware/docs` repository for reference purposes. Any modifications made to the former files will automatically synchronize with the corresponding files in the latter repository by the [`update-adrs`](./.github/workflows/update-adrs.yml) workflow.
-| `shopware/shopware` files | `shopware/docs` files |
-|-----------------------|-------------------------------------------|
-| [shopware's adr](https://github.com/shopware/shopware/tree/trunk/adr) | [adr folder](./resources/references/adr/) |
-| [adr assets](https://github.com/shopware/shopware/tree/trunk/adr/assets) | [assets adr folder](./assets/adr/) |
+| `shopware/shopware` files | `shopware/docs` files |
+|--------------------------------------------------------------------------------------------|-------------------------------------------|
+| [shopware's adr](https://github.com/shopware/shopware/tree/trunk/adr) | [adr folder](./resources/references/adr/) |
+| [adr assets](https://github.com/shopware/shopware/tree/trunk/adr/assets) | [assets adr folder](./assets/adr/) |
| [coding guideline](https://github.com/shopware/shopware/tree/trunk/coding-guidelines/core) | [core](./resources/guidelines/code/core) |
> Please create a PR in the [shopware](https://github.com/shopware/shopware/pulls) repository if you want to change something in the above folders.
diff --git a/resources/references/app-reference/script-reference/cart-manipulation-script-services-reference.md b/resources/references/app-reference/script-reference/cart-manipulation-script-services-reference.md
index 967d4b70e1..722b79e26a 100644
--- a/resources/references/app-reference/script-reference/cart-manipulation-script-services-reference.md
+++ b/resources/references/app-reference/script-reference/cart-manipulation-script-services-reference.md
@@ -13,23 +13,6 @@ nav:
The `cart` service allows you to manipulate the cart.
You can use the cart service to add line-items, change prices, add discounts, etc. to the cart.
-### items()
-
-* The `items()` method returns all line-items of the current cart for further manipulation.
-
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
-
- A `ItemsFacade` containing all line-items in the current cart as a collection.
-
-### products()
-
-* The `product()` method returns all products of the current cart for further manipulation.
-
- Similar to the `items()` method, but the line-items are filtered, to only contain product line items.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ProductsFacade`](./cart-manipulation-script-services-reference#productsfacade)
-
- A `ProductsFacade` containing all product line-items in the current cart as a collection.
-
### calculate()
* The `calculate()` method recalculates the whole cart.
@@ -40,32 +23,14 @@ You can use the cart service to add line-items, change prices, add discounts, et
The `calculate()` method will be called automatically after your cart script executed.
-### price()
-
-* The `price()` method returns the current price of the cart.
-
- Note that this price may be outdated, if you changed something inside the cart in your script.
- Use the `calculate()` method to recalculate the cart and update the price.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\CartPriceFacade`](./cart-manipulation-script-services-reference#cartpricefacade)
-
- The calculated price of the cart.
-
-### errors()
-
-* The `errors()` method returns the current errors of the cart.
-
- You can use it to add new errors or warning or to remove existing ones.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ErrorsFacade`](./cart-manipulation-script-services-reference#errorsfacade)
-
- A `ErrorsFacade` containing all cart errors as a collection (may be an empty collection if there are no errors).
-
-### states()
+### count()
-* `states()` allows you to access the state functions of the current cart.
+* `count()` returns the count of line-items in this collection.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\StatesFacade`](./cart-manipulation-script-services-reference#statesfacade)
+ Note that it does only count the line-items directly in this collection and not child line-items of those.
+* **Returns** `int`
- A `StatesFacade` containing all cart states as a collection (maybe an empty collection if there are no states).
+ The number of line-items in this collection.
### discount()
@@ -115,14 +80,14 @@ You can use the cart service to add line-items, change prices, add discounts, et
{% do services.cart.discount('my-discount', 'percentage', -10, 'Fancy discount') %}
```
-### count()
+### errors()
-* `count()` returns the count of line-items in this collection.
+* The `errors()` method returns the current errors of the cart.
- Note that it does only count the line-items directly in this collection and not child line-items of those.
-* **Returns** `int`
+ You can use it to add new errors or warning or to remove existing ones.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ErrorsFacade`](./cart-manipulation-script-services-reference#errorsfacade)
- The number of line-items in this collection.
+ A `ErrorsFacade` containing all cart errors as a collection (may be an empty collection if there are no errors).
### get()
@@ -144,6 +109,33 @@ You can use the cart service to add line-items, change prices, add discounts, et
* **Arguments:**
* *`string|\ItemFacade`* **id**: The id or a line-item that should be checked if it already exists in the collection.
+### items()
+
+* The `items()` method returns all line-items of the current cart for further manipulation.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
+
+ A `ItemsFacade` containing all line-items in the current cart as a collection.
+
+### price()
+
+* The `price()` method returns the current price of the cart.
+
+ Note that this price may be outdated, if you changed something inside the cart in your script.
+ Use the `calculate()` method to recalculate the cart and update the price.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\CartPriceFacade`](./cart-manipulation-script-services-reference#cartpricefacade)
+
+ The calculated price of the cart.
+
+### products()
+
+* The `product()` method returns all products of the current cart for further manipulation.
+
+ Similar to the `items()` method, but the line-items are filtered, to only contain product line items.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ProductsFacade`](./cart-manipulation-script-services-reference#productsfacade)
+
+ A `ProductsFacade` containing all product line-items in the current cart as a collection.
+
### remove()
* `remove()` removes the given line-item or the line-item with the given id from this collection.
@@ -159,6 +151,14 @@ You can use the cart service to add line-items, change prices, add discounts, et
{% do services.cart.products.remove(hook.ids.get('p1')) %}
```
+### states()
+
+* `states()` allows you to access the state functions of the current cart.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\StatesFacade`](./cart-manipulation-script-services-reference#statesfacade)
+
+ A `StatesFacade` containing all cart states as a collection (maybe an empty collection if there are no states).
+
### surcharge()
* The `surcharge()` methods creates a new surcharge line-item with the given type and value.
@@ -205,23 +205,31 @@ _________
The CartPriceFacade is a wrapper around the calculated price of a cart.
-### getNet()
+### create()
-* `getNet()` returns the net price of the cart.
+* `create()` creates a new `PriceCollection` based on an array of prices.
-* **Returns** `float`
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
- Returns the net price of the cart as float.
+ Returns the newly created `PriceCollection`.
+* **Arguments:**
+ * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
+* **Examples:**
+ * Create a new Price in the default currency.
-### getTotal()
+ ```twig
+ {% set price = services.cart.price.create({
+ 'default': { 'gross': 19.99, 'net': 19.99}
+ }) %}
+ ```
-* `getTotal()` returns the total price of the cart that has to be paid by the customer.
+### getNet()
+
+* `getNet()` returns the net price of the cart.
- Depending on the tax settings this may be the gross or net price.
- Note that this price is already rounded, to get the raw price before rounding use `getRaw()`.
* **Returns** `float`
- The rounded total price of the cart as float.
+ Returns the net price of the cart as float.
### getPosition()
@@ -233,39 +241,31 @@ The CartPriceFacade is a wrapper around the calculated price of a cart.
The position price as float.
-### getRounded()
+### getRaw()
-* Alias for `getTotal()`.
+* `getRaw() returns the total price of the cart before rounding.
* **Returns** `float`
- The rounded total price of the cart as float.
+ The total price before rounding as float.
-### getRaw()
+### getRounded()
-* `getRaw() returns the total price of the cart before rounding.
+* Alias for `getTotal()`.
* **Returns** `float`
- The total price before rounding as float.
-
-### create()
+ The rounded total price of the cart as float.
-* `create()` creates a new `PriceCollection` based on an array of prices.
+### getTotal()
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
+* `getTotal()` returns the total price of the cart that has to be paid by the customer.
- Returns the newly created `PriceCollection`.
-* **Arguments:**
- * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
-* **Examples:**
- * Create a new Price in the default currency.
+ Depending on the tax settings this may be the gross or net price.
+ Note that this price is already rounded, to get the raw price before rounding use `getRaw()`.
+* **Returns** `float`
- ```twig
- {% set price = services.cart.price.create({
- 'default': { 'gross': 19.99, 'net': 19.99}
- }) %}
- ```
+ The rounded total price of the cart as float.
_________
@@ -273,15 +273,6 @@ _________
The ContainerFacade allows you to wrap multiple line-items inside a container line-item.
-### products()
-
-* The `product()` method returns all products inside the current container for further manipulation.
-
- Similar to the `children()` method, but the line-items are filtered, to only contain product line items.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ProductsFacade`](./cart-manipulation-script-services-reference#productsfacade)
-
- A `ProductsFacade` containing all product line-items inside the current container as a collection.
-
### add()
* Use the `add()` method to add an item to this container.
@@ -298,99 +289,14 @@ The ContainerFacade allows you to wrap multiple line-items inside a container li
```
-### getPrice()
-
-* `getPrice()` returns the calculated price of the line-item.
-
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\PriceFacade`](./cart-manipulation-script-services-reference#pricefacade) | `null`
-
- Returns the price of the line-item as a `PriceFacade` or null if the line-item has no calculated price.
-
-### take()
-
-* `take()` splits an existing line-item by a given quantity.
-
- It removes the given quantity from the existing line-item and returns a new line-item with exactly that quantity.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
-
- Returns the new line-item as an `ItemFacade` or null if taking is not possible because the line-item has no sufficient quantity.
-* **Arguments:**
- * *`int`* **quantity**: The quantity that should be taken.
- * *`string` | `null`* **key**: Optional: The id of the new line-item. A random UUID will be used if none is provided.
-
- Default: `null`
-* **Examples:**
- * Take a quantity of 2 from an existing product line-item and add it to the cart again.
-
- ```twig
- {# @var services \Shopware\Core\Framework\Script\ServiceStubs #}
-
- {% do services.cart.products.add(hook.ids.get('p1'), 5) %}
-
- {% set product = services.cart.products.get(hook.ids.get('p1')) %}
-
- {% set split = product.take(2, 'new-key') %}
-
- {% do services.cart.products.add(split) %}
- ```
-
-### getId()
-
-* `getId()` returns the id of the line-item.
-
-* **Returns** `string`
-
- Returns the id.
-
-### getReferencedId()
-
-* `getReferenceId()` returns the id of the referenced entity of the line-item.
-
- E.g. for product line-items this will return the id of the referenced product.
-* **Returns** `string` | `null`
-
- Returns the id of the referenced entity, or null if no entity is referenced.
-
-### getQuantity()
+### count()
-* `getQuantity()` returns the quantity of the line-item.
+* `count()` returns the count of line-items in this collection.
+ Note that it does only count the line-items directly in this collection and not child line-items of those.
* **Returns** `int`
- Returns the quantity.
-
-### getLabel()
-
-* `getLabel()` returns the translated label of the line-item.
-
-* **Returns** `string` | `null`
-
- Returns the translated label, or null if none exists.
-
-### getPayload()
-
-* `getPayload()` returns the payload of this line-item.
-
-* **Returns** [`Shopware\Core\Framework\Script\Facade\ArrayFacade`](./miscellaneous-script-services-reference#arrayfacade)
-
- Returns the payload as `ArrayFacade`.
-
-### getChildren()
-
-* `getChildren()` returns the child line-items of this line-item.
-
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
-
- Returns the children as a `ItemsFacade`, that may be empty if no children exist.
-
-### getType()
-
-* `getType()` returns the type of this line-item.
-
- Possible types include `product`, `discount`, `container`, etc.
-* **Returns** `string`
-
- The type of the line-item.
+ The number of line-items in this collection.
### discount()
@@ -440,15 +346,6 @@ The ContainerFacade allows you to wrap multiple line-items inside a container li
{% do services.cart.discount('my-discount', 'percentage', -10, 'Fancy discount') %}
```
-### count()
-
-* `count()` returns the count of line-items in this collection.
-
- Note that it does only count the line-items directly in this collection and not child line-items of those.
-* **Returns** `int`
-
- The number of line-items in this collection.
-
### get()
* `get()` returns the line-item with the given id from this collection.
@@ -459,6 +356,72 @@ The ContainerFacade allows you to wrap multiple line-items inside a container li
* **Arguments:**
* *`string`* **id**: The id of the line-item that should be returned.
+### getChildren()
+
+* `getChildren()` returns the child line-items of this line-item.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
+
+ Returns the children as a `ItemsFacade`, that may be empty if no children exist.
+
+### getId()
+
+* `getId()` returns the id of the line-item.
+
+* **Returns** `string`
+
+ Returns the id.
+
+### getLabel()
+
+* `getLabel()` returns the translated label of the line-item.
+
+* **Returns** `string` | `null`
+
+ Returns the translated label, or null if none exists.
+
+### getPayload()
+
+* `getPayload()` returns the payload of this line-item.
+
+* **Returns** [`Shopware\Core\Framework\Script\Facade\ArrayFacade`](./miscellaneous-script-services-reference#arrayfacade)
+
+ Returns the payload as `ArrayFacade`.
+
+### getPrice()
+
+* `getPrice()` returns the calculated price of the line-item.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\PriceFacade`](./cart-manipulation-script-services-reference#pricefacade) | `null`
+
+ Returns the price of the line-item as a `PriceFacade` or null if the line-item has no calculated price.
+
+### getQuantity()
+
+* `getQuantity()` returns the quantity of the line-item.
+
+* **Returns** `int`
+
+ Returns the quantity.
+
+### getReferencedId()
+
+* `getReferenceId()` returns the id of the referenced entity of the line-item.
+
+ E.g. for product line-items this will return the id of the referenced product.
+* **Returns** `string` | `null`
+
+ Returns the id of the referenced entity, or null if no entity is referenced.
+
+### getType()
+
+* `getType()` returns the type of this line-item.
+
+ Possible types include `product`, `discount`, `container`, etc.
+* **Returns** `string`
+
+ The type of the line-item.
+
### has()
* `has()` checks if a line-item with the given id exists in this collection.
@@ -469,6 +432,15 @@ The ContainerFacade allows you to wrap multiple line-items inside a container li
* **Arguments:**
* *`string|\ItemFacade`* **id**: The id or a line-item that should be checked if it already exists in the collection.
+### products()
+
+* The `product()` method returns all products inside the current container for further manipulation.
+
+ Similar to the `children()` method, but the line-items are filtered, to only contain product line items.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ProductsFacade`](./cart-manipulation-script-services-reference#productsfacade)
+
+ A `ProductsFacade` containing all product line-items inside the current container as a collection.
+
### remove()
* `remove()` removes the given line-item or the line-item with the given id from this collection.
@@ -524,6 +496,34 @@ The ContainerFacade allows you to wrap multiple line-items inside a container li
{% do services.cart.surcharge('my-surcharge', 'percentage', -10, 'Fancy discount') %}
```
+### take()
+
+* `take()` splits an existing line-item by a given quantity.
+
+ It removes the given quantity from the existing line-item and returns a new line-item with exactly that quantity.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
+
+ Returns the new line-item as an `ItemFacade` or null if taking is not possible because the line-item has no sufficient quantity.
+* **Arguments:**
+ * *`int`* **quantity**: The quantity that should be taken.
+ * *`string` | `null`* **key**: Optional: The id of the new line-item. A random UUID will be used if none is provided.
+
+ Default: `null`
+* **Examples:**
+ * Take a quantity of 2 from an existing product line-item and add it to the cart again.
+
+ ```twig
+ {# @var services \Shopware\Core\Framework\Script\ServiceStubs #}
+
+ {% do services.cart.products.add(hook.ids.get('p1'), 5) %}
+
+ {% set product = services.cart.products.get(hook.ids.get('p1')) %}
+
+ {% set split = product.take(2, 'new-key') %}
+
+ {% do services.cart.products.add(split) %}
+ ```
+
_________
## [`Shopware\Core\Checkout\Cart\Facade\DiscountFacade`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Facade/DiscountFacade.php) {#discountfacade}
@@ -575,26 +575,25 @@ You can use it to add new errors to the cart or remove existing ones.
{% do services.cart.errors.error('NO_PRODUCTS_IN_CART') %}
```
-### warning()
+### get()
-* The `warning()` method adds a new error of type `warning` to the cart.
+* The `get()` method returns the error with the given id.
- The warning will be displayed to the user, but the checkout won't be blocked.
+* **Returns** [`Shopware\Core\Checkout\Cart\Error\Error`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Error/Error.php) | `null`
+
+ The Error with the given id, null if an error with that id does not exist.
* **Arguments:**
- * *`string`* **key**: The snippet-key of the message that should be displayed to the user.
- * *`string` | `null`* **id**: An optional id that can be used to reference the error, if none is provided the $key will be used as id.
+ * *`string`* **id**: The id of the error that should be returned.
- Default: `null`
- * *`array`* **parameters**: Optional: Any parameters that the snippet for the error message may need.
+### has()
- Default: `array (
-)`
-* **Examples:**
- * Add a warning to the cart.
+* The `has()` method, checks if an error with a given id exists.
- ```twig
- {% do services.cart.errors.notice('YOU_SHOULD_REALLY_ADD_PRODUCTS') %}
- ```
+* **Returns** `bool`
+
+ Returns true if an error with that key exists, false otherwise.
+* **Arguments:**
+ * *`string`* **id**: The id of the error that should be checked.
### notice()
@@ -629,6 +628,13 @@ You can use it to add new errors to the cart or remove existing ones.
{% do services.cart.errors.notice('MESSAGE_WITH_PARAMETERS', null, {'foo': 'bar'}) %}
```
+### remove()
+
+* The `remove()` method removes the error with the given id.
+
+* **Arguments:**
+ * *`string`* **id**: The id of the error that should be removed.
+
### resubmittable()
* The `resubmittable()` method adds a new error of type `error` to the cart.
@@ -644,32 +650,26 @@ You can use it to add new errors to the cart or remove existing ones.
Default: `array (
)`
-### has()
-
-* The `has()` method, checks if an error with a given id exists.
-
-* **Returns** `bool`
-
- Returns true if an error with that key exists, false otherwise.
-* **Arguments:**
- * *`string`* **id**: The id of the error that should be checked.
-
-### remove()
+### warning()
-* The `remove()` method removes the error with the given id.
+* The `warning()` method adds a new error of type `warning` to the cart.
+ The warning will be displayed to the user, but the checkout won't be blocked.
* **Arguments:**
- * *`string`* **id**: The id of the error that should be removed.
-
-### get()
+ * *`string`* **key**: The snippet-key of the message that should be displayed to the user.
+ * *`string` | `null`* **id**: An optional id that can be used to reference the error, if none is provided the $key will be used as id.
-* The `get()` method returns the error with the given id.
+ Default: `null`
+ * *`array`* **parameters**: Optional: Any parameters that the snippet for the error message may need.
-* **Returns** [`Shopware\Core\Checkout\Cart\Error\Error`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Error/Error.php) | `null`
+ Default: `array (
+)`
+* **Examples:**
+ * Add a warning to the cart.
- The Error with the given id, null if an error with that id does not exist.
-* **Arguments:**
- * *`string`* **id**: The id of the error that should be returned.
+ ```twig
+ {% do services.cart.errors.notice('YOU_SHOULD_REALLY_ADD_PRODUCTS') %}
+ ```
_________
@@ -677,41 +677,13 @@ _________
The ItemFacade is a wrapper around one line-item.
-### getPrice()
-
-* `getPrice()` returns the calculated price of the line-item.
-
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\PriceFacade`](./cart-manipulation-script-services-reference#pricefacade) | `null`
-
- Returns the price of the line-item as a `PriceFacade` or null if the line-item has no calculated price.
-
-### take()
-
-* `take()` splits an existing line-item by a given quantity.
-
- It removes the given quantity from the existing line-item and returns a new line-item with exactly that quantity.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
+### getChildren()
- Returns the new line-item as an `ItemFacade` or null if taking is not possible because the line-item has no sufficient quantity.
-* **Arguments:**
- * *`int`* **quantity**: The quantity that should be taken.
- * *`string` | `null`* **key**: Optional: The id of the new line-item. A random UUID will be used if none is provided.
+* `getChildren()` returns the child line-items of this line-item.
- Default: `null`
-* **Examples:**
- * Take a quantity of 2 from an existing product line-item and add it to the cart again.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
- ```twig
- {# @var services \Shopware\Core\Framework\Script\ServiceStubs #}
-
- {% do services.cart.products.add(hook.ids.get('p1'), 5) %}
-
- {% set product = services.cart.products.get(hook.ids.get('p1')) %}
-
- {% set split = product.take(2, 'new-key') %}
-
- {% do services.cart.products.add(split) %}
- ```
+ Returns the children as a `ItemsFacade`, that may be empty if no children exist.
### getId()
@@ -721,46 +693,46 @@ The ItemFacade is a wrapper around one line-item.
Returns the id.
-### getReferencedId()
+### getLabel()
-* `getReferenceId()` returns the id of the referenced entity of the line-item.
+* `getLabel()` returns the translated label of the line-item.
- E.g. for product line-items this will return the id of the referenced product.
* **Returns** `string` | `null`
- Returns the id of the referenced entity, or null if no entity is referenced.
+ Returns the translated label, or null if none exists.
-### getQuantity()
+### getPayload()
-* `getQuantity()` returns the quantity of the line-item.
+* `getPayload()` returns the payload of this line-item.
-* **Returns** `int`
+* **Returns** [`Shopware\Core\Framework\Script\Facade\ArrayFacade`](./miscellaneous-script-services-reference#arrayfacade)
- Returns the quantity.
+ Returns the payload as `ArrayFacade`.
-### getLabel()
+### getPrice()
-* `getLabel()` returns the translated label of the line-item.
+* `getPrice()` returns the calculated price of the line-item.
-* **Returns** `string` | `null`
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\PriceFacade`](./cart-manipulation-script-services-reference#pricefacade) | `null`
- Returns the translated label, or null if none exists.
+ Returns the price of the line-item as a `PriceFacade` or null if the line-item has no calculated price.
-### getPayload()
+### getQuantity()
-* `getPayload()` returns the payload of this line-item.
+* `getQuantity()` returns the quantity of the line-item.
-* **Returns** [`Shopware\Core\Framework\Script\Facade\ArrayFacade`](./miscellaneous-script-services-reference#arrayfacade)
+* **Returns** `int`
- Returns the payload as `ArrayFacade`.
+ Returns the quantity.
-### getChildren()
+### getReferencedId()
-* `getChildren()` returns the child line-items of this line-item.
+* `getReferenceId()` returns the id of the referenced entity of the line-item.
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](./cart-manipulation-script-services-reference#itemsfacade)
+ E.g. for product line-items this will return the id of the referenced product.
+* **Returns** `string` | `null`
- Returns the children as a `ItemsFacade`, that may be empty if no children exist.
+ Returns the id of the referenced entity, or null if no entity is referenced.
### getType()
@@ -771,6 +743,34 @@ The ItemFacade is a wrapper around one line-item.
The type of the line-item.
+### take()
+
+* `take()` splits an existing line-item by a given quantity.
+
+ It removes the given quantity from the existing line-item and returns a new line-item with exactly that quantity.
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
+
+ Returns the new line-item as an `ItemFacade` or null if taking is not possible because the line-item has no sufficient quantity.
+* **Arguments:**
+ * *`int`* **quantity**: The quantity that should be taken.
+ * *`string` | `null`* **key**: Optional: The id of the new line-item. A random UUID will be used if none is provided.
+
+ Default: `null`
+* **Examples:**
+ * Take a quantity of 2 from an existing product line-item and add it to the cart again.
+
+ ```twig
+ {# @var services \Shopware\Core\Framework\Script\ServiceStubs #}
+
+ {% do services.cart.products.add(hook.ids.get('p1'), 5) %}
+
+ {% set product = services.cart.products.get(hook.ids.get('p1')) %}
+
+ {% set split = product.take(2, 'new-key') %}
+
+ {% do services.cart.products.add(split) %}
+ ```
+
_________
## [`Shopware\Core\Checkout\Cart\Facade\ItemsFacade`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Facade/ItemsFacade.php) {#itemsfacade}
@@ -808,6 +808,15 @@ The ItemsFacade is a wrapper around a collection of line-items.
{% do services.cart.discount('my-discount', 'absolute', price, 'Fancy discount') %}
```
+### count()
+
+* `count()` returns the count of line-items in this collection.
+
+ Note that it does only count the line-items directly in this collection and not child line-items of those.
+* **Returns** `int`
+
+ The number of line-items in this collection.
+
### get()
* `get()` returns the line-item with the given id from this collection.
@@ -818,15 +827,6 @@ The ItemsFacade is a wrapper around a collection of line-items.
* **Arguments:**
* *`string`* **id**: The id of the line-item that should be returned.
-### count()
-
-* `count()` returns the count of line-items in this collection.
-
- Note that it does only count the line-items directly in this collection and not child line-items of those.
-* **Returns** `int`
-
- The number of line-items in this collection.
-
### has()
* `has()` checks if a line-item with the given id exists in this collection.
@@ -858,22 +858,55 @@ _________
The PriceFacade is a wrapper around a price.
-### getTotal()
+### change()
-* `getTotal()` returns the total price for the line-item.
+* `change()` allows a price overwrite of the current price scope. The provided price will be recalculated
+over the quantity price calculator to consider quantity, tax rule and cash rounding configurations.
-* **Returns** `float`
+* **Arguments:**
+ * *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
+* **Examples:**
+ * Overwrite prices with a static defined collection
- The total price as float.
+ ```twig
+ {% do product.calculatedPrices.change([
+ { to: 20, price: services.price.create({ 'default': { 'gross': 15, 'net': 15} }) },
+ { to: 30, price: services.price.create({ 'default': { 'gross': 10, 'net': 10} }) },
+ { to: null, price: services.price.create({ 'default': { 'gross': 5, 'net': 5} }) },
+ ]) %}
+ ```
-### getUnit()
+### create()
-* `getUnit()` returns the unit price for the line-item.
+* `create()` creates a new `PriceCollection` based on an array of prices.
- This is equivalent to the total price of the line-item with the quantity 1.
-* **Returns** `float`
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
- The price per unit as float.
+ Returns the newly created `PriceCollection`.
+* **Arguments:**
+ * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
+* **Examples:**
+ * Create a new Price in the default currency.
+
+ ```twig
+ {% set price = services.cart.price.create({
+ 'default': { 'gross': 19.99, 'net': 19.99}
+ }) %}
+ ```
+
+### discount()
+
+* `discount()` allows a percentage discount calculation of the current price scope. The provided value will be ensured to be negative via `abs(value) * -1`.
+
+ The provided discount is interpreted as a percentage value and will be applied to the unit price and the total price as well.
+* **Arguments:**
+ * *`float`* **value**: The percentage value of the discount. The value will be ensured to be negative via `abs(value) * -1`.
+* **Examples:**
+ * Adds a 10% discount to the existing calculated price
+
+ ```twig
+ {% do product.calculatedPrice.discount(10) %}
+ ```
### getQuantity()
@@ -883,6 +916,14 @@ The PriceFacade is a wrapper around a price.
Returns the quantity.
+### getRules()
+
+* `getRules()` returns the tax rules that were used to calculate the price.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Tax\Struct\TaxRuleCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Tax/Struct/TaxRuleCollection.php)
+
+ Returns the tax rules.
+
### getTaxes()
* `getTaxes()` returns the calculated taxes of the price.
@@ -891,82 +932,59 @@ The PriceFacade is a wrapper around a price.
Returns the calculated taxes.
-### getRules()
+### getTotal()
-* `getRules()` returns the tax rules that were used to calculate the price.
+* `getTotal()` returns the total price for the line-item.
-* **Returns** [`Shopware\Core\Checkout\Cart\Tax\Struct\TaxRuleCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Tax/Struct/TaxRuleCollection.php)
+* **Returns** `float`
- Returns the tax rules.
+ The total price as float.
-### change()
+### getUnit()
-* `change()` allows a price overwrite of the current price scope. The provided price will be recalculated
-over the quantity price calculator to consider quantity, tax rule and cash rounding configurations.
+* `getUnit()` returns the unit price for the line-item.
-* **Arguments:**
- * *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
-* **Examples:**
- * Overwrite prices with a static defined collection
+ This is equivalent to the total price of the line-item with the quantity 1.
+* **Returns** `float`
- ```twig
- {% do product.calculatedPrices.change([
- { to: 20, price: services.price.create({ 'default': { 'gross': 15, 'net': 15} }) },
- { to: 30, price: services.price.create({ 'default': { 'gross': 10, 'net': 10} }) },
- { to: null, price: services.price.create({ 'default': { 'gross': 5, 'net': 5} }) },
- ]) %}
- ```
+ The price per unit as float.
-### plus()
+### minus()
-* `plus()` allows a price addition of the current price scope. The provided price will be recalculated via the quantity price calculator.
+* `minus()` allows a price subtraction of the current price scope. The provided price will be recalculated via the quantity price calculator.
- The provided price is interpreted as a unit price and will be added to the current unit price.
+ The provided price is interpreted as a unit price and will reduce to the current unit price.
The total price is calculated afterwards considering quantity, tax rule and cash rounding configurations.
* **Arguments:**
* *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
* **Examples:**
- * Plus a static defined price to the existing calculated price
+ * Minus a static defined price to the existing calculated price
```twig
{% set price = services.price.create({
'default': { 'gross': 1.5, 'net': 1.5}
}) %}
- {% do product.calculatedPrice.plus(price) %}
+ {% do product.calculatedPrice.minus(price) %}
```
-### minus()
+### plus()
-* `minus()` allows a price subtraction of the current price scope. The provided price will be recalculated via the quantity price calculator.
+* `plus()` allows a price addition of the current price scope. The provided price will be recalculated via the quantity price calculator.
- The provided price is interpreted as a unit price and will reduce to the current unit price.
+ The provided price is interpreted as a unit price and will be added to the current unit price.
The total price is calculated afterwards considering quantity, tax rule and cash rounding configurations.
* **Arguments:**
* *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
* **Examples:**
- * Minus a static defined price to the existing calculated price
+ * Plus a static defined price to the existing calculated price
```twig
{% set price = services.price.create({
'default': { 'gross': 1.5, 'net': 1.5}
}) %}
- {% do product.calculatedPrice.minus(price) %}
- ```
-
-### discount()
-
-* `discount()` allows a percentage discount calculation of the current price scope. The provided value will be ensured to be negative via `abs(value) * -1`.
-
- The provided discount is interpreted as a percentage value and will be applied to the unit price and the total price as well.
-* **Arguments:**
- * *`float`* **value**: The percentage value of the discount. The value will be ensured to be negative via `abs(value) * -1`.
-* **Examples:**
- * Adds a 10% discount to the existing calculated price
-
- ```twig
- {% do product.calculatedPrice.discount(10) %}
+ {% do product.calculatedPrice.plus(price) %}
```
### surcharge()
@@ -983,24 +1001,6 @@ over the quantity price calculator to consider quantity, tax rule and cash round
{% do product.calculatedPrice.surcharge(10) %}
```
-### create()
-
-* `create()` creates a new `PriceCollection` based on an array of prices.
-
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
-
- Returns the newly created `PriceCollection`.
-* **Arguments:**
- * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
-* **Examples:**
- * Create a new Price in the default currency.
-
- ```twig
- {% set price = services.cart.price.create({
- 'default': { 'gross': 19.99, 'net': 19.99}
- }) %}
- ```
-
_________
## [services.price (`Shopware\Core\Checkout\Cart\Facade\PriceFactory`)](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Facade/PriceFactory.php) {#pricefactory}
@@ -1031,22 +1031,6 @@ _________
The ProductsFacade is a wrapper around a collection of product line-items.
-### get()
-
-* `get()` returns the product line-item with the given product id.
-
-* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
-
- The line-item associated with the given product id, or null if it does not exist.
-* **Arguments:**
- * *`string`* **productId**: The id of the product, of which the line-item should be returned.
-* **Examples:**
- * Get a product line-item by id.
-
- ```twig
- {% set product = services.cart.products.get(hook.ids.get('p1')) %}
- ```
-
### add()
* `add()` adds a new product line-item to this collection.
@@ -1067,6 +1051,15 @@ The ProductsFacade is a wrapper around a collection of product line-items.
{% do services.cart.products.add(hook.ids.get('p1')) %}
```
+### count()
+
+* `count()` returns the count of line-items in this collection.
+
+ Note that it does only count the line-items directly in this collection and not child line-items of those.
+* **Returns** `int`
+
+ The number of line-items in this collection.
+
### create()
* `create()` creates a new product line-item for the product with the given id in the given quantity.
@@ -1081,14 +1074,21 @@ The ProductsFacade is a wrapper around a collection of product line-items.
Default: `1`
-### count()
+### get()
-* `count()` returns the count of line-items in this collection.
+* `get()` returns the product line-item with the given product id.
- Note that it does only count the line-items directly in this collection and not child line-items of those.
-* **Returns** `int`
+* **Returns** [`Shopware\Core\Checkout\Cart\Facade\ItemFacade`](./cart-manipulation-script-services-reference#itemfacade) | `null`
- The number of line-items in this collection.
+ The line-item associated with the given product id, or null if it does not exist.
+* **Arguments:**
+ * *`string`* **productId**: The id of the product, of which the line-item should be returned.
+* **Examples:**
+ * Get a product line-item by id.
+
+ ```twig
+ {% set product = services.cart.products.get(hook.ids.get('p1')) %}
+ ```
### has()
@@ -1129,12 +1129,13 @@ The StatesFacade allows access to the current cart states and functions.
* **Arguments:**
* *`string`* **states**: One or more strings that will be stored on the cart.
-### remove()
+### get()
-* `remove()` removes the given state from the cart, if it existed.
+* `get()` returns all states that are present on the cart.
-* **Arguments:**
- * *`string`* **state**: The state that should be removed.
+* **Returns** `array`
+
+ An array containing all current states of the cart.
### has()
@@ -1146,12 +1147,11 @@ The StatesFacade allows access to the current cart states and functions.
* **Arguments:**
* *`string`* **states**: One or more strings that should be checked.
-### get()
-
-* `get()` returns all states that are present on the cart.
+### remove()
-* **Returns** `array`
+* `remove()` removes the given state from the cart, if it existed.
- An array containing all current states of the cart.
+* **Arguments:**
+ * *`string`* **state**: The state that should be removed.
_________
diff --git a/resources/references/app-reference/script-reference/custom-endpoint-script-services-reference.md b/resources/references/app-reference/script-reference/custom-endpoint-script-services-reference.md
index e8a6c7be2a..a957e1b8fe 100644
--- a/resources/references/app-reference/script-reference/custom-endpoint-script-services-reference.md
+++ b/resources/references/app-reference/script-reference/custom-endpoint-script-services-reference.md
@@ -67,34 +67,6 @@ _________
The `writer` service allows you to write data, that is stored inside shopware.
Keep in mind that your app needs to have the correct permissions for the data it writes through this service.
-### upsert()
-
-* The `upsert()` method allows you to create or update entities inside the database.
-
- If you pass an `id` in the payload it will do an update if an entity with that `id` already exists, otherwise it will be a create.
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Event\EntityWrittenContainerEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Event/EntityWrittenContainerEvent.php)
-
- The WriteEvents that were generated by executing the `upsert()`.
-* **Arguments:**
- * *`string`* **entityName**: The name of the entity you want to upsert, e.g. `product` or `media`.
- * *`array`* **payload**: The payload you want to upsert, as a list of associative arrays, where each associative array represents the payload for one entity.
-* **Examples:**
- * Create a new entity.
-
- ```twig
- {% do services.writer.upsert('tax', [
- { 'name': 'new Tax', 'taxRate': 99.9 }
- ]) %}
- ```
-
- * Update an existing entity.
-
- ```twig
- {% do services.writer.upsert('product', [
- { 'id': hook.productId, 'active': true }
- ]) %}
- ```
-
### delete()
* The `delete()` method allows you to delete entities from the database.
@@ -147,6 +119,34 @@ Keep in mind that your app needs to have the correct permissions for the data it
{% do services.writer.sync(payload) %}
```
+### upsert()
+
+* The `upsert()` method allows you to create or update entities inside the database.
+
+ If you pass an `id` in the payload it will do an update if an entity with that `id` already exists, otherwise it will be a create.
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Event\EntityWrittenContainerEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Event/EntityWrittenContainerEvent.php)
+
+ The WriteEvents that were generated by executing the `upsert()`.
+* **Arguments:**
+ * *`string`* **entityName**: The name of the entity you want to upsert, e.g. `product` or `media`.
+ * *`array`* **payload**: The payload you want to upsert, as a list of associative arrays, where each associative array represents the payload for one entity.
+* **Examples:**
+ * Create a new entity.
+
+ ```twig
+ {% do services.writer.upsert('tax', [
+ { 'name': 'new Tax', 'taxRate': 99.9 }
+ ]) %}
+ ```
+
+ * Update an existing entity.
+
+ ```twig
+ {% do services.writer.upsert('product', [
+ { 'id': hook.productId, 'active': true }
+ ]) %}
+ ```
+
_________
## [services.response (`Shopware\Core\Framework\Script\Api\ScriptResponseFactoryFacade`)](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponseFactoryFacade.php) {#scriptresponsefactoryfacade}
diff --git a/resources/references/app-reference/script-reference/data-loading-script-services-reference.md b/resources/references/app-reference/script-reference/data-loading-script-services-reference.md
index 3b520e2a7c..779de716b2 100644
--- a/resources/references/app-reference/script-reference/data-loading-script-services-reference.md
+++ b/resources/references/app-reference/script-reference/data-loading-script-services-reference.md
@@ -13,6 +13,66 @@ nav:
The `repository` service allows you to query data, that is stored inside shopware.
Keep in mind that your app needs to have the correct permissions for the data it queries through this service.
+### aggregate()
+
+* The `aggregate()` method allows you to execute aggregations specified in the given criteria.
+
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\AggregationResult\AggregationResultCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/AggregationResult/AggregationResultCollection.php)
+
+ A `AggregationResultCollection` including the results of the aggregations you specified in the criteria.
+* **Arguments:**
+ * *`string`* **entityName**: The name of the Entity you want to aggregate data on, e.g. `product` or `media`.
+ * *`array`* **criteria**: The criteria that define your aggregations.
+* **Examples:**
+ * Aggregate data for multiple entities, e.g. the sum of the gross price of all products.
+
+ ```twig
+ {% set page = hook.page %}
+ {# @var page \Shopware\Storefront\Page\Page #}
+
+ {% set criteria = {
+ 'aggregations': [
+ { 'name': 'sumOfPrices', 'type': 'sum', 'field': 'price.gross' }
+ ]
+ } %}
+
+ {% set sumResult = services.repository.aggregate('product', criteria).get('sumOfPrices') %}
+
+ {% do page.addArrayExtension('myProductAggregations', {
+ 'sum': sumResult.getSum
+ }) %}
+ ```
+
+### ids()
+
+* The `ids()` method allows you to search for the Ids of Entities that match a given criteria.
+
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\IdSearchResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/IdSearchResult.php)
+
+ A `IdSearchResult` including all entity-ids that matched your criteria.
+* **Arguments:**
+ * *`string`* **entityName**: The name of the Entity you want to search for, e.g. `product` or `media`.
+ * *`array`* **criteria**: The criteria used for your search.
+* **Examples:**
+ * Get the Ids of products with the given ProductNumber.
+
+ ```twig
+ {% set page = hook.page %}
+ {# @var page \Shopware\Storefront\Page\Page #}
+
+ {% set criteria = {
+ 'filter': [
+ { 'field': 'productNumber', 'type': 'equals', 'value': 'p1' }
+ ]
+ } %}
+
+ {% set productIds = services.repository.ids('product', criteria).ids %}
+
+ {% do page.addArrayExtension('myProductIds', {
+ 'ids': productIds
+ }) %}
+ ```
+
### search()
* The `search()` method allows you to search for Entities that match a given criteria.
@@ -75,77 +135,77 @@ Keep in mind that your app needs to have the correct permissions for the data it
{% do page.addExtension('myManufacturer', product.manufacturer) %}
```
-### ids()
+_________
-* The `ids()` method allows you to search for the Ids of Entities that match a given criteria.
+## [services.store (`Shopware\Core\Framework\DataAbstractionLayer\Facade\SalesChannelRepositoryFacade`)](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Facade/SalesChannelRepositoryFacade.php) {#saleschannelrepositoryfacade}
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\IdSearchResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/IdSearchResult.php)
+The `store` service can be used to access publicly available `store-api` data.
+As the data is publicly available your app does not need any additional permissions to use this service,
+however querying data and also loading associations is restricted to the entities that are also available through the `store-api`.
- A `IdSearchResult` including all entity-ids that matched your criteria.
+Notice that the returned entities are already processed for the storefront,
+this means that e.g. product prices are already calculated based on the current context.
+
+### aggregate()
+
+* The `aggregate()` method allows you to execute aggregations specified in the given criteria.
+
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\AggregationResult\AggregationResultCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/AggregationResult/AggregationResultCollection.php)
+
+ A `AggregationResultCollection` including the results of the aggregations you specified in the criteria.
* **Arguments:**
- * *`string`* **entityName**: The name of the Entity you want to search for, e.g. `product` or `media`.
- * *`array`* **criteria**: The criteria used for your search.
+ * *`string`* **entityName**: The name of the Entity you want to aggregate data on, e.g. `product` or `media`.
+ * *`array`* **criteria**: The criteria that define your aggregations.
* **Examples:**
- * Get the Ids of products with the given ProductNumber.
+ * Aggregate data for multiple entities, e.g. the sum of the children of all products.
```twig
{% set page = hook.page %}
{# @var page \Shopware\Storefront\Page\Page #}
{% set criteria = {
- 'filter': [
- { 'field': 'productNumber', 'type': 'equals', 'value': 'p1' }
+ 'aggregations': [
+ { 'name': 'sumOfChildren', 'type': 'sum', 'field': 'childCount' }
]
} %}
- {% set productIds = services.repository.ids('product', criteria).ids %}
+ {% set sumResult = services.store.aggregate('product', criteria).get('sumOfChildren') %}
- {% do page.addArrayExtension('myProductIds', {
- 'ids': productIds
+ {% do page.addArrayExtension('myProductAggregations', {
+ 'sum': sumResult.getSum
}) %}
```
-### aggregate()
+### ids()
-* The `aggregate()` method allows you to execute aggregations specified in the given criteria.
+* The `ids()` method allows you to search for the Ids of Entities that match a given criteria.
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\AggregationResult\AggregationResultCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/AggregationResult/AggregationResultCollection.php)
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\IdSearchResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/IdSearchResult.php)
- A `AggregationResultCollection` including the results of the aggregations you specified in the criteria.
+ A `IdSearchResult` including all entity-ids that matched your criteria.
* **Arguments:**
- * *`string`* **entityName**: The name of the Entity you want to aggregate data on, e.g. `product` or `media`.
- * *`array`* **criteria**: The criteria that define your aggregations.
+ * *`string`* **entityName**: The name of the Entity you want to search for, e.g. `product` or `media`.
+ * *`array`* **criteria**: The criteria used for your search.
* **Examples:**
- * Aggregate data for multiple entities, e.g. the sum of the gross price of all products.
+ * Get the Ids of products with the given ProductNumber.
```twig
{% set page = hook.page %}
{# @var page \Shopware\Storefront\Page\Page #}
{% set criteria = {
- 'aggregations': [
- { 'name': 'sumOfPrices', 'type': 'sum', 'field': 'price.gross' }
+ 'filter': [
+ { 'field': 'productNumber', 'type': 'equals', 'value': 'p1' }
]
} %}
- {% set sumResult = services.repository.aggregate('product', criteria).get('sumOfPrices') %}
+ {% set productIds = services.store.ids('product', criteria).ids %}
- {% do page.addArrayExtension('myProductAggregations', {
- 'sum': sumResult.getSum
+ {% do page.addArrayExtension('myProductIds', {
+ 'ids': productIds
}) %}
```
-_________
-
-## [services.store (`Shopware\Core\Framework\DataAbstractionLayer\Facade\SalesChannelRepositoryFacade`)](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Facade/SalesChannelRepositoryFacade.php) {#saleschannelrepositoryfacade}
-
-The `store` service can be used to access publicly available `store-api` data.
-As the data is publicly available your app does not need any additional permissions to use this service,
-however querying data and also loading associations is restricted to the entities that are also available through the `store-api`.
-
-Notice that the returned entities are already processed for the storefront,
-this means that e.g. product prices are already calculated based on the current context.
-
### search()
* The `search()` method allows you to search for Entities that match a given criteria.
@@ -208,64 +268,4 @@ this means that e.g. product prices are already calculated based on the current
{% do page.addExtension('myManufacturer', product.manufacturer) %}
```
-### ids()
-
-* The `ids()` method allows you to search for the Ids of Entities that match a given criteria.
-
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\IdSearchResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/IdSearchResult.php)
-
- A `IdSearchResult` including all entity-ids that matched your criteria.
-* **Arguments:**
- * *`string`* **entityName**: The name of the Entity you want to search for, e.g. `product` or `media`.
- * *`array`* **criteria**: The criteria used for your search.
-* **Examples:**
- * Get the Ids of products with the given ProductNumber.
-
- ```twig
- {% set page = hook.page %}
- {# @var page \Shopware\Storefront\Page\Page #}
-
- {% set criteria = {
- 'filter': [
- { 'field': 'productNumber', 'type': 'equals', 'value': 'p1' }
- ]
- } %}
-
- {% set productIds = services.store.ids('product', criteria).ids %}
-
- {% do page.addArrayExtension('myProductIds', {
- 'ids': productIds
- }) %}
- ```
-
-### aggregate()
-
-* The `aggregate()` method allows you to execute aggregations specified in the given criteria.
-
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Search\AggregationResult\AggregationResultCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Search/AggregationResult/AggregationResultCollection.php)
-
- A `AggregationResultCollection` including the results of the aggregations you specified in the criteria.
-* **Arguments:**
- * *`string`* **entityName**: The name of the Entity you want to aggregate data on, e.g. `product` or `media`.
- * *`array`* **criteria**: The criteria that define your aggregations.
-* **Examples:**
- * Aggregate data for multiple entities, e.g. the sum of the children of all products.
-
- ```twig
- {% set page = hook.page %}
- {# @var page \Shopware\Storefront\Page\Page #}
-
- {% set criteria = {
- 'aggregations': [
- { 'name': 'sumOfChildren', 'type': 'sum', 'field': 'childCount' }
- ]
- } %}
-
- {% set sumResult = services.store.aggregate('product', criteria).get('sumOfChildren') %}
-
- {% do page.addArrayExtension('myProductAggregations', {
- 'sum': sumResult.getSum
- }) %}
- ```
-
_________
diff --git a/resources/references/app-reference/script-reference/miscellaneous-script-services-reference.md b/resources/references/app-reference/script-reference/miscellaneous-script-services-reference.md
index d4755669eb..80d6d2989e 100644
--- a/resources/references/app-reference/script-reference/miscellaneous-script-services-reference.md
+++ b/resources/references/app-reference/script-reference/miscellaneous-script-services-reference.md
@@ -28,37 +28,38 @@ Examples:
{% endblock %}
```
-### ip()
+### cookies()
-* The ip method returns the real client ip address
+* The method `cookies` returns all request cookies as an array.
-* **Returns** `string` | `null`
+* **Returns** `array`
- request client ip address
+ request cookies
-### scheme()
+### headers()
-* The scheme method returns the request scheme
+* The method `headers` returns all request headers as an array.
-* **Returns** `string`
+ It is possible to access only the following headers: content-type, content-length, accept, accept-language, user-agent, referer
+* **Returns** `array`
- request scheme
+ request headers
-### method()
+### ip()
-* The method returns the request method in upper case
+* The ip method returns the real client ip address
-* **Returns** `string`
+* **Returns** `string` | `null`
- request method in upper case
+ request client ip address
-### uri()
+### method()
-* The method `uri` returns the request uri with the resolved url
+* The method returns the request method in upper case
* **Returns** `string`
- request uri
+ request method in upper case
### pathInfo()
@@ -85,22 +86,51 @@ Examples:
request post parameters
-### headers()
+### scheme()
-* The method `headers` returns all request headers as an array.
+* The scheme method returns the request scheme
- It is possible to access only the following headers: content-type, content-length, accept, accept-language, user-agent, referer
-* **Returns** `array`
+* **Returns** `string`
- request headers
+ request scheme
-### cookies()
+### uri()
-* The method `cookies` returns all request cookies as an array.
+* The method `uri` returns the request uri with the resolved url
-* **Returns** `array`
+* **Returns** `string`
- request cookies
+ request uri
+
+_________
+
+## [services.acl (`Shopware\Core\Framework\Script\Api\AclFacade`)](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/AclFacade.php) {#aclfacade}
+
+The `acl` service allows you to check if your app has been granted the specified privilege.
+
+### can()
+
+* The `can()` method allows you to check if your app has been granted the specified privilege.
+
+* **Returns** `bool`
+
+ Returns `true` if the privilege has been granted, `false` otherwise.
+* **Arguments:**
+ * *`string`* **privilege**: The privilege you wish to check
+* **Examples:**
+ * Check for the `product:read` permission and query a product if the permission is granted.
+
+ ```twig
+ {% set canReadProduct = services.acl.can('product:read') %}
+ {% if canReadProduct %}
+ {% set criteria = {
+ 'ids': [ hook.productId ]
+ } %}
+
+ {% set product = services.repository.search('product', criteria).first %}
+ {% do page.addExtension('myProduct', product) %}
+ {% endif %}
+ ```
_________
@@ -122,20 +152,35 @@ Examples:
{% foreach array as key => value %}
```
-### set()
+### all()
-* `set()` adds a new element to the array using the given key.
+* `all()` function returns all elements of this array.
+
+* **Returns** `array`
+
+ Returns all elements of this array.
+
+### count()
+
+* `count()` returns the count of elements inside this array.
+
+* **Returns** `int`
+
+ Returns the count of elements.
+
+### merge()
+
+* `merge()` recursively merges the array with the given array.
* **Arguments:**
- * *`string|int`* **key**: The array key.
- * *`mixed`* **value**: The value that should be added.
+ * *`array<string|int,mixed>|\ArrayFacade`* **array**: The array that should be merged with this array. Either a plain `array` or another `ArrayFacade`.
* **Examples:**
- * Add a new element with key `test` and value 1.
+ * Merge two arrays.
```twig
- {% set product = services.cart.products.get(hook.ids.get('p1')) %}
+ {% set my_array = array({'bar': 'foo', 'baz': true}) %}
- {% do product.payload.set('test', 1) %}
+ {% do product.payload.merge(my_array) %}
```
### push()
@@ -145,13 +190,6 @@ Examples:
* **Arguments:**
* *`mixed`* **value**: The value that should be added.
-### removeBy()
-
-* `removeBy()` removes the value at the given index from the array.
-
-* **Arguments:**
- * *`string|int`* **index**: The index that should be removed.
-
### remove()
* `remove()` removes the given value from the array. It does nothing if the provided value does not exist in the array.
@@ -159,24 +197,12 @@ Examples:
* **Arguments:**
* *`mixed`* **value**: The value that should be removed.
-### reset()
-
-* `reset()` removes all entries from the array.
-
-### merge()
+### removeBy()
-* `merge()` recursively merges the array with the given array.
+* `removeBy()` removes the value at the given index from the array.
* **Arguments:**
- * *`array<string|int,mixed>|\ArrayFacade`* **array**: The array that should be merged with this array. Either a plain `array` or another `ArrayFacade`.
-* **Examples:**
- * Merge two arrays.
-
- ```twig
- {% set my_array = array({'bar': 'foo', 'baz': true}) %}
-
- {% do product.payload.merge(my_array) %}
- ```
+ * *`string|int`* **index**: The index that should be removed.
### replace()
@@ -193,21 +219,25 @@ Examples:
{% do product.payload.replace(second) %}
```
-### count()
-
-* `count()` returns the count of elements inside this array.
-
-* **Returns** `int`
+### reset()
- Returns the count of elements.
+* `reset()` removes all entries from the array.
-### all()
+### set()
-* `all()` function returns all elements of this array.
+* `set()` adds a new element to the array using the given key.
-* **Returns** `array`
+* **Arguments:**
+ * *`string|int`* **key**: The array key.
+ * *`mixed`* **value**: The value that should be added.
+* **Examples:**
+ * Add a new element with key `test` and value 1.
- Returns all elements of this array.
+ ```twig
+ {% set product = services.cart.products.get(hook.ids.get('p1')) %}
+
+ {% do product.payload.set('test', 1) %}
+ ```
_________
@@ -215,42 +245,42 @@ _________
The `config` service allows you to access the shop's and your app's configuration values.
-### get()
+### app()
-* The `get()` method allows you to access all config values of the store.
+* The `app()` method allows you to access the config values your app's configuration.
- Notice that your app needs the `system_config:read` privilege to use this method.
-* **Returns** `array|bool|float|int|string|null`
+ Notice that your app does not need any additional privileges to use this method, as you can only access your own app's configuration.
+* **Returns** `array<string,mixed>|bool|float|int|string|null`
* **Arguments:**
- * *`string`* **key**: The key of the configuration value e.g. `core.listing.defaultSorting`.
+ * *`string`* **key**: The name of the configuration value specified in the config.xml e.g. `exampleTextField`.
* *`string` | `null`* **salesChannelId**: The SalesChannelId if you need the config value for a specific SalesChannel, if you don't provide a SalesChannelId, the one of the current Context is used as default.
Default: `null`
* **Examples:**
- * Read an arbitrary system_config value.
+ * Read your app's config value.
```twig
- {% set systemConfig = services.config.get('core.listing.productsPerPage') %}
+ {% set appConfig = services.config.app('app_config') %}
```
-### app()
+### get()
-* The `app()` method allows you to access the config values your app's configuration.
+* The `get()` method allows you to access all config values of the store.
- Notice that your app does not need any additional privileges to use this method, as you can only access your own app's configuration.
-* **Returns** `array|bool|float|int|string|null`
+ Notice that your app needs the `system_config:read` privilege to use this method.
+* **Returns** `array<string,mixed>|bool|float|int|string|null`
* **Arguments:**
- * *`string`* **key**: The name of the configuration value specified in the config.xml e.g. `exampleTextField`.
+ * *`string`* **key**: The key of the configuration value e.g. `core.listing.defaultSorting`.
* *`string` | `null`* **salesChannelId**: The SalesChannelId if you need the config value for a specific SalesChannel, if you don't provide a SalesChannelId, the one of the current Context is used as default.
Default: `null`
* **Examples:**
- * Read your app's config value.
+ * Read an arbitrary system_config value.
```twig
- {% set appConfig = services.config.app('app_config') %}
+ {% set systemConfig = services.config.get('core.listing.productsPerPage') %}
```
_________
diff --git a/resources/references/app-reference/script-reference/product-script-services-reference.md b/resources/references/app-reference/script-reference/product-script-services-reference.md
index 862ff6dd88..449a89908b 100644
--- a/resources/references/app-reference/script-reference/product-script-services-reference.md
+++ b/resources/references/app-reference/script-reference/product-script-services-reference.md
@@ -12,17 +12,6 @@ nav:
The CheapestPriceFacade is a wrapper around the cheapest price of the product.
-### reset()
-
-* `reset()` allows to reset the cheapest price to the original price of the product.
-
-* **Examples:**
- * Reset the product price to default
-
- ```twig
- {% do variant.calculatedCheapestPrice.change(price) %}
- ```
-
### change()
* `change()` allows to overwrite the cheapest price of the current price scope. The provided price will be recalculated
@@ -56,22 +45,37 @@ over the quantity price calculator to consider quantity, tax rule and cash round
{% do variant.calculatedCheapestPrice.discount(10) %}
```
-### getTotal()
+### create()
-* `getTotal()` returns the total price for the line-item.
+* `create()` creates a new `PriceCollection` based on an array of prices.
-* **Returns** `float`
+* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
- The total price as float.
+ Returns the newly created `PriceCollection`.
+* **Arguments:**
+ * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
+* **Examples:**
+ * Create a new Price in the default currency.
-### getUnit()
+ ```twig
+ {% set price = services.cart.price.create({
+ 'default': { 'gross': 19.99, 'net': 19.99}
+ }) %}
+ ```
-* `getUnit()` returns the unit price for the line-item.
+### discount()
- This is equivalent to the total price of the line-item with the quantity 1.
-* **Returns** `float`
+* `discount()` allows a percentage discount calculation of the current price scope. The provided value will be ensured to be negative via `abs(value) * -1`.
- The price per unit as float.
+ The provided discount is interpreted as a percentage value and will be applied to the unit price and the total price as well.
+* **Arguments:**
+ * *`float`* **value**: The percentage value of the discount. The value will be ensured to be negative via `abs(value) * -1`.
+* **Examples:**
+ * Adds a 10% discount to the existing calculated price
+
+ ```twig
+ {% do product.calculatedPrice.discount(10) %}
+ ```
### getQuantity()
@@ -81,6 +85,14 @@ over the quantity price calculator to consider quantity, tax rule and cash round
Returns the quantity.
+### getRules()
+
+* `getRules()` returns the tax rules that were used to calculate the price.
+
+* **Returns** [`Shopware\Core\Checkout\Cart\Tax\Struct\TaxRuleCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Tax/Struct/TaxRuleCollection.php)
+
+ Returns the tax rules.
+
### getTaxes()
* `getTaxes()` returns the calculated taxes of the price.
@@ -89,64 +101,70 @@ over the quantity price calculator to consider quantity, tax rule and cash round
Returns the calculated taxes.
-### getRules()
+### getTotal()
-* `getRules()` returns the tax rules that were used to calculate the price.
+* `getTotal()` returns the total price for the line-item.
-* **Returns** [`Shopware\Core\Checkout\Cart\Tax\Struct\TaxRuleCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Tax/Struct/TaxRuleCollection.php)
+* **Returns** `float`
- Returns the tax rules.
+ The total price as float.
-### plus()
+### getUnit()
-* `plus()` allows a price addition of the current price scope. The provided price will be recalculated via the quantity price calculator.
+* `getUnit()` returns the unit price for the line-item.
- The provided price is interpreted as a unit price and will be added to the current unit price.
+ This is equivalent to the total price of the line-item with the quantity 1.
+* **Returns** `float`
+
+ The price per unit as float.
+
+### minus()
+
+* `minus()` allows a price subtraction of the current price scope. The provided price will be recalculated via the quantity price calculator.
+
+ The provided price is interpreted as a unit price and will reduce to the current unit price.
The total price is calculated afterwards considering quantity, tax rule and cash rounding configurations.
* **Arguments:**
* *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
* **Examples:**
- * Plus a static defined price to the existing calculated price
+ * Minus a static defined price to the existing calculated price
```twig
{% set price = services.price.create({
'default': { 'gross': 1.5, 'net': 1.5}
}) %}
- {% do product.calculatedPrice.plus(price) %}
+ {% do product.calculatedPrice.minus(price) %}
```
-### minus()
+### plus()
-* `minus()` allows a price subtraction of the current price scope. The provided price will be recalculated via the quantity price calculator.
+* `plus()` allows a price addition of the current price scope. The provided price will be recalculated via the quantity price calculator.
- The provided price is interpreted as a unit price and will reduce to the current unit price.
+ The provided price is interpreted as a unit price and will be added to the current unit price.
The total price is calculated afterwards considering quantity, tax rule and cash rounding configurations.
* **Arguments:**
* *[`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)* **price**: The provided price can be a fetched price from the database or generated over the `PriceFactory` statically
* **Examples:**
- * Minus a static defined price to the existing calculated price
+ * Plus a static defined price to the existing calculated price
```twig
{% set price = services.price.create({
'default': { 'gross': 1.5, 'net': 1.5}
}) %}
- {% do product.calculatedPrice.minus(price) %}
+ {% do product.calculatedPrice.plus(price) %}
```
-### discount()
+### reset()
-* `discount()` allows a percentage discount calculation of the current price scope. The provided value will be ensured to be negative via `abs(value) * -1`.
+* `reset()` allows to reset the cheapest price to the original price of the product.
- The provided discount is interpreted as a percentage value and will be applied to the unit price and the total price as well.
-* **Arguments:**
- * *`float`* **value**: The percentage value of the discount. The value will be ensured to be negative via `abs(value) * -1`.
* **Examples:**
- * Adds a 10% discount to the existing calculated price
+ * Reset the product price to default
```twig
- {% do product.calculatedPrice.discount(10) %}
+ {% do variant.calculatedCheapestPrice.change(price) %}
```
### surcharge()
@@ -163,24 +181,6 @@ over the quantity price calculator to consider quantity, tax rule and cash round
{% do product.calculatedPrice.surcharge(10) %}
```
-### create()
-
-* `create()` creates a new `PriceCollection` based on an array of prices.
-
-* **Returns** [`Shopware\Core\Framework\DataAbstractionLayer\Pricing\PriceCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/DataAbstractionLayer/Pricing/PriceCollection.php)
-
- Returns the newly created `PriceCollection`.
-* **Arguments:**
- * *`array`* **price**: The prices for the new collection, indexed by the currency-id or iso-code of the currency.
-* **Examples:**
- * Create a new Price in the default currency.
-
- ```twig
- {% set price = services.cart.price.create({
- 'default': { 'gross': 19.99, 'net': 19.99}
- }) %}
- ```
-
_________
## [`Shopware\Core\Content\Product\Hook\Pricing\PriceCollectionFacade`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Product/Hook/Pricing/PriceCollectionFacade.php) {#pricecollectionfacade}
@@ -188,10 +188,6 @@ _________
The PriceCollectionFacade is a wrapper around the calculated price collection of a product. It allows to manipulate the quantity
prices by resetting or changing the price collection.
-### reset()
-
-* The `reset()` functions allows to reset the complete price collection.
-
### change()
* The `change()` function allows a complete overwrite of the product quantity prices
@@ -217,6 +213,10 @@ prices by resetting or changing the price collection.
Returns the number of prices which are stored inside this collection
+### reset()
+
+* The `reset()` functions allows to reset the complete price collection.
+
_________
## [`Shopware\Core\Content\Product\Hook\Pricing\ProductProxy`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Product/Hook/Pricing/ProductProxy.php) {#productproxy}
diff --git a/resources/references/app-reference/script-reference/script-hooks-reference.md b/resources/references/app-reference/script-reference/script-hooks-reference.md
index 11ed37d7b1..429749486b 100644
--- a/resources/references/app-reference/script-reference/script-hooks-reference.md
+++ b/resources/references/app-reference/script-reference/script-hooks-reference.md
@@ -20,8 +20,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.5.0.0 |
| **Class** | `Shopware\Core\Checkout\Payment\Hook\PaymentMethodRouteHook` |
| **Description** | Triggered when PaymentMethodRoute is requested
|
-| **Available Data** | collection: [`Shopware\Core\Checkout\Payment\PaymentMethodCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Payment/PaymentMethodCollection.php)
onlyAvailable: `bool`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
|
+| **Available Data** | collection: [`Shopware\Core\Checkout\Payment\PaymentMethodCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Payment/PaymentMethodCollection.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
onlyAvailable: `bool`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### shipping-method-route-request
@@ -32,8 +32,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.5.0.0 |
| **Class** | `Shopware\Core\Checkout\Shipping\Hook\ShippingMethodRouteHook` |
| **Description** | Triggered when ShippingMethodRoute is requested
|
-| **Available Data** | collection: [`Shopware\Core\Checkout\Shipping\ShippingMethodCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Shipping/ShippingMethodCollection.php)
onlyAvailable: `bool`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
|
+| **Available Data** | collection: [`Shopware\Core\Checkout\Shipping\ShippingMethodCollection`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Shipping/ShippingMethodCollection.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
onlyAvailable: `bool`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### product-reviews-widget-loaded
@@ -44,8 +44,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.6.9.0 |
| **Class** | `Shopware\Core\Content\Product\SalesChannel\Review\ProductReviewsWidgetLoadedHook` |
| **Description** | Triggered when the ProductReviewsWidget is loaded
|
-| **Available Data** | reviews: [`Shopware\Core\Content\Product\SalesChannel\Review\ProductReviewResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Product/SalesChannel/Review/ProductReviewResult.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
reviews: [`Shopware\Core\Content\Product\SalesChannel\Review\ProductReviewResult`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Product/SalesChannel/Review/ProductReviewResult.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### customer-group-registration-page-loaded
@@ -56,8 +56,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\CustomerGroupRegistration\CustomerGroupRegistrationPageLoadedHook` |
| **Description** | Triggered when the CustomerGroupRegistrationPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\CustomerGroupRegistration\CustomerGroupRegistrationPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/CustomerGroupRegistration/CustomerGroupRegistrationPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\CustomerGroupRegistration\CustomerGroupRegistrationPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/CustomerGroupRegistration/CustomerGroupRegistrationPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-guest-login-page-loaded
@@ -68,8 +68,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Login\AccountGuestLoginPageLoadedHook` |
| **Description** | Triggered when the AccountGuestLoginPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-login-page-loaded
@@ -80,8 +80,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Login\AccountLoginPageLoadedHook` |
| **Description** | Triggered when the AccountLoginPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-edit-order-page-loaded
@@ -92,8 +92,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Order\AccountEditOrderPageLoadedHook` |
| **Description** | Triggered when the AccountEditOrderPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Order\AccountEditOrderPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountEditOrderPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Order\AccountEditOrderPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountEditOrderPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-order-detail-page-loaded
@@ -104,8 +104,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Order\AccountOrderDetailPageLoadedHook` |
| **Description** | Triggered when the AccountOrderDetailPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Order\AccountOrderDetailPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountOrderDetailPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Order\AccountOrderDetailPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountOrderDetailPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-order-page-loaded
@@ -116,8 +116,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Order\AccountOrderPageLoadedHook` |
| **Description** | Triggered when the AccountOrderPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Order\AccountOrderPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountOrderPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Order\AccountOrderPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Order/AccountOrderPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-overview-page-loaded
@@ -128,8 +128,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Overview\AccountOverviewPageLoadedHook` |
| **Description** | Triggered when the AccountOverviewPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Overview\AccountOverviewPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Overview/AccountOverviewPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Overview\AccountOverviewPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Overview/AccountOverviewPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-profile-page-loaded
@@ -140,8 +140,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Profile\AccountProfilePageLoadedHook` |
| **Description** | Triggered when the AccountProfilePage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Profile\AccountProfilePage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Profile/AccountProfilePage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Profile\AccountProfilePage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Profile/AccountProfilePage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-recover-password-page-loaded
@@ -152,8 +152,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.13.0 |
| **Class** | `Shopware\Storefront\Page\Account\RecoverPassword\AccountRecoverPasswordPageLoadedHook` |
| **Description** | Triggered when the AccountRecoverPasswordPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\RecoverPassword\AccountRecoverPasswordPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/RecoverPassword/AccountRecoverPasswordPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\RecoverPassword\AccountRecoverPasswordPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/RecoverPassword/AccountRecoverPasswordPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### account-register-page-loaded
@@ -164,8 +164,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Account\Register\AccountRegisterPageLoadedHook` |
| **Description** | Triggered when the AccountLoginPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Account\Login\AccountLoginPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Account/Login/AccountLoginPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### address-detail-page-loaded
@@ -176,8 +176,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Address\Detail\AddressDetailPageLoadedHook` |
| **Description** | Triggered when the AddressDetailPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Address\Detail\AddressDetailPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Detail/AddressDetailPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Address\Detail\AddressDetailPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Detail/AddressDetailPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### address-book-widget-loaded
@@ -188,8 +188,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Address\Listing\AddressBookWidgetLoadedHook` |
| **Description** | Triggered when the AddressBookWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Address\Listing\AddressListingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Listing/AddressListingPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Address\Listing\AddressListingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Listing/AddressListingPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### address-listing-page-loaded
@@ -200,8 +200,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Address\Listing\AddressListingPageLoadedHook` |
| **Description** | Triggered when the AddressListingPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Address\Listing\AddressListingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Listing/AddressListingPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Address\Listing\AddressListingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Address/Listing/AddressListingPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-cart-page-loaded
@@ -212,8 +212,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Cart\CheckoutCartPageLoadedHook` |
| **Description** | Triggered when the CheckoutCartPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Cart\CheckoutCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Cart/CheckoutCartPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Cart\CheckoutCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Cart/CheckoutCartPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-confirm-page-loaded
@@ -224,8 +224,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Confirm\CheckoutConfirmPageLoadedHook` |
| **Description** | Triggered when the CheckoutConfirmPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Confirm\CheckoutConfirmPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Confirm/CheckoutConfirmPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Confirm\CheckoutConfirmPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Confirm/CheckoutConfirmPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-finish-page-loaded
@@ -236,8 +236,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Finish\CheckoutFinishPageLoadedHook` |
| **Description** | Triggered when the CheckoutFinishPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Finish\CheckoutFinishPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Finish/CheckoutFinishPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Finish\CheckoutFinishPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Finish/CheckoutFinishPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-info-widget-loaded
@@ -248,8 +248,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Offcanvas\CheckoutInfoWidgetLoadedHook` |
| **Description** | Triggered when the CheckoutInfoWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Offcanvas\OffcanvasCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Offcanvas/OffcanvasCartPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Offcanvas\OffcanvasCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Offcanvas/OffcanvasCartPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-offcanvas-widget-loaded
@@ -260,8 +260,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Offcanvas\CheckoutOffcanvasWidgetLoadedHook` |
| **Description** | Triggered when the CheckoutOffcanvasWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Offcanvas\OffcanvasCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Offcanvas/OffcanvasCartPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Offcanvas\OffcanvasCartPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Offcanvas/OffcanvasCartPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### checkout-register-page-loaded
@@ -272,8 +272,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Checkout\Register\CheckoutRegisterPageLoadedHook` |
| **Description** | Triggered when the CheckoutRegisterPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Checkout\Register\CheckoutRegisterPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Register/CheckoutRegisterPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Checkout\Register\CheckoutRegisterPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Checkout/Register/CheckoutRegisterPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### cms-page-loaded
@@ -284,8 +284,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Cms\CmsPageLoadedHook` |
| **Description** | Triggered when a CmsPage is loaded
|
-| **Available Data** | page: [`Shopware\Core\Content\Cms\CmsPageEntity`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Cms/CmsPageEntity.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Core\Content\Cms\CmsPageEntity`](https://github.com/shopware/shopware/blob/trunk/src/Core/Content/Cms/CmsPageEntity.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### landing-page-loaded
@@ -296,8 +296,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\LandingPage\LandingPageLoadedHook` |
| **Description** | Triggered when the LandingPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\LandingPage\LandingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/LandingPage/LandingPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\LandingPage\LandingPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/LandingPage/LandingPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### maintenance-page-loaded
@@ -308,8 +308,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Maintenance\MaintenancePageLoadedHook` |
| **Description** | Triggered when the MaintenancePage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Maintenance\MaintenancePage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Maintenance/MaintenancePage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Maintenance\MaintenancePage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Maintenance/MaintenancePage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### navigation-page-loaded
@@ -320,8 +320,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Navigation\NavigationPageLoadedHook` |
| **Description** | Triggered when the NavigationPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Navigation\NavigationPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Navigation/NavigationPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Navigation\NavigationPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Navigation/NavigationPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### product-page-loaded
@@ -332,8 +332,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Product\ProductPageLoadedHook` |
| **Description** | Triggered when the ProductPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Product\ProductPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Product/ProductPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Product\ProductPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Product/ProductPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### product-quick-view-widget-loaded
@@ -344,8 +344,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Product\QuickView\ProductQuickViewWidgetLoadedHook` |
| **Description** | Triggered when the ProductQuickViewWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Product\QuickView\MinimalQuickViewPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Product/QuickView/MinimalQuickViewPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Product\QuickView\MinimalQuickViewPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Product/QuickView/MinimalQuickViewPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### search-page-loaded
@@ -356,8 +356,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Search\SearchPageLoadedHook` |
| **Description** | Triggered when the SearchPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Search\SearchPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Search/SearchPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Search\SearchPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Search/SearchPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### search-widget-loaded
@@ -368,8 +368,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Search\SearchWidgetLoadedHook` |
| **Description** | Triggered when the SearchWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Search\SearchPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Search/SearchPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Search\SearchPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Search/SearchPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### sitemap-page-loaded
@@ -380,8 +380,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Sitemap\SitemapPageLoadedHook` |
| **Description** | Triggered when the SitemapPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Sitemap\SitemapPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Sitemap/SitemapPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Sitemap\SitemapPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Sitemap/SitemapPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### suggest-page-loaded
@@ -392,8 +392,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Suggest\SuggestPageLoadedHook` |
| **Description** | Triggered when the SuggestPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Suggest\SuggestPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Suggest/SuggestPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Suggest\SuggestPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Suggest/SuggestPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### guest-wishlist-page-loaded
@@ -404,8 +404,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Wishlist\GuestWishlistPageLoadedHook` |
| **Description** | Triggered when the GuestWishlistPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Wishlist\GuestWishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/GuestWishlistPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Wishlist\GuestWishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/GuestWishlistPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### wishlist-page-loaded
@@ -416,8 +416,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Wishlist\WishlistPageLoadedHook` |
| **Description** | Triggered when the WishlistPage is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Wishlist\WishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/WishlistPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Wishlist\WishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/WishlistPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### wishlist-widget-loaded
@@ -428,8 +428,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Page\Wishlist\WishlistWidgetLoadedHook` |
| **Description** | Triggered when the WishlistWidget is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Page\Wishlist\WishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/WishlistPage.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Page\Wishlist\WishlistPage`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Wishlist/WishlistPage.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### country-state-data-pagelet-loaded
@@ -440,8 +440,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Pagelet\Country\CountryStateDataPageletLoadedHook` |
| **Description** | Triggered when the CountryStateDataPagelet is loaded
|
-| **Available Data** | pagelet: [`Shopware\Storefront\Pagelet\Country\CountryStateDataPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Country/CountryStateDataPagelet.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
pagelet: [`Shopware\Storefront\Pagelet\Country\CountryStateDataPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Country/CountryStateDataPagelet.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### footer-pagelet-loaded
@@ -452,8 +452,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.7.0.0 |
| **Class** | `Shopware\Storefront\Pagelet\Footer\FooterPageletLoadedHook` |
| **Description** | Triggered when the FooterPagelet is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Pagelet\Footer\FooterPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Footer/FooterPagelet.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Pagelet\Footer\FooterPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Footer/FooterPagelet.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### header-pagelet-loaded
@@ -464,8 +464,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.7.0.0 |
| **Class** | `Shopware\Storefront\Pagelet\Header\HeaderPageletLoadedHook` |
| **Description** | Triggered when the HeaderPagelet is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Pagelet\Header\HeaderPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Header/HeaderPagelet.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Pagelet\Header\HeaderPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Header/HeaderPagelet.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### menu-offcanvas-pagelet-loaded
@@ -476,8 +476,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Pagelet\Menu\Offcanvas\MenuOffcanvasPageletLoadedHook` |
| **Description** | Triggered when the MenuOffcanvasPagelet is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Pagelet\Menu\Offcanvas\MenuOffcanvasPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Menu/Offcanvas/MenuOffcanvasPagelet.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Pagelet\Menu\Offcanvas\MenuOffcanvasPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Menu/Offcanvas/MenuOffcanvasPagelet.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### guest-wishlist-pagelet-loaded
@@ -488,8 +488,8 @@ All available Hooks that can be used to load additional data.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Storefront\Pagelet\Wishlist\GuestWishlistPageletLoadedHook` |
| **Description** | Triggered when the GuestWishlistPagelet is loaded
|
-| **Available Data** | page: [`Shopware\Storefront\Pagelet\Wishlist\GuestWishlistPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Wishlist/GuestWishlistPagelet.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
page: [`Shopware\Storefront\Pagelet\Wishlist\GuestWishlistPagelet`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Pagelet/Wishlist/GuestWishlistPagelet.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
## Cart Manipulation
@@ -504,8 +504,8 @@ All available Hooks that can be used to manipulate the cart.
| **Since** | 6.4.8.0 |
| **Class** | `Shopware\Core\Checkout\Cart\Hook\CartHook` |
| **Description** | Triggered during the cart calculation process.
|
-| **Available Data** | salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
cart: [`Shopware\Core\Checkout\Cart\Cart`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Cart.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [cart](./cart-manipulation-script-services-reference#CartFacade)
[price](./cart-manipulation-script-services-reference#PriceFactory)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
|
+| **Available Data** | cart: [`Shopware\Core\Checkout\Cart\Cart`](https://github.com/shopware/shopware/blob/trunk/src/Core/Checkout/Cart/Cart.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [cart](./cart-manipulation-script-services-reference#CartFacade)
[price](./cart-manipulation-script-services-reference#PriceFactory)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
## Custom API endpoint
@@ -520,8 +520,8 @@ All available hooks within the Store-API and API
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\Adapter\Cache\Script\CacheInvalidationHook` |
| **Description** | Triggered whenever an entity is written.
|
-| **Available Data** | event: [`Shopware\Core\Framework\Adapter\Cache\Script\Facade\WrittenEventScriptFacade`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Adapter/Cache/Script/Facade/WrittenEventScriptFacade.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [cache](./custom-endpoint-script-services-reference#CacheInvalidatorFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\Adapter\Cache\Script\Facade\WrittenEventScriptFacade`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Adapter/Cache/Script/Facade/WrittenEventScriptFacade.php)
|
+| **Available Services** | [cache](./custom-endpoint-script-services-reference#CacheInvalidatorFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### api-{hook}
@@ -532,21 +532,21 @@ All available hooks within the Store-API and API
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\Script\Api\ApiHook` |
| **Description** | Triggered when the api endpoint /api/script/{hook} is called
|
-| **Available Data** | name: `string`
request: `array`
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
isPropagationStopped: `bool`
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
isPropagationStopped: `bool`
name: `string`
request: `array`
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `true` |
-#### response
+### response
-| | |
-|:-----------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| **Name** | response |
-| **Since** | 6.6.10.4 |
-| **Class** | `Shopware\Core\Framework\Script\Api\ResponseHook` |
-| **Description** | Triggered on every response
|
-| **Available Data** | routeName: `string`
routeScopes: `array`
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | |
-| **Stoppable** | `false` |
+| | |
+|:-----------------------|:----------------------------------------|
+| **Name** | response |
+| **Since** | 6.6.10.0 |
+| **Class** | `Shopware\Core\Framework\Script\Api\ResponseHook` |
+| **Description** | Triggered on every response
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
response: `Symfony\Component\HttpFoundation\Response`
routeName: `string`
routeScopes: `array`
|
+| **Available Services** | [acl](./miscellaneous-script-services-reference#AclFacade)
|
+| **Stoppable** | `false` |
### store-api-{hook}
@@ -563,8 +563,8 @@ Triggered when the api endpoint /store-api/script/{hook} is called. Used to exec
| **Optional** | `true` |
| **Class** | `Shopware\Core\Framework\Script\Api\StoreApiCacheKeyHook` |
| **Description** | Triggered when the api endpoint /store-api/script/{hook} is called. Used to provide a cache-key based on the request.
Needs to be implemented when your store-api route should be cached. |
-| **Available Data** | cacheKey: `string`
name: `string`
request: `array`
query: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
isPropagationStopped: `bool`
|
-| **Available Services** | |
+| **Available Data** | cacheKey: `string`
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
isPropagationStopped: `bool`
name: `string`
query: `array`
request: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `true` |
#### Function: `response`
@@ -576,8 +576,8 @@ Triggered when the api endpoint /store-api/script/{hook} is called. Used to exec
| **Optional** | `false` |
| **Class** | `Shopware\Core\Framework\Script\Api\StoreApiResponseHook` |
| **Description** | Triggered when the api endpoint /store-api/script/{hook} is called. Used to provide the HTTP-Response.
This function is only called when no response for the provided cache key is cached, or no `cache_key` function implemented. |
-| **Available Data** | name: `string`
request: `array`
query: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
isPropagationStopped: `bool`
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
isPropagationStopped: `bool`
name: `string`
query: `array`
request: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `true` |
### storefront-{hook}
@@ -588,8 +588,8 @@ Triggered when the api endpoint /store-api/script/{hook} is called. Used to exec
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Storefront\Framework\Script\Api\StorefrontHook` |
| **Description** | Triggered when the storefront endpoint /storefront/script/{hook} is called
|
-| **Available Data** | script: `string`
request: `array`
query: `array`
page: [`Shopware\Storefront\Page\Page`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Page.php)
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
isPropagationStopped: `bool`
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
isPropagationStopped: `bool`
page: [`Shopware\Storefront\Page\Page`](https://github.com/shopware/shopware/blob/trunk/src/Storefront/Page/Page.php)
query: `array`
request: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
script: `string`
scriptResponse: [`Shopware\Core\Framework\Script\Api\ScriptResponse`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Script/Api/ScriptResponse.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[response](./custom-endpoint-script-services-reference#ScriptResponseFactoryFacade)
[request](./miscellaneous-script-services-reference#RequestFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `true` |
## App Lifecycle
@@ -604,8 +604,8 @@ All available hooks that can be used to execute scripts during your app's lifecy
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\App\Event\Hooks\AppActivatedHook` |
| **Description** | Triggered when your app is activated.
|
-| **Available Data** | event: [`Shopware\Core\Framework\App\Event\AppActivatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppActivatedEvent.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\App\Event\AppActivatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppActivatedEvent.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### app-deactivated
@@ -616,8 +616,8 @@ All available hooks that can be used to execute scripts during your app's lifecy
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\App\Event\Hooks\AppDeactivatedHook` |
| **Description** | Triggered when your app is deactivated.
|
-| **Available Data** | event: [`Shopware\Core\Framework\App\Event\AppDeactivatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppDeactivatedEvent.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\App\Event\AppDeactivatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppDeactivatedEvent.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### app-deleted
@@ -628,8 +628,8 @@ All available hooks that can be used to execute scripts during your app's lifecy
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\App\Event\Hooks\AppDeletedHook` |
| **Description** | Triggered when your app is deleted.
|
-| **Available Data** | event: [`Shopware\Core\Framework\App\Event\AppDeletedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppDeletedEvent.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\App\Event\AppDeletedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppDeletedEvent.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### app-installed
@@ -640,8 +640,8 @@ All available hooks that can be used to execute scripts during your app's lifecy
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\App\Event\Hooks\AppInstalledHook` |
| **Description** | Triggered when your app is installed.
|
-| **Available Data** | event: [`Shopware\Core\Framework\App\Event\AppInstalledEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppInstalledEvent.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\App\Event\AppInstalledEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppInstalledEvent.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
### app-updated
@@ -652,8 +652,8 @@ All available hooks that can be used to execute scripts during your app's lifecy
| **Since** | 6.4.9.0 |
| **Class** | `Shopware\Core\Framework\App\Event\Hooks\AppUpdatedHook` |
| **Description** | Triggered when your app is updated.
|
-| **Available Data** | event: [`Shopware\Core\Framework\App\Event\AppUpdatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppUpdatedEvent.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
event: [`Shopware\Core\Framework\App\Event\AppUpdatedEvent`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/App/Event/AppUpdatedEvent.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[writer](./custom-endpoint-script-services-reference#RepositoryWriterFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
## Product
@@ -668,6 +668,6 @@ All available hooks that can be used to manipulate products.
| **Since** | 6.5.1.0 |
| **Class** | `Shopware\Core\Content\Product\Hook\Pricing\ProductPricingHook` |
| **Description** | Triggered when product prices are calculated for the store
|
-| **Available Data** | products: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
|
-| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[price](./cart-manipulation-script-services-reference#PriceFactory)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
|
+| **Available Data** | context: [`Shopware\Core\Framework\Context`](https://github.com/shopware/shopware/blob/trunk/src/Core/Framework/Context.php)
products: `array`
salesChannelContext: [`Shopware\Core\System\SalesChannel\SalesChannelContext`](https://github.com/shopware/shopware/blob/trunk/src/Core/System/SalesChannel/SalesChannelContext.php)
|
+| **Available Services** | [repository](./data-loading-script-services-reference#RepositoryFacade)
[price](./cart-manipulation-script-services-reference#PriceFactory)
[config](./miscellaneous-script-services-reference#SystemConfigFacade)
[store](./data-loading-script-services-reference#SalesChannelRepositoryFacade)
[acl](./miscellaneous-script-services-reference#AclFacade)
|
| **Stoppable** | `false` |
diff --git a/resources/references/app-reference/script-reference/trigger-events-reference.md b/resources/references/app-reference/script-reference/trigger-events-reference.md
new file mode 100644
index 0000000000..3538e5f5c3
--- /dev/null
+++ b/resources/references/app-reference/script-reference/trigger-events-reference.md
@@ -0,0 +1,91 @@
+
+
+# Trigger Events Reference
+
+| Event | Description |
+| :--- | :--- |
+|`checkout.customer.before.login` | Triggers as soon as a customer logs in |
+|`checkout.customer.deleted` | Triggers if a customer gets deleted |
+|`checkout.customer.double_opt_in_guest_order` | Triggers as soon as double opt-in is accepted in a guest order |
+|`checkout.customer.double_opt_in_registration` | Triggers when a customer commits to his registration via double opt-in |
+|`checkout.customer.guest_register` | Triggers when a new guest customer was registered |
+|`checkout.customer.login` | Triggers as soon as a customer logs in |
+|`checkout.customer.logout` | Triggers when a customer logs out |
+|`checkout.customer.register` | Triggers when a new customer was registered |
+|`checkout.order.payment_method.changed` | Triggers when a user changed payment method during checkout process |
+|`checkout.order.placed` | Triggers when an order is placed |
+|`contact_form.send` | Triggers when a contact form is send |
+|`customer.group.registration.accepted` | Triggers when admin accepted a user who register to join a customer group |
+|`customer.group.registration.declined` | Triggers when admin declined a user who register to join a customer group |
+|`customer.password.changed` | Triggers when a customer changes the password |
+|`customer.recovery.request` | Triggers when a customer recovers his password |
+|`mail.after.create.message` | Triggers when a mail message/ content is created |
+|`mail.before.send` | Triggers before a mail is send |
+|`mail.sent` | Triggers when a mail is send from Shopware |
+|`newsletter.confirm` | Triggers when newsletter was confirmed by a user |
+|`newsletter.register` | Triggers when user registered to subscribe to a sales channel newsletter |
+|`newsletter.unsubscribe` | Triggers when user unsubscribe from a sales channel newsletter |
+|`product_export.log` | Triggers when product export is executed |
+|`review_form.send` | Triggers when a product review form is submitted by a customer |
+|`revocation_request.sent` | Shopware\Core\Content\RevocationRequest\Event\RevocationRequestEvent |
+|`state_enter.order.state.cancelled` | Triggers when an order enters status "Cancelled" |
+|`state_enter.order.state.completed` | Triggers when an order enters status "Completed" |
+|`state_enter.order.state.in_progress` | Triggers when an order enters status "In progress" |
+|`state_enter.order.state.open` | Triggers when an order enters status "Open" |
+|`state_enter.order_delivery.state.cancelled` | Triggers when an order delivery enters status "Cancelled" |
+|`state_enter.order_delivery.state.open` | Triggers when an order delivery enters status "Open" |
+|`state_enter.order_delivery.state.returned` | Triggers when an order delivery enters status "Returned" |
+|`state_enter.order_delivery.state.returned_partially` | Triggers when an order delivery enters status "Return partially" |
+|`state_enter.order_delivery.state.shipped` | Triggers when an order delivery enters status "Shipped" |
+|`state_enter.order_delivery.state.shipped_partially` | Triggers when an order delivery enters status "Shipped partially" |
+|`state_enter.order_transaction.state.authorized` | Triggers when an order payment enters status "Authorized" |
+|`state_enter.order_transaction.state.cancelled` | Triggers when an order payment enters status "Cancelled" |
+|`state_enter.order_transaction.state.chargeback` | Triggers when an order payment enters status "Chargeback" |
+|`state_enter.order_transaction.state.failed` | Triggers when an order payment enters status "Failed" |
+|`state_enter.order_transaction.state.in_progress` | Triggers when an order payment enters status "In progress" |
+|`state_enter.order_transaction.state.open` | Triggers when an order payment enters status "Open" |
+|`state_enter.order_transaction.state.paid` | Triggers when an order payment enters status "Paid" |
+|`state_enter.order_transaction.state.paid_partially` | Triggers when an order payment enters status "Paid partially" |
+|`state_enter.order_transaction.state.refunded` | Triggers when an order payment enters status "Refunded" |
+|`state_enter.order_transaction.state.refunded_partially` | Triggers when an order payment enters status "Refunded partially" |
+|`state_enter.order_transaction.state.reminded` | Triggers when an order payment enters status "Reminded" |
+|`state_enter.order_transaction.state.unconfirmed` | Triggers when an order payment enters status "Unconfirmed" |
+|`state_enter.order_transaction_capture.state.completed` | Triggers when a payment capture is fully completed |
+|`state_enter.order_transaction_capture.state.failed` | Triggers when a payment capture attempt fails |
+|`state_enter.order_transaction_capture.state.pending` | Triggers when a payment capture is initiated and waiting for completion |
+|`state_enter.order_transaction_capture_refund.state.cancelled` | Triggers when a capture refund request is cancelled |
+|`state_enter.order_transaction_capture_refund.state.completed` | Triggers when a capture refund is completed |
+|`state_enter.order_transaction_capture_refund.state.failed` | Triggers when a capture refund fails |
+|`state_enter.order_transaction_capture_refund.state.in_progress` | Triggers when a capture refund is currently being processed |
+|`state_enter.order_transaction_capture_refund.state.open` | Triggers when a capture refund enters status "Open" |
+|`state_leave.order.state.cancelled` | Triggers when an order leaves status "Cancelled" |
+|`state_leave.order.state.completed` | Triggers when an order leaves status "Completed" |
+|`state_leave.order.state.in_progress` | Triggers when an order leaves status "In progress" |
+|`state_leave.order.state.open` | Triggers when an order leaves status "Open" |
+|`state_leave.order_delivery.state.cancelled` | Triggers when an order delivery leaves status "Cancelled" |
+|`state_leave.order_delivery.state.open` | Triggers when an order delivery leaves status "Open" |
+|`state_leave.order_delivery.state.returned` | Triggers when an order delivery leaves status "Returned" |
+|`state_leave.order_delivery.state.returned_partially` | Triggers when an order delivery leaves status "Return partially" |
+|`state_leave.order_delivery.state.shipped` | Triggers when an order delivery leaves status "Shipped" |
+|`state_leave.order_delivery.state.shipped_partially` | Triggers when an order delivery status is changed from “Shipped partially” |
+|`state_leave.order_transaction.state.authorized` | Triggers when an order payment leaves status "Authorized" |
+|`state_leave.order_transaction.state.cancelled` | Triggers when an order payment leaves status "Cancelled" |
+|`state_leave.order_transaction.state.chargeback` | Triggers when an order payment leaves status "Chargeback" |
+|`state_leave.order_transaction.state.failed` | Triggers when an order payment leaves status "Failed" |
+|`state_leave.order_transaction.state.in_progress` | Triggers when an order payment leaves status "In progress" |
+|`state_leave.order_transaction.state.open` | Triggers when an order payment leaves status "Open" |
+|`state_leave.order_transaction.state.paid` | Triggers when an order payment leaves status "Paid" |
+|`state_leave.order_transaction.state.paid_partially` | Triggers when an order payment leaves status "Paid partially" |
+|`state_leave.order_transaction.state.refunded` | Triggers when an order payment leaves status "Refunded" |
+|`state_leave.order_transaction.state.refunded_partially` | Triggers when an order payment leaves status "Refunded partially" |
+|`state_leave.order_transaction.state.reminded` | Triggers when an order payment leaves status "Reminded" |
+|`state_leave.order_transaction.state.unconfirmed` | Triggers when an order payment leaves status "Unconfirmed" |
+|`state_leave.order_transaction_capture.state.completed` | Triggers when a payment capture leaves status "Completed" |
+|`state_leave.order_transaction_capture.state.failed` | Triggers when a payment capture leaves status "Failed" |
+|`state_leave.order_transaction_capture.state.pending` | Triggers when a payment capture leaves "Pending" status |
+|`state_leave.order_transaction_capture_refund.state.cancelled` | Triggers when a capture refund leaves status "Cancelled" |
+|`state_leave.order_transaction_capture_refund.state.completed` | Triggers when a capture refund leaves status "Completed" |
+|`state_leave.order_transaction_capture_refund.state.failed` | Triggers when a capture refund leaves status "Failed" |
+|`state_leave.order_transaction_capture_refund.state.in_progress` | Triggers when a capture refund leaves "In progress" status |
+|`state_leave.order_transaction_capture_refund.state.open` | Triggers when a capture refund leaves status "Open" |
+|`user.recovery.request` | Triggers when a user created a password recovery request at admin |
diff --git a/resources/references/app-reference/script-reference/webhook-events-reference.md b/resources/references/app-reference/script-reference/webhook-events-reference.md
new file mode 100644
index 0000000000..6be33e49d9
--- /dev/null
+++ b/resources/references/app-reference/script-reference/webhook-events-reference.md
@@ -0,0 +1,121 @@
+# Webhook Event Reference
+
+| Event | Description | Permissions needed | Payload
+| :--- | :--- | :--- | :--- |
+|`checkout.customer.before.login` | Triggers as soon as a customer logs in | - | {"email":"string"}
+|`checkout.customer.deleted` | Triggers if a customer gets deleted | `customer:read` | {"entity":"customer"}
+|`checkout.customer.double_opt_in_guest_order` | Triggers as soon as double opt-in is accepted in a guest order | `customer:read` | {"entity":"customer","confirmUrl":"string"}
+|`checkout.customer.double_opt_in_registration` | Triggers when a customer commits to his registration via double opt in | `customer:read` | {"entity":"customer","confirmUrl":"string"}
+|`checkout.customer.guest_register` | __EMPTY__ | `customer:read` | {"entity":"customer"}
+|`checkout.customer.login` | Triggers as soon as a customer logs in | `customer:read` | {"entity":"customer","contextToken":"string"}
+|`checkout.customer.logout` | Triggers when a customer logs out | `customer:read` | {"entity":"customer"}
+|`checkout.customer.register` | Triggers when a new customer was registered | `customer:read` | {"entity":"customer"}
+|`checkout.order.payment_method.changed` | __EMPTY__ | `order:read` `order_transaction:read` | {"entity":"order_transaction"}
+|`checkout.order.placed` | Triggers when an order is placed | `order:read` | {"entity":"order"}
+|`contact_form.send` | Triggers when a contact form is send | - | {"contactFormData":"object"}
+|`customer.group.registration.accepted` | __EMPTY__ | `customer:read` `customer_group:read` | {"entity":"customer_group"}
+|`customer.group.registration.declined` | __EMPTY__ | `customer:read` `customer_group:read` | {"entity":"customer_group"}
+|`customer.password.changed` | __EMPTY__ | `customer:read` | {"entity":"customer","shopName":"string"}
+|`customer.recovery.request` | Triggers when a customer recovers his password | `customer_recovery:read` `customer:read` | {"entity":"customer","resetUrl":"string","shopName":"string"}
+|`mail.after.create.message` | __EMPTY__ | - | {"data":"array","message":"object"}
+|`mail.before.send` | Triggers before a mail is send | - | {"data":"array","templateData":"array"}
+|`mail.sent` | Triggers when a mail is send from Shopware | - | {"subject":"string","contents":"string","recipients":"array"}
+|`newsletter.confirm` | __EMPTY__ | `newsletter_recipient:read` | {"entity":"newsletter_recipient"}
+|`newsletter.register` | __EMPTY__ | `newsletter_recipient:read` | {"entity":"newsletter_recipient","url":"string"}
+|`newsletter.unsubscribe` | __EMPTY__ | `newsletter_recipient:read` | {"entity":"newsletter_recipient"}
+|`product_export.log` | __EMPTY__ | - | {"name":"string"}
+|`review_form.send` | Triggers when a product review form is send | `product:read` | {"reviewFormData":"object","entity":"product"}
+|`revocation_request.sent` | __EMPTY__ | - | {"revocationRequestFormData":"object"}
+|`state_enter.order.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.returned` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.returned_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.shipped` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_delivery.state.shipped_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.authorized` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.chargeback` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.paid` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.paid_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.refunded` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.refunded_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.reminded` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction.state.unconfirmed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture.state.pending` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture_refund.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture_refund.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture_refund.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture_refund.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_enter.order_transaction_capture_refund.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.returned` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.returned_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.shipped` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_delivery.state.shipped_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.authorized` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.chargeback` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.paid` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.paid_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.refunded` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.refunded_partially` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.reminded` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction.state.unconfirmed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture.state.pending` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture_refund.state.cancelled` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture_refund.state.completed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture_refund.state.failed` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture_refund.state.in_progress` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`state_leave.order_transaction_capture_refund.state.open` | __EMPTY__ | `order:read` | {"entity":"order"}
+|`user.recovery.request` | __EMPTY__ | `user_recovery:read` | {"entity":"user_recovery","resetUrl":"string"}
+|`sales_channel.written` | Triggers when a sales_channel is written | `sales_channel:read` | {"entity":"sales_channel","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`sales_channel.deleted` | Triggers when a sales_channel is deleted | `sales_channel:read` | {"entity":"sales_channel","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`sales_channel_domain.written` | Triggers when a sales_channel_domain is written | `sales_channel_domain:read` | {"entity":"sales_channel_domain","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`sales_channel_domain.deleted` | Triggers when a sales_channel_domain is deleted | `sales_channel_domain:read` | {"entity":"sales_channel_domain","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`category.written` | Triggers when a category is written | `category:read` | {"entity":"category","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`category.deleted` | Triggers when a category is deleted | `category:read` | {"entity":"category","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`media.written` | Triggers when a media is written | `media:read` | {"entity":"media","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`media.deleted` | Triggers when a media is deleted | `media:read` | {"entity":"media","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`product.written` | Triggers when a product is written | `product:read` | {"entity":"product","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`product.deleted` | Triggers when a product is deleted | `product:read` | {"entity":"product","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`product_price.written` | Triggers when a product_price is written | `product_price:read` | {"entity":"product_price","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`product_price.deleted` | Triggers when a product_price is deleted | `product_price:read` | {"entity":"product_price","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`customer.written` | Triggers when a customer is written | `customer:read` | {"entity":"customer","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`customer.deleted` | Triggers when a customer is deleted | `customer:read` | {"entity":"customer","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`customer_address.written` | Triggers when a customer_address is written | `customer_address:read` | {"entity":"customer_address","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`customer_address.deleted` | Triggers when a customer_address is deleted | `customer_address:read` | {"entity":"customer_address","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`document.written` | Triggers when a document is written | `document:read` | {"entity":"document","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`document.deleted` | Triggers when a document is deleted | `document:read` | {"entity":"document","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`order.written` | Triggers when a order is written | `order:read` | {"entity":"order","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`order.deleted` | Triggers when a order is deleted | `order:read` | {"entity":"order","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`order_address.written` | Triggers when a order_address is written | `order_address:read` | {"entity":"order_address","operation":"update insert","primaryKey":"array string","payload":"array"}
+|`order_address.deleted` | Triggers when a order_address is deleted | `order_address:read` | {"entity":"order_address","operation":"deleted","primaryKey":"array string","payload":"array"}
+|`media.uploaded` | Fires when a media file is uploaded | `media:read` |
+|`app.activated` | Fires when an app is activated | - |
+|`app.deactivated` | Fires when an app is deactivated | - |
+|`app.deleted` | Fires when an app is deleted | - |
+|`app.installed` | Fires when an app is installed | - |
+|`app.updated` | Fires when an app is updated | - |
+|`app.permissions.updated` | Fires when an apps permissions were updated with a list of the currently accepted permissions, eg after new were accepted or revoked | - |
+|`shopware.updated` | Fires after an shopware update has been finished | - |
+|`app.config.changed` | Fires when a system config value is changed | `system_config:read` |
+|`app.system_heartbeat` | Fires as a recurrent task. Indicates to the app that the system is up and running. | - |