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\MerchantRelationRequestWidget\Widget\MerchantRelationRequestCreateButtonWidget;
69
use SprykerShop\Yves\MerchantRelationRequestWidget\Widget\MerchantRelationRequestCreateLinkWidget;
70
use SprykerShop\Yves\MerchantRelationRequestWidget\Widget\MerchantRelationRequestMenuItemWidget;
71
use SprykerShop\Yves\MerchantRelationshipWidget\Widget\MerchantRelationshipLinkListWidget;
72
use SprykerShop\Yves\MerchantRelationshipWidget\Widget\MerchantRelationshipMenuItemWidget;
73
use SprykerShop\Yves\MoneyWidget\Widget\CurrencyIsoCodeWidget;
74
use SprykerShop\Yves\MultiCartWidget\Widget\AddToMultiCartWidget;
75
use SprykerShop\Yves\MultiCartWidget\Widget\CartOperationsWidget;
76
use SprykerShop\Yves\MultiCartWidget\Widget\MiniCartWidget;
77
use SprykerShop\Yves\MultiCartWidget\Widget\MultiCartListWidget;
78
use SprykerShop\Yves\MultiCartWidget\Widget\MultiCartMenuItemWidget;
79
use SprykerShop\Yves\MultiCartWidget\Widget\QuickOrderPageWidget;
80
use SprykerShop\Yves\NewsletterWidget\Widget\NewsletterSubscriptionSummaryWidget;
81
use SprykerShop\Yves\NewsletterWidget\Widget\NewsletterSubscriptionWidget;
82
use SprykerShop\Yves\OrderCancelWidget\Widget\OrderCancelButtonWidget;
83
use SprykerShop\Yves\OrderCustomReferenceWidget\Widget\OrderCustomReferenceWidget;
84
use SprykerShop\Yves\PaymentAppWidget\Widget\ExpressCheckoutPaymentWidget;
85
use SprykerShop\Yves\PersistentCartShareWidget\Widget\ShareCartByLinkWidget;
86
use SprykerShop\Yves\PriceProductVolumeWidget\Widget\CurrentProductPriceVolumeWidget;
87
use SprykerShop\Yves\PriceProductWidget\Widget\PriceProductWidget;
88
use SprykerShop\Yves\PriceWidget\Widget\PriceModeSwitcherWidget;
89
use SprykerShop\Yves\ProductAlternativeWidget\Widget\ProductAlternativeListWidget;
90
use SprykerShop\Yves\ProductAlternativeWidget\Widget\ShoppingListProductAlternativeWidget;
91
use SprykerShop\Yves\ProductAlternativeWidget\Widget\WishlistProductAlternativeWidget;
92
use SprykerShop\Yves\ProductBarcodeWidget\Widget\ProductBarcodeWidget;
93
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleCartItemsListWidget;
94
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleItemCounterWidget;
95
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleItemsMultiCartItemsListWidget;
96
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleMultiCartItemsListWidget;
97
use SprykerShop\Yves\ProductBundleWidget\Widget\ProductBundleProductDetailPageItemsListWidget;
98
use SprykerShop\Yves\ProductCategoryWidget\Widget\ProductBreadcrumbsWithCategoriesWidget;
99
use SprykerShop\Yves\ProductCategoryWidget\Widget\ProductSchemaOrgCategoryWidget;
100
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationCartItemDisplayWidget;
101
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationCartPageButtonWidget;
102
use SprykerShop\Yves\ProductConfigurationCartWidget\Widget\ProductConfigurationQuoteValidatorWidget;
103
use SprykerShop\Yves\ProductConfigurationShoppingListWidget\Widget\ProductConfigurationShoppingListItemDisplayWidget;
104
use SprykerShop\Yves\ProductConfigurationShoppingListWidget\Widget\ProductConfigurationShoppingListPageButtonWidget;
105
use SprykerShop\Yves\ProductConfigurationWidget\Widget\ProductConfigurationProductDetailPageButtonWidget;
106
use SprykerShop\Yves\ProductConfigurationWidget\Widget\ProductConfigurationProductViewDisplayWidget;
107
use SprykerShop\Yves\ProductDiscontinuedWidget\Widget\ProductDiscontinuedNoteWidget;
108
use SprykerShop\Yves\ProductDiscontinuedWidget\Widget\ProductDiscontinuedWidget;
109
use SprykerShop\Yves\ProductGroupWidget\Widget\ProductGroupColorWidget;
110
use SprykerShop\Yves\ProductGroupWidget\Widget\ProductGroupWidget;
111
use SprykerShop\Yves\ProductLabelWidget\Widget\ProductAbstractLabelWidget;
112
use SprykerShop\Yves\ProductLabelWidget\Widget\ProductConcreteLabelWidget;
113
use SprykerShop\Yves\ProductMeasurementUnitWidget\Widget\CartProductMeasurementUnitQuantitySelectorWidget;
114
use SprykerShop\Yves\ProductMeasurementUnitWidget\Widget\ManageProductMeasurementUnitWidget;
115
use SprykerShop\Yves\ProductOptionWidget\Widget\ProductOptionConfiguratorWidget;
116
use SprykerShop\Yves\ProductPackagingUnitWidget\Widget\ProductPackagingUnitWidget;
117
use SprykerShop\Yves\ProductRelationWidget\Widget\SimilarProductsWidget;
118
use SprykerShop\Yves\ProductRelationWidget\Widget\UpSellingProductsWidget;
119
use SprykerShop\Yves\ProductReplacementForWidget\Widget\ProductReplacementForListWidget;
120
use SprykerShop\Yves\ProductReviewWidget\Widget\DisplayProductAbstractReviewWidget;
121
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductDetailPageReviewWidget;
122
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductRatingFilterWidget;
123
use SprykerShop\Yves\ProductReviewWidget\Widget\ProductReviewDisplayWidget;
124
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteAddWidget;
125
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteSearchGridWidget;
126
use SprykerShop\Yves\ProductSearchWidget\Widget\ProductConcreteSearchWidget;
127
use SprykerShop\Yves\ProductWidget\Widget\CatalogPageProductWidget;
128
use SprykerShop\Yves\ProductWidget\Widget\CmsProductGroupWidget;
129
use SprykerShop\Yves\ProductWidget\Widget\CmsProductWidget;
130
use SprykerShop\Yves\ProductWidget\Widget\PdpProductRelationWidget;
131
use SprykerShop\Yves\ProductWidget\Widget\PdpProductReplacementForListWidget;
132
use SprykerShop\Yves\ProductWidget\Widget\ProductAlternativeWidget;
133
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApprovalStatusWidgetCacheKeyGeneratorStrategyPlugin;
134
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApprovalWidgetCacheKeyGeneratorStrategyPlugin;
135
use SprykerShop\Yves\QuoteApprovalWidget\Plugin\ShopApplication\QuoteApproveRequestWidgetCacheKeyGeneratorStrategyPlugin;
136
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApprovalStatusWidget;
137
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApprovalWidget;
138
use SprykerShop\Yves\QuoteApprovalWidget\Widget\QuoteApproveRequestWidget;
139
use SprykerShop\Yves\QuoteRequestAgentWidget\Widget\QuoteRequestAgentCancelWidget;
140
use SprykerShop\Yves\QuoteRequestAgentWidget\Widget\QuoteRequestAgentOverviewWidget;
141
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestActionsWidget;
142
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCancelWidget;
143
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCartWidget;
144
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestCreateWidget;
145
use SprykerShop\Yves\QuoteRequestWidget\Widget\QuoteRequestMenuItemWidget;
146
use SprykerShop\Yves\SalesConfigurableBundleWidget\Widget\OrderItemsConfiguredBundleWidget;
147
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\CancelOrderAmendmentWidget;
148
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\OrderAmendmentItemLinkWidget;
149
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\OrderAmendmentWidget;
150
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\UpdateOrderCheckoutSubmitButtonTextWidget;
151
use SprykerShop\Yves\SalesOrderAmendmentWidget\Widget\UpdateOrderCheckoutSuccessTitleWidget;
152
use SprykerShop\Yves\SalesOrderThresholdWidget\Widget\SalesOrderThresholdWidget;
153
use SprykerShop\Yves\SalesProductBundleWidget\Widget\OrderItemsProductBundleWidget;
154
use SprykerShop\Yves\SalesProductConfigurationWidget\Widget\ProductConfigurationOrderItemDisplayWidget;
155
use SprykerShop\Yves\SharedCartWidget\Widget\CartDeleteSharingCompanyUsersListWidget;
156
use SprykerShop\Yves\SharedCartWidget\Widget\CartListPermissionGroupWidget;
157
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartDetailsWidget;
158
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartOperationsWidget;
159
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartPermissionGroupWidget;
160
use SprykerShop\Yves\SharedCartWidget\Widget\SharedCartShareWidget;
161
use SprykerShop\Yves\ShopApplication\Plugin\Application\ShopApplicationApplicationPlugin;
162
use SprykerShop\Yves\ShopApplication\ShopApplicationDependencyProvider as SprykerShopApplicationDependencyProvider;
163
use SprykerShop\Yves\ShoppingListNoteWidget\Widget\ShoppingListItemNoteWidget;
164
use SprykerShop\Yves\ShoppingListPage\Widget\ShoppingListDismissWidget;
165
use SprykerShop\Yves\ShoppingListWidget\Widget\AddItemsToShoppingListWidget;
166
use SprykerShop\Yves\ShoppingListWidget\Widget\AddToShoppingListWidget;
167
use SprykerShop\Yves\ShoppingListWidget\Widget\CreateShoppingListFromCartWidget;
168
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListMenuItemWidget;
169
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListNavigationMenuWidget;
170
use SprykerShop\Yves\ShoppingListWidget\Widget\ShoppingListSubtotalWidget;
171
use SprykerShop\Yves\StoreWidget\Plugin\ShopApplication\StoreApplicationPlugin;
172
use SprykerShop\Yves\StoreWidget\Widget\StoreSwitcherWidget;
173
use SprykerShop\Yves\TabsWidget\Widget\FullTextSearchTabsWidget;
174
use SprykerShop\Yves\TraceableEventWidget\Widget\TraceableEventWidget;
175
use SprykerShop\Yves\WebProfilerWidget\Plugin\Application\WebProfilerApplicationPlugin;
176
177
/**
178
 * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
179
 */
