orionplace-react 0.7.7 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -614
- package/bin/orionplace-react.mjs +10 -176
- package/package.json +7 -59
- package/LICENSE +0 -21
- package/runtime/app.d.mts +0 -6
- package/runtime/app.mjs +0 -48
- package/runtime/marketplace.d.mts +0 -129
- package/runtime/marketplace.mjs +0 -905
- package/src/install.mjs +0 -356
- package/src/project-readme.mjs +0 -442
- package/src/service.mjs +0 -186
- package/src/setup.mjs +0 -274
- package/src/sitemap.mjs +0 -93
- package/src/update.mjs +0 -36
- package/src/validation.mjs +0 -27
- package/templates/app/StorefrontShell.tsx +0 -443
- package/templates/app/[[...path]]/page.app.tsx +0 -11
- package/templates/app/_storefront/ActivityPage.tsx +0 -23
- package/templates/app/_storefront/AddressesPage.tsx +0 -29
- package/templates/app/_storefront/AppRoutes.tsx +0 -184
- package/templates/app/_storefront/ArticlePage.tsx +0 -84
- package/templates/app/_storefront/CartPage.tsx +0 -53
- package/templates/app/_storefront/CatalogPage.tsx +0 -37
- package/templates/app/_storefront/CategoryPage.tsx +0 -68
- package/templates/app/_storefront/ContactPage.tsx +0 -32
- package/templates/app/_storefront/HomePage.tsx +0 -140
- package/templates/app/_storefront/JournalPage.tsx +0 -36
- package/templates/app/_storefront/LogoutPage.tsx +0 -91
- package/templates/app/_storefront/ManufacturersPage.tsx +0 -64
- package/templates/app/_storefront/OrdersPage.tsx +0 -129
- package/templates/app/_storefront/PrivacyPage.tsx +0 -15
- package/templates/app/_storefront/ProductPage.tsx +0 -113
- package/templates/app/_storefront/ProfilePage.tsx +0 -75
- package/templates/app/_storefront/PromoPage.tsx +0 -66
- package/templates/app/_storefront/PromocodesPage.tsx +0 -17
- package/templates/app/_storefront/SearchPage.tsx +0 -225
- package/templates/app/_storefront/SellersPage.tsx +0 -166
- package/templates/app/_storefront/StorefrontErrorRoute.tsx +0 -42
- package/templates/app/_storefront/StorefrontPageMetadata.tsx +0 -117
- package/templates/app/_storefront/StorefrontPageStatus.tsx +0 -61
- package/templates/app/_storefront/StorefrontProductStructuredData.tsx +0 -77
- package/templates/app/_storefront/StoresPage.tsx +0 -53
- package/templates/app/_storefront/SubscriptionsPage.tsx +0 -62
- package/templates/app/_storefront/SupportPage.tsx +0 -141
- package/templates/app/_storefront/TariffsPage.tsx +0 -180
- package/templates/app/_storefront/UnsubscribePage.tsx +0 -29
- package/templates/app/_storefront/WalletPage.tsx +0 -78
- package/templates/app/_storefront/WishlistPage.tsx +0 -79
- package/templates/app/_storefront/storefrontRoutes.tsx +0 -769
- package/templates/app/_storefront/useAccountWallet.ts +0 -27
- package/templates/app/_storefront/useBlogComments.ts +0 -389
- package/templates/app/_storefront/useProductSearch.ts +0 -242
- package/templates/app/_storefront/useStorefrontNavigation.ts +0 -36
- package/templates/app/activity/page.tsx +0 -9
- package/templates/app/addresses/page.tsx +0 -9
- package/templates/app/api/[...orionplace]/route.ts +0 -21
- package/templates/app/browse/page.tsx +0 -27
- package/templates/app/cart/page.tsx +0 -9
- package/templates/app/catalog/page.tsx +0 -9
- package/templates/app/category/[id]/page.tsx +0 -9
- package/templates/app/contact/page.tsx +0 -9
- package/templates/app/error.tsx +0 -7
- package/templates/app/featured/page.tsx +0 -9
- package/templates/app/global-error.tsx +0 -61
- package/templates/app/globals.css +0 -58
- package/templates/app/journal/[id]/page.tsx +0 -9
- package/templates/app/journal/page.tsx +0 -9
- package/templates/app/layout.app.tsx +0 -20
- package/templates/app/layout.tsx +0 -66
- package/templates/app/logout/page.tsx +0 -9
- package/templates/app/manufacturers/page.tsx +0 -9
- package/templates/app/not-found.tsx +0 -5
- package/templates/app/orders/page.tsx +0 -9
- package/templates/app/page.module.css +0 -137
- package/templates/app/page.tsx +0 -9
- package/templates/app/privacy/page.tsx +0 -9
- package/templates/app/product/[id]/page.tsx +0 -9
- package/templates/app/profile/page.tsx +0 -9
- package/templates/app/promo/[id]/page.tsx +0 -9
- package/templates/app/promocodes/page.tsx +0 -9
- package/templates/app/ps3/blog/[...orionplace]/route.ts +0 -13
- package/templates/app/robots.txt/route.ts +0 -11
- package/templates/app/sellers/page.tsx +0 -9
- package/templates/app/sitemap.xml/route.ts +0 -12
- package/templates/app/storefront.module.css +0 -406
- package/templates/app/stores/page.tsx +0 -9
- package/templates/app/subscriptions/page.tsx +0 -9
- package/templates/app/tariffs/[slug]/[id]/page.tsx +0 -9
- package/templates/app/tariffs/page.tsx +0 -9
- package/templates/app/tickets/page.tsx +0 -9
- package/templates/app/unsubscribe/page.tsx +0 -9
- package/templates/app/wallet/page.tsx +0 -9
- package/templates/app/wishlist/page.tsx +0 -9
- package/templates/components/orionplace/account/AccountActivity.README.md +0 -70
- package/templates/components/orionplace/account/AccountActivity.module.css +0 -16
- package/templates/components/orionplace/account/AccountActivity.tsx +0 -94
- package/templates/components/orionplace/account/AccountPromocodes.README.md +0 -70
- package/templates/components/orionplace/account/AccountPromocodes.module.css +0 -92
- package/templates/components/orionplace/account/AccountPromocodes.tsx +0 -257
- package/templates/components/orionplace/account/AccountSection.README.md +0 -46
- package/templates/components/orionplace/account/AccountSection.module.css +0 -110
- package/templates/components/orionplace/account/AccountSection.tsx +0 -109
- package/templates/components/orionplace/account/ProfileAvatar.README.md +0 -48
- package/templates/components/orionplace/account/ProfileAvatar.module.css +0 -31
- package/templates/components/orionplace/account/ProfileAvatar.tsx +0 -138
- package/templates/components/orionplace/account/ProfileDeleteAccount.README.md +0 -59
- package/templates/components/orionplace/account/ProfileDeleteAccount.module.css +0 -51
- package/templates/components/orionplace/account/ProfileDeleteAccount.tsx +0 -171
- package/templates/components/orionplace/account/ProfileDetailsForm.README.md +0 -48
- package/templates/components/orionplace/account/ProfileDetailsForm.module.css +0 -35
- package/templates/components/orionplace/account/ProfileDetailsForm.tsx +0 -183
- package/templates/components/orionplace/account/ProfileEmailSettings.README.md +0 -52
- package/templates/components/orionplace/account/ProfileEmailSettings.module.css +0 -51
- package/templates/components/orionplace/account/ProfileEmailSettings.tsx +0 -276
- package/templates/components/orionplace/account/ProfilePasswordForm.README.md +0 -45
- package/templates/components/orionplace/account/ProfilePasswordForm.module.css +0 -43
- package/templates/components/orionplace/account/ProfilePasswordForm.tsx +0 -227
- package/templates/components/orionplace/account/ProfileSignIn.README.md +0 -64
- package/templates/components/orionplace/account/ProfileSignIn.module.css +0 -86
- package/templates/components/orionplace/account/ProfileSignIn.tsx +0 -463
- package/templates/components/orionplace/account/SignInHistory.README.md +0 -52
- package/templates/components/orionplace/account/SignInHistory.module.css +0 -81
- package/templates/components/orionplace/account/SignInHistory.tsx +0 -231
- package/templates/components/orionplace/account/StorefrontLogout.README.md +0 -48
- package/templates/components/orionplace/account/StorefrontLogout.module.css +0 -166
- package/templates/components/orionplace/account/StorefrontLogout.tsx +0 -73
- package/templates/components/orionplace/account/StorefrontProfile.README.md +0 -71
- package/templates/components/orionplace/account/StorefrontProfile.module.css +0 -65
- package/templates/components/orionplace/account/StorefrontProfile.tsx +0 -189
- package/templates/components/orionplace/account/account.module.css +0 -1180
- package/templates/components/orionplace/account/profile.module.css +0 -696
- package/templates/components/orionplace/address/AddressForm.README.md +0 -152
- package/templates/components/orionplace/address/AddressForm.module.css +0 -336
- package/templates/components/orionplace/address/AddressForm.tsx +0 -827
- package/templates/components/orionplace/address/StorefrontAddresses.README.md +0 -99
- package/templates/components/orionplace/address/StorefrontAddresses.module.css +0 -271
- package/templates/components/orionplace/address/StorefrontAddresses.tsx +0 -438
- package/templates/components/orionplace/banners/MainBanner.README.md +0 -65
- package/templates/components/orionplace/banners/MainBanner.module.css +0 -112
- package/templates/components/orionplace/banners/MainBanner.tsx +0 -159
- package/templates/components/orionplace/blog/BlogArticle.README.md +0 -183
- package/templates/components/orionplace/blog/BlogArticle.module.css +0 -333
- package/templates/components/orionplace/blog/BlogArticle.tsx +0 -545
- package/templates/components/orionplace/blog/BlogCommentForm.README.md +0 -51
- package/templates/components/orionplace/blog/BlogCommentForm.module.css +0 -93
- package/templates/components/orionplace/blog/BlogCommentForm.tsx +0 -125
- package/templates/components/orionplace/blog/BlogComments.README.md +0 -98
- package/templates/components/orionplace/blog/BlogComments.module.css +0 -151
- package/templates/components/orionplace/blog/BlogComments.tsx +0 -590
- package/templates/components/orionplace/blog/BlogPostCard.README.md +0 -51
- package/templates/components/orionplace/blog/BlogPostCard.module.css +0 -167
- package/templates/components/orionplace/blog/BlogPostCard.tsx +0 -177
- package/templates/components/orionplace/blog/BlogPostGroup.README.md +0 -49
- package/templates/components/orionplace/blog/BlogPostGroup.module.css +0 -37
- package/templates/components/orionplace/blog/BlogPostGroup.tsx +0 -129
- package/templates/components/orionplace/blog/StorefrontJournal.README.md +0 -105
- package/templates/components/orionplace/blog/StorefrontJournal.module.css +0 -387
- package/templates/components/orionplace/blog/StorefrontJournal.tsx +0 -549
- package/templates/components/orionplace/branding/BrandLogos.README.md +0 -29
- package/templates/components/orionplace/branding/BrandLogos.module.css +0 -7
- package/templates/components/orionplace/branding/BrandLogos.tsx +0 -30
- package/templates/components/orionplace/cart/CartCheckoutDetails.README.md +0 -96
- package/templates/components/orionplace/cart/CartCheckoutDetails.module.css +0 -159
- package/templates/components/orionplace/cart/CartCheckoutDetails.tsx +0 -381
- package/templates/components/orionplace/cart/CartDeliverySelector.README.md +0 -166
- package/templates/components/orionplace/cart/CartDeliverySelector.module.css +0 -105
- package/templates/components/orionplace/cart/CartDeliverySelector.tsx +0 -679
- package/templates/components/orionplace/cart/CartItemOptions.README.md +0 -172
- package/templates/components/orionplace/cart/CartItemOptions.module.css +0 -113
- package/templates/components/orionplace/cart/CartItemOptions.tsx +0 -503
- package/templates/components/orionplace/cart/CartLineItem.README.md +0 -138
- package/templates/components/orionplace/cart/CartLineItem.module.css +0 -57
- package/templates/components/orionplace/cart/CartLineItem.tsx +0 -263
- package/templates/components/orionplace/cart/CartPreview.README.md +0 -99
- package/templates/components/orionplace/cart/CartPreview.module.css +0 -225
- package/templates/components/orionplace/cart/CartPreview.tsx +0 -188
- package/templates/components/orionplace/cart/DeliveryMap.README.md +0 -65
- package/templates/components/orionplace/cart/DeliveryMap.module.css +0 -32
- package/templates/components/orionplace/cart/DeliveryMap.tsx +0 -131
- package/templates/components/orionplace/cart/StorefrontCart.README.md +0 -281
- package/templates/components/orionplace/cart/StorefrontCart.module.css +0 -460
- package/templates/components/orionplace/cart/StorefrontCart.tsx +0 -937
- package/templates/components/orionplace/catalog/CatalogHeader.README.md +0 -136
- package/templates/components/orionplace/catalog/CatalogHeader.module.css +0 -387
- package/templates/components/orionplace/catalog/CatalogHeader.tsx +0 -644
- package/templates/components/orionplace/catalog/CatalogRepresentative.README.md +0 -68
- package/templates/components/orionplace/catalog/CatalogRepresentative.tsx +0 -51
- package/templates/components/orionplace/catalog/StorefrontCatalog.README.md +0 -120
- package/templates/components/orionplace/catalog/StorefrontCatalog.module.css +0 -179
- package/templates/components/orionplace/catalog/StorefrontCatalog.tsx +0 -304
- package/templates/components/orionplace/categories/CategoryGroup.README.md +0 -68
- package/templates/components/orionplace/categories/CategoryGroup.module.css +0 -110
- package/templates/components/orionplace/categories/CategoryGroup.tsx +0 -123
- package/templates/components/orionplace/categories/StorefrontCategory.README.md +0 -155
- package/templates/components/orionplace/categories/StorefrontCategory.module.css +0 -148
- package/templates/components/orionplace/categories/StorefrontCategory.tsx +0 -225
- package/templates/components/orionplace/contact/AboutPage.README.md +0 -40
- package/templates/components/orionplace/contact/AboutPage.module.css +0 -216
- package/templates/components/orionplace/contact/AboutPage.tsx +0 -191
- package/templates/components/orionplace/contact/ContactForm.README.md +0 -93
- package/templates/components/orionplace/contact/ContactForm.module.css +0 -264
- package/templates/components/orionplace/contact/ContactForm.tsx +0 -382
- package/templates/components/orionplace/contact/EmailUnsubscribe.README.md +0 -67
- package/templates/components/orionplace/contact/EmailUnsubscribe.module.css +0 -95
- package/templates/components/orionplace/contact/EmailUnsubscribe.tsx +0 -130
- package/templates/components/orionplace/contact/StorefrontContact.README.md +0 -73
- package/templates/components/orionplace/contact/StorefrontContact.module.css +0 -101
- package/templates/components/orionplace/contact/StorefrontContact.tsx +0 -62
- package/templates/components/orionplace/currencies/MainCurrencySwitcher.README.md +0 -37
- package/templates/components/orionplace/currencies/MainCurrencySwitcher.tsx +0 -68
- package/templates/components/orionplace/events/EventEnrollmentDialog.README.md +0 -108
- package/templates/components/orionplace/events/EventEnrollmentDialog.module.css +0 -110
- package/templates/components/orionplace/events/EventEnrollmentDialog.tsx +0 -315
- package/templates/components/orionplace/events/EventsBlock.README.md +0 -58
- package/templates/components/orionplace/events/EventsBlock.module.css +0 -101
- package/templates/components/orionplace/events/EventsBlock.tsx +0 -109
- package/templates/components/orionplace/legal/CookieNotice.README.md +0 -42
- package/templates/components/orionplace/legal/CookieNotice.module.css +0 -48
- package/templates/components/orionplace/legal/CookieNotice.tsx +0 -82
- package/templates/components/orionplace/legal/StorefrontPrivacy.README.md +0 -49
- package/templates/components/orionplace/legal/StorefrontPrivacy.module.css +0 -166
- package/templates/components/orionplace/legal/StorefrontPrivacy.tsx +0 -83
- package/templates/components/orionplace/locale/MainLanguageSwitcher.README.md +0 -46
- package/templates/components/orionplace/locale/MainLanguageSwitcher.module.css +0 -196
- package/templates/components/orionplace/locale/MainLanguageSwitcher.tsx +0 -387
- package/templates/components/orionplace/manufacturers/ManufacturerIndex.README.md +0 -83
- package/templates/components/orionplace/manufacturers/ManufacturerIndex.module.css +0 -271
- package/templates/components/orionplace/manufacturers/ManufacturerIndex.tsx +0 -218
- package/templates/components/orionplace/manufacturers/StorefrontManufacturers.README.md +0 -122
- package/templates/components/orionplace/manufacturers/StorefrontManufacturers.module.css +0 -92
- package/templates/components/orionplace/manufacturers/StorefrontManufacturers.tsx +0 -455
- package/templates/components/orionplace/orders/OrderDetails.README.md +0 -116
- package/templates/components/orionplace/orders/OrderDetails.module.css +0 -730
- package/templates/components/orionplace/orders/OrderDetails.tsx +0 -693
- package/templates/components/orionplace/orders/OrderPaymentForm.README.md +0 -92
- package/templates/components/orionplace/orders/OrderPaymentForm.module.css +0 -105
- package/templates/components/orionplace/orders/OrderPaymentForm.tsx +0 -90
- package/templates/components/orionplace/orders/StorefrontOrders.README.md +0 -131
- package/templates/components/orionplace/orders/StorefrontOrders.module.css +0 -633
- package/templates/components/orionplace/orders/StorefrontOrders.tsx +0 -922
- package/templates/components/orionplace/payments/PaymentPanel.README.md +0 -114
- package/templates/components/orionplace/payments/PaymentPanel.module.css +0 -134
- package/templates/components/orionplace/payments/PaymentPanel.tsx +0 -76
- package/templates/components/orionplace/products/HoverImageViewer.README.md +0 -62
- package/templates/components/orionplace/products/HoverImageViewer.module.css +0 -88
- package/templates/components/orionplace/products/HoverImageViewer.tsx +0 -179
- package/templates/components/orionplace/products/ProductCard.README.md +0 -154
- package/templates/components/orionplace/products/ProductCard.module.css +0 -333
- package/templates/components/orionplace/products/ProductCard.tsx +0 -730
- package/templates/components/orionplace/products/ProductCardActions.README.md +0 -84
- package/templates/components/orionplace/products/ProductCardActions.module.css +0 -146
- package/templates/components/orionplace/products/ProductCardActions.tsx +0 -311
- package/templates/components/orionplace/products/ProductCardBadges.README.md +0 -44
- package/templates/components/orionplace/products/ProductCardBadges.module.css +0 -15
- package/templates/components/orionplace/products/ProductCardBadges.tsx +0 -78
- package/templates/components/orionplace/products/ProductCardDescription.README.md +0 -33
- package/templates/components/orionplace/products/ProductCardDescription.module.css +0 -6
- package/templates/components/orionplace/products/ProductCardDescription.tsx +0 -43
- package/templates/components/orionplace/products/ProductCardFavorite.README.md +0 -52
- package/templates/components/orionplace/products/ProductCardFavorite.module.css +0 -64
- package/templates/components/orionplace/products/ProductCardFavorite.tsx +0 -90
- package/templates/components/orionplace/products/ProductCardPrice.README.md +0 -33
- package/templates/components/orionplace/products/ProductCardPrice.module.css +0 -22
- package/templates/components/orionplace/products/ProductCardPrice.tsx +0 -50
- package/templates/components/orionplace/products/ProductCardRating.README.md +0 -33
- package/templates/components/orionplace/products/ProductCardRating.module.css +0 -7
- package/templates/components/orionplace/products/ProductCardRating.tsx +0 -56
- package/templates/components/orionplace/products/ProductCardSeller.README.md +0 -36
- package/templates/components/orionplace/products/ProductCardSeller.module.css +0 -31
- package/templates/components/orionplace/products/ProductCardSeller.tsx +0 -61
- package/templates/components/orionplace/products/ProductCardStockNotice.README.md +0 -36
- package/templates/components/orionplace/products/ProductCardStockNotice.module.css +0 -8
- package/templates/components/orionplace/products/ProductCardStockNotice.tsx +0 -35
- package/templates/components/orionplace/products/ProductCardTitle.README.md +0 -30
- package/templates/components/orionplace/products/ProductCardTitle.module.css +0 -13
- package/templates/components/orionplace/products/ProductCardTitle.tsx +0 -31
- package/templates/components/orionplace/products/ProductCardVariants.README.md +0 -77
- package/templates/components/orionplace/products/ProductCardVariants.module.css +0 -97
- package/templates/components/orionplace/products/ProductCardVariants.tsx +0 -350
- package/templates/components/orionplace/products/ProductGroup.README.md +0 -91
- package/templates/components/orionplace/products/ProductGroup.module.css +0 -64
- package/templates/components/orionplace/products/ProductGroup.tsx +0 -186
- package/templates/components/orionplace/products/ProductPreorderDialog.README.md +0 -89
- package/templates/components/orionplace/products/ProductPreorderDialog.module.css +0 -320
- package/templates/components/orionplace/products/ProductPreorderDialog.tsx +0 -346
- package/templates/components/orionplace/products/ProductReviewForm.README.md +0 -72
- package/templates/components/orionplace/products/ProductReviewForm.module.css +0 -217
- package/templates/components/orionplace/products/ProductReviewForm.tsx +0 -288
- package/templates/components/orionplace/products/ProductReviewGallery.README.md +0 -61
- package/templates/components/orionplace/products/ProductReviewGallery.module.css +0 -108
- package/templates/components/orionplace/products/ProductReviewGallery.tsx +0 -110
- package/templates/components/orionplace/products/ProductReviewImageViewer.README.md +0 -60
- package/templates/components/orionplace/products/ProductReviewImageViewer.module.css +0 -59
- package/templates/components/orionplace/products/ProductReviewImageViewer.tsx +0 -312
- package/templates/components/orionplace/products/ProductReviews.README.md +0 -137
- package/templates/components/orionplace/products/ProductReviews.module.css +0 -602
- package/templates/components/orionplace/products/ProductReviews.tsx +0 -944
- package/templates/components/orionplace/products/ProductSecondaryVariantModal.README.md +0 -67
- package/templates/components/orionplace/products/ProductSecondaryVariantModal.module.css +0 -79
- package/templates/components/orionplace/products/ProductSecondaryVariantModal.tsx +0 -324
- package/templates/components/orionplace/products/ProductSpecificationsDialog.README.md +0 -52
- package/templates/components/orionplace/products/ProductSpecificationsDialog.module.css +0 -138
- package/templates/components/orionplace/products/ProductSpecificationsDialog.tsx +0 -117
- package/templates/components/orionplace/products/StorefrontProduct.README.md +0 -200
- package/templates/components/orionplace/products/StorefrontProduct.module.css +0 -767
- package/templates/components/orionplace/products/StorefrontProduct.tsx +0 -1339
- package/templates/components/orionplace/products/StorefrontWishlist.README.md +0 -162
- package/templates/components/orionplace/products/StorefrontWishlist.module.css +0 -71
- package/templates/components/orionplace/products/StorefrontWishlist.tsx +0 -402
- package/templates/components/orionplace/promo/PromoProducts.README.md +0 -133
- package/templates/components/orionplace/promo/PromoProducts.module.css +0 -68
- package/templates/components/orionplace/promo/PromoProducts.tsx +0 -345
- package/templates/components/orionplace/search/MainSearch.README.md +0 -73
- package/templates/components/orionplace/search/MainSearch.module.css +0 -202
- package/templates/components/orionplace/search/MainSearch.tsx +0 -217
- package/templates/components/orionplace/search/ProductSearchResults.README.md +0 -166
- package/templates/components/orionplace/search/ProductSearchResults.module.css +0 -361
- package/templates/components/orionplace/search/ProductSearchResults.tsx +0 -359
- package/templates/components/orionplace/search/SearchFilters.README.md +0 -109
- package/templates/components/orionplace/search/SearchFilters.module.css +0 -274
- package/templates/components/orionplace/search/SearchFilters.tsx +0 -439
- package/templates/components/orionplace/sellers/SellerFilters.README.md +0 -66
- package/templates/components/orionplace/sellers/SellerFilters.module.css +0 -232
- package/templates/components/orionplace/sellers/SellerFilters.tsx +0 -201
- package/templates/components/orionplace/sellers/SellerPhotoGallery.README.md +0 -72
- package/templates/components/orionplace/sellers/SellerPhotoGallery.module.css +0 -314
- package/templates/components/orionplace/sellers/SellerPhotoGallery.tsx +0 -335
- package/templates/components/orionplace/sellers/SellerSummary.README.md +0 -62
- package/templates/components/orionplace/sellers/SellerSummary.module.css +0 -182
- package/templates/components/orionplace/sellers/SellerSummary.tsx +0 -107
- package/templates/components/orionplace/sellers/StorefrontSellers.README.md +0 -120
- package/templates/components/orionplace/sellers/StorefrontSellers.module.css +0 -147
- package/templates/components/orionplace/sellers/StorefrontSellers.tsx +0 -360
- package/templates/components/orionplace/shared/OrionplaceAvatar.README.md +0 -35
- package/templates/components/orionplace/shared/OrionplaceAvatar.module.css +0 -35
- package/templates/components/orionplace/shared/OrionplaceAvatar.tsx +0 -61
- package/templates/components/orionplace/shared/OrionplaceBreadcrumbs.README.md +0 -33
- package/templates/components/orionplace/shared/OrionplaceBreadcrumbs.module.css +0 -81
- package/templates/components/orionplace/shared/OrionplaceBreadcrumbs.tsx +0 -91
- package/templates/components/orionplace/shared/OrionplaceEmptyState.README.md +0 -37
- package/templates/components/orionplace/shared/OrionplaceEmptyState.module.css +0 -126
- package/templates/components/orionplace/shared/OrionplaceEmptyState.tsx +0 -78
- package/templates/components/orionplace/shared/OrionplaceImage.README.md +0 -45
- package/templates/components/orionplace/shared/OrionplaceImage.module.css +0 -22
- package/templates/components/orionplace/shared/OrionplaceImage.tsx +0 -97
- package/templates/components/orionplace/shared/OrionplaceInfoHint.README.md +0 -31
- package/templates/components/orionplace/shared/OrionplaceInfoHint.module.css +0 -59
- package/templates/components/orionplace/shared/OrionplaceInfoHint.tsx +0 -126
- package/templates/components/orionplace/shared/OrionplacePasswordInput.README.md +0 -39
- package/templates/components/orionplace/shared/OrionplacePasswordInput.module.css +0 -79
- package/templates/components/orionplace/shared/OrionplacePasswordInput.tsx +0 -103
- package/templates/components/orionplace/shared/OrionplaceSearchSelect.README.md +0 -97
- package/templates/components/orionplace/shared/OrionplaceSearchSelect.module.css +0 -246
- package/templates/components/orionplace/shared/OrionplaceSearchSelect.tsx +0 -367
- package/templates/components/orionplace/shared/OrionplaceSelect.README.md +0 -69
- package/templates/components/orionplace/shared/OrionplaceSelect.module.css +0 -233
- package/templates/components/orionplace/shared/OrionplaceSelect.tsx +0 -439
- package/templates/components/orionplace/shared/StorefrontErrorPage.README.md +0 -52
- package/templates/components/orionplace/shared/StorefrontErrorPage.module.css +0 -141
- package/templates/components/orionplace/shared/StorefrontErrorPage.tsx +0 -103
- package/templates/components/orionplace/shared/StorefrontPagination.README.md +0 -45
- package/templates/components/orionplace/shared/StorefrontPagination.module.css +0 -69
- package/templates/components/orionplace/shared/StorefrontPagination.tsx +0 -158
- package/templates/components/orionplace/shared/dialogs.css +0 -36
- package/templates/components/orionplace/shared/emptyStateArt.ts +0 -231
- package/templates/components/orionplace/shared/features.module.css +0 -162
- package/templates/components/orionplace/social/SocialLinks.README.md +0 -16
- package/templates/components/orionplace/social/SocialLinks.module.css +0 -36
- package/templates/components/orionplace/social/SocialLinks.tsx +0 -59
- package/templates/components/orionplace/storefront/StorefrontAccount.README.md +0 -59
- package/templates/components/orionplace/storefront/StorefrontAccount.module.css +0 -159
- package/templates/components/orionplace/storefront/StorefrontAccount.tsx +0 -303
- package/templates/components/orionplace/storefront/StorefrontCartButton.README.md +0 -47
- package/templates/components/orionplace/storefront/StorefrontCartButton.module.css +0 -88
- package/templates/components/orionplace/storefront/StorefrontCartButton.tsx +0 -54
- package/templates/components/orionplace/storefront/StorefrontFooter.README.md +0 -55
- package/templates/components/orionplace/storefront/StorefrontFooter.module.css +0 -118
- package/templates/components/orionplace/storefront/StorefrontFooter.tsx +0 -168
- package/templates/components/orionplace/storefront/StorefrontHeader.README.md +0 -150
- package/templates/components/orionplace/storefront/StorefrontHeader.module.css +0 -186
- package/templates/components/orionplace/storefront/StorefrontHeader.tsx +0 -389
- package/templates/components/orionplace/storefront/StorefrontHome.README.md +0 -138
- package/templates/components/orionplace/storefront/StorefrontHome.module.css +0 -116
- package/templates/components/orionplace/storefront/StorefrontHome.tsx +0 -282
- package/templates/components/orionplace/storefront/StorefrontWishlistButton.README.md +0 -51
- package/templates/components/orionplace/storefront/StorefrontWishlistButton.module.css +0 -95
- package/templates/components/orionplace/storefront/StorefrontWishlistButton.tsx +0 -80
- package/templates/components/orionplace/stores/StorefrontStores.README.md +0 -87
- package/templates/components/orionplace/stores/StorefrontStores.module.css +0 -218
- package/templates/components/orionplace/stores/StorefrontStores.tsx +0 -397
- package/templates/components/orionplace/subscriptions/StorefrontSubscriptions.README.md +0 -183
- package/templates/components/orionplace/subscriptions/StorefrontSubscriptions.module.css +0 -347
- package/templates/components/orionplace/subscriptions/StorefrontSubscriptions.tsx +0 -884
- package/templates/components/orionplace/subscriptions/StorefrontTariff.README.md +0 -124
- package/templates/components/orionplace/subscriptions/StorefrontTariff.module.css +0 -311
- package/templates/components/orionplace/subscriptions/StorefrontTariff.tsx +0 -485
- package/templates/components/orionplace/subscriptions/StorefrontTariffs.README.md +0 -115
- package/templates/components/orionplace/subscriptions/StorefrontTariffs.module.css +0 -219
- package/templates/components/orionplace/subscriptions/StorefrontTariffs.tsx +0 -367
- package/templates/components/orionplace/subscriptions/SubscriptionCancelDialog.README.md +0 -67
- package/templates/components/orionplace/subscriptions/SubscriptionCancelDialog.tsx +0 -175
- package/templates/components/orionplace/subscriptions/SubscriptionChangeDialog.README.md +0 -95
- package/templates/components/orionplace/subscriptions/SubscriptionChangeDialog.tsx +0 -634
- package/templates/components/orionplace/subscriptions/SubscriptionDialog.module.css +0 -453
- package/templates/components/orionplace/subscriptions/SubscriptionExtendDialog.README.md +0 -75
- package/templates/components/orionplace/subscriptions/SubscriptionExtendDialog.tsx +0 -384
- package/templates/components/orionplace/subscriptions/SubscriptionPlanSummary.README.md +0 -116
- package/templates/components/orionplace/subscriptions/SubscriptionPlanSummary.module.css +0 -168
- package/templates/components/orionplace/subscriptions/SubscriptionPlanSummary.tsx +0 -236
- package/templates/components/orionplace/subscriptions/SubscriptionRemoteDetails.README.md +0 -123
- package/templates/components/orionplace/subscriptions/SubscriptionRemoteDetails.module.css +0 -57
- package/templates/components/orionplace/subscriptions/SubscriptionRemoteDetails.tsx +0 -101
- package/templates/components/orionplace/subscriptions/SubscriptionRenewalDialog.README.md +0 -109
- package/templates/components/orionplace/subscriptions/SubscriptionRenewalDialog.tsx +0 -253
- package/templates/components/orionplace/support/StorefrontSupport.README.md +0 -157
- package/templates/components/orionplace/support/StorefrontSupport.tsx +0 -1040
- package/templates/components/orionplace/support/Support.module.css +0 -1133
- package/templates/components/orionplace/support/TicketConversation.README.md +0 -105
- package/templates/components/orionplace/support/TicketConversation.tsx +0 -502
- package/templates/components/orionplace/support/TicketImage.README.md +0 -52
- package/templates/components/orionplace/support/TicketImage.tsx +0 -254
- package/templates/components/orionplace/support/TicketItemCard.README.md +0 -66
- package/templates/components/orionplace/support/TicketItemCard.tsx +0 -140
- package/templates/components/orionplace/support/TicketMessageForm.README.md +0 -88
- package/templates/components/orionplace/support/TicketMessageForm.tsx +0 -261
- package/templates/components/orionplace/support/TicketSubscriptionCard.README.md +0 -53
- package/templates/components/orionplace/support/TicketSubscriptionCard.tsx +0 -118
- package/templates/components/orionplace/tariffs/TariffCard.README.md +0 -108
- package/templates/components/orionplace/tariffs/TariffCard.module.css +0 -86
- package/templates/components/orionplace/tariffs/TariffCard.tsx +0 -225
- package/templates/components/orionplace/tariffs/TariffCardDescription.README.md +0 -40
- package/templates/components/orionplace/tariffs/TariffCardDescription.module.css +0 -72
- package/templates/components/orionplace/tariffs/TariffCardDescription.tsx +0 -58
- package/templates/components/orionplace/tariffs/TariffCardFeatures.README.md +0 -58
- package/templates/components/orionplace/tariffs/TariffCardFeatures.module.css +0 -60
- package/templates/components/orionplace/tariffs/TariffCardFeatures.tsx +0 -140
- package/templates/components/orionplace/tariffs/TariffCardImage.README.md +0 -36
- package/templates/components/orionplace/tariffs/TariffCardImage.module.css +0 -8
- package/templates/components/orionplace/tariffs/TariffCardImage.tsx +0 -32
- package/templates/components/orionplace/tariffs/TariffCardPrices.README.md +0 -82
- package/templates/components/orionplace/tariffs/TariffCardPrices.module.css +0 -142
- package/templates/components/orionplace/tariffs/TariffCardPrices.tsx +0 -191
- package/templates/components/orionplace/tariffs/TariffCardTitle.README.md +0 -32
- package/templates/components/orionplace/tariffs/TariffCardTitle.module.css +0 -9
- package/templates/components/orionplace/tariffs/TariffCardTitle.tsx +0 -29
- package/templates/components/orionplace/tariffs/TariffCards.README.md +0 -88
- package/templates/components/orionplace/tariffs/TariffCards.module.css +0 -24
- package/templates/components/orionplace/tariffs/TariffCards.tsx +0 -44
- package/templates/components/orionplace/tariffs/TariffSubscriptionModal.README.md +0 -92
- package/templates/components/orionplace/tariffs/TariffSubscriptionModal.module.css +0 -214
- package/templates/components/orionplace/tariffs/TariffSubscriptionModal.tsx +0 -299
- package/templates/components/orionplace/theme/OrionplaceThemeProvider.README.md +0 -30
- package/templates/components/orionplace/theme/OrionplaceThemeProvider.module.css +0 -8
- package/templates/components/orionplace/theme/OrionplaceThemeProvider.tsx +0 -32
- package/templates/components/orionplace/units/UnitSwitcher.README.md +0 -35
- package/templates/components/orionplace/units/UnitSwitcher.tsx +0 -58
- package/templates/components/orionplace/wallet/StorefrontWallet.README.md +0 -154
- package/templates/components/orionplace/wallet/StorefrontWallet.module.css +0 -507
- package/templates/components/orionplace/wallet/StorefrontWallet.tsx +0 -915
- package/templates/components/orionplace/wallet/WalletBalance.README.md +0 -46
- package/templates/components/orionplace/wallet/WalletBalance.module.css +0 -46
- package/templates/components/orionplace/wallet/WalletBalance.tsx +0 -51
- package/templates/components/orionplace/wallet/WalletTopUpForm.README.md +0 -54
- package/templates/components/orionplace/wallet/WalletTopUpForm.module.css +0 -152
- package/templates/components/orionplace/wallet/WalletTopUpForm.tsx +0 -181
- package/templates/hooks/useAccountActivity.ts +0 -251
- package/templates/hooks/useAccountAddresses.ts +0 -81
- package/templates/hooks/useAccountPromocodes.ts +0 -91
- package/templates/hooks/useOrionplaceActionMenu.ts +0 -118
- package/templates/hooks/useOrionplaceAddressForm.ts +0 -262
- package/templates/hooks/useOrionplaceApi.ts +0 -98
- package/templates/hooks/useOrionplaceAppLoad.ts +0 -66
- package/templates/hooks/useOrionplaceBlogReading.ts +0 -351
- package/templates/hooks/useOrionplaceDialog.ts +0 -85
- package/templates/hooks/useOrionplaceHomeProducts.ts +0 -97
- package/templates/hooks/useOrionplaceMap.tsx +0 -230
- package/templates/hooks/useOrionplaceMediaFormat.ts +0 -33
- package/templates/hooks/useOrionplaceProduct.ts +0 -28
- package/templates/hooks/useOrionplaceProfile.ts +0 -347
- package/templates/hooks/useOrionplaceReviews.ts +0 -352
- package/templates/hooks/useOrionplaceStableHeight.ts +0 -65
- package/templates/hooks/useOrionplaceStorefront.tsx +0 -575
- package/templates/hooks/useOrionplaceTariffPurchase.ts +0 -212
- package/templates/interfaces/orionplace/accounts/IContact.ts +0 -21
- package/templates/interfaces/orionplace/accounts/IEmailNotificationLocale.ts +0 -17
- package/templates/interfaces/orionplace/accounts/IEmailVerification.ts +0 -59
- package/templates/interfaces/orionplace/accounts/IProfileActions.ts +0 -38
- package/templates/interfaces/orionplace/accounts/IProfileData.ts +0 -125
- package/templates/interfaces/orionplace/accounts/IProfileMedia.ts +0 -17
- package/templates/interfaces/orionplace/accounts/IStorefrontProfile.ts +0 -54
- package/templates/interfaces/orionplace/address/IAddressCitySuggestion.ts +0 -19
- package/templates/interfaces/orionplace/address/IAddressEditor.ts +0 -9
- package/templates/interfaces/orionplace/address/IAddressLocationSuggestion.ts +0 -22
- package/templates/interfaces/orionplace/address/IAddressRegionSearch.ts +0 -30
- package/templates/interfaces/orionplace/address/IAddressSuggestion.ts +0 -20
- package/templates/interfaces/orionplace/address/IUserAddress.ts +0 -87
- package/templates/interfaces/orionplace/apiBase/TMethod.ts +0 -1
- package/templates/interfaces/orionplace/appBase/IAppLoad.ts +0 -16
- package/templates/interfaces/orionplace/appBase/IAppLoadCommon.ts +0 -47
- package/templates/interfaces/orionplace/appBase/IApploadUserProfile.ts +0 -15
- package/templates/interfaces/orionplace/appBase/IForm.ts +0 -21
- package/templates/interfaces/orionplace/appBase/ISEO.ts +0 -21
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonBanner.ts +0 -11
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonContact.ts +0 -8
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonCurrency.ts +0 -15
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonEvents.ts +0 -18
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonLocale.ts +0 -14
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonLogos.ts +0 -6
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonPath.ts +0 -22
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonSEO.ts +0 -26
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonSocial.ts +0 -15
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonTariff.ts +0 -7
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonUnit.ts +0 -12
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonVariables.ts +0 -8
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonVisualSettings.ts +0 -11
- package/templates/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonWalletValue.ts +0 -3
- package/templates/interfaces/orionplace/blog/IBlogApi.ts +0 -247
- package/templates/interfaces/orionplace/blog/IBlogPostPreview.ts +0 -30
- package/templates/interfaces/orionplace/cart/ICartActions.ts +0 -67
- package/templates/interfaces/orionplace/cart/ICartData.ts +0 -382
- package/templates/interfaces/orionplace/cart/ICartDeliveryActions.ts +0 -68
- package/templates/interfaces/orionplace/cart/ICartModal.ts +0 -22
- package/templates/interfaces/orionplace/cart/IDeliveryMap.ts +0 -29
- package/templates/interfaces/orionplace/catalog/ICatalogDirectory.ts +0 -75
- package/templates/interfaces/orionplace/category/ICategory.ts +0 -41
- package/templates/interfaces/orionplace/domains/IDomain.ts +0 -13
- package/templates/interfaces/orionplace/forms/ICustomerSubfilter.ts +0 -19
- package/templates/interfaces/orionplace/index.ts +0 -64
- package/templates/interfaces/orionplace/marketing/IPromoActions.ts +0 -51
- package/templates/interfaces/orionplace/orders/IOrderActions.ts +0 -99
- package/templates/interfaces/orionplace/orders/IOrderHistory.ts +0 -259
- package/templates/interfaces/orionplace/orders/IProductPreorder.ts +0 -31
- package/templates/interfaces/orionplace/payments/IInvoice.ts +0 -147
- package/templates/interfaces/orionplace/products/IProduct.ts +0 -262
- package/templates/interfaces/orionplace/products/IProductFeedbackApi.ts +0 -218
- package/templates/interfaces/orionplace/products/IProductSearchApi.ts +0 -146
- package/templates/interfaces/orionplace/products/IProductSearchFacets.ts +0 -35
- package/templates/interfaces/orionplace/products/IProductSecondaryVariantRequest.ts +0 -15
- package/templates/interfaces/orionplace/products/IProductSpecification.ts +0 -14
- package/templates/interfaces/orionplace/products/IWishlist.ts +0 -22
- package/templates/interfaces/orionplace/sellers/ISellerDirectory.ts +0 -70
- package/templates/interfaces/orionplace/shared/IBreadcrumb.ts +0 -10
- package/templates/interfaces/orionplace/shared/IGeoCoordinates.ts +0 -4
- package/templates/interfaces/orionplace/shared/IStorefrontControls.ts +0 -6
- package/templates/interfaces/orionplace/shared/ITransformValue.ts +0 -3
- package/templates/interfaces/orionplace/state.ts +0 -4
- package/templates/interfaces/orionplace/stores/IStoreDirectory.ts +0 -63
- package/templates/interfaces/orionplace/subscribeOptions/ISubscribeOption.ts +0 -9
- package/templates/interfaces/orionplace/subscribeTariff/ISubscribeTariff.ts +0 -56
- package/templates/interfaces/orionplace/subscribeTariff/ITariffSelection.ts +0 -11
- package/templates/interfaces/orionplace/subscribes/ISubscribe.ts +0 -28
- package/templates/interfaces/orionplace/subscribes/ISubscriptionApi.ts +0 -127
- package/templates/interfaces/orionplace/tickets/ICustomerTicketApi.ts +0 -223
- package/templates/interfaces/orionplace/transport.ts +0 -34
- package/templates/lib/orionplace/accountLabels.ts +0 -29
- package/templates/lib/orionplace/activityLabels.ts +0 -96
- package/templates/lib/orionplace/activityPresentation.ts +0 -9
- package/templates/lib/orionplace/addressChanges.ts +0 -26
- package/templates/lib/orionplace/addressPresentation.ts +0 -58
- package/templates/lib/orionplace/api.ts +0 -326
- package/templates/lib/orionplace/appLoadClient.ts +0 -80
- package/templates/lib/orionplace/appLoadResult.ts +0 -120
- package/templates/lib/orionplace/appLoadServer.ts +0 -183
- package/templates/lib/orionplace/blogArticle.ts +0 -122
- package/templates/lib/orionplace/blogArticleHtml.ts +0 -371
- package/templates/lib/orionplace/blogComments.ts +0 -102
- package/templates/lib/orionplace/blogImageViewer.ts +0 -84
- package/templates/lib/orionplace/blogJournal.ts +0 -128
- package/templates/lib/orionplace/blogLabels.ts +0 -158
- package/templates/lib/orionplace/blogPresentation.ts +0 -67
- package/templates/lib/orionplace/blogProductPlacements.ts +0 -105
- package/templates/lib/orionplace/browseLabels.ts +0 -145
- package/templates/lib/orionplace/cartAddress.ts +0 -86
- package/templates/lib/orionplace/cartController.ts +0 -104
- package/templates/lib/orionplace/cartLabels.ts +0 -390
- package/templates/lib/orionplace/cartOptions.ts +0 -115
- package/templates/lib/orionplace/cartPreview.ts +0 -135
- package/templates/lib/orionplace/cartPromo.ts +0 -150
- package/templates/lib/orionplace/cartShipment.ts +0 -61
- package/templates/lib/orionplace/cartSnapshot.ts +0 -21
- package/templates/lib/orionplace/catalog.ts +0 -150
- package/templates/lib/orionplace/categoryLabels.ts +0 -29
- package/templates/lib/orionplace/contact.ts +0 -47
- package/templates/lib/orionplace/contactLabels.ts +0 -152
- package/templates/lib/orionplace/currency.ts +0 -128
- package/templates/lib/orionplace/deliveryMap.ts +0 -86
- package/templates/lib/orionplace/directoryLabels.ts +0 -198
- package/templates/lib/orionplace/domain.ts +0 -21
- package/templates/lib/orionplace/errorPageLabels.ts +0 -89
- package/templates/lib/orionplace/eventEnrollment.ts +0 -22
- package/templates/lib/orionplace/featureData.ts +0 -28
- package/templates/lib/orionplace/featureLabels.ts +0 -406
- package/templates/lib/orionplace/featuredLabels.ts +0 -38
- package/templates/lib/orionplace/footerLabels.ts +0 -53
- package/templates/lib/orionplace/guestSession.ts +0 -55
- package/templates/lib/orionplace/headerLabels.ts +0 -98
- package/templates/lib/orionplace/homeContent.ts +0 -193
- package/templates/lib/orionplace/homeLabels.ts +0 -74
- package/templates/lib/orionplace/htmlText.ts +0 -51
- package/templates/lib/orionplace/manufacturerDirectory.ts +0 -71
- package/templates/lib/orionplace/manufacturerIndex.ts +0 -107
- package/templates/lib/orionplace/modalWindow.ts +0 -109
- package/templates/lib/orionplace/nativeApp.ts +0 -365
- package/templates/lib/orionplace/navigation.tsx +0 -121
- package/templates/lib/orionplace/notice.ts +0 -22
- package/templates/lib/orionplace/orderLabels.ts +0 -458
- package/templates/lib/orionplace/orderPresentation.ts +0 -574
- package/templates/lib/orionplace/pageMetadata.ts +0 -361
- package/templates/lib/orionplace/pageSeo.ts +0 -662
- package/templates/lib/orionplace/paginationScroll.ts +0 -131
- package/templates/lib/orionplace/phone.ts +0 -22
- package/templates/lib/orionplace/presentation.ts +0 -84
- package/templates/lib/orionplace/privacyLabels.ts +0 -273
- package/templates/lib/orionplace/productActionLabels.ts +0 -87
- package/templates/lib/orionplace/productAvailability.ts +0 -30
- package/templates/lib/orionplace/productGallery.ts +0 -64
- package/templates/lib/orionplace/productLabels.ts +0 -119
- package/templates/lib/orionplace/productListLocation.ts +0 -130
- package/templates/lib/orionplace/productPage.ts +0 -308
- package/templates/lib/orionplace/productPhotos.ts +0 -67
- package/templates/lib/orionplace/productSearch.ts +0 -280
- package/templates/lib/orionplace/productSeller.ts +0 -56
- package/templates/lib/orionplace/productStructuredData.ts +0 -221
- package/templates/lib/orionplace/profile.ts +0 -169
- package/templates/lib/orionplace/profileLabels.ts +0 -227
- package/templates/lib/orionplace/promoLabels.ts +0 -111
- package/templates/lib/orionplace/promoPresentation.ts +0 -381
- package/templates/lib/orionplace/reviewLabels.ts +0 -256
- package/templates/lib/orionplace/reviewPresentation.ts +0 -64
- package/templates/lib/orionplace/reviewScope.ts +0 -38
- package/templates/lib/orionplace/searchFilters.ts +0 -99
- package/templates/lib/orionplace/searchHistory.ts +0 -144
- package/templates/lib/orionplace/sellerDirectory.ts +0 -120
- package/templates/lib/orionplace/seo.ts +0 -52
- package/templates/lib/orionplace/serverApi.ts +0 -158
- package/templates/lib/orionplace/serverLocale.ts +0 -29
- package/templates/lib/orionplace/serverMetadata.ts +0 -93
- package/templates/lib/orionplace/serverRecords.ts +0 -31
- package/templates/lib/orionplace/serverRoute.tsx +0 -59
- package/templates/lib/orionplace/sessionLabels.ts +0 -38
- package/templates/lib/orionplace/signInReturn.ts +0 -89
- package/templates/lib/orionplace/storeDirectory.ts +0 -47
- package/templates/lib/orionplace/storefrontRecords.ts +0 -42
- package/templates/lib/orionplace/subscriptionChanges.ts +0 -120
- package/templates/lib/orionplace/subscriptionLabels.ts +0 -100
- package/templates/lib/orionplace/subscriptionManageLabels.ts +0 -422
- package/templates/lib/orionplace/subscriptionPlans.ts +0 -122
- package/templates/lib/orionplace/subscriptionRemote.ts +0 -85
- package/templates/lib/orionplace/subscriptionUsage.ts +0 -58
- package/templates/lib/orionplace/tariffLabels.ts +0 -176
- package/templates/lib/orionplace/tariffPage.ts +0 -54
- package/templates/lib/orionplace/tariffVariables.ts +0 -174
- package/templates/lib/orionplace/tariffs.ts +0 -241
- package/templates/lib/orionplace/ticketItems.ts +0 -75
- package/templates/lib/orionplace/ticketLabels.ts +0 -428
- package/templates/lib/orionplace/ticketLocation.ts +0 -79
- package/templates/lib/orionplace/ticketRequests.ts +0 -70
- package/templates/lib/orionplace/walletTransaction.ts +0 -105
- package/templates/orionplace/COMPONENT-DOWNLOAD.md +0 -66
- package/templates/orionplace/COMPONENTS.md +0 -35
- package/templates/providers/OrionplaceProvider.tsx +0 -191
- package/templates/proxy.ts +0 -63
- package/templates/stores/orionplace.ts +0 -282
- package/templates/stores/orionplaceBrowse.ts +0 -89
- package/templates/stores/orionplaceCatalog.ts +0 -162
- package/templates/stores/orionplaceProducts.ts +0 -389
- package/templates/stores/orionplaceScope.ts +0 -104
- package/templates/stores/orionplaceSelections.ts +0 -130
- package/templates/themes/orionplace.ts +0 -106
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
# EventEnrollmentDialog · React
|
|
2
|
-
|
|
3
|
-
## English
|
|
4
|
-
|
|
5
|
-
`EventEnrollmentDialog` confirms participation in one Application Load event.
|
|
6
|
-
It displays `image_wide`, then `image`, with a reserved 3:1 area. An event with
|
|
7
|
-
`promo=false` cannot be submitted. `modal=true` uses a native modal dialog,
|
|
8
|
-
locks page scrolling and restores focus when the component unmounts. With
|
|
9
|
-
`modal=false`, the native dialog stays in the page flow and opening it leaves
|
|
10
|
-
focus where it is. Changing `modal` while the dialog is open switches it in
|
|
11
|
-
place, keeps the focused control and lets a running enrollment request finish.
|
|
12
|
-
The close button, and Escape in the modal window, call
|
|
13
|
-
`onClose` while no enrollment or email action is pending.
|
|
14
|
-
|
|
15
|
-
A guest who selects Participate calls `onRequireSignIn` with the event ID and a
|
|
16
|
-
same-origin `returnPath` that adds `event=<id>` to `currentPath`. The host can
|
|
17
|
-
use that path after sign-in to reopen the same event. A signed-in customer
|
|
18
|
-
without a confirmed email sees
|
|
19
|
-
`ProfileEmailSettings`; `profileState` and `onProfileRequest` retain that
|
|
20
|
-
component's typed contract. Its failed initial load also provides a Retry
|
|
21
|
-
action.
|
|
22
|
-
|
|
23
|
-
A signed-in customer with a confirmed email calls `onEnroll` with
|
|
24
|
-
`endpoint: "profile_event_subscribe"`, `{ event: event.id }` and an
|
|
25
|
-
`AbortSignal`. A resolved action shows a success panel with the confirmed
|
|
26
|
-
delivery address, prevents repeat submission and calls `onEnrolled(event.id)`.
|
|
27
|
-
The response confirms enrollment and contains no promo code; the backend turns
|
|
28
|
-
the account's email messages on, then creates and emails the code later while
|
|
29
|
-
the event and promo type remain active and the customer does not turn
|
|
30
|
-
promotional messages off. A rejected action preserves the dialog and
|
|
31
|
-
allows retry. `pending` and `error` add host-controlled enrollment state.
|
|
32
|
-
Changing the event aborts an active request and clears the prior result;
|
|
33
|
-
unmounting aborts it as well.
|
|
34
|
-
|
|
35
|
-
Source is maintained in
|
|
36
|
-
`components/orionplace/events/EventEnrollmentDialog.tsx`; the event interface
|
|
37
|
-
is
|
|
38
|
-
`interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonEvents.ts`, and the
|
|
39
|
-
request field is defined in `interfaces/orionplace/accounts/IProfileMedia.ts`.
|
|
40
|
-
|
|
41
|
-
### Props
|
|
42
|
-
|
|
43
|
-
| Prop | Meaning |
|
|
44
|
-
| ------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------- |
|
|
45
|
-
| `event: IAppLoadCommonEvents` | Storefront event the visitor is enrolling in. |
|
|
46
|
-
| `profileState: IStorefrontProfileState` | Current customer profile data, loading state and errors. |
|
|
47
|
-
| `modal?: boolean` | Uses a native modal dialog when true and an inline panel when false. |
|
|
48
|
-
| `currentPath?: string` | Current safe storefront path used as the return destination after sign-in. |
|
|
49
|
-
| `pending?: boolean` | Shows the loading state and blocks duplicate actions. |
|
|
50
|
-
| `error?: string` | Customer-visible error for the component request; omit it when no request failed. |
|
|
51
|
-
| `onEnroll?: (action: EventEnrollmentAction, signal: AbortSignal) => Promise<void> \| void` | Called when the visitor submits event enrollment. The callback payload is shown in its type. |
|
|
52
|
-
| `onRequireSignIn?: (request: EventSignInRequest) => void` | Called when the visitor must sign in before continuing. The callback payload is shown in its type. |
|
|
53
|
-
| `onProfileRequest?: (action: IStorefrontProfileAction) => void` | Called when the component emits a typed profile request. The callback payload is shown in its type. |
|
|
54
|
-
| `onClose?: () => void` | Called when the visitor closes the panel or dialog. The callback has no payload. |
|
|
55
|
-
| `onEnrolled?: (eventId: number) => void` | Called when event enrollment completes successfully. The callback payload is shown in its type. |
|
|
56
|
-
|
|
57
|
-
## Русский
|
|
58
|
-
|
|
59
|
-
`EventEnrollmentDialog` подтверждает участие в выбранной акции из Application
|
|
60
|
-
Load. Компонент сначала использует `image_wide`, затем `image`, и резервирует
|
|
61
|
-
для изображения область 3:1. Акцию с `promo=false` отправить нельзя. При
|
|
62
|
-
`modal=true` используется нативное модальное окно, прокрутка страницы
|
|
63
|
-
блокируется, а после размонтирования фокус возвращается на прежний элемент. При
|
|
64
|
-
`modal=false` нативное окно остаётся в потоке страницы, а при открытии фокус
|
|
65
|
-
остаётся на прежнем месте. Если изменить `modal`, пока окно открыто, оно
|
|
66
|
-
переключается на месте: фокус остаётся на прежнем элементе, а начатый запрос
|
|
67
|
-
участия завершается. Кнопка закрытия, а в модальном окне и Escape,
|
|
68
|
-
вызывают `onClose`, пока не выполняется запрос участия или почты.
|
|
69
|
-
|
|
70
|
-
Для гостя кнопка участия вызывает `onRequireSignIn` с ID акции и безопасным
|
|
71
|
-
адресом `returnPath` того же сайта, в который добавлен `event=<id>` к
|
|
72
|
-
`currentPath`. После входа приложение может открыть по этому адресу ту же
|
|
73
|
-
акцию. Вошедший покупатель без подтверждённой почты видит `ProfileEmailSettings`; `profileState` и `onProfileRequest` сохраняют
|
|
74
|
-
типизированный контракт этого компонента. При ошибке его начальной загрузки
|
|
75
|
-
доступен повтор.
|
|
76
|
-
|
|
77
|
-
Для вошедшего покупателя с подтверждённой почтой `onEnroll` получает
|
|
78
|
-
`endpoint: "profile_event_subscribe"`, `{ event: event.id }` и `AbortSignal`.
|
|
79
|
-
Подтверждённое действие показывает оформленный результат с адресом доставки,
|
|
80
|
-
запрещает повторную отправку и вызывает `onEnrolled(event.id)`. Ответ
|
|
81
|
-
подтверждает участие и не содержит промокод; сервер включает письма аккаунта,
|
|
82
|
-
а магазин создаёт код и позже отправляет его письмом, пока событие и тип
|
|
83
|
-
промокода активны, а покупатель не выключил рекламные письма.
|
|
84
|
-
Отклонённое действие сохраняет окно и позволяет повторить запрос. `pending` и
|
|
85
|
-
`error` добавляют состояние участия из приложения. Изменение акции отменяет
|
|
86
|
-
активный запрос и очищает прежний результат; размонтирование также отменяет
|
|
87
|
-
запрос.
|
|
88
|
-
|
|
89
|
-
Поддерживаемый исходный файл:
|
|
90
|
-
`components/orionplace/events/EventEnrollmentDialog.tsx`; интерфейс акции:
|
|
91
|
-
`interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonEvents.ts`, а поле
|
|
92
|
-
запроса описано в `interfaces/orionplace/accounts/IProfileMedia.ts`.
|
|
93
|
-
|
|
94
|
-
### Свойства
|
|
95
|
-
|
|
96
|
-
| Свойство | Назначение |
|
|
97
|
-
| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
|
|
98
|
-
| `event: IAppLoadCommonEvents` | Событие магазина, на которое записывается посетитель. |
|
|
99
|
-
| `profileState: IStorefrontProfileState` | Текущие данные профиля, загрузка и ошибки. |
|
|
100
|
-
| `modal?: boolean` | Показывает нативное модальное окно при `true` и встроенную панель при `false`. |
|
|
101
|
-
| `currentPath?: string` | Текущий безопасный путь магазина для возврата после входа. |
|
|
102
|
-
| `pending?: boolean` | Показывает загрузку и блокирует повторные действия. |
|
|
103
|
-
| `error?: string` | Ошибка запроса для покупателя; не передавайте её, если запрос не завершился ошибкой. |
|
|
104
|
-
| `onEnroll?: (action: EventEnrollmentAction, signal: AbortSignal) => Promise<void> \| void` | Вызывается, когда покупатель отправляет запись на событие. Данные обработчика указаны в его типе. |
|
|
105
|
-
| `onRequireSignIn?: (request: EventSignInRequest) => void` | Вызывается, когда покупателю нужно войти перед продолжением. Данные обработчика указаны в его типе. |
|
|
106
|
-
| `onProfileRequest?: (action: IStorefrontProfileAction) => void` | Вызывается, когда компонент отправляет типизированный запрос профиля. Данные обработчика указаны в его типе. |
|
|
107
|
-
| `onClose?: () => void` | Вызывается, когда покупатель закрывает панель или диалог. Обработчик не получает данные. |
|
|
108
|
-
| `onEnrolled?: (eventId: number) => void` | Вызывается, когда запись на событие успешно завершена. Данные обработчика указаны в его типе. |
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* The look of Nuxt's and Svelte's event dialog: the shared feature classes
|
|
3
|
-
* (op-feature-stack, op-feature-heading, op-feature-button) and notices.
|
|
4
|
-
*/
|
|
5
|
-
.dialog {
|
|
6
|
-
box-sizing: border-box;
|
|
7
|
-
width: min(35rem, calc(100% - 2rem));
|
|
8
|
-
max-height: calc(100dvh - 2rem);
|
|
9
|
-
margin: auto;
|
|
10
|
-
padding: 1.5rem;
|
|
11
|
-
overflow: auto;
|
|
12
|
-
border: 1px solid var(--orionplace-border);
|
|
13
|
-
border-radius: 0;
|
|
14
|
-
color: var(--orionplace-text);
|
|
15
|
-
background: var(--orionplace-surface);
|
|
16
|
-
box-shadow: none;
|
|
17
|
-
font: inherit;
|
|
18
|
-
font-size: 0.875rem;
|
|
19
|
-
line-height: 1.5rem;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.dialog::backdrop {
|
|
23
|
-
background: rgb(0 0 0 / 35%);
|
|
24
|
-
backdrop-filter: blur(2px);
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
.dialog:not(:modal) {
|
|
28
|
-
position: relative;
|
|
29
|
-
max-height: none;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/* Children stretch to the full width, as in op-feature-stack. */
|
|
33
|
-
.content {
|
|
34
|
-
display: flex;
|
|
35
|
-
min-width: 0;
|
|
36
|
-
flex-direction: column;
|
|
37
|
-
gap: 1.25rem;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
.header {
|
|
41
|
-
display: flex;
|
|
42
|
-
flex-wrap: wrap;
|
|
43
|
-
align-items: center;
|
|
44
|
-
justify-content: space-between;
|
|
45
|
-
gap: 0.75rem;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
.title {
|
|
49
|
-
composes: subtitle from '../shared/features.module.css';
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
.button {
|
|
53
|
-
composes: button from '../shared/features.module.css';
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.primary {
|
|
57
|
-
composes: primary from '../shared/features.module.css';
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
.image {
|
|
61
|
-
display: block;
|
|
62
|
-
width: 100%;
|
|
63
|
-
height: auto;
|
|
64
|
-
aspect-ratio: 3 / 1;
|
|
65
|
-
object-fit: cover;
|
|
66
|
-
background: var(--orionplace-surface);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.copy {
|
|
70
|
-
margin: 0;
|
|
71
|
-
font-weight: 400;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
.success {
|
|
75
|
-
composes: notice noticeSuccess from '../account/account.module.css';
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.error {
|
|
79
|
-
composes: notice noticeError from '../account/account.module.css';
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
.successCopy {
|
|
83
|
-
display: grid;
|
|
84
|
-
min-width: 0;
|
|
85
|
-
flex: 1;
|
|
86
|
-
gap: 0.5rem;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
.successCopy h3,
|
|
90
|
-
.successCopy p {
|
|
91
|
-
margin: 0;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
.successCopy h3 {
|
|
95
|
-
font-size: 1rem;
|
|
96
|
-
font-weight: 600;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
.successEmail {
|
|
100
|
-
display: grid;
|
|
101
|
-
gap: 0.125rem;
|
|
102
|
-
overflow-wrap: anywhere;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
.successEmail span {
|
|
106
|
-
font-size: 0.75rem;
|
|
107
|
-
text-transform: uppercase;
|
|
108
|
-
letter-spacing: 0.06em;
|
|
109
|
-
opacity: 0.75;
|
|
110
|
-
}
|
|
@@ -1,315 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import '@/components/orionplace/shared/dialogs.css';
|
|
4
|
-
|
|
5
|
-
import { useEffect, useId, useRef, useState } from 'react';
|
|
6
|
-
import {
|
|
7
|
-
useOrionplace,
|
|
8
|
-
useOrionplaceSelections,
|
|
9
|
-
} from '@/providers/OrionplaceProvider';
|
|
10
|
-
import { selectIsAuthenticated, selectProfile } from '@/stores/orionplace';
|
|
11
|
-
import type { IAppLoadCommonEvents } from '@/interfaces/orionplace/appBase/appLoadCommon/IAppLoadCommonEvents';
|
|
12
|
-
import type { IProfileEventRequest } from '@/interfaces/orionplace/accounts/IProfileMedia';
|
|
13
|
-
import type {
|
|
14
|
-
IStorefrontProfileAction,
|
|
15
|
-
IStorefrontProfileState,
|
|
16
|
-
} from '@/interfaces/orionplace/accounts/IStorefrontProfile';
|
|
17
|
-
import { apiErrorMessage } from '@/lib/orionplace/api';
|
|
18
|
-
import { contactLabels } from '@/lib/orionplace/contactLabels';
|
|
19
|
-
import { featureLabels } from '@/lib/orionplace/featureLabels';
|
|
20
|
-
import { eventEnrollmentReturnPath } from '@/lib/orionplace/eventEnrollment';
|
|
21
|
-
import {
|
|
22
|
-
createPageScrollLock,
|
|
23
|
-
focusedElement,
|
|
24
|
-
restoreFocus,
|
|
25
|
-
} from '@/lib/orionplace/modalWindow';
|
|
26
|
-
import { useDialogLayoutEffect } from '@/hooks/useOrionplaceDialog';
|
|
27
|
-
import { OrionplaceImage } from '@/components/orionplace/shared/OrionplaceImage';
|
|
28
|
-
import { ProfileEmailSettings } from '@/components/orionplace/account/ProfileEmailSettings';
|
|
29
|
-
import styles from './EventEnrollmentDialog.module.css';
|
|
30
|
-
|
|
31
|
-
export interface EventEnrollmentAction {
|
|
32
|
-
endpoint: 'profile_event_subscribe';
|
|
33
|
-
request: IProfileEventRequest;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface EventSignInRequest {
|
|
37
|
-
eventId: number;
|
|
38
|
-
returnPath: string;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export interface EventEnrollmentDialogProps {
|
|
42
|
-
event: IAppLoadCommonEvents;
|
|
43
|
-
profileState: IStorefrontProfileState;
|
|
44
|
-
modal?: boolean;
|
|
45
|
-
currentPath?: string;
|
|
46
|
-
pending?: boolean;
|
|
47
|
-
error?: string;
|
|
48
|
-
onEnroll?: (
|
|
49
|
-
action: EventEnrollmentAction,
|
|
50
|
-
signal: AbortSignal,
|
|
51
|
-
) => Promise<void> | void;
|
|
52
|
-
onRequireSignIn?: (request: EventSignInRequest) => void;
|
|
53
|
-
onProfileRequest?: (action: IStorefrontProfileAction) => void;
|
|
54
|
-
onClose?: () => void;
|
|
55
|
-
onEnrolled?: (eventId: number) => void;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
export function EventEnrollmentDialog({
|
|
59
|
-
event,
|
|
60
|
-
profileState,
|
|
61
|
-
modal = true,
|
|
62
|
-
currentPath = '/',
|
|
63
|
-
pending = false,
|
|
64
|
-
error = '',
|
|
65
|
-
onEnroll,
|
|
66
|
-
onRequireSignIn,
|
|
67
|
-
onProfileRequest,
|
|
68
|
-
onClose,
|
|
69
|
-
onEnrolled,
|
|
70
|
-
}: EventEnrollmentDialogProps) {
|
|
71
|
-
const authenticated = useOrionplace(selectIsAuthenticated);
|
|
72
|
-
const profile = useOrionplace(selectProfile);
|
|
73
|
-
const locale = useOrionplaceSelections((state) => state.localeCode);
|
|
74
|
-
const labels = contactLabels(locale);
|
|
75
|
-
const common = featureLabels(locale);
|
|
76
|
-
const titleId = useId();
|
|
77
|
-
const dialog = useRef<HTMLDialogElement>(null);
|
|
78
|
-
const controller = useRef<AbortController>(null);
|
|
79
|
-
const opener = useRef<HTMLElement | undefined>(undefined);
|
|
80
|
-
const [pageScroll] = useState(() => createPageScrollLock());
|
|
81
|
-
const [submitting, setSubmitting] = useState(false);
|
|
82
|
-
const [localError, setLocalError] = useState('');
|
|
83
|
-
const [confirmed, setConfirmed] = useState(false);
|
|
84
|
-
const busy = pending || submitting || Boolean(profileState.pending);
|
|
85
|
-
// Enrollment needs only a confirmed email: the backend turns email
|
|
86
|
-
// messages on when the customer enrolls.
|
|
87
|
-
const needsDeliverySettings = authenticated && !profile?.email;
|
|
88
|
-
|
|
89
|
-
// The window opens when it mounts. The element with the focus outside the
|
|
90
|
-
// window is its opener: a modal window gives it the focus back when it
|
|
91
|
-
// closes. An open window that switches between the modal and the inline
|
|
92
|
-
// mode leaves the focus on the control the visitor is on.
|
|
93
|
-
useDialogLayoutEffect(() => {
|
|
94
|
-
const element = dialog.current;
|
|
95
|
-
|
|
96
|
-
if (!element) {
|
|
97
|
-
return;
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
const switching = element.open && pageScroll.locked !== modal;
|
|
101
|
-
const focused = focusedElement();
|
|
102
|
-
const inside =
|
|
103
|
-
focused && element.contains(focused) ? focused : undefined;
|
|
104
|
-
|
|
105
|
-
if (!inside) {
|
|
106
|
-
opener.current = focused;
|
|
107
|
-
}
|
|
108
|
-
element.close();
|
|
109
|
-
if (modal) {
|
|
110
|
-
pageScroll.lock();
|
|
111
|
-
element.showModal();
|
|
112
|
-
} else {
|
|
113
|
-
// The page scrolls again once the window leaves the modal mode.
|
|
114
|
-
// Opened by its attribute, not show(): an inline dialog leaves focus
|
|
115
|
-
// where it is.
|
|
116
|
-
pageScroll.unlock();
|
|
117
|
-
element.setAttribute('open', '');
|
|
118
|
-
}
|
|
119
|
-
if (switching) {
|
|
120
|
-
restoreFocus(inside, { reveal: true });
|
|
121
|
-
}
|
|
122
|
-
}, [modal]);
|
|
123
|
-
|
|
124
|
-
// Unmounting cancels the enrollment request and closes the window as a
|
|
125
|
-
// close does. A switch of `modal` keeps the request running.
|
|
126
|
-
useDialogLayoutEffect(() => {
|
|
127
|
-
const element = dialog.current;
|
|
128
|
-
|
|
129
|
-
return () => {
|
|
130
|
-
controller.current?.abort();
|
|
131
|
-
element?.close();
|
|
132
|
-
if (pageScroll.locked) {
|
|
133
|
-
pageScroll.unlock();
|
|
134
|
-
restoreFocus(opener.current);
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
}, [pageScroll]);
|
|
138
|
-
|
|
139
|
-
useEffect(() => {
|
|
140
|
-
controller.current?.abort();
|
|
141
|
-
controller.current = null;
|
|
142
|
-
setSubmitting(false);
|
|
143
|
-
setLocalError('');
|
|
144
|
-
setConfirmed(false);
|
|
145
|
-
}, [event.id]);
|
|
146
|
-
|
|
147
|
-
function close() {
|
|
148
|
-
if (!busy) {
|
|
149
|
-
onClose?.();
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
async function enroll() {
|
|
154
|
-
if (!event.promo || confirmed || busy) {
|
|
155
|
-
return;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
if (!authenticated) {
|
|
159
|
-
onRequireSignIn?.({
|
|
160
|
-
eventId: event.id,
|
|
161
|
-
returnPath: eventEnrollmentReturnPath(currentPath, event.id),
|
|
162
|
-
});
|
|
163
|
-
return;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
if (!profile?.email || !onEnroll) {
|
|
167
|
-
return;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
const active = new AbortController();
|
|
171
|
-
controller.current = active;
|
|
172
|
-
setSubmitting(true);
|
|
173
|
-
setLocalError('');
|
|
174
|
-
const request = { event: event.id };
|
|
175
|
-
|
|
176
|
-
try {
|
|
177
|
-
await onEnroll(
|
|
178
|
-
{ endpoint: 'profile_event_subscribe', request },
|
|
179
|
-
active.signal,
|
|
180
|
-
);
|
|
181
|
-
if (!active.signal.aborted) {
|
|
182
|
-
setConfirmed(true);
|
|
183
|
-
onEnrolled?.(event.id);
|
|
184
|
-
}
|
|
185
|
-
} catch (reason) {
|
|
186
|
-
// The backend's reason, e.g. an offer the customer has already joined.
|
|
187
|
-
if (!active.signal.aborted) {
|
|
188
|
-
setLocalError(apiErrorMessage(reason) || common.failed);
|
|
189
|
-
}
|
|
190
|
-
} finally {
|
|
191
|
-
if (controller.current === active) {
|
|
192
|
-
controller.current = null;
|
|
193
|
-
setSubmitting(false);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
return (
|
|
199
|
-
<dialog
|
|
200
|
-
data-stable-modal="form"
|
|
201
|
-
ref={dialog}
|
|
202
|
-
aria-labelledby={titleId}
|
|
203
|
-
data-feature-part="EventEnrollmentDialog"
|
|
204
|
-
data-event-id={event.id}
|
|
205
|
-
className={styles.dialog}
|
|
206
|
-
onCancel={(cancelEvent) => {
|
|
207
|
-
cancelEvent.preventDefault();
|
|
208
|
-
close();
|
|
209
|
-
}}
|
|
210
|
-
>
|
|
211
|
-
<div className={styles.content}>
|
|
212
|
-
<header className={styles.header}>
|
|
213
|
-
<h2
|
|
214
|
-
id={titleId}
|
|
215
|
-
className={styles.title}
|
|
216
|
-
>
|
|
217
|
-
{labels.event}
|
|
218
|
-
</h2>
|
|
219
|
-
<button
|
|
220
|
-
type="button"
|
|
221
|
-
className={styles.button}
|
|
222
|
-
aria-label={common.close}
|
|
223
|
-
disabled={busy}
|
|
224
|
-
onClick={close}
|
|
225
|
-
>
|
|
226
|
-
×
|
|
227
|
-
</button>
|
|
228
|
-
</header>
|
|
229
|
-
|
|
230
|
-
{event.image || event.image_wide ? (
|
|
231
|
-
<OrionplaceImage
|
|
232
|
-
src={event.image_wide || event.image}
|
|
233
|
-
alt={labels.event}
|
|
234
|
-
width={3}
|
|
235
|
-
height={1}
|
|
236
|
-
className={styles.image}
|
|
237
|
-
/>
|
|
238
|
-
) : null}
|
|
239
|
-
|
|
240
|
-
{confirmed ? (
|
|
241
|
-
<section
|
|
242
|
-
className={styles.success}
|
|
243
|
-
role="status"
|
|
244
|
-
>
|
|
245
|
-
<div className={styles.successCopy}>
|
|
246
|
-
<h3>{labels.eventDoneTitle}</h3>
|
|
247
|
-
<p>{labels.eventDone}</p>
|
|
248
|
-
{profile?.email ? (
|
|
249
|
-
<p className={styles.successEmail}>
|
|
250
|
-
<span>{labels.eventDoneAddress}</span>
|
|
251
|
-
<strong>{profile.email}</strong>
|
|
252
|
-
</p>
|
|
253
|
-
) : null}
|
|
254
|
-
</div>
|
|
255
|
-
</section>
|
|
256
|
-
) : (
|
|
257
|
-
<>
|
|
258
|
-
<p className={styles.copy}>{labels.eventDescription}</p>
|
|
259
|
-
{needsDeliverySettings ? (
|
|
260
|
-
<>
|
|
261
|
-
<p className={styles.copy}>{labels.eventEmail}</p>
|
|
262
|
-
<ProfileEmailSettings
|
|
263
|
-
state={profileState}
|
|
264
|
-
onRequest={onProfileRequest}
|
|
265
|
-
/>
|
|
266
|
-
</>
|
|
267
|
-
) : (
|
|
268
|
-
<button
|
|
269
|
-
type="button"
|
|
270
|
-
className={styles.primary}
|
|
271
|
-
disabled={
|
|
272
|
-
busy ||
|
|
273
|
-
!event.promo ||
|
|
274
|
-
(authenticated ? !onEnroll : !onRequireSignIn)
|
|
275
|
-
}
|
|
276
|
-
onClick={() => void enroll()}
|
|
277
|
-
>
|
|
278
|
-
{busy ? common.loading : labels.eventJoin}
|
|
279
|
-
</button>
|
|
280
|
-
)}
|
|
281
|
-
</>
|
|
282
|
-
)}
|
|
283
|
-
|
|
284
|
-
{error || localError ? (
|
|
285
|
-
<p
|
|
286
|
-
className={styles.error}
|
|
287
|
-
role="alert"
|
|
288
|
-
>
|
|
289
|
-
{error || localError}
|
|
290
|
-
</p>
|
|
291
|
-
) : null}
|
|
292
|
-
|
|
293
|
-
{authenticated && profileState.error ? (
|
|
294
|
-
<p
|
|
295
|
-
className={styles.error}
|
|
296
|
-
role="alert"
|
|
297
|
-
>
|
|
298
|
-
{profileState.error}
|
|
299
|
-
</p>
|
|
300
|
-
) : null}
|
|
301
|
-
|
|
302
|
-
{authenticated && !profileState.loaded && profileState.error ? (
|
|
303
|
-
<button
|
|
304
|
-
type="button"
|
|
305
|
-
className={styles.button}
|
|
306
|
-
disabled={busy}
|
|
307
|
-
onClick={() => onProfileRequest?.({ action: 'load' })}
|
|
308
|
-
>
|
|
309
|
-
{common.retry}
|
|
310
|
-
</button>
|
|
311
|
-
) : null}
|
|
312
|
-
</div>
|
|
313
|
-
</dialog>
|
|
314
|
-
);
|
|
315
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
# EventsBlock
|
|
2
|
-
|
|
3
|
-
## English
|
|
4
|
-
|
|
5
|
-
`EventsBlock` displays the Application Load events whose `locale` matches the
|
|
6
|
-
current storefront language and whose `is_layout` is not `false`. It preserves
|
|
7
|
-
their response order and shows one event at a time. Events from another language
|
|
8
|
-
are not substituted.
|
|
9
|
-
|
|
10
|
-
`format="auto"` follows the browser width after hydration. An explicit mobile,
|
|
11
|
-
tablet, wide, desktop or account format stays fixed. If the selected image is
|
|
12
|
-
missing or invalid, the component checks the event's desktop, wide, tablet,
|
|
13
|
-
mobile and account images in that order. The shared placeholder appears when no
|
|
14
|
-
public image is available. A loaded picture keeps its own shape, so nothing is
|
|
15
|
-
cut off; the placeholder takes 4:3, or 3:1 from 592px of the block's width.
|
|
16
|
-
|
|
17
|
-
Several events add a counter and previous and next buttons. They wrap around and
|
|
18
|
-
never advance on a timer. Changing the language, format or Application Load data
|
|
19
|
-
returns to the first event. Clicking the event calls `onSelect(event)` with the
|
|
20
|
-
complete event object. Enrollment, authentication and modal behavior remain the
|
|
21
|
-
application's responsibility.
|
|
22
|
-
|
|
23
|
-
### Props
|
|
24
|
-
|
|
25
|
-
| Prop | Meaning |
|
|
26
|
-
| -------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
27
|
-
| `label?: string` | Visible or accessible name for the component’s main control or region. |
|
|
28
|
-
| `format?: "auto" \| TEventsFormat` | Image format selected for the current viewport. |
|
|
29
|
-
| `onSelect?: (event: IAppLoadCommonEvents) => void` | Passes the complete event object when it is pressed. The application handles event details, sign-in and enrollment. |
|
|
30
|
-
|
|
31
|
-
## Русский
|
|
32
|
-
|
|
33
|
-
`EventsBlock` показывает события из Application Load, у которых `locale`
|
|
34
|
-
совпадает с текущим языком магазина, а `is_layout` не равен `false`. Порядок из
|
|
35
|
-
ответа сохраняется, одновременно видно одно событие. События другого языка не
|
|
36
|
-
подставляются.
|
|
37
|
-
|
|
38
|
-
При `format="auto"` после гидратации формат следует за шириной окна. Явно
|
|
39
|
-
переданный мобильный, планшетный, широкий, настольный или кабинетный формат не
|
|
40
|
-
меняется. Если выбранного изображения нет или его адрес недопустим, компонент
|
|
41
|
-
по очереди проверяет настольное, широкое, планшетное, мобильное и кабинетное
|
|
42
|
-
изображения события. Если доступного изображения нет, появляется общая
|
|
43
|
-
заглушка. Загруженное изображение сохраняет свою форму и не обрезается; заглушка
|
|
44
|
-
имеет форму 4:3, а от 592px ширины блока — 3:1.
|
|
45
|
-
|
|
46
|
-
Для нескольких событий показываются счётчик и кнопки назад и вперёд. Они
|
|
47
|
-
перебирают события по кругу без автоматического переключения. Смена языка,
|
|
48
|
-
формата или данных Application Load возвращает к первому событию. Нажатие на
|
|
49
|
-
событие вызывает `onSelect(event)` с полным объектом события. Запись на акцию,
|
|
50
|
-
аутентификация и модальное окно остаются задачей приложения.
|
|
51
|
-
|
|
52
|
-
### Свойства
|
|
53
|
-
|
|
54
|
-
| Свойство | Назначение |
|
|
55
|
-
| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------- |
|
|
56
|
-
| `label?: string` | Видимое или доступное название основного элемента компонента. |
|
|
57
|
-
| `format?: "auto" \| TEventsFormat` | Формат изображения, выбранный для текущей ширины экрана. |
|
|
58
|
-
| `onSelect?: (event: IAppLoadCommonEvents) => void` | Передаёт полный объект события при нажатии на него. Приложение обрабатывает открытие сведений, вход и запись на событие. |
|