getApplicationPlugins()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 25
Code Lines 19

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 19
c 0
b 0
f 0
dl 0
loc 25
rs 9.6333
cc 2
nc 2
nop 0
1
<?php
2
3
/**
4
 * This file is part of the Spryker Commerce OS.
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
declare(strict_types = 1);
9
10
namespace Pyz\Yves\ShopApplication;
11
12
use Pyz\Yves\CompanyPage\Plugin\ShopApplication\CompanyUserRestrictionHandlerPlugin;
13
use Pyz\Yves\CompanyWidget\Widget\MenuItemCompanyWidget;
14
use Pyz\Yves\CustomerFullNameWidget\Widget\CustomerFullNameWidget;
15
use Pyz\Yves\ProductSetWidget\Widget\ProductSetIdsWidget;
16
use Spryker\Yves\CustomerDataChangeRequest\Widget\CustomerEmailChangeRequestWidget;
17
use Spryker\Yves\ErrorHandler\Plugin\Application\ErrorHandlerApplicationPlugin;
18
use Spryker\Yves\EventDispatcher\Plugin\Application\EventDispatcherApplicationPlugin;
19
use Spryker\Yves\Form\Plugin\Application\FormApplicationPlugin;
20
use Spryker\Yves\Http\Plugin\Application\YvesHttpApplicationPlugin;
21
use Spryker\Yves\Locale\Plugin\Application\LocaleApplicationPlugin;
22
use Spryker\Yves\Messenger\Plugin\Application\FlashMessengerApplicationPlugin;
23
use Spryker\Yves\MultiFactorAuth\Widget\MultiFactorAuthHandlerWidget;
24
use Spryker\Yves\MultiFactorAuth\Widget\SetMultiFactorAuthMenuItemWidget;
25
use Spryker\Yves\Router\Plugin\Application\RouterApplicationPlugin;
26
use Spryker\Yves\Security\Plugin\Application\YvesSecurityApplicationPlugin;
27
use Spryker\Yves\Session\Plugin\Application\SessionApplicationPlugin;
28
use Spryker\Yves\Sitemap\Widget\SitemapWidget;
29
use Spryker\Yves\Translator\Plugin\Application\TranslatorApplicationPlugin;
30
use Spryker\Yves\Twig\Plugin\Application\TwigApplicationPlugin;
31
use Spryker\Yves\Validator\Plugin\Application\ValidatorApplicationPlugin;
32
use SprykerShop\Yves\AgentWidget\Widget\AgentControlBarWidget;
33
use SprykerShop\Yves\AssetWidget\Widget\AssetWidget;
34
use SprykerShop\Yves\AvailabilityNotificationWidget\Widget\AvailabilityNotificationSubscriptionWidget;
35
use SprykerShop\Yves\BarcodeWidget\Widget\BarcodeWidget;
36
use SprykerShop\Yves\BusinessOnBehalfWidget\Widget\BusinessOnBehalfStatusWidget;
37
use SprykerShop\Yves\CartCodeWidget\Widget\CartCodeFormWidget;
38
use SprykerShop\Yves\CartNoteWidget\Plugin\ShopApplication\CartItemNoteFormWidgetCacheKeyGeneratorStrategyPlugin;
39
use SprykerShop\Yves\CartNoteWidget\Widget\CartItemNoteFormWidget;
40
use SprykerShop\Yves\CartNoteWidget\Widget\CartNoteFormWidget;
41
use SprykerShop\Yves\CartPage\Widget\AddItemsFormWidget;
42
use SprykerShop\Yves\CartPage\Widget\AddToCartFormWidget;
43
use SprykerShop\Yves\CartPage\Widget\CartAddProductAsSeparateItemWidget;
44
use SprykerShop\Yves\CartPage\Widget\CartChangeQuantityFormWidget;
45
use SprykerShop\Yves\CartPage\Widget\CartSummaryHideTaxAmountWidget;
46
use SprykerShop\Yves\CartPage\Widget\ProductAbstractAddToCartButtonWidget;
47
use SprykerShop\Yves\CartPage\Widget\RemoveFromCartFormWidget;
48
use SprykerShop\Yves\CartReorderPage\Widget\CartReorderItemCheckboxWidget;
49
use SprykerShop\Yves\CartReorderPage\Widget\CartReorderItemsWidget;
50
use SprykerShop\Yves\CartReorderPage\Widget\CartReorderWidget;
51
use SprykerShop\Yves\CategoryImageStorageWidget\Widget\CategoryImageStorageWidget;
52
use SprykerShop\Yves\CheckoutWidget\Widget\CheckoutBreadcrumbWidget;
53
use SprykerShop\Yves\CheckoutWidget\Widget\ProceedToCheckoutButtonWidget;
54
use SprykerShop\Yves\CommentWidget\Widget\CommentThreadWidget;
55
use SprykerShop\Yves\CompanyPage\Plugin\ShopApplication\CheckBusinessOnBehalfCompanyUserHandlerPlugin;
56
use SprykerShop\Yves\CompanyPage\Plugin\ShopApplication\CompanyBusinessUnitControllerRestrictionPlugin;
57
use SprykerShop\Yves\CompanyWidget\Widget\CompanyBusinessUnitAddressWidget;
58
use SprykerShop\Yves\CompanyWidget\Widget\CompanyMenuItemWidget;
59
use SprykerShop\Yves\ConfigurableBundleNoteWidget\Widget\ConfiguredBundleNoteWidget;
60
use SprykerShop\Yves\ConfigurableBundleWidget\Widget\QuoteConfiguredBundleWidget;
61
use SprykerShop\Yves\CurrencyWidget\Widget\CurrencyWidget;
62
use SprykerShop\Yves\CustomerPage\Plugin\Application\CustomerConfirmationUserCheckerApplicationPlugin;
63
use SprykerShop\Yves\CustomerPage\Widget\CustomerNavigationWidget;
64
use SprykerShop\Yves\CustomerValidationPage\Plugin\ShopApplication\LogoutInvalidatedCustomerFilterControllerEventHandlerPlugin;
65
use SprykerShop\Yves\DiscountPromotionWidget\Plugin\ShopApplication\CartDiscountPromotionProductListWidgetCacheKeyGeneratorStrategyPlugin;
66
use SprykerShop\Yves\DiscountPromotionWidget\Widget\CartDiscountPromotionProductListWidget;
67
use SprykerShop\Yves\LanguageSwitcherWidget\Widget\LanguageSwitcherWidget;
68
use SprykerShop\Yves\MerchantOpeningHoursWidget\Widget\MerchantOpeningHoursWidget;
69
use SprykerShop\Yves\MerchantProductOfferWidget\Widget\MerchantProductOffersSelectWidget;
70
use SprykerShop\Yves\MerchantProductOfferWidget\Widget\MerchantProductOfferWidget;
71
use SprykerShop\Yves\MerchantProductWidget\Widget\MerchantProductWidget;
72
use SprykerShop\Yves\MerchantRelationRequestWidget\Widget\MerchantRelationRequestCreateButtonWidget;
73
use SprykerShop\Yves\MerchantRelationRequestWidget\Widget\MerchantRelationRequestCreateLinkWidget;
74
use SprykerShop\Yves\MerchantRelationRequestWidget\Widget\MerchantRelationRequestMenuItemWidget;
75
use SprykerShop\Yves\MerchantRelationshipWidget\Widget\MerchantRelationshipLinkListWidget;
76
use SprykerShop\Yves\MerchantRelationshipWidget\Widget\MerchantRelationshipMenuItemWidget;
77
use SprykerShop\Yves\MerchantSalesOrderWidget\Widget\MerchantOrderReferenceForItemsWidget;
78
use SprykerShop\Yves\MerchantSalesReturnWidget\Plugin\MerchantSalesReturnCreateFormWidgetCacheKeyGeneratorStrategyPlugin;
79
use SprykerShop\Yves\MerchantSalesReturnWidget\Widget\MerchantSalesReturnCreateFormWidget;
80
use SprykerShop\Yves\MerchantSearchWidget\Widget\MerchantSearchWidget;
81
use SprykerShop\Yves\MerchantWidget\Widget\ShoppingListMerchantWidget;
82
use SprykerShop\Yves\MerchantWidget\Widget\SoldByMerchantWidget;
83
use SprykerShop\Yves\MoneyWidget\Widget\CurrencyIsoCodeWidget;
84
use SprykerShop\Yves\MultiCartWidget\Widget\AddToMultiCartWidget;
85
use SprykerShop\Yves\MultiCartWidget\Widget\CartOperationsWidget;
86
use SprykerShop\Yves\MultiCartWidget\Widget\MiniCartWidget;
87
use SprykerShop\Yves\MultiCartWidget\Widget\MultiCartListWidget;
88
use SprykerShop\Yves\MultiCartWidget\Widget\MultiCartMenuItemWidget;
89
use SprykerShop\Yves\MultiCartWidget\Widget\QuickOrderPageWidget;
90
use SprykerShop\Yves\NewsletterWidget\Widget\NewsletterSubscriptionSummaryWidget;
91
use SprykerShop\Yves\NewsletterWidget\Widget\NewsletterSubscriptionWidget;
92
use SprykerShop\Yves\OrderCancelWidget\Widget\OrderCancelButtonWidget;
93
use SprykerShop\Yves\OrderCustomReferenceWidget\Widget\OrderCustomReferenceWidget;
94
use SprykerShop\Yves\PaymentAppWidget\Widget\ExpressCheckoutPaymentWidget;
95
use SprykerShop\Yves\PersistentCartShareWidget\Widget\ShareCartByLinkWidget;
96
use SprykerShop\Yves\PriceProductVolumeWidget\Widget\CurrentProductPriceVolumeWidget;
97
use SprykerShop\Yves\PriceProductWidget\Widget\PriceProductWidget;
98
use SprykerShop\Yves\PriceWidget\Widget\PriceModeSwitcherWidget;
99
use SprykerShop\Yves\ProductAlternativeWidget\Widget\ProductAlternativeListWidget;
100
use SprykerShop\Yves\ProductAlternativeWidget\Widget\ShoppingListProductAlternativeWidget;
101
use SprykerShop\Yves\ProductAlternativeWidget\Widget\WishlistProductAlternativeWidget;
102
use SprykerShop\Yves\ProductBarcodeWidget\Widget\ProductBarcodeWidget;
103
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleCartItemsListWidget;
104
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleItemCounterWidget;
105
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleItemsMultiCartItemsListWidget;
106
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleMultiCartItemsListWidget;
107
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleProductDetailPageItemsListWidget;
108
use SprykerShop\Yves\ProductCategoryWidget\Widget\ProductBreadcrumbsWithCategoriesWidget;
109
use SprykerShop\Yves\ProductCategoryWidget\Widget\ProductSchemaOrgCategoryWidget;
110
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationCartItemDisplayWidget;
111
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationCartPageButtonWidget;
112
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationQuoteValidatorWidget;
113
use SprykerShop\Yves\ProductConfigurationShoppingListWidget\Widget\ProductConfigurationShoppingListItemDisplayWidget;
114
use SprykerShop\Yves\ProductConfigurationShoppingListWidget\Widget\ProductConfigurationShoppingListPageButtonWidget;
115
use SprykerShop\Yves\ProductConfigurationWidget\Widget\ProductConfigurationProductDetailPageButtonWidget;
116
use SprykerShop\Yves\ProductConfigurationWidget\Widget\ProductConfigurationProductViewDisplayWidget;
117
use SprykerShop\Yves\ProductDiscontinuedWidget\Widget\ProductDiscontinuedNoteWidget;
118
use SprykerShop\Yves\ProductDiscontinuedWidget\Widget\ProductDiscontinuedWidget;
119
use SprykerShop\Yves\ProductGroupWidget\Widget\ProductGroupColorWidget;
120
use SprykerShop\Yves\ProductGroupWidget\Widget\ProductGroupWidget;
121
use SprykerShop\Yves\ProductLabelWidget\Widget\ProductAbstractLabelWidget;
122
use SprykerShop\Yves\ProductLabelWidget\Widget\ProductConcreteLabelWidget;
123
use SprykerShop\Yves\ProductMeasurementUnitWidget\Widget\CartProductMeasurementUnitQuantitySelectorWidget;
124
use SprykerShop\Yves\ProductMeasurementUnitWidget\Widget\ManageProductMeasurementUnitWidget;
125
use SprykerShop\Yves\ProductOfferShoppingListWidget\Widget\ProductOfferShoppingListWidget;
126
use SprykerShop\Yves\ProductOfferWidget\Widget\ShoppingListProductOfferWidget;
127
use SprykerShop\Yves\ProductOptionWidget\Widget\ProductOptionConfiguratorWidget;
128
use SprykerShop\Yves\ProductPackagingUnitWidget\Widget\ProductPackagingUnitWidget;
129
use SprykerShop\Yves\ProductRelationWidget\Widget\SimilarProductsWidget;
130
use SprykerShop\Yves\ProductRelationWidget\Widget\UpSellingProductsWidget;
131
use SprykerShop\Yves\ProductReplacementForWidget\Widget\ProductReplacementForListWidget;
132
use SprykerShop\Yves\ProductReviewWidget\Widget\DisplayProductAbstractReviewWidget;
133
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductDetailPageReviewWidget;
134
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductRatingFilterWidget;
135
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductReviewDisplayWidget;
136
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteAddWidget;
137
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteSearchGridWidget;
138
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteSearchWidget;
139
use SprykerShop\Yves\ProductWidget\Widget\CatalogPageProductWidget;
140
use SprykerShop\Yves\ProductWidget\Widget\CmsProductGroupWidget;
141
use SprykerShop\Yves\ProductWidget\Widget\CmsProductWidget;
142
use SprykerShop\Yves\ProductWidget\Widget\PdpProductRelationWidget;
143
use SprykerShop\Yves\ProductWidget\Widget\PdpProductReplacementForListWidget;
144
use SprykerShop\Yves\ProductWidget\Widget\ProductAlternativeWidget;
145
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApprovalStatusWidgetCacheKeyGeneratorStrategyPlugin;
146
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApprovalWidgetCacheKeyGeneratorStrategyPlugin;
147
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApproveRequestWidgetCacheKeyGeneratorStrategyPlugin;
148
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApprovalStatusWidget;
149
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApprovalWidget;
150
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApproveRequestWidget;
151
use SprykerShop\Yves\QuoteRequestAgentWidget\Widget\QuoteRequestAgentCancelWidget;
152
use SprykerShop\Yves\QuoteRequestAgentWidget\Widget\QuoteRequestAgentOverviewWidget;
153
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestActionsWidget;
154
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCancelWidget;
155
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCartWidget;
156
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCreateWidget;
157
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestMenuItemWidget;
158
use SprykerShop\Yves\SalesConfigurableBundleWidget\Widget\OrderItemsConfiguredBundleWidget;
159
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\CancelOrderAmendmentWidget;
160
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\OrderAmendmentItemLinkWidget;
161
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\OrderAmendmentWidget;
162
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\UpdateOrderCheckoutSubmitButtonTextWidget;
163
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\UpdateOrderCheckoutSuccessTitleWidget;
164
use SprykerShop\Yves\SalesOrderThresholdWidget\Widget\SalesOrderThresholdWidget;
165
use SprykerShop\Yves\SalesProductBundleWidget\Widget\OrderItemsProductBundleWidget;
166
use SprykerShop\Yves\SalesProductConfigurationWidget\Widget\ProductConfigurationOrderItemDisplayWidget;
167
use SprykerShop\Yves\SharedCartWidget\Widget\CartDeleteSharingCompanyUsersListWidget;
168
use SprykerShop\Yves\SharedCartWidget\Widget\CartListPermissionGroupWidget;
169
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartDetailsWidget;
170
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartOperationsWidget;
171
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartPermissionGroupWidget;
172
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartShareWidget;
173
use SprykerShop\Yves\ShopApplication\Plugin\Application\ShopApplicationApplicationPlugin;
174
use SprykerShop\Yves\ShopApplication\ShopApplicationDependencyProvider as SprykerShopApplicationDependencyProvider;
175
use SprykerShop\Yves\ShoppingListNoteWidget\Widget\ShoppingListItemNoteWidget;
176
use SprykerShop\Yves\ShoppingListPage\Widget\ShoppingListDismissWidget;
177
use SprykerShop\Yves\ShoppingListWidget\Widget\AddItemsToShoppingListWidget;
178
use SprykerShop\Yves\ShoppingListWidget\Widget\AddToShoppingListWidget;
179
use SprykerShop\Yves\ShoppingListWidget\Widget\CreateShoppingListFromCartWidget;
180
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListMenuItemWidget;
181
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListNavigationMenuWidget;
182
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListSubtotalWidget;
183
use SprykerShop\Yves\StoreWidget\Plugin\ShopApplication\StoreApplicationPlugin;
184
use SprykerShop\Yves\StoreWidget\Widget\StoreSwitcherWidget;
185
use SprykerShop\Yves\TabsWidget\Widget\FullTextSearchTabsWidget;
186
use SprykerShop\Yves\TraceableEventWidget\Widget\TraceableEventWidget;
187
use SprykerShop\Yves\WebProfilerWidget\Plugin\Application\WebProfilerApplicationPlugin;
188
189
/**
190
 * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
191
 */