180
class ShopApplicationDependencyProvider extends SprykerShopApplicationDependencyProvider
181
{
182
    /**
183
     * @return array<string>
184
     */
185
    protected function getGlobalWidgets(): array
186
    {
187
        return [
188
            AddToMultiCartWidget::class,
189
            AddToShoppingListWidget::class,
190
            AgentControlBarWidget::class,
191
            BusinessOnBehalfStatusWidget::class,
192
            CartDeleteSharingCompanyUsersListWidget::class,
193
            CartDiscountPromotionProductListWidget::class,
194
            CartCodeFormWidget::class,
195
            CartItemNoteFormWidget::class,
196
            CartListPermissionGroupWidget::class,
197
            CartNoteFormWidget::class,
198
            CartOperationsWidget::class,
199
            CartProductMeasurementUnitQuantitySelectorWidget::class,
200
            CatalogPageProductWidget::class,
201
            CheckoutBreadcrumbWidget::class,
202
            CmsProductGroupWidget::class,
203
            CmsProductWidget::class,
204
            CompanyMenuItemWidget::class,
205
            CreateShoppingListFromCartWidget::class,
206
            CurrencyWidget::class,
207
            CurrencyIsoCodeWidget::class,
208
            CustomerNavigationWidget::class,
209
            DisplayProductAbstractReviewWidget::class,
210
            ProductGroupColorWidget::class,
211
            LanguageSwitcherWidget::class,
212
            ManageProductMeasurementUnitWidget::class,
213
            MiniCartWidget::class,
214
            MultiCartListWidget::class,
215
            MultiCartMenuItemWidget::class,
216
            QuoteRequestMenuItemWidget::class,
217
            NewsletterSubscriptionWidget::class,
218
            NewsletterSubscriptionSummaryWidget::class,
219
            PdpProductRelationWidget::class,
220
            PdpProductReplacementForListWidget::class,
221
            ProductReplacementForListWidget::class,
222
            PriceModeSwitcherWidget::class,
223
            ProductAbstractLabelWidget::class,
224
            ProductAlternativeListWidget::class,
225
            ProductAlternativeWidget::class,
226
            ProductBarcodeWidget::class,
227
            ProductBreadcrumbsWithCategoriesWidget::class,
228
            ProductBundleCartItemsListWidget::class,
229
            ProductBundleItemCounterWidget::class,
230
            ProductBundleItemsMultiCartItemsListWidget::class,
231
            ProductBundleMultiCartItemsListWidget::class,
232
            ProductConcreteLabelWidget::class,
233
            ProductDetailPageReviewWidget::class,
234
            ProductDiscontinuedNoteWidget::class,
235
            ProductDiscontinuedWidget::class,
236
            ProductGroupWidget::class,
237
            ProductOptionConfiguratorWidget::class,
238
            ProductPackagingUnitWidget::class,
239
            CurrentProductPriceVolumeWidget::class,
240
            ProductRatingFilterWidget::class,
241
            ProductReviewDisplayWidget::class,
242
            QuickOrderPageWidget::class,
243
            SalesOrderThresholdWidget::class,
244
            ShareCartByLinkWidget::class,
245
            SharedCartDetailsWidget::class,
246
            SharedCartOperationsWidget::class,
247
            SharedCartPermissionGroupWidget::class,
248
            SharedCartShareWidget::class,
249
            ShoppingListDismissWidget::class,
250
            ShoppingListItemNoteWidget::class,
251
            ShoppingListMenuItemWidget::class,
252
            ShoppingListNavigationMenuWidget::class,
253
            ShoppingListProductAlternativeWidget::class,
254
            ShoppingListSubtotalWidget::class,
255
            SimilarProductsWidget::class,
256
            UpSellingProductsWidget::class,
257
            WishlistProductAlternativeWidget::class,
258
            CompanyBusinessUnitAddressWidget::class,
259
            FullTextSearchTabsWidget::class,
260
            QuoteApprovalStatusWidget::class,
261
            QuoteApproveRequestWidget::class,
262
            ProceedToCheckoutButtonWidget::class,
263
            QuoteApprovalWidget::class,
264
            ProductConcreteSearchWidget::class,
265
            ProductConcreteSearchGridWidget::class,
266
            PriceProductWidget::class,
267
            AddItemsToShoppingListWidget::class,
268
            CategoryImageStorageWidget::class,
269
            AvailabilityNotificationSubscriptionWidget::class,
270
            ProductConcreteAddWidget::class,
271
            QuoteRequestCreateWidget::class,
272
            QuoteRequestCartWidget::class,
273
            QuoteRequestCancelWidget::class,
274
            QuoteRequestAgentOverviewWidget::class,
275
            QuoteRequestAgentCancelWidget::class,
276
            CommentThreadWidget::class,
277
            QuoteConfiguredBundleWidget::class,
278
            ConfiguredBundleNoteWidget::class,
279
            QuoteRequestActionsWidget::class,
280
            OrderCustomReferenceWidget::class,
281
            OrderItemsConfiguredBundleWidget::class,
282
            BarcodeWidget::class,
283
            AddToCartFormWidget::class,
284
            AddItemsFormWidget::class,
285
            CartChangeQuantityFormWidget::class,
286
            OrderItemsProductBundleWidget::class,
287
            RemoveFromCartFormWidget::class,
288
            ProductAbstractAddToCartButtonWidget::class,
289
            OrderCancelButtonWidget::class,
290
            MenuItemCompanyWidget::class,
291
            CustomerFullNameWidget::class,
292
            ProductSetIdsWidget::class,
293
            CartAddProductAsSeparateItemWidget::class,
294
            ProductSchemaOrgCategoryWidget::class,
295
            AssetWidget::class,
296
            ProductBundleProductDetailPageItemsListWidget::class,
297
            ProductConfigurationCartPageButtonWidget::class,
298
            ProductConfigurationCartItemDisplayWidget::class,
299
            ProductConfigurationProductDetailPageButtonWidget::class,
300
            ProductConfigurationProductViewDisplayWidget::class,
301
            ProductConfigurationOrderItemDisplayWidget::class,
302
            ProductConfigurationQuoteValidatorWidget::class,
303
            ProductConfigurationShoppingListItemDisplayWidget::class,
304
            ProductConfigurationShoppingListPageButtonWidget::class,
305
            StoreSwitcherWidget::class,
306
            CartSummaryHideTaxAmountWidget::class,
307
            MerchantRelationRequestCreateLinkWidget::class,
308
            MerchantRelationRequestCreateButtonWidget::class,
309
            MerchantRelationRequestMenuItemWidget::class,
310
            MerchantRelationshipMenuItemWidget::class,
311
            MerchantRelationshipLinkListWidget::class,
312
            TraceableEventWidget::class,
313
            ExpressCheckoutPaymentWidget::class,
314
            CustomerEmailChangeRequestWidget::class,
315
            SetMultiFactorAuthMenuItemWidget::class,
316
            MultiFactorAuthHandlerWidget::class,
317
            SitemapWidget::class,
318
            CartReorderWidget::class,
319
            CartReorderItemCheckboxWidget::class,
320
            CartReorderItemsWidget::class,
321
            OrderAmendmentWidget::class,
322
            OrderAmendmentItemLinkWidget::class,
323
            CancelOrderAmendmentWidget::class,
324
            UpdateOrderCheckoutSubmitButtonTextWidget::class,
325
            UpdateOrderCheckoutSuccessTitleWidget::class,
326
        ];
327
    }
328
329
    /**
330
     * @return array<\SprykerShop\Yves\ShopApplicationExtension\Dependency\Plugin\WidgetCacheKeyGeneratorStrategyPluginInterface>
331
     */
332
    protected function getWidgetCacheKeyGeneratorStrategyPlugins(): array
333
    {
334
        return [
335
            new QuoteApprovalStatusWidgetCacheKeyGeneratorStrategyPlugin(),
336
            new QuoteApproveRequestWidgetCacheKeyGeneratorStrategyPlugin(),
337
            new QuoteApprovalWidgetCacheKeyGeneratorStrategyPlugin(),
338
            new CartDiscountPromotionProductListWidgetCacheKeyGeneratorStrategyPlugin(),
339
            new CartItemNoteFormWidgetCacheKeyGeneratorStrategyPlugin(),
340
        ];
341
    }
342
343
    /**
344
     * @return array<\SprykerShop\Yves\ShopApplicationExtension\Dependency\Plugin\FilterControllerEventHandlerPluginInterface>
345
     */
346
    protected function getFilterControllerEventSubscriberPlugins(): array
347
    {
348
        return [
349
            new CompanyUserRestrictionHandlerPlugin(),
350
            new CheckBusinessOnBehalfCompanyUserHandlerPlugin(), #BusinessOnBehalfFeature
351
            new CompanyBusinessUnitControllerRestrictionPlugin(),
352
            new LogoutInvalidatedCustomerFilterControllerEventHandlerPlugin(),
353
        ];
354
    }
355
356
    /**
357
     * @return array<\Spryker\Shared\ApplicationExtension\Dependency\Plugin\ApplicationPluginInterface>
358
     */
359
    protected function getApplicationPlugins(): array
360
    {
361
        $applicationPlugins = [
362
            new YvesHttpApplicationPlugin(),
363
            new TwigApplicationPlugin(),
364
            new EventDispatcherApplicationPlugin(),
365
            new ShopApplicationApplicationPlugin(),
366
            new StoreApplicationPlugin(),
367
            new LocaleApplicationPlugin(),
368
            new TranslatorApplicationPlugin(),
369
            new RouterApplicationPlugin(),
370
            new SessionApplicationPlugin(),
371
            new ErrorHandlerApplicationPlugin(),
372
            new FlashMessengerApplicationPlugin(),
373
            new FormApplicationPlugin(),
374
            new ValidatorApplicationPlugin(),
375
            new YvesSecurityApplicationPlugin(),
376
            new CustomerConfirmationUserCheckerApplicationPlugin(),
377
        ];
378
379
        if (class_exists(WebProfilerApplicationPlugin::class)) {
380
            $applicationPlugins[] = new WebProfilerApplicationPlugin();
381
        }
382
383
        return $applicationPlugins;
384
    }
385
}
386