@faststore/core 3.80.0 → 3.81.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.
Files changed (37) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +21 -21
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/cache/config.json +3 -3
  5. package/.next/cache/webpack/client-production/0.pack +0 -0
  6. package/.next/cache/webpack/client-production/index.pack +0 -0
  7. package/.next/cache/webpack/server-production/0.pack +0 -0
  8. package/.next/cache/webpack/server-production/index.pack +0 -0
  9. package/.next/prerender-manifest.js +1 -1
  10. package/.next/prerender-manifest.json +1 -1
  11. package/.next/react-loadable-manifest.json +1 -1
  12. package/.next/routes-manifest.json +1 -1
  13. package/.next/server/chunks/948.js +1 -1
  14. package/.next/server/chunks/9563.js +1 -1
  15. package/.next/server/functions-config-manifest.json +1 -1
  16. package/.next/server/middleware-build-manifest.js +1 -1
  17. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  18. package/.next/server/pages/api/graphql.js +1 -1
  19. package/.next/server/pages/api/preview.js +1 -1
  20. package/.next/server/pages/en-US/404.html +1 -1
  21. package/.next/server/pages/en-US/500.html +1 -1
  22. package/.next/server/pages/en-US/checkout.html +1 -1
  23. package/.next/server/pages/en-US/login.html +1 -1
  24. package/.next/server/pages/en-US/s.html +1 -1
  25. package/.next/server/pages/en-US.html +1 -1
  26. package/.next/server/pages-manifest.json +1 -1
  27. package/.next/static/chunks/7026.9ab6a9b610831b85.js +1 -0
  28. package/.next/static/chunks/{webpack-d29ca7e9684f9a33.js → webpack-39f2e04144d694ad.js} +1 -1
  29. package/.next/trace +136 -136
  30. package/.turbo/turbo-build.log +9 -9
  31. package/.turbo/turbo-test.log +5 -5
  32. package/CHANGELOG.md +6 -0
  33. package/package.json +7 -7
  34. package/src/server/cms/index.ts +2 -0
  35. package/.next/static/chunks/7026.e990acc86d95259d.js +0 -1
  36. /package/.next/static/{Nbnk-8dyi-d1dkZSXhjzs → v2vl5Y9dOFfl93DdQC3uY}/_buildManifest.js +0 -0
  37. /package/.next/static/{Nbnk-8dyi-d1dkZSXhjzs → v2vl5Y9dOFfl93DdQC3uY}/_ssgManifest.js +0 -0
@@ -1,23 +1,23 @@
1
1
 
2
- > @faststore/core@3.79.1 prebuild /home/runner/work/faststore/faststore/packages/core
2
+ > @faststore/core@3.80.0 prebuild /home/runner/work/faststore/faststore/packages/core
3
3
  > na run partytown && na run generate
4
4
 
5
5
 
6
- > @faststore/core@3.79.1 partytown /home/runner/work/faststore/faststore/packages/core
6
+ > @faststore/core@3.80.0 partytown /home/runner/work/faststore/faststore/packages/core
7
7
  > partytown copylib ./public/~partytown
8
8
 
9
9
  Partytown lib copied to: /home/runner/work/faststore/faststore/packages/core/public/~partytown
10
10
 
11
- > @faststore/core@3.79.1 generate /home/runner/work/faststore/faststore/packages/core
11
+ > @faststore/core@3.80.0 generate /home/runner/work/faststore/faststore/packages/core
12
12
  > na run generate:schema && na run generate:codegen && na run format:generated
13
13
 
14
14
 
15
- > @faststore/core@3.79.1 generate:schema /home/runner/work/faststore/faststore/packages/core
15
+ > @faststore/core@3.80.0 generate:schema /home/runner/work/faststore/faststore/packages/core
16
16
  > tsx src/server/generator/generateGraphQLSchemaFile.ts
17
17
 
18
18
  Schema GraphQL file generated successfully
19
19
 
20
- > @faststore/core@3.79.1 generate:codegen /home/runner/work/faststore/faststore/packages/core
20
+ > @faststore/core@3.80.0 generate:codegen /home/runner/work/faststore/faststore/packages/core
21
21
  > graphql-codegen
22
22
 
23
23
  [STARTED] Parse Configuration
@@ -37,11 +37,11 @@ Running lifecycle hook "afterStart" scripts...
37
37
  [CLI] Loading Documents
38
38
  [CLI] Generating output
39
39
 
40
- > @faststore/core@3.79.1 format:generated /home/runner/work/faststore/faststore/packages/core
40
+ > @faststore/core@3.80.0 format:generated /home/runner/work/faststore/faststore/packages/core
41
41
  > prettier --write "@generated/**/*.{ts,js,tsx,jsx,json}" --loglevel error
42
42
 
43
43
 
44
- > @faststore/core@3.79.1 build /home/runner/work/faststore/faststore/packages/core
44
+ > @faststore/core@3.80.0 build /home/runner/work/faststore/faststore/packages/core
45
45
  > next build
46
46
 
47
47
  ⚠ No build cache found. Please configure build caching for faster rebuilds. Read more: https://nextjs.org/docs/messages/no-cache
@@ -65,8 +65,8 @@ Browserslist: browsers data (caniuse-lite) is 8 months old. Please run:
65
65
  Collecting page data ...
66
66
  Generating static pages (0/6) ...
67
67
 
68
68
  Generating static pages (1/6)