192
class ShopApplicationDependencyProvider extends SprykerShopApplicationDependencyProvider
193
{
194
    /**
195
     * @return array<string>
196
     */
197
    protected function getGlobalWidgets(): array
198
    {
199
        return [
200
            AddToMultiCartWidget::class,
201
            AddToShoppingListWidget::class,
202
            AgentControlBarWidget::class,
203
            BusinessOnBehalfStatusWidget::class,
204
            CartDeleteSharingCompanyUsersListWidget::class,
205
            CartDiscountPromotionProductListWidget::class,
206
            CartCodeFormWidget::class,
207
            CartItemNoteFormWidget::class,
208
            CartListPermissionGroupWidget::class,
209
            CartNoteFormWidget::class,
210
            CartOperationsWidget::class,
211
            CartProductMeasurementUnitQuantitySelectorWidget::class,
212
            CatalogPageProductWidget::class,
213
            CheckoutBreadcrumbWidget::class,
214
            CmsProductGroupWidget::class,
215
            CmsProductWidget::class,
216
            CompanyMenuItemWidget::class,
217
            CreateShoppingListFromCartWidget::class,
218
            CurrencyWidget::class,
219
            CurrencyIsoCodeWidget::class,
220
            CustomerNavigationWidget::class,
221
            DisplayProductAbstractReviewWidget::class,
222
            ProductGroupColorWidget::class,
223
            LanguageSwitcherWidget::class,
224
            ManageProductMeasurementUnitWidget::class,
225
            MiniCartWidget::class,
226
            MultiCartListWidget::class,
227
            MultiCartMenuItemWidget::class,
228
            QuoteRequestMenuItemWidget::class,
229
            NewsletterSubscriptionWidget::class,
230
            NewsletterSubscriptionSummaryWidget::class,
231
            PdpProductRelationWidget::class,
232
            PdpProductReplacementForListWidget::class,
233
            ProductReplacementForListWidget::class,
234
            PriceModeSwitcherWidget::class,
235
            ProductAbstractLabelWidget::class,
236
            ProductAlternativeListWidget::class,
237
            ProductAlternativeWidget::class,
238
            ProductBarcodeWidget::class,
239
            ProductBreadcrumbsWithCategoriesWidget::class,
240
            ProductBundleCartItemsListWidget::class,
241
            ProductBundleItemCounterWidget::class,
242
            ProductBundleItemsMultiCartItemsListWidget::class,
243
            ProductBundleMultiCartItemsListWidget::class,
244
            ProductConcreteLabelWidget::class,
245
            ProductDetailPageReviewWidget::class,
246
            ProductDiscontinuedNoteWidget::class,
247
            ProductDiscontinuedWidget::class,
248
            ProductGroupWidget::class,
249
            ProductOptionConfiguratorWidget::class,
250
            ProductPackagingUnitWidget::class,
251
            CurrentProductPriceVolumeWidget::class,
252
            ProductRatingFilterWidget::class,
253
            ProductReviewDisplayWidget::class,
254
            QuickOrderPageWidget::class,
255
            SalesOrderThresholdWidget::class,
256
            ShareCartByLinkWidget::class,
257
            SharedCartDetailsWidget::class,
258
            SharedCartOperationsWidget::class,
259
            SharedCartPermissionGroupWidget::class,
260
            SharedCartShareWidget::class,
261
            ShoppingListDismissWidget::class,
262
            ShoppingListItemNoteWidget::class,
263
            ShoppingListMenuItemWidget::class,
264
            ShoppingListNavigationMenuWidget::class,
265
            ShoppingListProductAlternativeWidget::class,
266
            ShoppingListSubtotalWidget::class,
267
            SimilarProductsWidget::class,
268
            UpSellingProductsWidget::class,
269
            WishlistProductAlternativeWidget::class,
270
            CompanyBusinessUnitAddressWidget::class,
271
            FullTextSearchTabsWidget::class,
272
            QuoteApprovalStatusWidget::class,
273
            QuoteApproveRequestWidget::class,
274
            ProceedToCheckoutButtonWidget::class,
275
            QuoteApprovalWidget::class,
276
            ProductConcreteSearchWidget::class,
277
            ProductConcreteSearchGridWidget::class,
278
            PriceProductWidget::class,
279
            AddItemsToShoppingListWidget::class,
280
            CategoryImageStorageWidget::class,
281
            AvailabilityNotificationSubscriptionWidget::class,
282
            ProductConcreteAddWidget::class,
283
            QuoteRequestCreateWidget::class,
284
            QuoteRequestCartWidget::class,
285
            QuoteRequestCancelWidget::class,
286
            QuoteRequestAgentOverviewWidget::class,
287
            QuoteRequestAgentCancelWidget::class,
288
            CommentThreadWidget::class,
289
            QuoteConfiguredBundleWidget::class,
290
            ConfiguredBundleNoteWidget::class,
291
            QuoteRequestActionsWidget::class,
292
            OrderCustomReferenceWidget::class,
293
            OrderItemsConfiguredBundleWidget::class,
294
            BarcodeWidget::class,
295
            AddToCartFormWidget::class,
296
            AddItemsFormWidget::class,
297
            CartChangeQuantityFormWidget::class,
298
            OrderItemsProductBundleWidget::class,
299
            RemoveFromCartFormWidget::class,
300
            ProductAbstractAddToCartButtonWidget::class,
301
            OrderCancelButtonWidget::class,
302
            MenuItemCompanyWidget::class,
303
            CustomerFullNameWidget::class,
304
            ProductSetIdsWidget::class,
305
            CartAddProductAsSeparateItemWidget::class,
306
            SoldByMerchantWidget::class,
307
            MerchantProductWidget::class,
308
            MerchantProductOfferWidget::class,
309
            MerchantOpeningHoursWidget::class,
310
            MerchantOrderReferenceForItemsWidget::class,
311
            MerchantSalesReturnCreateFormWidget::class,
312
            ShoppingListMerchantWidget::class,
313
            ShoppingListProductOfferWidget::class,
314
            StoreSwitcherWidget::class,
315
            ProductOfferShoppingListWidget::class,
316
            MerchantProductOffersSelectWidget::class,
317
            MerchantSearchWidget::class,
318
            ProductSchemaOrgCategoryWidget::class,
319
            AssetWidget::class,
320
            ProductBundleProductDetailPageItemsListWidget::class,
321
            ProductConfigurationCartPageButtonWidget::class,
322
            ProductConfigurationCartItemDisplayWidget::class,
323
            ProductConfigurationProductDetailPageButtonWidget::class,
324
            ProductConfigurationProductViewDisplayWidget::class,
325
            ProductConfigurationOrderItemDisplayWidget::class,
326
            ProductConfigurationQuoteValidatorWidget::class,
327
            ProductConfigurationShoppingListItemDisplayWidget::class,
328
            ProductConfigurationShoppingListPageButtonWidget::class,
329
            CartSummaryHideTaxAmountWidget::class,
330
            MerchantRelationRequestCreateLinkWidget::class,
331
            MerchantRelationRequestCreateButtonWidget::class,
332
            MerchantRelationRequestMenuItemWidget::class,
333
            MerchantRelationshipMenuItemWidget::class,
334
            MerchantRelationshipLinkListWidget::class,
335
            TraceableEventWidget::class,
336
            ExpressCheckoutPaymentWidget::class,
337
            CustomerEmailChangeRequestWidget::class,
338
            SetMultiFactorAuthMenuItemWidget::class,
339
            MultiFactorAuthHandlerWidget::class,
340
            SitemapWidget::class,
341
            CartReorderWidget::class,
342
            CartReorderItemCheckboxWidget::class,
343
            CartReorderItemsWidget::class,
344
            OrderAmendmentWidget::class,
345
            OrderAmendmentItemLinkWidget::class,
346
            CancelOrderAmendmentWidget::class,
347
            UpdateOrderCheckoutSubmitButtonTextWidget::class,
348
            UpdateOrderCheckoutSuccessTitleWidget::class,
349
        ];
350
    }
351
352
    /**
353
     * @return array<\SprykerShop\Yves\ShopApplicationExtension\Dependency\Plugin\WidgetCacheKeyGeneratorStrategyPluginInterface>
354
     */
355
    protected function getWidgetCacheKeyGeneratorStrategyPlugins(): array
356
    {
357
        return [
358
            new QuoteApprovalStatusWidgetCacheKeyGeneratorStrategyPlugin(),
359
            new QuoteApproveRequestWidgetCacheKeyGeneratorStrategyPlugin(),
360
            new QuoteApprovalWidgetCacheKeyGeneratorStrategyPlugin(),
361
            new CartDiscountPromotionProductListWidgetCacheKeyGeneratorStrategyPlugin(),
362
            new CartItemNoteFormWidgetCacheKeyGeneratorStrategyPlugin(),
363
            new MerchantSalesReturnCreateFormWidgetCacheKeyGeneratorStrategyPlugin(),
364
        ];
365
    }
366
367
    /**
368
     * @return array<\SprykerShop\Yves\ShopApplicationExtension\Dependency\Plugin\FilterControllerEventHandlerPluginInterface>
369
     */
370
    protected function getFilterControllerEventSubscriberPlugins(): array
371
    {
372
        return [
373
            new CompanyUserRestrictionHandlerPlugin(),
374
            new CheckBusinessOnBehalfCompanyUserHandlerPlugin(), #BusinessOnBehalfFeature
375
            new CompanyBusinessUnitControllerRestrictionPlugin(),
376
            new LogoutInvalidatedCustomerFilterControllerEventHandlerPlugin(),
377
        ];
378
    }
379
380
    /**
381
     * @return array<\Spryker\Shared\ApplicationExtension\Dependency\Plugin\ApplicationPluginInterface>
382
     */
383
    protected function getApplicationPlugins(): array
384
    {
385
        $applicationPlugins = [
386
            new YvesHttpApplicationPlugin(),
387
            new TwigApplicationPlugin(),
388
            new EventDispatcherApplicationPlugin(),
389
            new ShopApplicationApplicationPlugin(),
390
            new StoreApplicationPlugin(),
391
            new LocaleApplicationPlugin(),
392
            new TranslatorApplicationPlugin(),
393
            new RouterApplicationPlugin(),
394
            new SessionApplicationPlugin(),
395
            new ErrorHandlerApplicationPlugin(),
396
            new FlashMessengerApplicationPlugin(),
397
            new FormApplicationPlugin(),
398
            new ValidatorApplicationPlugin(),
399
            new YvesSecurityApplicationPlugin(),
400
            new CustomerConfirmationUserCheckerApplicationPlugin(),
401
        ];
402
403
        if (class_exists(WebProfilerApplicationPlugin::class)) {
404
            $applicationPlugins[] = new WebProfilerApplicationPlugin();
405
        }
406
407
        return $applicationPlugins;
408
    }
409
}
410