@faststore/core 3.99.1 → 4.0.0-dev.1
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/.turbo/turbo-generate.log +29 -0
- package/.turbo/turbo-test.log +47 -16
- package/@generated/cached-operations.json +24 -0
- package/@generated/gql.ts +134 -210
- package/@generated/graphql.ts +1628 -3037
- package/@generated/index.ts +1 -1
- package/@generated/persisted-documents.json +1 -1
- package/@generated/schema.graphql +1854 -1743
- package/CHANGELOG.md +11 -5
- package/README.md +2 -1
- package/api/index.ts +6 -7
- package/cms/faststore/base.jsonc +1 -1
- package/cms/faststore/components/cms_component__alert.jsonc +5 -1
- package/cms/faststore/components/cms_component__bannernewsletter.jsonc +5 -1
- package/cms/faststore/components/cms_component__bannertext.jsonc +5 -1
- package/cms/faststore/components/cms_component__breadcrumb.jsonc +16 -4
- package/cms/faststore/components/cms_component__cartsidebar.jsonc +21 -1
- package/cms/faststore/components/cms_component__children.jsonc +5 -1
- package/cms/faststore/components/cms_component__crosssellingshelf.jsonc +5 -1
- package/cms/faststore/components/cms_component__emptystate.jsonc +8 -3
- package/cms/faststore/components/cms_component__footer.jsonc +9 -3
- package/cms/faststore/components/cms_component__hero.jsonc +5 -1
- package/cms/faststore/components/cms_component__incentives.jsonc +5 -1
- package/cms/faststore/components/cms_component__navbar.jsonc +139 -1
- package/cms/faststore/components/cms_component__newsletter.jsonc +5 -1
- package/cms/faststore/components/cms_component__productdetails.jsonc +33 -1
- package/cms/faststore/components/cms_component__productgallery.jsonc +113 -15
- package/cms/faststore/components/cms_component__productshelf.jsonc +5 -1
- package/cms/faststore/components/cms_component__producttiles.jsonc +5 -1
- package/cms/faststore/components/cms_component__regionbar.jsonc +5 -1
- package/cms/faststore/components/cms_component__regionmodal.jsonc +5 -1
- package/cms/faststore/components/cms_component__regionpopover.jsonc +5 -1
- package/cms/faststore/components/cms_component__scrolltotopbutton.jsonc +29 -0
- package/cms/faststore/components/cms_component__search.jsonc +5 -1
- package/cms/faststore/content-types.json +115 -0
- package/cms/faststore/pages/cms_content_type__globalsections.jsonc +52 -0
- package/cms/faststore/pages/cms_content_type__home.jsonc +6 -0
- package/cms/faststore/pages/cms_content_type__landingpage.jsonc +8 -1
- package/cms/faststore/pages/cms_content_type__pdp.jsonc +6 -0
- package/cms/faststore/pages/cms_content_type__plp.jsonc +17 -0
- package/cms/faststore/pages/cms_content_type__search.jsonc +17 -0
- package/cms/faststore/schema.json +547 -43
- package/cms/faststore/sections.json +330 -21
- package/discovery.config.default.js +49 -3
- package/next-env.d.ts +2 -1
- package/next.config.js +48 -26
- package/package.json +47 -60
- package/public/icons.svg +5 -1
- package/scripts/i18n.js +76 -0
- package/src/components/account/MyAccountDrawer/OrganizationDrawer/OrganizationDrawer.tsx +2 -1
- package/src/components/account/MyAccountDrawer/OrganizationDrawer/section.module.scss +25 -24
- package/src/components/account/MyAccountDrawer/ProfileSummary/profile-summary.scss +8 -6
- package/src/components/account/MyAccountLayout/styles.scss +16 -12
- package/src/components/account/MyAccountMenu/styles.scss +21 -22
- package/src/components/account/MyAccountUserDetails/styles.module.scss +4 -2
- package/src/components/account/components/MyAccountAccordion/styles.scss +4 -2
- package/src/components/account/components/MyAccountHeader/styles.scss +3 -1
- package/src/components/account/components/MyAccountTable/styles.scss +6 -4
- package/src/components/account/orders/MyAccountListOrders/MyAccountFilterSlider/section.module.scss +21 -19
- package/src/components/account/orders/MyAccountListOrders/MyAccountListOrdersTable/MyAccountListOrdersTable.tsx +3 -1
- package/src/components/account/orders/MyAccountListOrders/MyAccountListOrdersTable/styles.scss +5 -3
- package/src/components/account/orders/MyAccountListOrders/styles.module.scss +25 -22
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountBudgetsCard/styles.scss +7 -5
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountDeliveryOptionAccordion/styles.scss +7 -5
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountMoreInformationCard/styles.scss +3 -1
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActionModal/styles.module.scss +8 -6
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountOrderActions/styles.scss +3 -1
- package/src/components/account/orders/MyAccountOrderDetails/MyAccountStatusCard/styles.scss +8 -6
- package/src/components/account/orders/MyAccountOrderDetails/section.module.scss +36 -43
- package/src/components/account/profile/profile.module.scss +3 -1
- package/src/components/account/section.module.scss +3 -1
- package/src/components/account/security/styles.module.scss +14 -8
- package/src/components/cart/CartSidebar/CartSidebar.tsx +10 -1
- package/src/components/cart/CartSidebar/section.module.scss +19 -17
- package/src/components/cart/EmptyCart/EmptyCart.tsx +12 -4
- package/src/components/cms/GlobalSections.tsx +12 -12
- package/src/components/cms/RenderSections.tsx +10 -2
- package/src/components/cms/plp/Components.ts +9 -0
- package/src/components/common/Alert/section.module.scss +10 -5
- package/src/components/common/PreviewTag/section.module.scss +48 -40
- package/src/components/common/Toast/section.module.scss +4 -2
- package/src/components/localization/LocalizationSelector/LocalizationSelector.tsx +320 -0
- package/src/components/localization/LocalizationSelector/index.ts +1 -0
- package/src/components/localization/LocalizationSelector/section.module.scss +18 -0
- package/src/components/localization/index.ts +1 -0
- package/src/components/navigation/Navbar/Navbar.tsx +49 -1
- package/src/components/navigation/NavbarSlider/NavbarSlider.tsx +19 -1
- package/src/components/navigation/NavbarSlider/section.module.scss +12 -10
- package/src/components/product/OutOfStock/OutOfStock.tsx +6 -1
- package/src/components/product/ProductCard/ProductCard.tsx +1 -1
- package/src/components/region/RegionModal/RegionModal.tsx +4 -1
- package/src/components/region/RegionModal/section.module.scss +10 -8
- package/src/components/region/RegionPopover/RegionPopover.tsx +6 -5
- package/src/components/region/RegionPopover/section.module.scss +9 -7
- package/src/components/region/RegionSlider/RegionSlider.tsx +5 -2
- package/src/components/region/RegionSlider/section.module.scss +16 -13
- package/src/components/search/Filter/FilterDeliveryMethodFacet.tsx +5 -5
- package/src/components/search/Filter/FilterDesktop.tsx +13 -4
- package/src/components/search/Filter/FilterSlider.tsx +18 -6
- package/src/components/search/Filter/section.module.scss +21 -19
- package/src/components/search/SearchDropdown/SearchDropdown.tsx +9 -7
- package/src/components/search/SearchHistory/SearchHistory.tsx +7 -2
- package/src/components/search/SearchInput/SearchInput.tsx +21 -8
- package/src/components/search/SearchProductItem/SearchProductItem.tsx +10 -3
- package/src/components/search/SearchTop/SearchTop.tsx +30 -24
- package/src/components/search/Sort/Sort.tsx +17 -19
- package/src/components/sections/Alert/Alert.tsx +6 -1
- package/src/components/sections/BannerNewsletter/section.module.scss +6 -4
- package/src/components/sections/BannerText/section.module.scss +5 -3
- package/src/components/sections/Breadcrumb/Breadcrumb.tsx +6 -2
- package/src/components/sections/Breadcrumb/section.module.scss +7 -5
- package/src/components/sections/EmptyState/section.module.scss +5 -3
- package/src/components/sections/Footer/Footer.tsx +1 -5
- package/src/components/sections/Footer/section.module.scss +10 -8
- package/src/components/sections/Hero/Hero.tsx +3 -1
- package/src/components/sections/Hero/section.module.scss +6 -4
- package/src/components/sections/Incentives/section.module.scss +5 -3
- package/src/components/sections/Navbar/Navbar.tsx +45 -0
- package/src/components/sections/Navbar/section.module.scss +34 -33
- package/src/components/sections/Newsletter/section.module.scss +10 -8
- package/src/components/sections/ProductDetails/ProductDetails.tsx +23 -1
- package/src/components/sections/ProductDetails/section.module.scss +32 -30
- package/src/components/sections/ProductGallery/EmptyGallery.tsx +13 -16
- package/src/components/sections/ProductGallery/section.module.scss +42 -39
- package/src/components/sections/ProductShelf/section.module.scss +22 -17
- package/src/components/sections/ProductTiles/section.module.scss +15 -13
- package/src/components/sections/RegionBar/section.module.scss +5 -3
- package/src/components/sections/ScrollToTopButton/ScrollToTopButton.tsx +4 -3
- package/src/components/sections/ScrollToTopButton/section.module.scss +4 -2
- package/src/components/templates/LandingPage/LandingPage.tsx +22 -16
- package/src/components/templates/ProductListingPage/ProductListing.tsx +1 -13
- package/src/components/templates/ProductListingPage/ProductListingPage.tsx +8 -3
- package/src/components/ui/Breadcrumb/Breadcrumb.tsx +14 -11
- package/src/components/ui/Button/ButtonSignIn/ButtonSignIn.tsx +2 -1
- package/src/components/ui/Button/ButtonSignIn/ButtonSignInFallback/ButtonSignInFallback.tsx +3 -1
- package/src/components/ui/Link/Link.tsx +19 -2
- package/src/components/ui/LinkButton/LinkButton.tsx +28 -0
- package/src/components/ui/LinkButton/index.ts +2 -0
- package/src/components/ui/LocalizationButton/LocalizationButton.tsx +124 -0
- package/src/components/ui/LocalizationButton/index.ts +1 -0
- package/src/components/ui/PickupPoints/PickupPointCards.tsx +2 -4
- package/src/components/ui/ProductComparison/ProductComparisonSidebar.tsx +34 -17
- package/src/components/ui/ProductDescription/ProductDescription.tsx +8 -3
- package/src/components/ui/ProductDetails/AddToCartLoadingSkeleton.tsx +6 -2
- package/src/components/ui/ProductDetails/ProductDetailsSettings.tsx +17 -5
- package/src/components/ui/ProductGallery/ProductGallery.tsx +7 -3
- package/src/components/ui/ProductGallery/ProductGalleryPage.tsx +1 -3
- package/src/components/ui/ShippingSimulation/ShippingSimulation.tsx +6 -1
- package/src/customizations/src/styles/custom-mixins.scss +0 -2
- package/src/experimental/index.ts +26 -0
- package/src/experimental/myAccountServerSideProps.ts +11 -2
- package/src/experimental/searchServerSideFunctions/getServerSideProps.ts +13 -7
- package/src/experimental/searchServerSideFunctions/getStaticProps.ts +5 -4
- package/src/instrumentation.ts +20 -6
- package/src/pages/404.tsx +5 -4
- package/src/pages/500.tsx +5 -4
- package/src/pages/[...slug].tsx +7 -4
- package/src/pages/[slug]/p.tsx +26 -8
- package/src/pages/_app.tsx +9 -1
- package/src/pages/api/fs/logout.ts +3 -2
- package/src/pages/api/graphql.ts +7 -23
- package/src/pages/api/preview.ts +21 -8
- package/src/pages/checkout.tsx +15 -5
- package/src/pages/index.tsx +18 -9
- package/src/pages/login.tsx +5 -4
- package/src/pages/pvt/account/403.tsx +11 -2
- package/src/pages/pvt/account/404.tsx +13 -3
- package/src/pages/pvt/account/index.tsx +6 -4
- package/src/pages/pvt/account/orders/[id].tsx +11 -3
- package/src/pages/pvt/account/orders/index.tsx +11 -3
- package/src/pages/pvt/account/profile.tsx +11 -2
- package/src/pages/pvt/account/security.tsx +11 -2
- package/src/pages/pvt/account/user-details.tsx +11 -2
- package/src/pages/s.tsx +26 -6
- package/src/proxy.ts +154 -0
- package/src/sdk/account/refreshToken.ts +4 -4
- package/src/sdk/account/useReorder.ts +8 -2
- package/src/sdk/analytics/platform/vtex/search.ts +3 -2
- package/src/sdk/cart/redirectToCheckout.ts +14 -8
- package/src/sdk/cart/useCheckoutButton.ts +7 -1
- package/src/sdk/deliveryPromise/useDeliveryPromise.ts +10 -18
- package/src/sdk/graphql/request.ts +102 -50
- package/src/sdk/localization/bindingSelector.ts +91 -0
- package/src/sdk/localization/index.ts +4 -0
- package/src/sdk/localization/match-url.ts +64 -0
- package/src/sdk/localization/types.ts +31 -0
- package/src/sdk/localization/useBindingSelector.ts +183 -0
- package/src/sdk/localization/useLocaleValidation.ts +49 -0
- package/src/sdk/localization/useLocalizationConfig.tsx +160 -0
- package/src/sdk/offer/fetcher.ts +3 -2
- package/src/sdk/product/useLocalizedVariables.ts +1 -1
- package/src/sdk/product/usePageProductsQuery.ts +2 -2
- package/src/sdk/product/useProductGalleryQuery.ts +1 -2
- package/src/sdk/product/useProductLink.ts +3 -1
- package/src/sdk/search/formatSearchPath.ts +28 -3
- package/src/sdk/search/state.ts +22 -13
- package/src/sdk/search/useSearchBase.ts +10 -0
- package/src/sdk/search/useSearchHistory.ts +41 -7
- package/src/sdk/session/index.ts +21 -3
- package/src/sdk/shipping/useShippingSimulation.ts +10 -2
- package/src/sdk/tsconfig.json +6 -0
- package/src/sdk/ui/useLink.ts +48 -0
- package/src/server/cms/global.ts +40 -0
- package/src/server/cms/index.ts +18 -10
- package/src/server/cms/pdp.ts +1 -0
- package/src/server/cms/plp.ts +3 -0
- package/src/server/content/service.ts +36 -24
- package/src/server/content/types.ts +10 -3
- package/src/server/index.ts +27 -20
- package/src/server/options.ts +27 -2
- package/src/styles/global/index.scss +10 -7
- package/src/styles/main.scss +3 -3
- package/src/typings/locales.ts +41 -0
- package/src/utils/fetchProductGallerySSR.ts +3 -1
- package/src/utils/getBaseDomain.ts +2 -1
- package/src/utils/getRequestHostname.ts +26 -0
- package/src/utils/globalSettings.ts +11 -0
- package/src/utils/localization/bindingPaths.ts +337 -0
- package/src/utils/localization/validateLocaleForHostname.ts +69 -0
- package/src/utils/localization/withLocaleValidation.ts +36 -0
- package/src/utils/utilities.ts +22 -0
- package/test/pages/api/preview.test.ts +93 -0
- package/test/sdk/localization/bindingSelector.test.ts +246 -0
- package/test/sdk/localization/store-url.browser.test.ts +140 -0
- package/test/sdk/localization/store-url.test.ts +96 -0
- package/test/sdk/localization/useBindingSelector.test.tsx +219 -0
- package/test/sdk/search/useSearchHistory.test.ts +222 -0
- package/test/server/cms/index.test.ts +3 -4
- package/test/server/content/service.test.ts +98 -0
- package/test/server/index.test.ts +10 -22
- package/test/utils/cookieCacheBusting.test.ts +32 -24
- package/test/utils/getRequestHostname.test.ts +71 -0
- package/test/utils/localization/bindingPaths.test.ts +706 -0
- package/test/utils/match-url.test.ts +388 -0
- package/tsconfig.json +11 -3
- package/vitest.config.ts +61 -0
- package/.next/BUILD_ID +0 -1
- package/.next/build-manifest.json +0 -197
- package/.next/cache/.tsbuildinfo +0 -1
- package/.next/cache/config.json +0 -7
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/edge-server-production/0.pack +0 -0
- package/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/export-marker.json +0 -1
- package/.next/images-manifest.json +0 -1
- package/.next/next-minimal-server.js.nft.json +0 -1
- package/.next/next-server.js.nft.json +0 -1
- package/.next/package.json +0 -1
- package/.next/prerender-manifest.js +0 -1
- package/.next/prerender-manifest.json +0 -1
- package/.next/react-loadable-manifest.json +0 -478
- package/.next/required-server-files.json +0 -1
- package/.next/routes-manifest.json +0 -1
- package/.next/server/chunks/1280.js +0 -1
- package/.next/server/chunks/1454.js +0 -1
- package/.next/server/chunks/1554.js +0 -1
- package/.next/server/chunks/1607.js +0 -1
- package/.next/server/chunks/1780.js +0 -1
- package/.next/server/chunks/1917.js +0 -1
- package/.next/server/chunks/1972.js +0 -1
- package/.next/server/chunks/2230.js +0 -1
- package/.next/server/chunks/2249.js +0 -1
- package/.next/server/chunks/2430.js +0 -1
- package/.next/server/chunks/2445.js +0 -12
- package/.next/server/chunks/2570.js +0 -1
- package/.next/server/chunks/2792.js +0 -1
- package/.next/server/chunks/2903.js +0 -1
- package/.next/server/chunks/294.js +0 -1
- package/.next/server/chunks/2955.js +0 -1
- package/.next/server/chunks/3006.js +0 -1
- package/.next/server/chunks/3029.js +0 -1
- package/.next/server/chunks/3060.js +0 -1
- package/.next/server/chunks/3408.js +0 -1
- package/.next/server/chunks/3483.js +0 -1
- package/.next/server/chunks/3683.js +0 -1
- package/.next/server/chunks/3836.js +0 -1
- package/.next/server/chunks/3890.js +0 -494
- package/.next/server/chunks/3922.js +0 -1
- package/.next/server/chunks/3945.js +0 -1
- package/.next/server/chunks/3951.js +0 -7
- package/.next/server/chunks/416.js +0 -1
- package/.next/server/chunks/4194.js +0 -1
- package/.next/server/chunks/4365.js +0 -1
- package/.next/server/chunks/4451.js +0 -1
- package/.next/server/chunks/4803.js +0 -1
- package/.next/server/chunks/4913.js +0 -13
- package/.next/server/chunks/5402.js +0 -1
- package/.next/server/chunks/5723.js +0 -13
- package/.next/server/chunks/5796.js +0 -1
- package/.next/server/chunks/6393.js +0 -1
- package/.next/server/chunks/6457.js +0 -6
- package/.next/server/chunks/6698.js +0 -1
- package/.next/server/chunks/6804.js +0 -6
- package/.next/server/chunks/6886.js +0 -1
- package/.next/server/chunks/7098.js +0 -9
- package/.next/server/chunks/7169.js +0 -1
- package/.next/server/chunks/7228.js +0 -1
- package/.next/server/chunks/7275.js +0 -1
- package/.next/server/chunks/7371.js +0 -1
- package/.next/server/chunks/7692.js +0 -1
- package/.next/server/chunks/7799.js +0 -1
- package/.next/server/chunks/8068.js +0 -1
- package/.next/server/chunks/83.js +0 -1
- package/.next/server/chunks/831.js +0 -1
- package/.next/server/chunks/8563.js +0 -1
- package/.next/server/chunks/8569.js +0 -1
- package/.next/server/chunks/8687.js +0 -1
- package/.next/server/chunks/870.js +0 -1
- package/.next/server/chunks/8737.js +0 -1
- package/.next/server/chunks/8741.js +0 -1
- package/.next/server/chunks/9088.js +0 -1
- package/.next/server/chunks/9117.js +0 -1
- package/.next/server/chunks/9237.js +0 -1
- package/.next/server/chunks/948.js +0 -3
- package/.next/server/chunks/9563.js +0 -3
- package/.next/server/chunks/9570.js +0 -1
- package/.next/server/chunks/9740.js +0 -1
- package/.next/server/chunks/9853.js +0 -1
- package/.next/server/chunks/9984.js +0 -1
- package/.next/server/chunks/9985.js +0 -1
- package/.next/server/chunks/9990.js +0 -1
- package/.next/server/chunks/ButtonSignIn.js +0 -1
- package/.next/server/chunks/Dropdown.js +0 -1
- package/.next/server/chunks/DropdownButton.js +0 -1
- package/.next/server/chunks/DropdownItem.js +0 -1
- package/.next/server/chunks/DropdownMenu.js +0 -1
- package/.next/server/chunks/FilterSkeleton.js +0 -1
- package/.next/server/chunks/ScrollToTopButton.js +0 -1
- package/.next/server/chunks/UIBannerText.js +0 -1
- package/.next/server/chunks/UISKUMatrixSidebar.js +0 -1
- package/.next/server/chunks/font-manifest.json +0 -1
- package/.next/server/edge-instrumentation.js +0 -2
- package/.next/server/edge-instrumentation.js.map +0 -1
- package/.next/server/edge-runtime-webpack.js +0 -157
- package/.next/server/edge-runtime-webpack.js.map +0 -1
- package/.next/server/font-manifest.json +0 -1
- package/.next/server/functions-config-manifest.json +0 -1
- package/.next/server/instrumentation.js +0 -1
- package/.next/server/instrumentation.js.nft.json +0 -1
- package/.next/server/middleware-build-manifest.js +0 -1
- package/.next/server/middleware-manifest.json +0 -6
- package/.next/server/middleware-react-loadable-manifest.js +0 -1
- package/.next/server/next-font-manifest.js +0 -1
- package/.next/server/next-font-manifest.json +0 -1
- package/.next/server/pages/404.js +0 -1
- package/.next/server/pages/404.js.nft.json +0 -1
- package/.next/server/pages/500.js +0 -1
- package/.next/server/pages/500.js.nft.json +0 -1
- package/.next/server/pages/[...slug].js +0 -1
- package/.next/server/pages/[...slug].js.nft.json +0 -1
- package/.next/server/pages/[slug]/p.js +0 -1
- package/.next/server/pages/[slug]/p.js.nft.json +0 -1
- package/.next/server/pages/_app.js +0 -1
- package/.next/server/pages/_app.js.nft.json +0 -1
- package/.next/server/pages/_document.js +0 -1
- package/.next/server/pages/_document.js.nft.json +0 -1
- package/.next/server/pages/_error.js +0 -1
- package/.next/server/pages/_error.js.nft.json +0 -1
- package/.next/server/pages/api/fs/logout.js +0 -1
- package/.next/server/pages/api/fs/logout.js.nft.json +0 -1
- package/.next/server/pages/api/graphql.js +0 -3
- package/.next/server/pages/api/graphql.js.nft.json +0 -1
- package/.next/server/pages/api/health/live.js +0 -1
- package/.next/server/pages/api/health/live.js.nft.json +0 -1
- package/.next/server/pages/api/health/ready.js +0 -1
- package/.next/server/pages/api/health/ready.js.nft.json +0 -1
- package/.next/server/pages/api/preview.js +0 -1
- package/.next/server/pages/api/preview.js.nft.json +0 -1
- package/.next/server/pages/checkout.js +0 -1
- package/.next/server/pages/checkout.js.nft.json +0 -1
- package/.next/server/pages/en-US/404.html +0 -42
- package/.next/server/pages/en-US/404.json +0 -1
- package/.next/server/pages/en-US/500.html +0 -42
- package/.next/server/pages/en-US/500.json +0 -1
- package/.next/server/pages/en-US/checkout.html +0 -42
- package/.next/server/pages/en-US/checkout.json +0 -1
- package/.next/server/pages/en-US/login.html +0 -42
- package/.next/server/pages/en-US/login.json +0 -1
- package/.next/server/pages/en-US/s.html +0 -42
- package/.next/server/pages/en-US/s.json +0 -1
- package/.next/server/pages/en-US.html +0 -42
- package/.next/server/pages/en-US.json +0 -1
- package/.next/server/pages/index.js +0 -1
- package/.next/server/pages/index.js.nft.json +0 -1
- package/.next/server/pages/login.js +0 -1
- package/.next/server/pages/login.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/403.js +0 -1
- package/.next/server/pages/pvt/account/403.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/404.js +0 -1
- package/.next/server/pages/pvt/account/404.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/[...unknown].js +0 -1
- package/.next/server/pages/pvt/account/[...unknown].js.nft.json +0 -1
- package/.next/server/pages/pvt/account/orders/[id].js +0 -1
- package/.next/server/pages/pvt/account/orders/[id].js.nft.json +0 -1
- package/.next/server/pages/pvt/account/orders.js +0 -1
- package/.next/server/pages/pvt/account/orders.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/profile.js +0 -1
- package/.next/server/pages/pvt/account/profile.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/security.js +0 -1
- package/.next/server/pages/pvt/account/security.js.nft.json +0 -1
- package/.next/server/pages/pvt/account/user-details.js +0 -1
- package/.next/server/pages/pvt/account/user-details.js.nft.json +0 -1
- package/.next/server/pages/pvt/account.js +0 -1
- package/.next/server/pages/pvt/account.js.nft.json +0 -1
- package/.next/server/pages/s.js +0 -1
- package/.next/server/pages/s.js.nft.json +0 -1
- package/.next/server/pages-manifest.json +0 -1
- package/.next/server/webpack-api-runtime.js +0 -1
- package/.next/server/webpack-runtime.js +0 -1
- package/.next/static/NAuY8lqaeBBZf9CMZuYI2/_buildManifest.js +0 -1
- package/.next/static/NAuY8lqaeBBZf9CMZuYI2/_ssgManifest.js +0 -1
- package/.next/static/chunks/227-f109b24190a008ab.js +0 -8
- package/.next/static/chunks/2284.185d834d9829b652.js +0 -1
- package/.next/static/chunks/2851.e68ed3c8d27a032a.js +0 -1
- package/.next/static/chunks/2927.5a79877943a6bf7c.js +0 -1
- package/.next/static/chunks/3155.7bc4c730a79d9ecb.js +0 -1
- package/.next/static/chunks/3166-0b30a3887c0c346d.js +0 -1
- package/.next/static/chunks/3399.017c5209b74b0d97.js +0 -1
- package/.next/static/chunks/3483.ef53d632a763da3f.js +0 -1
- package/.next/static/chunks/349.b3b38e1e9f719dda.js +0 -1
- package/.next/static/chunks/3802.5e8b0b689eacc0f8.js +0 -1
- package/.next/static/chunks/3836.620480018be48233.js +0 -1
- package/.next/static/chunks/4436.e7af66f0b654ee36.js +0 -1
- package/.next/static/chunks/4803.b1920b6e3a1a6304.js +0 -1
- package/.next/static/chunks/5796.4351370494d8b8b6.js +0 -1
- package/.next/static/chunks/6393.55f991b1a6bb4fe7.js +0 -1
- package/.next/static/chunks/6700.b23221a57514e737.js +0 -1
- package/.next/static/chunks/6789.960162355435a81d.js +0 -1
- package/.next/static/chunks/7191-befad64ba238a817.js +0 -1
- package/.next/static/chunks/7692.8d5bf4560341a2f6.js +0 -1
- package/.next/static/chunks/7861.7f9f1a124a43da30.js +0 -6
- package/.next/static/chunks/8068.43663fb64762f7b8.js +0 -1
- package/.next/static/chunks/83.e0c16f0299b364a5.js +0 -1
- package/.next/static/chunks/8325.dabe9aa22eaadeed.js +0 -1
- package/.next/static/chunks/8587.53c8ce185ed1a2cb.js +0 -1
- package/.next/static/chunks/9173-e89da04079c35360.js +0 -2
- package/.next/static/chunks/9237.7555603703f81bf7.js +0 -1
- package/.next/static/chunks/9298-1d1ed0a54133cb59.js +0 -28
- package/.next/static/chunks/9399.d116a7fd62024783.js +0 -1
- package/.next/static/chunks/941.3e2782ab9c490eb0.js +0 -1
- package/.next/static/chunks/9701.f9a0bfffba8807dc.js +0 -1
- package/.next/static/chunks/9909.787576b171184aa5.js +0 -1
- package/.next/static/chunks/9960.7ef77f8a8b046170.js +0 -1
- package/.next/static/chunks/9979.aedbc094bdc2c599.js +0 -1
- package/.next/static/chunks/BannerNewsletter.00328ad162109908.js +0 -1
- package/.next/static/chunks/BannerText.dbbec87cadb8a521.js +0 -1
- package/.next/static/chunks/ButtonSignIn.f6e210eaca873e48.js +0 -1
- package/.next/static/chunks/CartItem.b34e295377f6f94f.js +0 -1
- package/.next/static/chunks/CartSidebar.ac447d1ef6276da1.js +0 -1
- package/.next/static/chunks/Dropdown.38b48c749bad6b60.js +0 -1
- package/.next/static/chunks/DropdownButton.66fa6b25dddb3a07.js +0 -1
- package/.next/static/chunks/DropdownItem.38b8f5a07c7f422a.js +0 -1
- package/.next/static/chunks/DropdownMenu.48b11521a24c6efd.js +0 -1
- package/.next/static/chunks/EmptyCart.320e2f94a0d5e6b1.js +0 -1
- package/.next/static/chunks/FilterSkeleton.7ab99e28f92341c9.js +0 -1
- package/.next/static/chunks/Footer.166b02c2f13980c6.js +0 -1
- package/.next/static/chunks/Gift.c49ba26da2fbab5e.js +0 -1
- package/.next/static/chunks/Newsletter.fc406f6029057022.js +0 -1
- package/.next/static/chunks/OrderSummary.5957d69f990d9add.js +0 -1
- package/.next/static/chunks/PreviewTag.f4f0c8710a7bcad9.js +0 -1
- package/.next/static/chunks/ProductShelf.cc46f5cdeeaeaff6.js +0 -1
- package/.next/static/chunks/ProductTiles.9b804e51b0704d60.js +0 -1
- package/.next/static/chunks/RegionModal.319ad44250cb12d2.js +0 -1
- package/.next/static/chunks/RegionSlider.0e0e93369f4f9c92.js +0 -1
- package/.next/static/chunks/ScrollToTopButton.c15431f2e8bb93ef.js +0 -1
- package/.next/static/chunks/ShoppingAssistant.ba191eb4dbed67e5.js +0 -1
- package/.next/static/chunks/Toast.5f90f0436708be5e.js +0 -1
- package/.next/static/chunks/UIBannerText.7315b16af4457059.js +0 -1
- package/.next/static/chunks/UISKUMatrixSidebar.b4349b2682bbe183.js +0 -1
- package/.next/static/chunks/UIToast.19a8664c01a00d3a.js +0 -1
- package/.next/static/chunks/framework-d514426edf885c68.js +0 -33
- package/.next/static/chunks/main-ec03882c4375091d.js +0 -1
- package/.next/static/chunks/pages/404-e3dfbbac003b02a2.js +0 -1
- package/.next/static/chunks/pages/500-c7814e085081d7b8.js +0 -1
- package/.next/static/chunks/pages/[...slug]-dc8a395a43b081f1.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-644f1132f5a0f736.js +0 -1
- package/.next/static/chunks/pages/_app-84aaff8a9d4de60e.js +0 -1
- package/.next/static/chunks/pages/_error-2b0148be56a716e9.js +0 -1
- package/.next/static/chunks/pages/checkout-2071467ad42dfb99.js +0 -1
- package/.next/static/chunks/pages/index-8774d5b4a8744eb2.js +0 -1
- package/.next/static/chunks/pages/login-e74747c9f9cb5b49.js +0 -1
- package/.next/static/chunks/pages/pvt/account/403-491e6b062487b30f.js +0 -1
- package/.next/static/chunks/pages/pvt/account/404-5ad472d9f2ee1980.js +0 -1
- package/.next/static/chunks/pages/pvt/account/[...unknown]-f80f645594d2740c.js +0 -1
- package/.next/static/chunks/pages/pvt/account/orders/[id]-64e42157c0974c48.js +0 -1
- package/.next/static/chunks/pages/pvt/account/orders-faab39f2aff05fae.js +0 -1
- package/.next/static/chunks/pages/pvt/account/profile-9672177ee2665bc0.js +0 -1
- package/.next/static/chunks/pages/pvt/account/security-03eb1ccab9a30563.js +0 -1
- package/.next/static/chunks/pages/pvt/account/user-details-7838e3f79781596c.js +0 -1
- package/.next/static/chunks/pages/pvt/account-65fefcc699344bdb.js +0 -1
- package/.next/static/chunks/pages/s-162ba789e6611175.js +0 -1
- package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +0 -1
- package/.next/static/chunks/webpack-f621ff3e951d2982.js +0 -1
- package/.next/static/css/02259c549b2179f2.css +0 -1
- package/.next/static/css/02eaf202d3d11fd1.css +0 -1
- package/.next/static/css/033e241c58ba6fbb.css +0 -1
- package/.next/static/css/042d012bc1895b5c.css +0 -1
- package/.next/static/css/14176a4704ff97b2.css +0 -1
- package/.next/static/css/146a8678babc61bf.css +0 -1
- package/.next/static/css/16d65422bfa80f51.css +0 -1
- package/.next/static/css/1c4983f11b861ea0.css +0 -1
- package/.next/static/css/204754bbd8cc4bef.css +0 -1
- package/.next/static/css/24d91007fc96be10.css +0 -1
- package/.next/static/css/2980acad3f8e1028.css +0 -1
- package/.next/static/css/2c19433e38fd7533.css +0 -1
- package/.next/static/css/31380ebc6e671486.css +0 -1
- package/.next/static/css/42df884711219edb.css +0 -1
- package/.next/static/css/4f0597b0bf0ef2e1.css +0 -1
- package/.next/static/css/54cedf4b65e5863f.css +0 -1
- package/.next/static/css/6580147d7ab8fcca.css +0 -1
- package/.next/static/css/6819dddf2b1b5ea7.css +0 -1
- package/.next/static/css/7ef7762f412ed665.css +0 -1
- package/.next/static/css/82f3cd529b672812.css +0 -1
- package/.next/static/css/837662922091162f.css +0 -1
- package/.next/static/css/8e6ab59ace21e03b.css +0 -1
- package/.next/static/css/a852afa9be31e946.css +0 -1
- package/.next/static/css/b684b347c5cc6514.css +0 -1
- package/.next/static/css/bcdaef0a83277ef5.css +0 -1
- package/.next/static/css/c33615999008d3f9.css +0 -1
- package/.next/static/css/c34f6ea9953e2f63.css +0 -1
- package/.next/static/css/ea11d74a2848b093.css +0 -1
- package/.next/static/css/f16438bcf4508fb3.css +0 -1
- package/.next/static/css/f60366555f563deb.css +0 -1
- package/.next/trace +0 -143
- package/.turbo/turbo-build.log +0 -140
- package/jest.config.js +0 -17
- package/public/~partytown/debug/partytown-atomics.js +0 -556
- package/public/~partytown/debug/partytown-media.js +0 -374
- package/public/~partytown/debug/partytown-sandbox-sw.js +0 -543
- package/public/~partytown/debug/partytown-sw.js +0 -59
- package/public/~partytown/debug/partytown-ww-atomics.js +0 -1789
- package/public/~partytown/debug/partytown-ww-sw.js +0 -1781
- package/public/~partytown/debug/partytown.js +0 -72
- package/public/~partytown/partytown-atomics.js +0 -2
- package/public/~partytown/partytown-media.js +0 -2
- package/public/~partytown/partytown-sw.js +0 -2
- package/public/~partytown/partytown.js +0 -2
- package/src/middleware__DISABLED.ts +0 -65
- package/src/server/generator/generateGraphQLSchemaFile.ts +0 -3
- package/src/server/generator/schema.ts +0 -81
|
@@ -222,6 +222,21 @@
|
|
|
222
222
|
"score_desc"
|
|
223
223
|
]
|
|
224
224
|
},
|
|
225
|
+
"submitButtonAriaLabel": {
|
|
226
|
+
"title": "Submit Search Button aria-label",
|
|
227
|
+
"type": "string",
|
|
228
|
+
"default": "Submit Search"
|
|
229
|
+
},
|
|
230
|
+
"searchHistoryTitle": {
|
|
231
|
+
"title": "Search History Title",
|
|
232
|
+
"type": "string",
|
|
233
|
+
"default": "History"
|
|
234
|
+
},
|
|
235
|
+
"searchTopTitle": {
|
|
236
|
+
"title": "Top Search Title",
|
|
237
|
+
"type": "string",
|
|
238
|
+
"default": "Top search"
|
|
239
|
+
},
|
|
225
240
|
"quickOrderSettings": {
|
|
226
241
|
"title": "Quick Order settings",
|
|
227
242
|
"type": "object",
|
|
@@ -334,6 +349,29 @@
|
|
|
334
349
|
}
|
|
335
350
|
}
|
|
336
351
|
},
|
|
352
|
+
"invalidQuantityToastLabels": {
|
|
353
|
+
"title": "Invalid quantity toast",
|
|
354
|
+
"description": "This toast will be displayed when the quantity is out of the range of the min and max values.",
|
|
355
|
+
"type": "object",
|
|
356
|
+
"properties": {
|
|
357
|
+
"title": {
|
|
358
|
+
"title": "Title",
|
|
359
|
+
"type": "string",
|
|
360
|
+
"default": "Invalid quantity!"
|
|
361
|
+
},
|
|
362
|
+
"message": {
|
|
363
|
+
"title": "Message",
|
|
364
|
+
"type": "string",
|
|
365
|
+
"description": "If the message has %{min}, %{max} and %{quantity} placeholders, they will be replaced by the min, max and quantity values.",
|
|
366
|
+
"default": "The quantity you entered is outside the range of '%{min}' to '%{max}'. The quantity was set to '%{quantity}'."
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
},
|
|
370
|
+
"outOfStockLabel": {
|
|
371
|
+
"title": "Out of Stock Label",
|
|
372
|
+
"type": "string",
|
|
373
|
+
"default": "Out of stock"
|
|
374
|
+
},
|
|
337
375
|
"drawer": {
|
|
338
376
|
"title": "Quick Order Drawer",
|
|
339
377
|
"type": "object",
|
|
@@ -777,6 +815,16 @@
|
|
|
777
815
|
}
|
|
778
816
|
}
|
|
779
817
|
}
|
|
818
|
+
},
|
|
819
|
+
"loadingLabel": {
|
|
820
|
+
"title": "Loading Label",
|
|
821
|
+
"type": "string",
|
|
822
|
+
"default": "Loading..."
|
|
823
|
+
},
|
|
824
|
+
"collapseSearchAriaLabel": {
|
|
825
|
+
"title": "Collapse Search Button aria-label",
|
|
826
|
+
"type": "string",
|
|
827
|
+
"default": "Collapse search bar"
|
|
780
828
|
}
|
|
781
829
|
}
|
|
782
830
|
},
|
|
@@ -870,6 +918,92 @@
|
|
|
870
918
|
}
|
|
871
919
|
}
|
|
872
920
|
},
|
|
921
|
+
"localizationButton": {
|
|
922
|
+
"type": "object",
|
|
923
|
+
"title": "Localization Button",
|
|
924
|
+
"properties": {
|
|
925
|
+
"shouldDisplayLocalizationButton": {
|
|
926
|
+
"type": "boolean",
|
|
927
|
+
"title": "Should display localization button?",
|
|
928
|
+
"default": false
|
|
929
|
+
},
|
|
930
|
+
"icon": {
|
|
931
|
+
"title": "Icon",
|
|
932
|
+
"type": "object",
|
|
933
|
+
"properties": {
|
|
934
|
+
"icon": {
|
|
935
|
+
"title": "Icon",
|
|
936
|
+
"type": "string",
|
|
937
|
+
"enumNames": ["Globe"],
|
|
938
|
+
"enum": ["Globe"],
|
|
939
|
+
"default": "Globe"
|
|
940
|
+
}
|
|
941
|
+
}
|
|
942
|
+
},
|
|
943
|
+
"ariaLabel": {
|
|
944
|
+
"title": "Aria Label for localization selector",
|
|
945
|
+
"type": "string",
|
|
946
|
+
"default": "Open localization selector"
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
},
|
|
950
|
+
"localizationSelector": {
|
|
951
|
+
"type": "object",
|
|
952
|
+
"title": "Localization Selector",
|
|
953
|
+
"properties": {
|
|
954
|
+
"title": {
|
|
955
|
+
"title": "Title",
|
|
956
|
+
"type": "string",
|
|
957
|
+
"default": "Select language and currency"
|
|
958
|
+
},
|
|
959
|
+
"languageLabel": {
|
|
960
|
+
"title": "Language Label",
|
|
961
|
+
"type": "string",
|
|
962
|
+
"default": "Language"
|
|
963
|
+
},
|
|
964
|
+
"currencyLabel": {
|
|
965
|
+
"title": "Currency Label",
|
|
966
|
+
"type": "string",
|
|
967
|
+
"default": "Currency"
|
|
968
|
+
},
|
|
969
|
+
"description": {
|
|
970
|
+
"title": "Description",
|
|
971
|
+
"type": "string",
|
|
972
|
+
"default": "Changing the language or currency may affect prices, promotions and availability."
|
|
973
|
+
},
|
|
974
|
+
"saveLabel": {
|
|
975
|
+
"title": "Save Button Label",
|
|
976
|
+
"type": "string",
|
|
977
|
+
"default": "Save"
|
|
978
|
+
},
|
|
979
|
+
"errorMessages": {
|
|
980
|
+
"title": "Error Messages",
|
|
981
|
+
"type": "object",
|
|
982
|
+
"properties": {
|
|
983
|
+
"noBindingFound": {
|
|
984
|
+
"title": "No Binding Found Error",
|
|
985
|
+
"type": "string",
|
|
986
|
+
"default": "Unable to save configuration. No matching store found."
|
|
987
|
+
},
|
|
988
|
+
"invalidUrl": {
|
|
989
|
+
"title": "Invalid URL Error",
|
|
990
|
+
"type": "string",
|
|
991
|
+
"default": "Invalid redirect URL. Please try again."
|
|
992
|
+
},
|
|
993
|
+
"noCurrencies": {
|
|
994
|
+
"title": "No Currencies Error",
|
|
995
|
+
"type": "string",
|
|
996
|
+
"default": "No currencies available for this language."
|
|
997
|
+
},
|
|
998
|
+
"defaultError": {
|
|
999
|
+
"title": "Default Error",
|
|
1000
|
+
"type": "string",
|
|
1001
|
+
"default": "An error occurred. Please try again."
|
|
1002
|
+
}
|
|
1003
|
+
}
|
|
1004
|
+
}
|
|
1005
|
+
}
|
|
1006
|
+
},
|
|
873
1007
|
"pageLinks": {
|
|
874
1008
|
"title": "Links",
|
|
875
1009
|
"type": "array",
|
|
@@ -1146,11 +1280,13 @@
|
|
|
1146
1280
|
"properties": {
|
|
1147
1281
|
"url": {
|
|
1148
1282
|
"title": "Link URL",
|
|
1149
|
-
"type": "string"
|
|
1283
|
+
"type": "string",
|
|
1284
|
+
"default": "/"
|
|
1150
1285
|
},
|
|
1151
1286
|
"title": {
|
|
1152
1287
|
"title": "Link Title",
|
|
1153
|
-
"type": "string"
|
|
1288
|
+
"type": "string",
|
|
1289
|
+
"default": "Go to Home"
|
|
1154
1290
|
}
|
|
1155
1291
|
}
|
|
1156
1292
|
}
|
|
@@ -2000,17 +2136,25 @@
|
|
|
2000
2136
|
"title": "Breadcrumb",
|
|
2001
2137
|
"description": "Configure the breadcrumb icon and depth",
|
|
2002
2138
|
"type": "object",
|
|
2003
|
-
"required": ["icon", "alt"],
|
|
2139
|
+
"required": ["icon", "alt", "fallbackLabel"],
|
|
2004
2140
|
"properties": {
|
|
2141
|
+
"fallbackLabel": {
|
|
2142
|
+
"title": "Fallback label",
|
|
2143
|
+
"description": "Label shown when there are no breadcrumb items to display, such as on the Search page.",
|
|
2144
|
+
"type": "string",
|
|
2145
|
+
"default": "All Products"
|
|
2146
|
+
},
|
|
2005
2147
|
"icon": {
|
|
2006
2148
|
"title": "Icon",
|
|
2007
2149
|
"type": "string",
|
|
2008
2150
|
"enumNames": ["House"],
|
|
2009
|
-
"enum": ["House"]
|
|
2151
|
+
"enum": ["House"],
|
|
2152
|
+
"default": "House"
|
|
2010
2153
|
},
|
|
2011
2154
|
"alt": {
|
|
2012
2155
|
"title": "Alternative Label",
|
|
2013
|
-
"type": "string"
|
|
2156
|
+
"type": "string",
|
|
2157
|
+
"default": "Go to homepage"
|
|
2014
2158
|
}
|
|
2015
2159
|
}
|
|
2016
2160
|
}
|
|
@@ -2051,6 +2195,11 @@
|
|
|
2051
2195
|
}
|
|
2052
2196
|
}
|
|
2053
2197
|
},
|
|
2198
|
+
"loadingLabel": {
|
|
2199
|
+
"title": "Loading Label",
|
|
2200
|
+
"type": "string",
|
|
2201
|
+
"default": "Loading..."
|
|
2202
|
+
},
|
|
2054
2203
|
"buyButton": {
|
|
2055
2204
|
"title": "Buy Button",
|
|
2056
2205
|
"type": "object",
|
|
@@ -2145,6 +2294,11 @@
|
|
|
2145
2294
|
"title": "Description section title",
|
|
2146
2295
|
"type": "string",
|
|
2147
2296
|
"default": "Description"
|
|
2297
|
+
},
|
|
2298
|
+
"accordionAriaLabel": {
|
|
2299
|
+
"title": "Product description accordion aria label",
|
|
2300
|
+
"type": "string",
|
|
2301
|
+
"default": "Product Description Content"
|
|
2148
2302
|
}
|
|
2149
2303
|
}
|
|
2150
2304
|
},
|
|
@@ -2156,6 +2310,24 @@
|
|
|
2156
2310
|
"title": "Should use unit multiplier?",
|
|
2157
2311
|
"type": "boolean",
|
|
2158
2312
|
"default": false
|
|
2313
|
+
},
|
|
2314
|
+
"invalidQuantityToastLabels": {
|
|
2315
|
+
"title": "Invalid quantity toast",
|
|
2316
|
+
"description": "This toast will be displayed when the quantity is out of the range of the min and max values.",
|
|
2317
|
+
"type": "object",
|
|
2318
|
+
"properties": {
|
|
2319
|
+
"title": {
|
|
2320
|
+
"title": "Title",
|
|
2321
|
+
"type": "string",
|
|
2322
|
+
"default": "Invalid quantity!"
|
|
2323
|
+
},
|
|
2324
|
+
"message": {
|
|
2325
|
+
"title": "Message",
|
|
2326
|
+
"type": "string",
|
|
2327
|
+
"description": "If the message has %{min}, %{max} and %{quantity} placeholders, they will be replaced by the min, max and quantity values.",
|
|
2328
|
+
"default": "The quantity you entered is outside the range of '%{min}' to '%{max}'. The quantity was set to '%{quantity}'."
|
|
2329
|
+
}
|
|
2330
|
+
}
|
|
2159
2331
|
}
|
|
2160
2332
|
}
|
|
2161
2333
|
},
|
|
@@ -2323,6 +2495,74 @@
|
|
|
2323
2495
|
}
|
|
2324
2496
|
}
|
|
2325
2497
|
},
|
|
2498
|
+
"sortBySelector": {
|
|
2499
|
+
"title": "Sort by selector",
|
|
2500
|
+
"type": "object",
|
|
2501
|
+
"required": ["label", "options"],
|
|
2502
|
+
"properties": {
|
|
2503
|
+
"label": {
|
|
2504
|
+
"title": "Label",
|
|
2505
|
+
"type": "string",
|
|
2506
|
+
"default": "Sort by"
|
|
2507
|
+
},
|
|
2508
|
+
"options": {
|
|
2509
|
+
"title": "Options labels",
|
|
2510
|
+
"type": "object",
|
|
2511
|
+
"required": [
|
|
2512
|
+
"price_desc",
|
|
2513
|
+
"price_asc",
|
|
2514
|
+
"orders_desc",
|
|
2515
|
+
"name_asc",
|
|
2516
|
+
"name_desc",
|
|
2517
|
+
"release_desc",
|
|
2518
|
+
"discount_desc",
|
|
2519
|
+
"score_desc"
|
|
2520
|
+
],
|
|
2521
|
+
"properties": {
|
|
2522
|
+
"price_desc": {
|
|
2523
|
+
"title": "Price - Descending",
|
|
2524
|
+
"type": "string",
|
|
2525
|
+
"default": "Price, descending"
|
|
2526
|
+
},
|
|
2527
|
+
"price_asc": {
|
|
2528
|
+
"title": "Price - Ascending",
|
|
2529
|
+
"type": "string",
|
|
2530
|
+
"default": "Price, ascending"
|
|
2531
|
+
},
|
|
2532
|
+
"orders_desc": {
|
|
2533
|
+
"title": "Orders - Descending",
|
|
2534
|
+
"type": "string",
|
|
2535
|
+
"default": "Top sales"
|
|
2536
|
+
},
|
|
2537
|
+
"name_asc": {
|
|
2538
|
+
"title": "Name - Ascending",
|
|
2539
|
+
"type": "string",
|
|
2540
|
+
"default": "Name, A-Z"
|
|
2541
|
+
},
|
|
2542
|
+
"name_desc": {
|
|
2543
|
+
"title": "Name - Descending",
|
|
2544
|
+
"type": "string",
|
|
2545
|
+
"default": "Name, Z-A"
|
|
2546
|
+
},
|
|
2547
|
+
"release_desc": {
|
|
2548
|
+
"title": "Release - Descending",
|
|
2549
|
+
"type": "string",
|
|
2550
|
+
"default": "Release date"
|
|
2551
|
+
},
|
|
2552
|
+
"discount_desc": {
|
|
2553
|
+
"title": "Discount - Descending",
|
|
2554
|
+
"type": "string",
|
|
2555
|
+
"default": "Discount"
|
|
2556
|
+
},
|
|
2557
|
+
"score_desc": {
|
|
2558
|
+
"title": "Score - Descending",
|
|
2559
|
+
"type": "string",
|
|
2560
|
+
"default": "Relevance"
|
|
2561
|
+
}
|
|
2562
|
+
}
|
|
2563
|
+
}
|
|
2564
|
+
}
|
|
2565
|
+
},
|
|
2326
2566
|
"filter": {
|
|
2327
2567
|
"title": "Filter",
|
|
2328
2568
|
"type": "object",
|
|
@@ -2421,6 +2661,16 @@
|
|
|
2421
2661
|
"title": "Sponsored Label",
|
|
2422
2662
|
"type": "string",
|
|
2423
2663
|
"default": "Sponsored"
|
|
2664
|
+
},
|
|
2665
|
+
"buttonLabel": {
|
|
2666
|
+
"title": "Button Label",
|
|
2667
|
+
"type": "string",
|
|
2668
|
+
"default": "Add"
|
|
2669
|
+
},
|
|
2670
|
+
"outOfStockLabel": {
|
|
2671
|
+
"title": "Out of Stock Label",
|
|
2672
|
+
"type": "string",
|
|
2673
|
+
"default": "Out of stock"
|
|
2424
2674
|
}
|
|
2425
2675
|
}
|
|
2426
2676
|
},
|
|
@@ -2450,6 +2700,8 @@
|
|
|
2450
2700
|
"icon": {
|
|
2451
2701
|
"title": "Icon",
|
|
2452
2702
|
"type": "string",
|
|
2703
|
+
"enumNames": ["CircleWavyWarning"],
|
|
2704
|
+
"enum": ["CircleWavyWarning"],
|
|
2453
2705
|
"default": "CircleWavyWarning"
|
|
2454
2706
|
}
|
|
2455
2707
|
}
|
|
@@ -2471,6 +2723,8 @@
|
|
|
2471
2723
|
"icon": {
|
|
2472
2724
|
"title": "Icon",
|
|
2473
2725
|
"type": "string",
|
|
2726
|
+
"enumNames": ["RocketLaunch"],
|
|
2727
|
+
"enum": ["RocketLaunch"],
|
|
2474
2728
|
"default": "RocketLaunch"
|
|
2475
2729
|
}
|
|
2476
2730
|
}
|
|
@@ -2519,15 +2773,32 @@
|
|
|
2519
2773
|
"type": "string",
|
|
2520
2774
|
"default": "Filters"
|
|
2521
2775
|
},
|
|
2522
|
-
"
|
|
2523
|
-
"title": "
|
|
2524
|
-
"type": "
|
|
2525
|
-
"
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2776
|
+
"sortLabels": {
|
|
2777
|
+
"title": "Sort labels",
|
|
2778
|
+
"type": "object",
|
|
2779
|
+
"properties": {
|
|
2780
|
+
"label": {
|
|
2781
|
+
"title": "Sort filter text",
|
|
2782
|
+
"type": "string",
|
|
2783
|
+
"default": "Sort by"
|
|
2784
|
+
},
|
|
2785
|
+
"options": {
|
|
2786
|
+
"title": "Sort options",
|
|
2787
|
+
"type": "object",
|
|
2788
|
+
"properties": {
|
|
2789
|
+
"productByName": {
|
|
2790
|
+
"title": "Product Name",
|
|
2791
|
+
"type": "string",
|
|
2792
|
+
"default": "Product Name"
|
|
2793
|
+
},
|
|
2794
|
+
"productByPrice": {
|
|
2795
|
+
"title": "Price",
|
|
2796
|
+
"type": "string",
|
|
2797
|
+
"default": "Price"
|
|
2798
|
+
}
|
|
2799
|
+
}
|
|
2800
|
+
}
|
|
2801
|
+
}
|
|
2531
2802
|
},
|
|
2532
2803
|
"toggleFieldLabel": {
|
|
2533
2804
|
"title": "Toggle filter text",
|
|
@@ -2544,11 +2815,6 @@
|
|
|
2544
2815
|
"type": "string",
|
|
2545
2816
|
"default": "Add to cart"
|
|
2546
2817
|
},
|
|
2547
|
-
"priceLabel": {
|
|
2548
|
-
"title": "Price text",
|
|
2549
|
-
"type": "string",
|
|
2550
|
-
"default": "Price"
|
|
2551
|
-
},
|
|
2552
2818
|
"priceWithTaxLabel": {
|
|
2553
2819
|
"title": "Price with taxes text",
|
|
2554
2820
|
"type": "string",
|
|
@@ -2636,6 +2902,22 @@
|
|
|
2636
2902
|
}
|
|
2637
2903
|
}
|
|
2638
2904
|
},
|
|
2905
|
+
"emptyCart": {
|
|
2906
|
+
"title": "Empty Cart",
|
|
2907
|
+
"type": "object",
|
|
2908
|
+
"properties": {
|
|
2909
|
+
"title": {
|
|
2910
|
+
"title": "Title",
|
|
2911
|
+
"type": "string",
|
|
2912
|
+
"default": "Your Cart is empty"
|
|
2913
|
+
},
|
|
2914
|
+
"buttonLabel": {
|
|
2915
|
+
"title": "Button Label",
|
|
2916
|
+
"type": "string",
|
|
2917
|
+
"default": "Start Shopping"
|
|
2918
|
+
}
|
|
2919
|
+
}
|
|
2920
|
+
},
|
|
2639
2921
|
"checkoutButton": {
|
|
2640
2922
|
"title": "Checkout button",
|
|
2641
2923
|
"type": "object",
|
|
@@ -2963,8 +3245,9 @@
|
|
|
2963
3245
|
"icon": {
|
|
2964
3246
|
"title": "Icon",
|
|
2965
3247
|
"type": "string",
|
|
2966
|
-
"enumNames": ["
|
|
2967
|
-
"enum": ["CircleWavyWarning"]
|
|
3248
|
+
"enumNames": ["CircleWavyWarning"],
|
|
3249
|
+
"enum": ["CircleWavyWarning"],
|
|
3250
|
+
"default": "CircleWavyWarning"
|
|
2968
3251
|
},
|
|
2969
3252
|
"alt": {
|
|
2970
3253
|
"title": "Alternative Label",
|
|
@@ -3018,6 +3301,32 @@
|
|
|
3018
3301
|
}
|
|
3019
3302
|
}
|
|
3020
3303
|
},
|
|
3304
|
+
{
|
|
3305
|
+
"name": "ScrollToTopButton",
|
|
3306
|
+
"requiredScopes": ["plp", "search"],
|
|
3307
|
+
"schema": {
|
|
3308
|
+
"title": "Scroll to Top Button",
|
|
3309
|
+
"description": "A button to scroll the page back to the top",
|
|
3310
|
+
"type": "object",
|
|
3311
|
+
"required": ["text"],
|
|
3312
|
+
"properties": {
|
|
3313
|
+
"text": {
|
|
3314
|
+
"title": "Button Text",
|
|
3315
|
+
"description": "Text displayed on the button",
|
|
3316
|
+
"type": "string",
|
|
3317
|
+
"default": "Scroll to top"
|
|
3318
|
+
},
|
|
3319
|
+
"iconPosition": {
|
|
3320
|
+
"title": "Icon Position",
|
|
3321
|
+
"description": "Position of the icon relative to the text",
|
|
3322
|
+
"type": "string",
|
|
3323
|
+
"enumNames": ["Left", "Right"],
|
|
3324
|
+
"enum": ["left", "right"],
|
|
3325
|
+
"default": "left"
|
|
3326
|
+
}
|
|
3327
|
+
}
|
|
3328
|
+
}
|
|
3329
|
+
},
|
|
3021
3330
|
{
|
|
3022
3331
|
"name": "ShoppingAssistant",
|
|
3023
3332
|
"requiredScopes": [],
|
|
@@ -3,7 +3,6 @@ module.exports = {
|
|
|
3
3
|
title: 'FastStore Starter',
|
|
4
4
|
description: 'Fast Demo Store',
|
|
5
5
|
titleTemplate: '%s | FastStore',
|
|
6
|
-
author: 'Store Framework',
|
|
7
6
|
name: 'FastStore',
|
|
8
7
|
publisherId: '',
|
|
9
8
|
plp: {
|
|
@@ -70,6 +69,51 @@ module.exports = {
|
|
|
70
69
|
refreshAfter: null, // timestamp in seconds e.g. '1743042990'
|
|
71
70
|
},
|
|
72
71
|
|
|
72
|
+
// Localization feature flag
|
|
73
|
+
localization: {
|
|
74
|
+
enabled: false,
|
|
75
|
+
|
|
76
|
+
// generated by @faststore/cli when localization is enabled
|
|
77
|
+
defaultLocale: 'pt-BR',
|
|
78
|
+
regions: {
|
|
79
|
+
BR: {
|
|
80
|
+
code: 'BR',
|
|
81
|
+
name: 'Brazil',
|
|
82
|
+
dateFormat: 'DD/MM/YYYY',
|
|
83
|
+
timeFormat: '12h',
|
|
84
|
+
timeFormatMask: 'hh:mm a',
|
|
85
|
+
unitSystem: 'metric',
|
|
86
|
+
defaultTimezone: 'GMT-3',
|
|
87
|
+
},
|
|
88
|
+
},
|
|
89
|
+
locales: {
|
|
90
|
+
'pt-BR': {
|
|
91
|
+
code: 'pt-BR',
|
|
92
|
+
name: 'Português',
|
|
93
|
+
languageCode: 'pt',
|
|
94
|
+
languageName: 'Portuguese',
|
|
95
|
+
script: 'Latn',
|
|
96
|
+
textDirection: 'ltr',
|
|
97
|
+
regionCode: 'BR',
|
|
98
|
+
bindings: [
|
|
99
|
+
{
|
|
100
|
+
currencyCode: 'BRL',
|
|
101
|
+
url: 'https://brandless.fast.store/pt-BR',
|
|
102
|
+
salesChannel: '1',
|
|
103
|
+
isDefault: true,
|
|
104
|
+
},
|
|
105
|
+
],
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
currencies: {
|
|
109
|
+
BRL: {
|
|
110
|
+
code: 'BRL',
|
|
111
|
+
name: 'Brazilian Real',
|
|
112
|
+
symbol: 'R$',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
|
|
73
117
|
// Default cart
|
|
74
118
|
cart: {
|
|
75
119
|
id: '',
|
|
@@ -88,12 +132,12 @@ module.exports = {
|
|
|
88
132
|
|
|
89
133
|
// Preview redirects
|
|
90
134
|
previewRedirects: {
|
|
135
|
+
404: '/404',
|
|
136
|
+
500: '/500',
|
|
91
137
|
home: '/',
|
|
92
138
|
plp: '/office',
|
|
93
139
|
search: '/s?q=headphone',
|
|
94
140
|
pdp: '/apple-magic-mouse/p',
|
|
95
|
-
500: '/500',
|
|
96
|
-
404: '/404',
|
|
97
141
|
},
|
|
98
142
|
|
|
99
143
|
// Lighthouse CI
|
|
@@ -122,6 +166,8 @@ module.exports = {
|
|
|
122
166
|
analytics: {
|
|
123
167
|
// https://developers.google.com/tag-platform/tag-manager/web#standard_web_page_installation,
|
|
124
168
|
gtmContainerId: 'GTM-PGHZ95N',
|
|
169
|
+
serviceName: 'faststore-proxy',
|
|
170
|
+
otelEnabled: true,
|
|
125
171
|
},
|
|
126
172
|
|
|
127
173
|
cms: {
|
package/next-env.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="next" />
|
|
2
2
|
/// <reference types="next/image-types/global" />
|
|
3
|
+
import './.next/types/routes.d.ts'
|
|
3
4
|
|
|
4
5
|
// NOTE: This file should not be edited
|
|
5
|
-
// see https://nextjs.org/docs/
|
|
6
|
+
// see https://nextjs.org/docs/pages/api-reference/config/typescript for more information.
|
package/next.config.js
CHANGED
|
@@ -1,6 +1,21 @@
|
|
|
1
|
-
// @ts-check
|
|
2
1
|
const path = require('path')
|
|
3
2
|
const storeConfig = require('./discovery.config')
|
|
3
|
+
const { buildI18nDomains } = require('./scripts/i18n')
|
|
4
|
+
|
|
5
|
+
// Load locales settings (generated by CLI during build)
|
|
6
|
+
const localesSettings = storeConfig.localization
|
|
7
|
+
|
|
8
|
+
const getRootFolder = () => {
|
|
9
|
+
if (__dirname.endsWith('.faststore')) return path.join(__dirname, '..')
|
|
10
|
+
|
|
11
|
+
return path.join(__dirname, '../../')
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
console.log(`
|
|
15
|
+
Root folder at: ${getRootFolder()}
|
|
16
|
+
AccountID: ${storeConfig.api?.storeId ?? 'Unknown'}
|
|
17
|
+
Analytics Enabled: ${storeConfig.analytics?.otelEnabled ?? false}
|
|
18
|
+
`)
|
|
4
19
|
|
|
5
20
|
/**
|
|
6
21
|
* @type {import('next').NextConfig}
|
|
@@ -14,31 +29,44 @@ const nextConfig = {
|
|
|
14
29
|
transpilePackages: storeConfig.experimental.transpilePackages,
|
|
15
30
|
}),
|
|
16
31
|
images: {
|
|
17
|
-
|
|
32
|
+
remotePatterns: [
|
|
33
|
+
{
|
|
34
|
+
protocol: 'https',
|
|
35
|
+
hostname: `${storeConfig.api.storeId}.vtexassets.com`,
|
|
36
|
+
pathname: '/**',
|
|
37
|
+
},
|
|
38
|
+
],
|
|
18
39
|
deviceSizes: [360, 412, 540, 768, 1280, 1440],
|
|
19
40
|
imageSizes: [34, 68, 154, 320],
|
|
20
41
|
loader: 'custom',
|
|
21
42
|
loaderFile: './src/components/ui/Image/loader.ts',
|
|
22
43
|
},
|
|
23
|
-
i18n:
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
44
|
+
i18n: localesSettings.enabled
|
|
45
|
+
? {
|
|
46
|
+
locales: Object.keys(localesSettings.locales || {}),
|
|
47
|
+
defaultLocale: localesSettings.defaultLocale,
|
|
48
|
+
localeDetection: false,
|
|
49
|
+
domains: buildI18nDomains(localesSettings),
|
|
50
|
+
}
|
|
51
|
+
: {
|
|
52
|
+
locales: [storeConfig.session.locale],
|
|
53
|
+
defaultLocale: storeConfig.session.locale,
|
|
54
|
+
},
|
|
27
55
|
sassOptions: {
|
|
28
|
-
|
|
56
|
+
silenceDeprecations: ['if-function', 'legacy-js-api'],
|
|
29
57
|
},
|
|
30
58
|
// TODO: We won't need to enable this experimental feature when migrating to Next.js 13
|
|
31
59
|
experimental: {
|
|
32
60
|
instrumentationHook: true,
|
|
33
61
|
scrollRestoration: !storeConfig.experimental.scrollRestoration,
|
|
34
|
-
/*
|
|
35
|
-
* The FastStore Discovery CLI will update this value to match the path where the
|
|
36
|
-
* command is being run, because that is where the node_modules directory is.
|
|
37
|
-
* For discovery-only paths, that is the user directory, and for monorepo, that is the base
|
|
38
|
-
* of the monorepo
|
|
39
|
-
* */
|
|
40
|
-
outputFileTracingRoot: path.join(__dirname, '../'),
|
|
41
62
|
},
|
|
63
|
+
/*
|
|
64
|
+
* The FastStore Discovery CLI will update this value to match the path where the
|
|
65
|
+
* command is being run, because that is where the node_modules directory is.
|
|
66
|
+
* For discovery-only paths, that is the user directory, and for monorepo, that is the base
|
|
67
|
+
* of the monorepo
|
|
68
|
+
* */
|
|
69
|
+
outputFileTracingRoot: getRootFolder(),
|
|
42
70
|
webpack: (config, { isServer, dev }) => {
|
|
43
71
|
// https://github.com/vercel/next.js/discussions/11267#discussioncomment-2479112
|
|
44
72
|
// camel-case style names from css modules
|
|
@@ -58,22 +86,16 @@ const nextConfig = {
|
|
|
58
86
|
config.optimization.splitChunks.maxInitialRequests = 1
|
|
59
87
|
}
|
|
60
88
|
|
|
61
|
-
if (storeConfig.experimental.preact && !isServer && !dev) {
|
|
62
|
-
Object.assign(config.resolve.alias, {
|
|
63
|
-
react: 'preact/compat',
|
|
64
|
-
|
|
65
|
-
'react-dom/test-utils': 'preact/test-utils',
|
|
66
|
-
|
|
67
|
-
'react-dom': 'preact/compat',
|
|
68
|
-
})
|
|
69
|
-
}
|
|
70
|
-
|
|
71
89
|
return config
|
|
72
90
|
},
|
|
73
91
|
redirects: storeConfig.redirects,
|
|
74
92
|
rewrites: storeConfig.rewrites,
|
|
75
|
-
|
|
76
|
-
|
|
93
|
+
turbopack: {
|
|
94
|
+
root: getRootFolder(),
|
|
95
|
+
// https://nextjs.org/docs/app/api-reference/turbopack#css-module-ordering
|
|
96
|
+
resolveAlias: {
|
|
97
|
+
'~*': '*',
|
|
98
|
+
},
|
|
77
99
|
},
|
|
78
100
|
}
|
|
79
101
|
|