69
- Warning: Dynamic Content not found for the page: home. Refer to the Dynamic Content documentation at https://developers.vtex.com/docs/guides/faststore/dynamic-content-overview for mapping the page and the corresponding data-fetching function.
70
69
 
71
70
  Generating static pages (2/6)
71
+ Warning: Dynamic Content not found for the page: home. Refer to the Dynamic Content documentation at https://developers.vtex.com/docs/guides/faststore/dynamic-content-overview for mapping the page and the corresponding data-fetching function.
72
72
 
73
73
  Generating static pages (4/6)
74
74
 
75
75
  ✓ Generating static pages (6/6)
76
76
  Finalizing page optimization ...
@@ -110,7 +110,7 @@ Route (pages) Size First Load JS
110
110
  ├ chunks/framework-807b0f81cbc129f0.js 45.4 kB
111
111
  ├ chunks/main-f658704b53a96ab1.js 33.1 kB
112
112
  ├ chunks/pages/_app-57478e0d1d2ddf62.js 23.8 kB
113
- ├ chunks/webpack-d29ca7e9684f9a33.js 3.85 kB
113
+ ├ chunks/webpack-39f2e04144d694ad.js 3.85 kB
114
114
  └ css/4b8252ed2f23ac67.css 3.51 kB
115
115
 
116
116
  λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps)
@@ -1,14 +1,14 @@
1
1
 
2
- > @faststore/core@3.79.1 test /home/runner/work/faststore/faststore/packages/core
2
+ > @faststore/core@3.80.0 test /home/runner/work/faststore/faststore/packages/core
3
3
  > jest
4
4
 
5
- PASS test/server/cms/global.test.ts (26.231 s)
6
- PASS test/utils/multipleTemplates.test.ts (26.775 s)
5
+ PASS test/utils/multipleTemplates.test.ts (26.996 s)
6
+ PASS test/server/cms/global.test.ts (27.008 s)
7
7
  PASS test/server/cms/index.test.ts
8
- PASS test/server/index.test.ts (30.564 s)
8
+ PASS test/server/index.test.ts (30.315 s)
9
9
 
10
10
  Test Suites: 4 passed, 4 total
11
11
  Tests: 22 passed, 22 total
12
12
  Snapshots: 0 total
13
- Time: 31.888 s
13
+ Time: 31.607 s
14
14
  Ran all test suites.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 3.81.0 (2025-09-05)
7
+
8
+ ### Features
9
+
10
+ - Allow users to select which CMS builder to use ([#2997](https://github.com/vtex/faststore/issues/2997)) ([3862832](https://github.com/vtex/faststore/commit/3862832aaf366453b8a26844e2c452647a534b4d))
11
+
6
12
  # 3.80.0 (2025-09-04)
7
13
 
8
14
  ### Bug Fixes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@faststore/core",
3
- "version": "3.80.0",
3
+ "version": "3.81.0",
4
4
  "license": "MIT",
5
5
  "repository": "vtex/faststore",
6
6
  "browserslist": "supports es6-module and not dead",
@@ -44,11 +44,11 @@
44
44
  "@envelop/graphql-jit": "^8.0.3",
45
45
  "@envelop/parser-cache": "^6.0.2",
46
46
  "@envelop/validation-cache": "^6.0.2",
47
- "@faststore/api": "^3.80.0",
48
- "@faststore/graphql-utils": "^3.80.0",
49
- "@faststore/lighthouse": "^3.80.0",
50
- "@faststore/sdk": "^3.80.0",
51
- "@faststore/ui": "^3.80.0",
47
+ "@faststore/api": "^3.81.0",
48
+ "@faststore/graphql-utils": "^3.81.0",
49
+ "@faststore/lighthouse": "^3.81.0",
50
+ "@faststore/sdk": "^3.81.0",
51
+ "@faststore/ui": "^3.81.0",
52
52
  "@graphql-codegen/cli": "5.0.2",
53
53
  "@graphql-codegen/client-preset": "4.2.6",
54
54
  "@graphql-codegen/typescript": "4.0.7",
@@ -108,5 +108,5 @@
108
108
  "ts-jest": "29.1.1",
109
109
  "typescript": "5.3.2"
110
110
  },
111
- "gitHead": "1b4a2efd041bfbd78d6848e5da407d1fe0d3c66b"
111
+ "gitHead": "37ac845dce3df8c22a348a2e6895f5b65dc9de45"
112
112
  }
@@ -66,6 +66,8 @@ export const isLocator = (x: any): x is Locator =>
66
66
  export const clientCMS = new ClientCMS({
67
67
  workspace: config.api.workspace,
68
68
  tenant: config.api.storeId,
69
+ builder:
70
+ (config.contentSource as Record<string, string>)?.project ?? 'faststore',
69
71
  host: sanitizeHost(config.storeUrl),
70
72
  })
