orionplace-react 0.7.8 → 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 -593
- 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 -617
- 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 -108
- 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,66 +0,0 @@
|
|
|
1
|
-
# React component source archive
|
|
2
|
-
|
|
3
|
-
## English
|
|
4
|
-
|
|
5
|
-
The archive contains the selected component, its local imports, CSS modules,
|
|
6
|
-
shared theme and physical interfaces. Paths are relative to the React storefront
|
|
7
|
-
project root. Keep the `@/` alias pointing to that root and preserve the directory
|
|
8
|
-
structure when copying files.
|
|
9
|
-
|
|
10
|
-
Use the archive inside an application initialized with `orionplace-react`. Its
|
|
11
|
-
maintained package manifest supplies React, Next.js, Zustand and any imported
|
|
12
|
-
third-party libraries. Components use the installed `OrionplaceProvider` and,
|
|
13
|
-
where imported, `OrionplaceStorefrontProvider`. Initialize these providers from
|
|
14
|
-
Application Load in the host application; callbacks and data props remain the
|
|
15
|
-
application's responsibility. The selected component's README describes its
|
|
16
|
-
specific request handlers and data requirements.
|
|
17
|
-
|
|
18
|
-
`OrionplaceStorefrontProvider` runs the product card actions (cart, wishlist,
|
|
19
|
-
stock alerts, preorders). When a guest clicks an action that needs an account,
|
|
20
|
-
it opens the `/profile` sign-in page; pass `onSignIn={(location) => ...}` to
|
|
21
|
-
open your own sign-in dialog instead. `location` holds the sign-in `path` and
|
|
22
|
-
its `query`, including the `redirect` back to the current page.
|
|
23
|
-
|
|
24
|
-
The provider also shows the preorder dialog over the page. With
|
|
25
|
-
`preorderDialog={false}` it leaves the dialog to your page: render
|
|
26
|
-
`ProductPreorderDialog` yourself (for example inline with `modal={false}`) from
|
|
27
|
-
`preorder` (the product whose dialog is open), `preorderError` (its last
|
|
28
|
-
refusal, for the dialog's `error`), `submitPreorder(selection)` and
|
|
29
|
-
`closePreorder()` of `useOrionplaceStorefront()`; the card's preorder button
|
|
30
|
-
still opens it through `onPreorder`.
|
|
31
|
-
|
|
32
|
-
Import `app/globals.css` from the root layout. Component CSS modules and the
|
|
33
|
-
shared theme are included with their original imports. This archive contains
|
|
34
|
-
component source, not a separate application or backend configuration.
|
|
35
|
-
|
|
36
|
-
## Русский
|
|
37
|
-
|
|
38
|
-
Архив содержит выбранный компонент, его локальные зависимости, CSS-модули,
|
|
39
|
-
общую тему и физические интерфейсы. Пути указаны относительно корня проекта
|
|
40
|
-
React-магазина. Сохраните структуру каталогов и настройте `@/` на корень проекта.
|
|
41
|
-
|
|
42
|
-
Используйте архив в приложении, созданном через `orionplace-react`. Его
|
|
43
|
-
поддерживаемый список зависимостей включает React, Next.js, Zustand и необходимые
|
|
44
|
-
сторонние библиотеки. Компоненты используют установленный `OrionplaceProvider`
|
|
45
|
-
и, где он импортируется, `OrionplaceStorefrontProvider`. Приложение инициализирует
|
|
46
|
-
провайдеры данными Application Load и передаёт входящие данные и обработчики.
|
|
47
|
-
README выбранного компонента описывает нужные ему запросы и данные.
|
|
48
|
-
|
|
49
|
-
`OrionplaceStorefrontProvider` выполняет действия карточки товара (корзина,
|
|
50
|
-
избранное, уведомления о поступлении, предзаказ). Когда гость нажимает действие,
|
|
51
|
-
для которого нужен аккаунт, провайдер открывает страницу входа `/profile`;
|
|
52
|
-
передайте `onSignIn={(location) => ...}`, чтобы вместо неё открыть свой диалог
|
|
53
|
-
входа. В `location` есть путь страницы входа `path` и её параметры `query`,
|
|
54
|
-
включая `redirect` для возврата на текущую страницу.
|
|
55
|
-
|
|
56
|
-
Провайдер также показывает окно предзаказа поверх страницы. С
|
|
57
|
-
`preorderDialog={false}` он оставляет окно вашей странице: отрисуйте
|
|
58
|
-
`ProductPreorderDialog` сами (например, встроенным с `modal={false}`) по
|
|
59
|
-
`preorder` (товар, для которого открыто окно), `preorderError` (последний отказ
|
|
60
|
-
для `error` окна), `submitPreorder(selection)` и `closePreorder()` из
|
|
61
|
-
`useOrionplaceStorefront()`; кнопка предзаказа на карточке по-прежнему
|
|
62
|
-
открывает его через `onPreorder`.
|
|
63
|
-
|
|
64
|
-
Подключите `app/globals.css` в корневом макете. CSS-модули и общая тема включены
|
|
65
|
-
с исходными импортами. Архив содержит исходники компонента; конфигурация
|
|
66
|
-
подключения к API остаётся в приложении.
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
# React component contracts
|
|
2
|
-
## Cart, payment and subscription response fields
|
|
3
|
-
|
|
4
|
-
Field ownership, IDs, empty values and confirmed changes / Владельцы полей, ID, пустые значения и подтверждённые изменения.
|
|
5
|
-
|
|
6
|
-
| Component | Field guide / Описание полей |
|
|
7
|
-
| --- | --- |
|
|
8
|
-
| CartDeliverySelector | [EN / RU](../components/orionplace/cart/CartDeliverySelector.README.md) |
|
|
9
|
-
| CartItemOptions | [EN / RU](../components/orionplace/cart/CartItemOptions.README.md) |
|
|
10
|
-
| CartLineItem | [EN / RU](../components/orionplace/cart/CartLineItem.README.md) |
|
|
11
|
-
| StorefrontWallet | [EN / RU](../components/orionplace/wallet/StorefrontWallet.README.md) |
|
|
12
|
-
| PaymentPanel | [EN / RU](../components/orionplace/payments/PaymentPanel.README.md) |
|
|
13
|
-
| StorefrontSubscriptions | [EN / RU](../components/orionplace/subscriptions/StorefrontSubscriptions.README.md) |
|
|
14
|
-
| SubscriptionRenewalDialog | [EN / RU](../components/orionplace/subscriptions/SubscriptionRenewalDialog.README.md) |
|
|
15
|
-
| SubscriptionPlanSummary | [EN / RU](../components/orionplace/subscriptions/SubscriptionPlanSummary.README.md) |
|
|
16
|
-
| SubscriptionRemoteDetails | [EN / RU](../components/orionplace/subscriptions/SubscriptionRemoteDetails.README.md) |
|
|
17
|
-
| OrderPaymentForm | [EN / RU](../components/orionplace/orders/OrderPaymentForm.README.md) |
|
|
18
|
-
|
|
19
|
-
The API response tables also explain the following contracts / Таблицы ответов API также объясняют следующие контракты:
|
|
20
|
-
|
|
21
|
-
| API | Contract / Контракт |
|
|
22
|
-
| --- | --- |
|
|
23
|
-
| [cart_guest_get](https://orionmarket.place/en/sandbox/api/cart_guest_get) · [RU](https://orionmarket.place/ru/sandbox/api/cart_guest_get) | Checkout options and saved choices / Опции оформления и сохранённый выбор |
|
|
24
|
-
| [invoices_get](https://orionmarket.place/en/sandbox/api/invoices_get) · [RU](https://orionmarket.place/ru/sandbox/api/invoices_get) | Transaction direction and refunds / Направление платежей и возвраты |
|
|
25
|
-
| [subscriptions_get](https://orionmarket.place/en/sandbox/api/subscriptions_get) · [RU](https://orionmarket.place/ru/sandbox/api/subscriptions_get) | Subscription state, renewal and service data / Состояние подписки, продление и данные сервиса |
|
|
26
|
-
| [profile_promocodes_get](https://orionmarket.place/en/sandbox/api/profile_promocodes_get) · [RU](https://orionmarket.place/ru/sandbox/api/profile_promocodes_get) | Issued codes and promotion conditions / Выданные коды и условия акций |
|
|
27
|
-
| [orders_create](https://orionmarket.place/en/sandbox/api/orders_create) · [RU](https://orionmarket.place/ru/sandbox/api/orders_create) | Failure fields and recovery / Поля ошибок и исправление |
|
|
28
|
-
| [profile_orders_get](https://orionmarket.place/en/sandbox/api/profile_orders_get) · [RU](https://orionmarket.place/ru/sandbox/api/profile_orders_get) | Ordered options, returns and downloads / Купленные опции, возвраты и загрузки |
|
|
29
|
-
| [subscriptions_guest_search](https://orionmarket.place/en/sandbox/api/subscriptions_guest_search) · [RU](https://orionmarket.place/ru/sandbox/api/subscriptions_guest_search) | Plan parameters, units and headings / Параметры тарифа, единицы и подписи |
|
|
30
|
-
|
|
31
|
-
## Cart loading / Загрузка корзины
|
|
32
|
-
|
|
33
|
-
[StorefrontCart](../components/orionplace/cart/StorefrontCart.README.md): The cart shows loading until a snapshot or a request error is available. After a failed load, Refresh retries the request.
|
|
34
|
-
|
|
35
|
-
Пока нет данных корзины или ошибки запроса, отображается загрузка. После ошибки кнопка «Обновить» повторяет загрузку.
|
|
@@ -1,191 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
createContext,
|
|
5
|
-
useContext,
|
|
6
|
-
useRef,
|
|
7
|
-
useEffect,
|
|
8
|
-
type ReactNode,
|
|
9
|
-
} from 'react';
|
|
10
|
-
import { useStore } from 'zustand';
|
|
11
|
-
import {
|
|
12
|
-
type OrionplaceState,
|
|
13
|
-
type OrionplaceStore,
|
|
14
|
-
} from '@/stores/orionplace';
|
|
15
|
-
import {
|
|
16
|
-
type OrionplaceSelectionsState,
|
|
17
|
-
type OrionplaceSelectionsStore,
|
|
18
|
-
} from '@/stores/orionplaceSelections';
|
|
19
|
-
import {
|
|
20
|
-
type OrionplaceProductsState,
|
|
21
|
-
type OrionplaceProductsStore,
|
|
22
|
-
} from '@/stores/orionplaceProducts';
|
|
23
|
-
import {
|
|
24
|
-
type OrionplaceCatalogState,
|
|
25
|
-
type OrionplaceCatalogStore,
|
|
26
|
-
createOrionplaceCatalogStore,
|
|
27
|
-
} from '@/stores/orionplaceCatalog';
|
|
28
|
-
import {
|
|
29
|
-
type OrionplaceBrowseState,
|
|
30
|
-
type OrionplaceBrowseStore,
|
|
31
|
-
} from '@/stores/orionplaceBrowse';
|
|
32
|
-
import {
|
|
33
|
-
createOrionplaceStores,
|
|
34
|
-
type OrionplaceStores,
|
|
35
|
-
} from '@/stores/orionplaceScope';
|
|
36
|
-
import type { AppLoadFailure, AppLoadResult } from '@/interfaces/orionplace';
|
|
37
|
-
import type { IAppLoadCommon } from '@/interfaces/orionplace/appBase/IAppLoadCommon';
|
|
38
|
-
import { selectInit } from '@/stores/orionplace';
|
|
39
|
-
|
|
40
|
-
const OrionplaceContext = createContext<OrionplaceStore | null>(null);
|
|
41
|
-
const SelectionsContext = createContext<OrionplaceSelectionsStore | null>(null);
|
|
42
|
-
const ProductsContext = createContext<OrionplaceProductsStore | null>(null);
|
|
43
|
-
const CatalogContext = createContext<OrionplaceCatalogStore | null>(null);
|
|
44
|
-
const BrowseContext = createContext<OrionplaceBrowseStore | null>(null);
|
|
45
|
-
|
|
46
|
-
export interface OrionplaceProviderProps {
|
|
47
|
-
/** The server render's snapshot. Hydration reuses it instead of loading again. */
|
|
48
|
-
result?: AppLoadResult | null;
|
|
49
|
-
failure?: AppLoadFailure | null;
|
|
50
|
-
locale?: string;
|
|
51
|
-
children: ReactNode;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/** Creates one store for this browser session and keeps it across re-renders. */
|
|
55
|
-
export function OrionplaceProvider({
|
|
56
|
-
result = null,
|
|
57
|
-
failure = null,
|
|
58
|
-
locale,
|
|
59
|
-
children,
|
|
60
|
-
}: OrionplaceProviderProps) {
|
|
61
|
-
const stores = useRef<OrionplaceStores>(null);
|
|
62
|
-
if (!stores.current) {
|
|
63
|
-
stores.current = createOrionplaceStores(result, failure, locale);
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
const current = stores.current;
|
|
67
|
-
|
|
68
|
-
return (
|
|
69
|
-
<OrionplaceContext.Provider value={current.store}>
|
|
70
|
-
<SelectionsContext.Provider value={current.selections}>
|
|
71
|
-
<ProductsContext.Provider value={current.products}>
|
|
72
|
-
<CatalogContext.Provider value={current.catalog}>
|
|
73
|
-
<BrowseContext.Provider value={current.browse}>
|
|
74
|
-
{children}
|
|
75
|
-
</BrowseContext.Provider>
|
|
76
|
-
</CatalogContext.Provider>
|
|
77
|
-
</ProductsContext.Provider>
|
|
78
|
-
</SelectionsContext.Provider>
|
|
79
|
-
</OrionplaceContext.Provider>
|
|
80
|
-
);
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export function OrionplaceCatalogSnapshotProvider({
|
|
84
|
-
snapshot,
|
|
85
|
-
children,
|
|
86
|
-
}: {
|
|
87
|
-
snapshot?: NonNullable<IAppLoadCommon['tariffs']>;
|
|
88
|
-
children: ReactNode;
|
|
89
|
-
}) {
|
|
90
|
-
const init = useOrionplace(selectInit);
|
|
91
|
-
const parent = useOrionplaceCatalogStore();
|
|
92
|
-
const catalog = useRef<OrionplaceCatalogStore | null>(null);
|
|
93
|
-
if (!catalog.current) {
|
|
94
|
-
catalog.current = createOrionplaceCatalogStore(init);
|
|
95
|
-
if (snapshot) {
|
|
96
|
-
catalog.current.getState().setTariffs(snapshot);
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
const current = catalog.current;
|
|
100
|
-
useEffect(() => {
|
|
101
|
-
current.getState().reconcile(init);
|
|
102
|
-
if (snapshot) {
|
|
103
|
-
current.getState().setTariffs(snapshot);
|
|
104
|
-
}
|
|
105
|
-
}, [current, init, snapshot]);
|
|
106
|
-
return (
|
|
107
|
-
<CatalogContext.Provider value={snapshot ? current : parent}>
|
|
108
|
-
{children}
|
|
109
|
-
</CatalogContext.Provider>
|
|
110
|
-
);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function useStoreApi(): OrionplaceStore {
|
|
114
|
-
const store = useContext(OrionplaceContext);
|
|
115
|
-
if (!store) {
|
|
116
|
-
throw new Error('Render this component inside <OrionplaceProvider>.');
|
|
117
|
-
}
|
|
118
|
-
return store;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/** Subscribes to one selected part of the marketplace state. */
|
|
122
|
-
export function useOrionplace<T>(selector: (state: OrionplaceState) => T): T {
|
|
123
|
-
return useStore(useStoreApi(), selector);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
/** The store itself, for actions and one-off reads outside render. */
|
|
127
|
-
export const useOrionplaceStore = useStoreApi;
|
|
128
|
-
|
|
129
|
-
function useSelectionsStoreApi(): OrionplaceSelectionsStore {
|
|
130
|
-
const store = useContext(SelectionsContext);
|
|
131
|
-
if (!store) {
|
|
132
|
-
throw new Error('Render this component inside <OrionplaceProvider>.');
|
|
133
|
-
}
|
|
134
|
-
return store;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export function useOrionplaceSelections<T>(
|
|
138
|
-
selector: (state: OrionplaceSelectionsState) => T,
|
|
139
|
-
): T {
|
|
140
|
-
return useStore(useSelectionsStoreApi(), selector);
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
export const useOrionplaceSelectionsStore = useSelectionsStoreApi;
|
|
144
|
-
|
|
145
|
-
function useProductsStoreApi(): OrionplaceProductsStore {
|
|
146
|
-
const store = useContext(ProductsContext);
|
|
147
|
-
if (!store) {
|
|
148
|
-
throw new Error('Render this component inside <OrionplaceProvider>.');
|
|
149
|
-
}
|
|
150
|
-
return store;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
export function useOrionplaceProducts<T>(
|
|
154
|
-
selector: (state: OrionplaceProductsState) => T,
|
|
155
|
-
): T {
|
|
156
|
-
return useStore(useProductsStoreApi(), selector);
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
export const useOrionplaceProductsStore = useProductsStoreApi;
|
|
160
|
-
|
|
161
|
-
function useCatalogStoreApi(): OrionplaceCatalogStore {
|
|
162
|
-
const store = useContext(CatalogContext);
|
|
163
|
-
if (!store) {
|
|
164
|
-
throw new Error('Render this component inside <OrionplaceProvider>.');
|
|
165
|
-
}
|
|
166
|
-
return store;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
export function useOrionplaceCatalog<T>(
|
|
170
|
-
selector: (state: OrionplaceCatalogState) => T,
|
|
171
|
-
): T {
|
|
172
|
-
return useStore(useCatalogStoreApi(), selector);
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
export const useOrionplaceCatalogStore = useCatalogStoreApi;
|
|
176
|
-
|
|
177
|
-
function useBrowseStoreApi(): OrionplaceBrowseStore {
|
|
178
|
-
const store = useContext(BrowseContext);
|
|
179
|
-
if (!store) {
|
|
180
|
-
throw new Error('Render this component inside <OrionplaceProvider>.');
|
|
181
|
-
}
|
|
182
|
-
return store;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
export function useOrionplaceBrowse<T>(
|
|
186
|
-
selector: (state: OrionplaceBrowseState) => T,
|
|
187
|
-
): T {
|
|
188
|
-
return useStore(useBrowseStoreApi(), selector);
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export const useOrionplaceBrowseStore = useBrowseStoreApi;
|
package/templates/proxy.ts
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { NextResponse, type NextRequest } from 'next/server';
|
|
2
|
-
import { marketplaceNoindexPath } from '@orionplace-runtime/marketplace.mjs';
|
|
3
|
-
import {
|
|
4
|
-
APP_LOAD_HANDOFF_HEADER,
|
|
5
|
-
startAppLoad,
|
|
6
|
-
} from '@/lib/orionplace/appLoadServer';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* A full page load: not an in-app navigation (`RSC`), a prefetch or a public
|
|
10
|
-
* file such as an image.
|
|
11
|
-
*/
|
|
12
|
-
function pageLoad(request: NextRequest) {
|
|
13
|
-
const accept = request.headers.get('accept') ?? '';
|
|
14
|
-
return (
|
|
15
|
-
request.method === 'GET' &&
|
|
16
|
-
!request.headers.has('rsc') &&
|
|
17
|
-
!request.headers.has('next-router-prefetch') &&
|
|
18
|
-
!/\.[a-z0-9]+$/i.test(request.nextUrl.pathname) &&
|
|
19
|
-
(!accept || accept.includes('text/html') || accept.includes('*/*'))
|
|
20
|
-
);
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Personalized pages are never shared between visitors or storefront domains.
|
|
25
|
-
* Next.js manages its own `Vary` header for pages; the API gateway sets the
|
|
26
|
-
* storefront-domain `Vary` on its own responses.
|
|
27
|
-
*
|
|
28
|
-
* A full page load starts Application Load here and hands it to the render:
|
|
29
|
-
* when it fails, the error page answers HTTP 503 like the Nuxt and SvelteKit
|
|
30
|
-
* starters (an unknown address keeps its 404).
|
|
31
|
-
*/
|
|
32
|
-
export async function proxy(request: NextRequest) {
|
|
33
|
-
const forwarded = new Headers(request.headers);
|
|
34
|
-
// Only this proxy names a started load; a visitor cannot pick one.
|
|
35
|
-
forwarded.delete(APP_LOAD_HANDOFF_HEADER);
|
|
36
|
-
forwarded.set(
|
|
37
|
-
'x-orionplace-page-url',
|
|
38
|
-
request.nextUrl.pathname + request.nextUrl.search,
|
|
39
|
-
);
|
|
40
|
-
let unavailable = false;
|
|
41
|
-
if (pageLoad(request)) {
|
|
42
|
-
const { id, load } = startAppLoad(forwarded);
|
|
43
|
-
forwarded.set(APP_LOAD_HANDOFF_HEADER, id);
|
|
44
|
-
unavailable = Boolean((await load).failure);
|
|
45
|
-
}
|
|
46
|
-
const response = NextResponse.next({
|
|
47
|
-
request: { headers: forwarded },
|
|
48
|
-
...(unavailable ? { status: 503 } : {}),
|
|
49
|
-
});
|
|
50
|
-
response.headers.set('Cache-Control', 'private, no-store');
|
|
51
|
-
// Pages under ORIONPLACE_NOINDEX_PATHS stay out of search engines.
|
|
52
|
-
if (marketplaceNoindexPath(request.nextUrl.pathname)) {
|
|
53
|
-
response.headers.set('X-Robots-Tag', 'noindex, follow');
|
|
54
|
-
}
|
|
55
|
-
return response;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// The gateway sets its own headers for /api, /ps3 media, robots.txt and the
|
|
59
|
-
// sitemap (public blog images keep the backend's browser cache rule); static
|
|
60
|
-
// assets keep their caching.
|
|
61
|
-
export const config = {
|
|
62
|
-
matcher: ['/((?!api/|ps3/|_next/static|_next/image|favicon.ico|robots.txt|sitemap.xml).*)'],
|
|
63
|
-
};
|
|
@@ -1,282 +0,0 @@
|
|
|
1
|
-
import { createStore } from 'zustand/vanilla';
|
|
2
|
-
import type {
|
|
3
|
-
AppLoadFailure,
|
|
4
|
-
AppLoadLoader,
|
|
5
|
-
AppLoadResult,
|
|
6
|
-
AppLoadStatus,
|
|
7
|
-
IAppLoad,
|
|
8
|
-
IAppLoadCommon,
|
|
9
|
-
IAppLoadCommonCurrency,
|
|
10
|
-
IAppLoadCommonLocale,
|
|
11
|
-
IAppLoadCommonTariff,
|
|
12
|
-
IAppLoadPath,
|
|
13
|
-
IAppLoadPathObject,
|
|
14
|
-
IApploadUserProfile,
|
|
15
|
-
ICategory,
|
|
16
|
-
IProduct,
|
|
17
|
-
} from '@/interfaces/orionplace';
|
|
18
|
-
import { appLoadFailure } from '@/lib/orionplace/appLoadResult';
|
|
19
|
-
import { resolveAppLoadProducts } from '@/lib/orionplace/productSeller';
|
|
20
|
-
import { guestAppLoadResult } from '@/lib/orionplace/guestSession';
|
|
21
|
-
|
|
22
|
-
/** Shared empty values keep selector results referentially stable between renders. */
|
|
23
|
-
const EMPTY_RECORD = Object.freeze({}) as Record<string, never>;
|
|
24
|
-
const EMPTY_LIST = Object.freeze([]) as readonly never[];
|
|
25
|
-
const EMPTY_PATHS = Object.freeze({}) as IAppLoadPathObject;
|
|
26
|
-
|
|
27
|
-
export interface OrionplaceSnapshot {
|
|
28
|
-
result: AppLoadResult | null;
|
|
29
|
-
status: AppLoadStatus;
|
|
30
|
-
failure: AppLoadFailure | null;
|
|
31
|
-
endpoints: IAppLoadPathObject;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export interface OrionplaceState extends OrionplaceSnapshot {
|
|
35
|
-
load: (
|
|
36
|
-
loader: AppLoadLoader,
|
|
37
|
-
force?: boolean,
|
|
38
|
-
preserve?: boolean,
|
|
39
|
-
) => Promise<void>;
|
|
40
|
-
endSession: (loader: AppLoadLoader) => Promise<void>;
|
|
41
|
-
patchProfile: (patch: Partial<IApploadUserProfile>) => void;
|
|
42
|
-
patchWallet: (wallet: NonNullable<IAppLoadCommon['wallet']>) => void;
|
|
43
|
-
reset: () => void;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export type OrionplaceStore = ReturnType<typeof createOrionplaceStore>;
|
|
47
|
-
|
|
48
|
-
/** Public and authenticated discovery are merged once per snapshot, without mutating the response. */
|
|
49
|
-
function mergeEndpoints(result: AppLoadResult | null): IAppLoadPathObject {
|
|
50
|
-
const page = result?.response.page_data;
|
|
51
|
-
if (!page) {
|
|
52
|
-
return EMPTY_PATHS;
|
|
53
|
-
}
|
|
54
|
-
const groups: IAppLoadPathObject[] = [page.unauth.paths];
|
|
55
|
-
if (page.init.is_authenticated && page.auth) {
|
|
56
|
-
groups.push(page.auth.paths);
|
|
57
|
-
}
|
|
58
|
-
const merged: IAppLoadPathObject = {};
|
|
59
|
-
for (const group of groups) {
|
|
60
|
-
for (const [section, paths] of Object.entries(group)) {
|
|
61
|
-
merged[section] = { ...merged[section], ...paths };
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
return merged;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
/** Builds the hydration snapshot from a server render, without repeating the request. */
|
|
68
|
-
export function initialSnapshot(
|
|
69
|
-
result: AppLoadResult | null = null,
|
|
70
|
-
failure: AppLoadFailure | null = null,
|
|
71
|
-
): OrionplaceSnapshot {
|
|
72
|
-
return {
|
|
73
|
-
result: failure ? null : result,
|
|
74
|
-
status: failure ? 'error' : result ? 'success' : 'idle',
|
|
75
|
-
failure,
|
|
76
|
-
endpoints: failure ? EMPTY_PATHS : mergeEndpoints(result),
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* One store instance per server render and one per browser session.
|
|
82
|
-
* Creating the store never starts a request; the loaders are passed to `load`.
|
|
83
|
-
*/
|
|
84
|
-
export function createOrionplaceStore(
|
|
85
|
-
snapshot: OrionplaceSnapshot = initialSnapshot(),
|
|
86
|
-
) {
|
|
87
|
-
// These belong to this store instance, never serialized state or a module-level cache.
|
|
88
|
-
let pending: Promise<void> | null = null;
|
|
89
|
-
let controller: AbortController | null = null;
|
|
90
|
-
let generation = 0;
|
|
91
|
-
|
|
92
|
-
return createStore<OrionplaceState>()((set, get) => ({
|
|
93
|
-
...snapshot,
|
|
94
|
-
|
|
95
|
-
patchProfile(patch) {
|
|
96
|
-
set((state) => {
|
|
97
|
-
const page = state.result?.response.page_data;
|
|
98
|
-
if (!state.result || !page?.user) {
|
|
99
|
-
return {};
|
|
100
|
-
}
|
|
101
|
-
return {
|
|
102
|
-
result: {
|
|
103
|
-
...state.result,
|
|
104
|
-
response: {
|
|
105
|
-
...state.result.response,
|
|
106
|
-
page_data: {
|
|
107
|
-
...page,
|
|
108
|
-
user: { ...page.user, ...patch },
|
|
109
|
-
},
|
|
110
|
-
},
|
|
111
|
-
},
|
|
112
|
-
};
|
|
113
|
-
});
|
|
114
|
-
},
|
|
115
|
-
|
|
116
|
-
// A purchase changes only the balance: it is replaced in place, without
|
|
117
|
-
// an Application Load that would unmount the page and its confirmation.
|
|
118
|
-
patchWallet(wallet) {
|
|
119
|
-
set((state) => {
|
|
120
|
-
const page = state.result?.response.page_data;
|
|
121
|
-
if (!state.result || !page?.init?.is_authenticated) {
|
|
122
|
-
return {};
|
|
123
|
-
}
|
|
124
|
-
return {
|
|
125
|
-
result: {
|
|
126
|
-
...state.result,
|
|
127
|
-
response: {
|
|
128
|
-
...state.result.response,
|
|
129
|
-
page_data: {
|
|
130
|
-
...page,
|
|
131
|
-
init: { ...page.init, wallet },
|
|
132
|
-
},
|
|
133
|
-
},
|
|
134
|
-
},
|
|
135
|
-
};
|
|
136
|
-
});
|
|
137
|
-
},
|
|
138
|
-
|
|
139
|
-
reset() {
|
|
140
|
-
generation++;
|
|
141
|
-
controller?.abort();
|
|
142
|
-
controller = null;
|
|
143
|
-
pending = null;
|
|
144
|
-
set({
|
|
145
|
-
result: null,
|
|
146
|
-
failure: null,
|
|
147
|
-
status: 'idle',
|
|
148
|
-
endpoints: EMPTY_PATHS,
|
|
149
|
-
});
|
|
150
|
-
},
|
|
151
|
-
|
|
152
|
-
endSession(loader) {
|
|
153
|
-
const result = get().result;
|
|
154
|
-
if (!result?.response.page_data.init.is_authenticated) {
|
|
155
|
-
return pending ?? Promise.resolve();
|
|
156
|
-
}
|
|
157
|
-
generation++;
|
|
158
|
-
controller?.abort();
|
|
159
|
-
controller = null;
|
|
160
|
-
pending = null;
|
|
161
|
-
const guest = guestAppLoadResult(result);
|
|
162
|
-
set({ result: guest, endpoints: mergeEndpoints(guest) });
|
|
163
|
-
return get().load(loader, true, true);
|
|
164
|
-
},
|
|
165
|
-
|
|
166
|
-
load(
|
|
167
|
-
loader: AppLoadLoader,
|
|
168
|
-
force = false,
|
|
169
|
-
preserve = false,
|
|
170
|
-
): Promise<void> {
|
|
171
|
-
if (pending) {
|
|
172
|
-
return pending;
|
|
173
|
-
}
|
|
174
|
-
// Reuse both server success and failure after hydration or navigation; retry is explicit.
|
|
175
|
-
if (!force && get().status !== 'idle') {
|
|
176
|
-
return Promise.resolve();
|
|
177
|
-
}
|
|
178
|
-
const current = ++generation;
|
|
179
|
-
controller = new AbortController();
|
|
180
|
-
const signal = controller.signal;
|
|
181
|
-
if (!preserve) {
|
|
182
|
-
set({
|
|
183
|
-
result: null,
|
|
184
|
-
failure: null,
|
|
185
|
-
status: 'pending',
|
|
186
|
-
endpoints: EMPTY_PATHS,
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
pending = Promise.resolve()
|
|
190
|
-
.then(() => loader(signal))
|
|
191
|
-
.then((result) => {
|
|
192
|
-
if (current !== generation) {
|
|
193
|
-
return;
|
|
194
|
-
}
|
|
195
|
-
set({
|
|
196
|
-
result,
|
|
197
|
-
failure: null,
|
|
198
|
-
status: 'success',
|
|
199
|
-
endpoints: mergeEndpoints(result),
|
|
200
|
-
});
|
|
201
|
-
})
|
|
202
|
-
.catch((error: unknown) => {
|
|
203
|
-
if (current !== generation) {
|
|
204
|
-
return;
|
|
205
|
-
}
|
|
206
|
-
set({
|
|
207
|
-
result: null,
|
|
208
|
-
endpoints: EMPTY_PATHS,
|
|
209
|
-
failure: appLoadFailure(error),
|
|
210
|
-
status: 'error',
|
|
211
|
-
});
|
|
212
|
-
})
|
|
213
|
-
.finally(() => {
|
|
214
|
-
if (current !== generation) {
|
|
215
|
-
return;
|
|
216
|
-
}
|
|
217
|
-
pending = null;
|
|
218
|
-
controller = null;
|
|
219
|
-
});
|
|
220
|
-
return pending;
|
|
221
|
-
},
|
|
222
|
-
}));
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
export const selectIsReady = (state: OrionplaceSnapshot): boolean =>
|
|
226
|
-
state.status === 'success' && state.result !== null;
|
|
227
|
-
export const selectStatus = (state: OrionplaceSnapshot): AppLoadStatus =>
|
|
228
|
-
state.status;
|
|
229
|
-
export const selectFailure = (
|
|
230
|
-
state: OrionplaceSnapshot,
|
|
231
|
-
): AppLoadFailure | null => state.failure;
|
|
232
|
-
export const selectResult = (state: OrionplaceSnapshot): AppLoadResult | null =>
|
|
233
|
-
state.result;
|
|
234
|
-
export const selectData = (state: OrionplaceSnapshot): IAppLoad | null =>
|
|
235
|
-
state.result?.response.page_data ?? null;
|
|
236
|
-
export const selectInit = (state: OrionplaceSnapshot): IAppLoadCommon | null =>
|
|
237
|
-
selectData(state)?.init ?? null;
|
|
238
|
-
export const selectProfile = (
|
|
239
|
-
state: OrionplaceSnapshot,
|
|
240
|
-
): IApploadUserProfile | null => selectData(state)?.user ?? null;
|
|
241
|
-
export const selectIsAuthenticated = (state: OrionplaceSnapshot): boolean =>
|
|
242
|
-
selectInit(state)?.is_authenticated ?? false;
|
|
243
|
-
export const selectLocales = (
|
|
244
|
-
state: OrionplaceSnapshot,
|
|
245
|
-
): Record<string, IAppLoadCommonLocale> =>
|
|
246
|
-
selectInit(state)?.locale ?? EMPTY_RECORD;
|
|
247
|
-
export const selectCurrencies = (
|
|
248
|
-
state: OrionplaceSnapshot,
|
|
249
|
-
): Record<string, IAppLoadCommonCurrency> =>
|
|
250
|
-
selectInit(state)?.currencies ?? EMPTY_RECORD;
|
|
251
|
-
export const selectCatalog = (
|
|
252
|
-
state: OrionplaceSnapshot,
|
|
253
|
-
): readonly ICategory[] => selectInit(state)?.catalog ?? EMPTY_LIST;
|
|
254
|
-
export const selectProducts = (
|
|
255
|
-
state: OrionplaceSnapshot,
|
|
256
|
-
): readonly IProduct[] => {
|
|
257
|
-
const init = selectInit(state);
|
|
258
|
-
return init
|
|
259
|
-
? resolveAppLoadProducts(init.products, init.sellers)
|
|
260
|
-
: EMPTY_LIST;
|
|
261
|
-
};
|
|
262
|
-
export const selectTariffs = (
|
|
263
|
-
state: OrionplaceSnapshot,
|
|
264
|
-
): IAppLoadCommonTariff | null => selectInit(state)?.tariffs ?? null;
|
|
265
|
-
export const selectPublicEndpoints = (
|
|
266
|
-
state: OrionplaceSnapshot,
|
|
267
|
-
): IAppLoadPathObject => selectData(state)?.unauth.paths ?? EMPTY_PATHS;
|
|
268
|
-
export const selectEndpoints = (
|
|
269
|
-
state: OrionplaceSnapshot,
|
|
270
|
-
): IAppLoadPathObject => state.endpoints;
|
|
271
|
-
export const selectAuthenticatedEndpoints = (
|
|
272
|
-
state: OrionplaceSnapshot,
|
|
273
|
-
): IAppLoadPathObject =>
|
|
274
|
-
selectIsAuthenticated(state)
|
|
275
|
-
? (selectData(state)?.auth?.paths ?? EMPTY_PATHS)
|
|
276
|
-
: EMPTY_PATHS;
|
|
277
|
-
|
|
278
|
-
/** Live discovery describes availability; the backend still checks permissions on every call. */
|
|
279
|
-
export const selectEndpoint =
|
|
280
|
-
(section: string, name: string) =>
|
|
281
|
-
(state: OrionplaceSnapshot): IAppLoadPath | undefined =>
|
|
282
|
-
state.endpoints[section]?.[name];
|