71
73
 
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7026],{5095:function(e,t,r){"use strict";var n=r(7900),i=r(1325),a=r(427),o=r.n(a),s=r(1549);function Incentives(e){var{incentives:t,label:r}=e;return(0,s.jsx)(i.Z,{className:"".concat(o().section," section-incentives layout__section"),children:(0,s.jsx)(n.Z,{incentives:t,colored:!0,label:null!=r?r:""})})}Incentives.$componentKey="Incentives",t.Z=Incentives},3802:function(e,t,r){"use strict";r.r(t),r.d(t,{default:function(){return LandingPage},getLandingPageBySlug:function(){return Q}});var n,i,a,o,s,l,c,d,u,p=r(4988),f=r(3067),g=r(5935),v=r(1772),y=r(9173),m=r(5949),P=r(3143),b=r(4173),h=r(5758),w=r(3882),O=r(5095),S=r(7272),j=r(552),E=r(5859),I=r(6924),x=r(3091),_=r(3412),Z=r.n(_);let MissingContentError=class MissingContentError extends Error{constructor(e){super("Missing content on the ".concat(_.contentSource.type," for content type ").concat(e.contentType,". Add content before proceeding. Context: ").concat(JSON.stringify(e,null,2)))}};var C=r(6272),T=r(4235),D=r(4692),k=r.n(D),L=r(2692);let MultipleContentError=class MultipleContentError extends Error{constructor(e){super("Multiple content defined on the ".concat(_.contentSource.type," for content type ").concat(e.contentType,". Remove duplicated content before proceeding. Context: ").concat(JSON.stringify(e,null,2)))}};var M=r(4018);function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){(0,f.Z)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var isLocator=e=>"string"==typeof e.contentType&&("string"==typeof e.releaseId||"string"==typeof e.documentId||"string"==typeof e.versionId),N=new L.Z({workspace:Z().api.workspace,tenant:Z().api.storeId,host:(0,M.Y1)(Z().storeUrl)}),$=(n=(0,p.Z)(function*(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:N;if(isLocator(e))return yield t.getCMSPage(e).then(e=>({data:[e]}));var r=[],n=yield t.getCMSPagesByContentType(e.contentType,_objectSpread(_objectSpread({},e.filters),{},{page:1,perPage:10}));r.push(...n.data);var i=Array.from({length:Math.ceil(n.totalItems/10)-1},(e,t)=>t+2);return n.totalItems>r.length&&(yield Promise.all(i.map(r=>t.getCMSPagesByContentType(e.contentType,_objectSpread(_objectSpread({},e.filters),{},{page:r,perPage:10}))))).forEach(e=>{r.push(...e.data)}),{data:r}}),function(e){return n.apply(this,arguments)}),B=(i=(0,p.Z)(function*(e){var t=(yield $(e)).data;if(t.length>1)throw new MultipleContentError(e);return t[0]}),function(e){return i.apply(this,arguments)});function normalizePLPSlug(e){var t=e.replace(/^\/+|\/+$/g,"");return"/"+(t=t.replace(/\/+/g,"/").replace(/\s+/g,"")).toLowerCase()}function findPLPTemplateBySlug(e,t,r){return e.find(e=>{if(!(null!==(n=e.settings)&&void 0!==n&&null!==(i=n.template)&&void 0!==i&&i.value))return!1;var n,i,a,o,s=normalizePLPSlug(null===(a=e.settings)||void 0===a?void 0:null===(o=a.template)||void 0===o?void 0:o.value);return s===t||function(e){var{rewrites:t,templateValue:r,slug:n}=e;return!!t&&!!(Array.isArray(t)?t:[...(null==t?void 0:t.beforeFiles)||[],...(null==t?void 0:t.afterFiles)||[],...(null==t?void 0:t.fallback)||[]]).find(e=>e.source===r&&e.destination===n)}({rewrites:r,templateValue:s,slug:t})})}function findBestPLPTemplate(e,t,r){for(var n=normalizePLPSlug(t),i=findPLPTemplateBySlug(e,n,r);!i&&-1!==n.lastIndexOf("/");)i=findPLPTemplateBySlug(e,n=n.substring(0,n.lastIndexOf("/")),r);return i||e.find(e=>{var t,r;return!(null!==(t=e.settings)&&void 0!==t&&null!==(r=t.template)&&void 0!==r&&r.value)})||e[0]}var getSlugsWithoutSkuIdFromPDP=e=>{for(var t=[],r=e,n=r.match(/-\d+\/p$/);n;){var i=r.replace(/-\d+\/p$/,"/p");t.push(i),n=(r=i).match(/-\d+\/p$/)}return t};function findBestPDPTemplate(e,t){for(var r of function(e){var{itemListElement:t=[]}=e,r=[...t].reverse().map(e=>{var{item:t}=e;return t}),n=r[0],i=getSlugsWithoutSkuIdFromPDP(n);return[n,...i,...r.slice(1)].filter((e,t,r)=>e&&r.indexOf(e)===t)}({itemListElement:null!==(i=t.breadcrumbList.itemListElement)&&void 0!==i?i:[]}))for(var n of e)if(null!==(a=n.settings)&&void 0!==a&&null!==(o=a.template)&&void 0!==o&&o.value){var i,a,o;if(function(e){var t=e.trim().replace(/^\/+|\/+$/g,"");return t.startsWith("/")||(t="/"+t),t.endsWith("/p")||(t+="/"),(t=t.replace(/\/+/g,"/").replace(/\s+/g,"")).toLowerCase()}(n.settings.template.value)===r)return n}return e.find(e=>{var t,r;return!(null!==(t=e.settings)&&void 0!==t&&null!==(r=t.template)&&void 0!==r&&r.value)})||e[0]}function plp_ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function plp_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?plp_ownKeys(Object(r),!0).forEach(function(t){(0,f.Z)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):plp_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var R=(a=(0,p.Z)(function*(e,t,r){if(Z().cms.data){var n=JSON.parse(Z().cms.data).plp;return yield A("/".concat(e,"/"),n,plp_objectSpread(plp_objectSpread({},(null==t?void 0:t.contentType)==="plp"?t:null),{},{contentType:"plp"}),r)}return yield K("/".concat(e,"/"),plp_objectSpread(plp_objectSpread({},(null==t?void 0:t.contentType)==="plp"?t:null),{},{contentType:"plp"}),r)}),function(e,t,r){return a.apply(this,arguments)}),A=(o=(0,p.Z)(function*(e,t,r,n){var i=null!=t?t:[];if(!i[0])throw new MissingContentError(r);var a=findBestPLPTemplate(i,e,n);return B({contentType:"plp",documentId:a.documentId,versionId:a.versionId})}),function(e,t,r,n){return o.apply(this,arguments)}),K=(s=(0,p.Z)(function*(e,t,r){var n=(yield $(t)).data;if(!n[0])throw new MissingContentError(t);return findBestPLPTemplate(n,e,r)}),function(e,t,r){return s.apply(this,arguments)});function pdp_ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function pdp_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?pdp_ownKeys(Object(r),!0).forEach(function(t){(0,f.Z)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):pdp_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var G=(l=(0,p.Z)(function*(e,t){if(Z().cms.data){var r=JSON.parse(Z().cms.data).pdp;return yield F(e,r,pdp_objectSpread(pdp_objectSpread({},(null==t?void 0:t.contentType)==="pdp"?t:null),{},{contentType:"pdp"}))}return yield V(e,pdp_objectSpread(pdp_objectSpread({},(null==t?void 0:t.contentType)==="pdp"?t:null),{},{contentType:"pdp"}))}),function(e,t){return l.apply(this,arguments)}),F=(c=(0,p.Z)(function*(e,t,r){var n=null!=t?t:[];if(!n[0])throw new MissingContentError(r);var i=findBestPDPTemplate(n,e);return B({contentType:"pdp",documentId:i.documentId,versionId:i.versionId})}),function(e,t,r){return c.apply(this,arguments)}),V=(d=(0,p.Z)(function*(e,t){var r=(yield $(t)).data;if(!r[0])throw new MissingContentError(t);return findBestPDPTemplate(r,e)}),function(e,t){return d.apply(this,arguments)}),W=r(306),U=["slug"];function service_ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function service_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?service_ownKeys(Object(r),!0).forEach(function(t){(0,f.Z)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):service_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var q=new class{constructor(){(0,f.Z)(this,"clientCP",void 0),this.clientCP=new(k())({tenant:Z().api.storeId})}getSingleContent(e){var t=this;return(0,p.Z)(function*(){var r=t.createContentOptions(e);return(0,W.w)()?t.getFromCP(r):B(r.cmsOptions)})()}getMultipleContent(e){var t=this;return(0,p.Z)(function*(){var r=t.createContentOptions(e);if((0,W.w)()){var n=t.convertOptionsToParams(r),{entries:i}=yield t.clientCP.listEntries(n);return t.fillEntriesWithData(i,n,r.isPreview)}return $(r.cmsOptions)})()}getPlpContent(e,t){var r=this;return(0,p.Z)(function*(){var n=service_objectSpread(service_objectSpread({},e),{},{contentType:"plp"}),i=r.createContentOptions(n);if((0,W.w)()){var a=(yield r.getMultipleContent(n)).data;if(!(null!=a&&a.length))throw new MissingContentError(i.cmsOptions);return findBestPLPTemplate(a,i.slug,t)}return R(i.slug,i.cmsOptions,t)})()}getPdpContent(e,t){var r=this;return(0,p.Z)(function*(){var n=service_objectSpread(service_objectSpread({},t),{},{contentType:"pdp"}),i=r.createContentOptions(n);if((0,W.w)()){var a=(yield r.getMultipleContent(n)).data;if(!a.length)throw new MissingContentError(i.cmsOptions);return findBestPDPTemplate(a,e)}return G(e,i.cmsOptions)})()}getFromCP(e){var t=this;return(0,p.Z)(function*(){var r=t.convertOptionsToParams(e);try{return yield t.getEntry(r,e.isPreview)}catch(e){if(!(e instanceof MissingContentError||e instanceof Error&&/\b404\b/.test(e.message)))throw e;console.warn("Content not found",e)}})()}fillEntriesWithData(e,t,r){var n=this;return(0,p.Z)(function*(){var i;return{data:yield Promise.all(e.map((i=(0,p.Z)(function*(e){var i=yield n.getEntryData(service_objectSpread(service_objectSpread({},t),{},{entryId:e.id}),r);return n.mergeEntryWithData(e,i)}),function(e){return i.apply(this,arguments)})))}})()}getEntry(e,t){var r=this;return(0,p.Z)(function*(){return e.entryId||e.slug?yield r.getEntryData(e,t):yield r.fetchFirstEntryFromList(e,t)})()}getEntryData(e,t){var r=this;return(0,p.Z)(function*(){if(!e.entryId&&!e.slug)throw Error("".concat(t?"Preview":"getEntry"," requires entryId or slug"));return t?e.entryId?r.clientCP.previewEntryById(e):r.clientCP.previewEntryBySlug(e):e.entryId?r.clientCP.getEntry(e):r.clientCP.getEntryBySlug(e)})()}fetchFirstEntryFromList(e,t){var r=this;return(0,p.Z)(function*(){var{entries:n}=yield r.clientCP.listEntries(e);if(!n||0===n.length)return console.warn("No entries found for params",e),{};if(n.length>1)throw new MultipleContentError(e);return r.getEntryData(service_objectSpread(service_objectSpread({},e),{},{entryId:n[0].id}),t)})()}createContentOptions(e){var{contentType:t,previewData:r,slug:n}=e,i=(null==r?void 0:r.contentType)===t,a=(0,W.b)(r);return service_objectSpread(service_objectSpread({cmsOptions:this.buildCmsOptions(e,i,a)},void 0!==n&&{slug:n}),{},{isPreview:i||a})}convertOptionsToParams(e){var{cmsOptions:t}=e,r={accountName:Z().api.storeId,storeId:"faststore",contentType:t.contentType,slug:e.slug};if("documentId"in t&&t.documentId&&(r.entryId=t.documentId),"versionId"in t&&t.versionId&&(r.branchId=t.versionId),"releaseId"in t&&t.releaseId&&(r.branchId=t.releaseId),"filters"in t&&t.filters){var n=t.filters.filters;if(n&&n["settings.seo.slug"]){var i=n["settings.seo.slug"];r.slug=i.replace(/^\//,"")}Object.assign(r,t.filters)}return r}buildCmsOptions(e,t,r){var{contentType:n,previewData:i,documentId:a,versionId:o,releaseId:s,filters:l}=e,c=i||{},{slug:d}=c,u=(0,T.Z)(c,U);return service_objectSpread(service_objectSpread(service_objectSpread(service_objectSpread(service_objectSpread(service_objectSpread({contentType:n},t?u:{}),r&&{versionId:null==i?void 0:i.versionId,releaseId:null==i?void 0:i.releaseId}),void 0!==a&&{documentId:a}),void 0!==o&&{versionId:o}),void 0!==s&&{releaseId:s}),l&&{filters:l})}mergeEntryWithData(e,t){return service_objectSpread(service_objectSpread(service_objectSpread({},e),t),{},{id:e.id,name:e.name||""})}},J=r(1549);function LandingPage_ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function LandingPage_objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?LandingPage_ownKeys(Object(r),!0).forEach(function(t){(0,f.Z)(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):LandingPage_ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var z=LandingPage_objectSpread(LandingPage_objectSpread(LandingPage_objectSpread({},v.Z),{},{[(0,m.x)(w.V,"Hero")]:w.V,[(0,m.x)(b.OverriddenDefaultBannerText,"BannerText")]:b.OverriddenDefaultBannerText,[(0,m.x)(P.default,"BannerNewsletter")]:P.default,[(0,m.x)(O.Z,"Incentives")]:O.Z,[(0,m.x)(h.Z,"CrossSellingShelf")]:h.Z,[(0,m.x)(S.OverriddenDefaultNewsletter,"Newsletter")]:S.OverriddenDefaultNewsletter,[(0,m.x)(j.OverriddenDefaultProductShelf,"ProductShelf")]:j.OverriddenDefaultProductShelf,[(0,m.x)(E.Z,"ProductTiles")]:E.Z},x.Z),I.Z);function LandingPage(e){var t,r,n,i,a,o,s,l,c,d,u,p,f,v,{page:{sections:m,settings:P},slug:b,serverData:h,globalSections:w,globalSettings:O}=e;return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(g.PB,{title:null!==(t=null==P?void 0:null===(r=P.seo)||void 0===r?void 0:r.title)&&void 0!==t?t:Z().seo.title,description:null!==(n=null==P?void 0:null===(i=P.seo)||void 0===i?void 0:i.description)&&void 0!==n?n:null===(a=Z().seo)||void 0===a?void 0:a.description,titleTemplate:null!==(o=null===(s=Z().seo)||void 0===s?void 0:s.titleTemplate)&&void 0!==o?o:null===(l=Z().seo)||void 0===l?void 0:l.title,canonical:null!==(c=null==P?void 0:null===(d=P.seo)||void 0===d?void 0:d.canonical)&&void 0!==c?c:"".concat(Z().storeUrl,"/").concat(b),openGraph:{type:"website",url:Z().storeUrl,title:null!==(u=null==P?void 0:null===(p=P.seo)||void 0===p?void 0:p.title)&&void 0!==u?u:Z().seo.title,description:null!==(f=null==P?void 0:null===(v=P.seo)||void 0===v?void 0:v.description)&&void 0!==f?f:Z().seo.description}}),(0,J.jsx)(g.iu,{url:Z().storeUrl,potentialActions:[{target:"".concat(Z().storeUrl,"/s/?q"),queryInput:"search_term_string"}]}),(0,J.jsx)(C.ZP,{context:{data:h,globalSettings:O},children:(0,J.jsx)(y.ZP,{sections:m,globalSections:w,components:z})})]})}var Q=(u=(0,p.Z)(function*(e,t){try{if(Z().cms.data){var r,n,i=JSON.parse(Z().cms.data).landingPage.find(e=>{var t,r;null===(t=e.settings)||void 0===t||null===(r=t.seo)||void 0===r||r.slug});if(i)return yield q.getSingleContent({contentType:"landingPage",previewData:t,documentId:i.documentId,versionId:i.versionId,releaseId:i.releaseId,slug:null===(r=i.settings)||void 0===r?void 0:null===(n=r.seo)||void 0===n?void 0:n.slug})}return yield q.getSingleContent({contentType:"landingPage",previewData:t,slug:e,filters:(null==t?void 0:t.contentType)!=="landingPage"?{filters:{"settings.seo.slug":"/".concat(e)}}:void 0})}catch(e){if(e instanceof MissingContentError)return null;throw e}}),function(e,t){return u.apply(this,arguments)})},7900:function(e,t,r){"use strict";var n=r(4564),i=r(2659),a=r(2614),o=r(1549);t.Z=function(e){var{incentives:t,variant:r="horizontal",colored:s=!1,label:l}=e;return(0,o.jsx)("section",{"data-fs-incentives":!0,"data-fs-incentives-colored":s,"data-fs-incentives-variant":r,"aria-label":"Incentives List ".concat(l),children:(0,o.jsx)(n.Z,{"data-fs-content":"incentives",children:t.map((e,t)=>(0,o.jsx)("li",{role:"listitem",children:(0,o.jsxs)(i.Z,{tabIndex:0,children:[(0,o.jsx)(a.Z,{"data-fs-incentive-icon":!0,"aria-label":e.alt,name:e.icon,width:32,height:32}),(0,o.jsxs)("section",{"data-fs-incentive-content":!0,children:[(0,o.jsx)("p",{"data-fs-incentive-title":!0,children:e.title}),(0,o.jsx)("span",{"data-fs-incentive-description":!0,children:e.firstLineText}),e.secondLineText&&(0,o.jsx)("span",{"data-fs-incentive-description":!0,children:e.secondLineText})]})]})},String(t)))})})}},427:function(e){e.exports={section:"section_section__jnQ3q"}},2740:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({testId:e="fs-checkbox",partial:t,...r},i){return n.createElement("input",{ref:i,"data-fs-checkbox":!0,"data-testid":e,"data-fs-checkbox-partial":t,type:"checkbox",...r})});t.Z=i},339:function(e,t,r){"use strict";r.d(t,{K:function(){return useSlideVisibility}});var n=r(4194);let useSlideVisibility=({currentSlide:e,itemsPerPage:t,totalItems:r})=>{let i=(0,n.useRef)(new Set);(0,n.useEffect)(()=>{for(let r=0;r<t;r++)i.current.add(e+r)},[e,t]);let isItemVisible=n=>(function({itemsPerPage:e,currentSlide:t,slideIdx:r,totalItems:n}){return t<0||t>=n||r>=t&&r<t+e})({slideIdx:n,currentSlide:e,itemsPerPage:t,totalItems:r});return{shouldRenderItem:e=>i.current.has(e)||isItemVisible(e),isItemVisible}}},3525:function(e,t,r){"use strict";r.d(t,{oN:function(){return useSlider}});var n=r(4194),i=r(7975);let nextPage=(e,t)=>(e+1)%t,previousPage=(e,t)=>(t-(t-e+1)%t)%t;function reducer(e,t){switch(t.type){case"NEXT_PAGE":{let t=e.infinite?e.totalPages+1:e.totalPages,r=nextPage(e.currentPage,t),n=r%t*e.itemsPerPage;return{...e,sliding:!0,slideDirection:"next",currentItem:n,currentPage:r}}case"PREVIOUS_PAGE":{let t=e.infinite?e.totalPages+1:e.totalPages,r=e.infinite&&0===e.currentPage,n=r?-1:previousPage(e.currentPage,e.totalPages);return{...e,sliding:!0,slideDirection:"previous",currentItem:n%t*e.itemsPerPage,currentPage:n}}case"GO_TO_PAGE":if(t.payload.pageIndex===e.currentPage)return e;return{...e,sliding:t.payload.shouldSlide,slideDirection:t.payload.pageIndex>e.currentPage?"next":"previous",currentItem:t.payload.pageIndex%e.totalPages*e.itemsPerPage,currentPage:t.payload.pageIndex};case"STOP_SLIDE":return{...e,sliding:!1};default:return e}}let defaultSliderState=(e,t,r)=>({currentItem:0,currentPage:0,sliding:!1,slideDirection:"next",totalItems:e,itemsPerPage:t,totalPages:Math.ceil(e/t),infinite:r}),slide=(e,t)=>{"next"===e&&t({type:"NEXT_PAGE"}),"previous"===e&&t({type:"PREVIOUS_PAGE"}),"number"==typeof e&&t({type:"GO_TO_PAGE",payload:{pageIndex:e,shouldSlide:!0}})},useSlider=({totalItems:e,itemsPerPage:t=1,infiniteMode:r=!1,shouldSlideOnSwipe:a=!0,...o})=>{let[s,l]=(0,n.useReducer)(reducer,void 0,()=>defaultSliderState(e,t,r)),c=(0,i.QS)({onSwipedRight:()=>a&&slide("previous",l),onSwipedLeft:()=>a&&slide("next",l),trackMouse:!0,...o});return{handlers:c,slide,sliderState:s,sliderDispatch:l}}},9237:function(e,t,r){"use strict";var n=r(4194),i=r(7041),a=r(2614),o=r(3525),s=r(9654),l=r(6487);let createTransformValues=(e,t)=>{let r={},n=100/t;for(let i=0;i<t;++i){let t=e?i-1:i,a=-(n*i);r[t]=a}return r};t.Z=function({children:e,className:t,"aria-label":r,infiniteMode:c=!1,controls:d="complete",testId:u="fs-carousel",transition:p={duration:400,property:"transform"},id:f="fs-carousel",variant:g="scroll",itemsPerPage:v=1,navigationIcons:y,...m}){if(v<1)throw Error("itemsPerPage must be greater than or equal to 1");let P=(0,n.useRef)(null),b="slide"===g,h="scroll"===g,w=n.Children.toArray(e),O=w.length,S=c?O+2:O,j=`${p.property} ${p.duration}ms ${p.timing??""} ${p.delay??""}`,{handlers:E,slide:I,sliderState:x,sliderDispatch:_}=(0,o.oN)({itemsPerPage:v,infiniteMode:c,totalItems:O,shouldSlideOnSwipe:b,...m}),Z=Math.ceil(O/x.itemsPerPage),[C,T]=(0,n.useState)("16px"),[D,k]=(0,n.useState)(0);(0,n.useEffect)(()=>{let e=P.current?.firstElementChild;e&&(T(getComputedStyle(e).getPropertyValue("margin-right")),k(Number(e.clientWidth)+Number.parseInt(C,10)+1))},[D]);let L=(0,n.useMemo)(()=>createTransformValues(c,S),[S,c]),M=c&&e?w.slice(0,1):[],N=c&&e?w.slice(O-1):[],$=N.concat(e??[],M),B=(0,n.useMemo)(()=>({width:`${100*S}%`,transition:x.sliding?j:void 0,transform:`translate3d(${L[x.currentPage]}%, 0, 0)`}),[S,L,j,x.sliding,x.currentPage]),R=(0,n.useMemo)(()=>({width:"100%",overflowX:"scroll",whiteSpace:"nowrap"}),[]),slidePrevious=()=>{!x.sliding&&(c||0!==x.currentPage)&&I("previous",_)},slideNext=()=>{!x.sliding&&(c||x.currentPage!==O-1)&&I("next",_)},onScrollPagination=async(e,t)=>{if("previous"===t&&0===x.currentPage||"next"===t&&x.currentPage===x.totalPages-1)return;let r=e*D*v;P.current?.scrollTo({left:r,behavior:"smooth"}),I(e,_)};return n.createElement("section",{id:f,"data-fs-carousel":!0,"data-fs-carousel-variant":g,className:t,"data-testid":u,"aria-label":r},n.createElement("div",{"data-fs-carousel-track-container":!0,style:{width:"100%",overflow:"hidden",display:h?"block":void 0},...E},n.createElement("ul",{"aria-live":"polite",ref:P,style:b&&B||h&&R,"data-fs-carousel-track":!0,onScroll:e=>{if(b||v>1)return;let t=Number(e.currentTarget.firstElementChild?.scrollWidth),r=e.currentTarget?.scrollLeft,n=r>t/2?Math.round:Math.floor,i=n(r/t);I(i,_)},onTransitionEnd:()=>{_({type:"STOP_SLIDE"}),c&&x.currentItem>=O&&_({type:"GO_TO_PAGE",payload:{pageIndex:0,shouldSlide:!1}}),c&&x.currentItem<0&&_({type:"GO_TO_PAGE",payload:{pageIndex:x.totalPages-1,shouldSlide:!1}})}},$.map((e,t)=>n.createElement(l.Z,{id:f,index:t,key:String(t),state:x,totalItems:O,infiniteMode:c,isScrollCarousel:h,marginRightValue:C},e)))),1!==Z&&("complete"===d||"navigationArrows"===d)&&n.createElement("div",{"data-fs-carousel-controls":!0},n.createElement(i.Z,{"data-fs-carousel-control":"left","aria-controls":f,disabled:!c&&0===x.currentPage,"aria-label":"previous",icon:y?.left??n.createElement(a.Z,{name:"ArrowLeft",width:20,height:20,weight:"bold"}),onClick:()=>{b&&slidePrevious(),h&&onScrollPagination(x.currentPage-1,"previous")}}),n.createElement(i.Z,{"data-fs-carousel-control":"right","aria-controls":f,disabled:!c&&x.currentPage===x.totalPages-1,"aria-label":"next",icon:y?.right??n.createElement(a.Z,{name:"ArrowRight",width:20,height:20,weight:"bold"}),onClick:()=>{b&&slideNext(),h&&onScrollPagination(x.currentPage+1,"next")}})),1!==Z&&("complete"===d||"paginationBullets"===d)&&n.createElement(s.Z,{id:f,tabIndex:0,activeBullet:x.currentPage,totalQuantity:Z,onKeyDown:e=>{switch(e.key){case"ArrowLeft":b&&slidePrevious(),h&&onScrollPagination(x.currentPage-1,"previous");break;case"ArrowRight":b&&slideNext(),h&&onScrollPagination(x.currentPage+1,"next");break;case"Home":I(0,_);break;case"End":I(O-1,_)}},onClick:async(e,t)=>{b&&!x.sliding&&I(t,_),h&&onScrollPagination(t)},onFocus:e=>e.currentTarget.focus(),ariaControlsGenerator:e=>`${f}-carousel-item-${e}`}))}},9654:function(e,t,r){"use strict";var n=r(4194),i=r(9009);let defaultAriaLabel=(e,t,r)=>r?`Current page from ${e}`:`Go to page ${t+1} from ${e}`,a=(0,n.forwardRef)(function({id:e,totalQuantity:t,activeBullet:r,onClick:a,testId:o="fs-carousel-bullets",ariaLabelGenerator:s=defaultAriaLabel,ariaControlsGenerator:l,...c},d){let u=(0,n.useMemo)(()=>Array(t).fill(0),[t]);return n.createElement("div",{ref:d,"data-fs-carousel-bullets":!0,"data-testid":o,role:"tablist",...c},u.map((t,c)=>{let d=r===c;return n.createElement(i.Z,{key:`${e}-${c}`,role:"tab",tabIndex:-1,"data-fs-carousel-bullet":!0,testId:`${o}-bullet`,onClick:e=>a(e,c),"aria-label":s(e,c,d),"aria-controls":l?.(c),"aria-selected":d,variant:"tertiary"})}))});t.Z=a},6487:function(e,t,r){"use strict";var n=r(4194),i=r(339);t.Z=function({id:e,index:t,state:r,children:a,totalItems:o,infiniteMode:s,isScrollCarousel:l,marginRightValue:c}){let{isItemVisible:d,shouldRenderItem:u}=(0,i.K)({totalItems:o,currentSlide:r.currentItem,itemsPerPage:r.itemsPerPage}),p={width:`calc((100% - ${c} * ${r.itemsPerPage-1}) / ${r.itemsPerPage})`},f=l&&r.itemsPerPage>1?{...p}:{width:"100%"},g=l||u(t-Number(s));return n.createElement("li",{style:f,id:`${e}-carousel-item-${t}`,"data-fs-carousel-item":!0,"data-fs-carousel-item-visible":d(t-Number(s))||void 0},g?a:null)}},673:function(e,t,r){"use strict";var n=r(4194),i=r(2740),a=r(1953);let o=(0,n.forwardRef)(function({testId:e="fs-checkbox-field",id:t,label:r,value:o,name:s,error:l,disabled:c,alignment:d="center",...u},p){let f=!c&&l&&""!==l;return n.createElement("div",{ref:p,"data-testid":e,"data-fs-checkbox-field":!0,"data-fs-checkbox-field-error":l&&""!==l,"data-fs-checkbox-field-alignment":d},n.createElement(i.Z,{id:t,value:o??r,name:s,defaultChecked:u?.checked,disabled:c,...u}),n.createElement("div",{"data-fs-checkbox-field-content":!0},n.createElement(a.Z,{"data-fs-checkbox-field-label":!0,htmlFor:t},r),f&&n.createElement("span",{"data-fs-checkbox-field-error-message":!0},l)))});t.Z=o},7115:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({card:e,children:t,colorVariant:r="main",testId:i="fs-newsletter",...a},o){return n.createElement("div",{ref:o,"data-testid":i,"data-fs-content":"newsletter","data-fs-newsletter":e?"card":"","data-fs-newsletter-color-variant":r,...a},t)});t.Z=i},2294:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({addendum:e,testId:t="fs-newsletter-addendum",...r},i){return n.createElement("span",{ref:i,"data-testid":t,"data-fs-newsletter-addendum":!0,...r},e)});t.Z=i},4207:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({children:e,testId:t="fs-newsletter-content",...r},i){return n.createElement("div",{ref:i,"data-testid":t,"data-fs-newsletter-content":!0,...r},e)});t.Z=i},2571:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({children:e,onSubmit:t,testId:r="fs-newsletter-form",...i},a){return n.createElement("form",{ref:a,"data-testid":r,"data-fs-newsletter-form":!0,onSubmit:t,...i},e)});t.Z=i},4796:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({icon:e,title:t,description:r,testId:i="fs-newsletter-header",...a},o){return n.createElement("header",{ref:o,"data-testid":i,"data-fs-newsletter-header":!0,...a},n.createElement("h3",{"data-fs-newsletter-header-title":!0},e,t),r&&n.createElement("span",{"data-fs-newsletter-header-description":!0},r))});t.Z=i},5402:function(e,t,r){"use strict";var n=r(4194),i=r(673),a=r(2182);let o=(0,n.forwardRef)(function({id:e,label:t,onChange:r,product:o,...s},l){let{productIds:c,handleProductsIds:d}=(0,a.S)(),u=c.some(e=>e===o.id);return n.createElement("div",{"data-fs-product-comparison-trigger":!0},o.hasSpecifications&&n.createElement(i.Z,{"data-fs-product-comparison-trigger-checkbox-field":!0,ref:l,id:`product-comparison-trigger-${e}`,label:t,checked:u,onClick:e=>{e.stopPropagation()},onChange:e=>{r?.(e),d(o)},...s}))});t.Z=o},6737:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({testId:e="fs-product-shelf",children:t,...r},i){return n.createElement("div",{ref:i,"data-fs-product-shelf":!0,"data-fs-content":"product-shelf","data-testid":e,...r},t)});t.Z=i},2659:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({testId:e="store-incentive",children:t,...r},i){return n.createElement("section",{ref:i,"data-fs-incentive":!0,"data-testid":e,...r},t)});t.Z=i},7901:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({testId:e="store-tile",children:t,...r},i){return n.createElement("li",{ref:i,role:"listitem","data-fs-tile":!0,"data-testid":e,...r},t)});t.Z=i},3877:function(e,t,r){"use strict";var n=r(4194);let i=(0,n.forwardRef)(function({testId:e="store-tiles",children:t,...r},i){let a=n.Children.count(t);return n.createElement("ul",{ref:i,role:"list","data-fs-tiles":!0,"data-fs-tiles-variant":3===a?"expanded-first":2===a?"expanded-first-two":"","data-fs-content":"tiles","data-testid":e,...r},t)});t.Z=i}}]);