@faststore/core 2.0.147-alpha.0 → 2.0.152-alpha.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 (179) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/build-manifest.json +132 -0
  3. package/.next/cache/.tsbuildinfo +1 -0
  4. package/.next/cache/config.json +7 -0
  5. package/.next/cache/eslint/.cache_1gneedd +1 -0
  6. package/.next/cache/next-server.js.nft.json +1 -0
  7. package/.next/cache/webpack/client-production/0.pack +0 -0
  8. package/.next/cache/webpack/client-production/index.pack +0 -0
  9. package/.next/cache/webpack/server-production/0.pack +0 -0
  10. package/.next/cache/webpack/server-production/index.pack +0 -0
  11. package/.next/export-marker.json +1 -0
  12. package/.next/images-manifest.json +1 -0
  13. package/.next/next-server.js.nft.json +1 -0
  14. package/.next/package.json +1 -0
  15. package/.next/prerender-manifest.json +1 -0
  16. package/.next/react-loadable-manifest.json +48 -0
  17. package/.next/required-server-files.json +1 -0
  18. package/.next/routes-manifest.json +1 -0
  19. package/.next/server/chunks/104.js +703 -0
  20. package/.next/server/chunks/123.js +58 -0
  21. package/.next/server/chunks/143.js +106 -0
  22. package/.next/server/chunks/183.js +80 -0
  23. package/.next/server/chunks/247.js +61 -0
  24. package/.next/server/chunks/280.js +324 -0
  25. package/.next/server/chunks/287.js +58 -0
  26. package/.next/server/chunks/312.js +670 -0
  27. package/.next/server/chunks/336.js +821 -0
  28. package/.next/server/chunks/350.js +142 -0
  29. package/.next/server/chunks/368.js +253 -0
  30. package/.next/server/chunks/401.js +7241 -0
  31. package/.next/server/chunks/431.js +7241 -0
  32. package/.next/server/chunks/502.js +600 -0
  33. package/.next/server/chunks/557.js +132 -0
  34. package/.next/server/chunks/576.js +80 -0
  35. package/.next/server/chunks/597.js +169 -0
  36. package/.next/server/chunks/608.js +644 -0
  37. package/.next/server/chunks/644.js +235 -0
  38. package/.next/server/chunks/664.js +3401 -0
  39. package/.next/server/chunks/676.js +32 -0
  40. package/.next/server/chunks/701.js +87 -0
  41. package/.next/server/chunks/74.js +2674 -0
  42. package/.next/server/chunks/746.js +225 -0
  43. package/.next/server/chunks/82.js +371 -0
  44. package/.next/server/chunks/854.js +72 -0
  45. package/.next/server/chunks/859.js +959 -0
  46. package/.next/server/chunks/874.js +487 -0
  47. package/.next/server/chunks/886.js +120 -0
  48. package/.next/server/chunks/907.js +1723 -0
  49. package/.next/server/chunks/98.js +124 -0
  50. package/.next/server/chunks/font-manifest.json +1 -0
  51. package/.next/server/font-manifest.json +1 -0
  52. package/.next/server/middleware-build-manifest.js +1 -0
  53. package/.next/server/middleware-manifest.json +6 -0
  54. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  55. package/.next/server/pages/404.js +393 -0
  56. package/.next/server/pages/404.js.nft.json +1 -0
  57. package/.next/server/pages/500.js +395 -0
  58. package/.next/server/pages/500.js.nft.json +1 -0
  59. package/.next/server/pages/[...slug].js +718 -0
  60. package/.next/server/pages/[...slug].js.nft.json +1 -0
  61. package/.next/server/pages/[slug]/p.js +2458 -0
  62. package/.next/server/pages/[slug]/p.js.nft.json +1 -0
  63. package/.next/server/pages/_app.js +368 -0
  64. package/.next/server/pages/_app.js.nft.json +1 -0
  65. package/.next/server/pages/_document.js +304 -0
  66. package/.next/server/pages/_document.js.nft.json +1 -0
  67. package/.next/server/pages/_error.js +164 -0
  68. package/.next/server/pages/_error.js.nft.json +1 -0
  69. package/.next/server/pages/account.js +370 -0
  70. package/.next/server/pages/account.js.nft.json +1 -0
  71. package/.next/server/pages/api/graphql.js +315 -0
  72. package/.next/server/pages/api/graphql.js.nft.json +1 -0
  73. package/.next/server/pages/api/preview.js +118 -0
  74. package/.next/server/pages/api/preview.js.nft.json +1 -0
  75. package/.next/server/pages/checkout.js +370 -0
  76. package/.next/server/pages/checkout.js.nft.json +1 -0
  77. package/.next/server/pages/en-US/404.html +81 -0
  78. package/.next/server/pages/en-US/404.json +1 -0
  79. package/.next/server/pages/en-US/500.html +81 -0
  80. package/.next/server/pages/en-US/500.json +1 -0
  81. package/.next/server/pages/en-US/account.html +81 -0
  82. package/.next/server/pages/en-US/account.json +1 -0
  83. package/.next/server/pages/en-US/checkout.html +81 -0
  84. package/.next/server/pages/en-US/checkout.json +1 -0
  85. package/.next/server/pages/en-US/login.html +81 -0
  86. package/.next/server/pages/en-US/login.json +1 -0
  87. package/.next/server/pages/en-US/s.html +81 -0
  88. package/.next/server/pages/en-US/s.json +1 -0
  89. package/.next/server/pages/en-US.html +81 -0
  90. package/.next/server/pages/en-US.json +1 -0
  91. package/.next/server/pages/index.js +966 -0
  92. package/.next/server/pages/index.js.nft.json +1 -0
  93. package/.next/server/pages/login.js +375 -0
  94. package/.next/server/pages/login.js.nft.json +1 -0
  95. package/.next/server/pages/s.js +457 -0
  96. package/.next/server/pages/s.js.nft.json +1 -0
  97. package/.next/server/pages-manifest.json +16 -0
  98. package/.next/server/webpack-api-runtime.js +229 -0
  99. package/.next/server/webpack-runtime.js +229 -0
  100. package/.next/static/chunks/143.dd8a556e6957baa1.js +1 -0
  101. package/.next/static/chunks/170.c17ce564bb568265.js +1 -0
  102. package/.next/static/chunks/226.b57e10ad9932f88c.js +1 -0
  103. package/.next/static/chunks/327-43715af4f3fffaf6.js +1 -0
  104. package/.next/static/chunks/336.0846f48eccce57e4.js +1 -0
  105. package/.next/static/chunks/366-c0bfd9890048babf.js +1 -0
  106. package/.next/static/chunks/377-61e89c711b136605.js +1 -0
  107. package/.next/static/chunks/391-47b923ef44945418.js +1 -0
  108. package/.next/static/chunks/495.8ffebac98e9475dc.js +1 -0
  109. package/.next/static/chunks/502.ae82de1669112b15.js +1 -0
  110. package/.next/static/chunks/545-1d3d08edfd2ee4c6.js +1 -0
  111. package/.next/static/chunks/597.c5cf3fbeae5ceb63.js +1 -0
  112. package/.next/static/chunks/651.7142f31ce1e052b3.js +1 -0
  113. package/.next/static/chunks/741.52f7fb873418346f.js +1 -0
  114. package/.next/static/chunks/98.97381d2021f86cd9.js +1 -0
  115. package/.next/static/chunks/framework-dfd14d7ce6600b03.js +1 -0
  116. package/.next/static/chunks/main-fd466221927468fd.js +1 -0
  117. package/.next/static/chunks/pages/404-459452495a0df278.js +1 -0
  118. package/.next/static/chunks/pages/500-008e30c48eceebed.js +1 -0
  119. package/.next/static/chunks/pages/[...slug]-a351612e92518155.js +1 -0
  120. package/.next/static/chunks/pages/[slug]/p-fa35dd93d53f75f6.js +1 -0
  121. package/.next/static/chunks/pages/_app-3e4e7e579cb0681a.js +1 -0
  122. package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +1 -0
  123. package/.next/static/chunks/pages/account-46263f0c100c3eae.js +1 -0
  124. package/.next/static/chunks/pages/checkout-20bb3710b24df3b6.js +1 -0
  125. package/.next/static/chunks/pages/index-49b7ee570f7cc4b7.js +1 -0
  126. package/.next/static/chunks/pages/login-f9d316d261fcc062.js +1 -0
  127. package/.next/static/chunks/pages/s-890c0c4b88484224.js +1 -0
  128. package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
  129. package/.next/static/chunks/webpack-976c8f7df8e3dea3.js +1 -0
  130. package/.next/static/css/1323734429a8aa40.css +1 -0
  131. package/.next/static/css/13a4da555ff5e3be.css +1 -0
  132. package/.next/static/css/2e00f7ba49c754b3.css +1 -0
  133. package/.next/static/css/7d822a137c54a781.css +1 -0
  134. package/.next/static/css/a0feab89b7648c5c.css +1 -0
  135. package/.next/static/css/a13a9f9cd349d906.css +1 -0
  136. package/.next/static/css/a45618030b16a245.css +1 -0
  137. package/.next/static/css/bde408cc006e64f8.css +1 -0
  138. package/.next/static/css/d462d9478ce00021.css +1 -0
  139. package/.next/static/css/e02cdad8fc000339.css +1 -0
  140. package/.next/static/d4K49oW-EfaWNefvNv5AZ/_buildManifest.js +1 -0
  141. package/.next/static/d4K49oW-EfaWNefvNv5AZ/_ssgManifest.js +1 -0
  142. package/.next/trace +69 -0
  143. package/.turbo/turbo-build.log +6 -6
  144. package/CHANGELOG.md +12 -0
  145. package/cms/faststore/sections.json +26 -19
  146. package/package.json +4 -4
  147. package/public/~partytown/debug/partytown-atomics.js +556 -0
  148. package/public/~partytown/debug/partytown-media.js +374 -0
  149. package/public/~partytown/debug/partytown-sandbox-sw.js +543 -0
  150. package/public/~partytown/debug/partytown-sw.js +59 -0
  151. package/public/~partytown/debug/partytown-ww-atomics.js +1789 -0
  152. package/public/~partytown/debug/partytown-ww-sw.js +1781 -0
  153. package/public/~partytown/debug/partytown.js +72 -0
  154. package/public/~partytown/partytown-atomics.js +2 -0
  155. package/public/~partytown/partytown-media.js +2 -0
  156. package/public/~partytown/partytown-sw.js +2 -0
  157. package/public/~partytown/partytown.js +2 -0
  158. package/src/components/sections/ProductDetails/ProductDetails.tsx +106 -165
  159. package/src/components/{sections/ProducDetailsContent/ProductDetailsContent.tsx → ui/ProductDescription/ProductDescription.tsx} +7 -7
  160. package/src/components/ui/ProductDescription/index.ts +1 -0
  161. package/src/components/ui/ProductDetails/AddToCartLoadingSkeleton.tsx +57 -0
  162. package/src/components/ui/ProductDetails/ProductDetailsSettings.tsx +125 -0
  163. package/src/components/ui/ProductDetails/index.ts +2 -0
  164. package/src/components/ui/ShippingSimulation/ShippingSimulation.tsx +18 -2
  165. package/src/components/sections/ProducDetailsContent/index.ts +0 -1
  166. package/src/stories/brandless.stories.mdx +0 -87
  167. package/src/stories/changelog-template.stories.mdx +0 -10
  168. package/src/stories/colors.stories.mdx +0 -306
  169. package/src/stories/customizing.stories.mdx +0 -113
  170. package/src/stories/getting-started.stories.mdx +0 -68
  171. package/src/stories/grid-layout.stories.mdx +0 -53
  172. package/src/stories/icons.stories.mdx +0 -237
  173. package/src/stories/interactive-controls.stories.mdx +0 -50
  174. package/src/stories/midnight.stories.mdx +0 -56
  175. package/src/stories/refinements.stories.mdx +0 -96
  176. package/src/stories/soft-blue.stories.mdx +0 -56
  177. package/src/stories/spacing.stories.mdx +0 -38
  178. package/src/stories/typography.stories.mdx +0 -224
  179. /package/src/components/{sections/ProducDetailsContent/ProductDetailsContent.stories.mdx → ui/ProductDescription/ProductDescription.stories.mdx} +0 -0
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../webpack-api-runtime.js","../../chunks/431.js","../../chunks/576.js","../../../package.json","../../../../@generated/graphql/persisted.json","../../../../package.json"]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+ (() => {
3
+ var exports = {};
4
+ exports.id = 157;
5
+ exports.ids = [157];
6
+ exports.modules = {
7
+
8
+ /***/ 4774:
9
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
10
+
11
+ // ESM COMPAT FLAG
12
+ __webpack_require__.r(__webpack_exports__);
13
+
14
+ // EXPORTS
15
+ __webpack_require__.d(__webpack_exports__, {
16
+ "default": () => (/* binding */ preview)
17
+ });
18
+
19
+ ;// CONCATENATED MODULE: external "@vtex/client-cms"
20
+ const client_cms_namespaceObject = require("@vtex/client-cms");
21
+ var client_cms_default = /*#__PURE__*/__webpack_require__.n(client_cms_namespaceObject);
22
+ // EXTERNAL MODULE: ./faststore.config.js
23
+ var faststore_config = __webpack_require__(5576);
24
+ var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
25
+ ;// CONCATENATED MODULE: ./src/server/cms.ts
26
+
27
+
28
+ const clientCMS = new (client_cms_default())({
29
+ workspace: (faststore_config_default()).api.workspace,
30
+ tenant: (faststore_config_default()).api.storeId
31
+ });
32
+
33
+ const isLocator = x => typeof x.contentType === 'string' && (typeof x.releaseId === 'string' || typeof x.documentId === 'string');
34
+
35
+ const getPage = async options => {
36
+ const result = await (isLocator(options) ? clientCMS.getCMSPage(options).then(page => ({
37
+ data: [page]
38
+ })) : clientCMS.getCMSPagesByContentType(options.contentType, options.filters));
39
+ const pages = result.data;
40
+
41
+ if (!pages[0]) {
42
+ throw new Error(`Missing content on the CMS for content type ${options.contentType}. Add content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
43
+ }
44
+
45
+ if (pages.length !== 1) {
46
+ throw new Error(`Multiple content defined on the CMS for content type ${options.contentType}. Remove duplicated content before proceeding. Context: ${JSON.stringify(options, null, 2)}`);
47
+ }
48
+
49
+ return pages[0];
50
+ };
51
+ ;// CONCATENATED MODULE: ./src/pages/api/preview.ts
52
+
53
+
54
+ class StatusError extends Error {
55
+ constructor(message, status) {
56
+ super(message);
57
+ this.status = status;
58
+ }
59
+
60
+ }
61
+
62
+ const pickParam = (req, parameter) => {
63
+ const maybeParam = req.query[parameter];
64
+
65
+ if (typeof maybeParam !== 'string') {
66
+ throw new StatusError(`Parameter ${parameter} missing from querystring`, 400);
67
+ }
68
+
69
+ return maybeParam;
70
+ }; // TODO: Improve security by disabling CMS preview in production
71
+
72
+
73
+ const handler = async (req, res) => {
74
+ try {
75
+ const locator = {
76
+ contentType: pickParam(req, 'contentType'),
77
+ documentId: pickParam(req, 'documentId'),
78
+ versionId: pickParam(req, 'versionId')
79
+ }; // Fetch CMS to check if the provided `locator` exists
80
+
81
+ const page = await clientCMS.getCMSPage(locator); // If the content doesn't exist prevent preview mode from being enabled
82
+
83
+ if (!page) {
84
+ throw new StatusError(`Content NotFound for ${JSON.stringify(locator, null, 2)}`, 404);
85
+ } // Enable Preview Mode by setting the cookies
86
+
87
+
88
+ res.setPreviewData(locator, {
89
+ maxAge: 3600
90
+ }); // Redirect to the path from the fetched locator
91
+ // TODO: apply redirect based on the content
92
+
93
+ res.redirect('/');
94
+ } catch (error) {
95
+ if (error instanceof StatusError) {
96
+ res.status(error.status).end(error.message);
97
+ return;
98
+ }
99
+
100
+ throw error;
101
+ }
102
+ };
103
+
104
+ /* harmony default export */ const preview = (handler);
105
+
106
+ /***/ })
107
+
108
+ };
109
+ ;
110
+
111
+ // load runtime
112
+ var __webpack_require__ = require("../../webpack-api-runtime.js");
113
+ __webpack_require__.C(exports);
114
+ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
115
+ var __webpack_exports__ = __webpack_require__.X(0, [576], () => (__webpack_exec__(4774)));
116
+ module.exports = __webpack_exports__;
117
+
118
+ })();
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../../webpack-api-runtime.js","../../chunks/576.js","../../../package.json","../../../../package.json"]}
@@ -0,0 +1,370 @@
1
+ "use strict";
2
+ (() => {
3
+ var exports = {};
4
+ exports.id = 222;
5
+ exports.ids = [222];
6
+ exports.modules = {
7
+
8
+ /***/ 7200:
9
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
10
+
11
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
12
+ __webpack_require__.r(__webpack_exports__);
13
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
14
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
15
+ /* harmony export */ "getStaticProps": () => (/* binding */ getStaticProps)
16
+ /* harmony export */ });
17
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
18
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
19
+ /* harmony import */ var next_seo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6641);
20
+ /* harmony import */ var next_seo__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_seo__WEBPACK_IMPORTED_MODULE_1__);
21
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7183);
22
+ /* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_2__);
23
+ /* harmony import */ var src_components_cms_GlobalSections__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4074);
24
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(997);
25
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__);
26
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([src_components_cms_GlobalSections__WEBPACK_IMPORTED_MODULE_3__]);
27
+ src_components_cms_GlobalSections__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
28
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
29
+
30
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
31
+
32
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+ function Page({
42
+ globalSections
43
+ }) {
44
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
45
+ window.location.href = (_faststore_config__WEBPACK_IMPORTED_MODULE_2___default().checkoutUrl);
46
+ }, []);
47
+ return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(src_components_cms_GlobalSections__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP, _objectSpread(_objectSpread({}, globalSections), {}, {
48
+ children: [/*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx(next_seo__WEBPACK_IMPORTED_MODULE_1__.NextSeo, {
49
+ noindex: true,
50
+ nofollow: true
51
+ }), /*#__PURE__*/react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx("div", {
52
+ children: "loading..."
53
+ })]
54
+ }));
55
+ }
56
+
57
+ const getStaticProps = async ({
58
+ previewData
59
+ }) => {
60
+ const globalSections = await (0,src_components_cms_GlobalSections__WEBPACK_IMPORTED_MODULE_3__/* .getGlobalSectionsData */ .Tc)(previewData);
61
+ return {
62
+ props: {
63
+ globalSections
64
+ }
65
+ };
66
+ };
67
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Page);
68
+ __webpack_async_result__();
69
+ } catch(e) { __webpack_async_result__(e); } });
70
+
71
+ /***/ }),
72
+
73
+ /***/ 5490:
74
+ /***/ ((module) => {
75
+
76
+ module.exports = require("@faststore/graphql-utils");
77
+
78
+ /***/ }),
79
+
80
+ /***/ 6676:
81
+ /***/ ((module) => {
82
+
83
+ module.exports = require("@vtex/client-cms");
84
+
85
+ /***/ }),
86
+
87
+ /***/ 3430:
88
+ /***/ ((module) => {
89
+
90
+ module.exports = require("idb-keyval");
91
+
92
+ /***/ }),
93
+
94
+ /***/ 6641:
95
+ /***/ ((module) => {
96
+
97
+ module.exports = require("next-seo");
98
+
99
+ /***/ }),
100
+
101
+ /***/ 3280:
102
+ /***/ ((module) => {
103
+
104
+ module.exports = require("next/dist/shared/lib/app-router-context.js");
105
+
106
+ /***/ }),
107
+
108
+ /***/ 2796:
109
+ /***/ ((module) => {
110
+
111
+ module.exports = require("next/dist/shared/lib/head-manager-context.js");
112
+
113
+ /***/ }),
114
+
115
+ /***/ 4957:
116
+ /***/ ((module) => {
117
+
118
+ module.exports = require("next/dist/shared/lib/head.js");
119
+
120
+ /***/ }),
121
+
122
+ /***/ 3539:
123
+ /***/ ((module) => {
124
+
125
+ module.exports = require("next/dist/shared/lib/i18n/detect-domain-locale.js");
126
+
127
+ /***/ }),
128
+
129
+ /***/ 4014:
130
+ /***/ ((module) => {
131
+
132
+ module.exports = require("next/dist/shared/lib/i18n/normalize-locale-path.js");
133
+
134
+ /***/ }),
135
+
136
+ /***/ 4486:
137
+ /***/ ((module) => {
138
+
139
+ module.exports = require("next/dist/shared/lib/image-blur-svg.js");
140
+
141
+ /***/ }),
142
+
143
+ /***/ 744:
144
+ /***/ ((module) => {
145
+
146
+ module.exports = require("next/dist/shared/lib/image-config-context.js");
147
+
148
+ /***/ }),
149
+
150
+ /***/ 5843:
151
+ /***/ ((module) => {
152
+
153
+ module.exports = require("next/dist/shared/lib/image-config.js");
154
+
155
+ /***/ }),
156
+
157
+ /***/ 8524:
158
+ /***/ ((module) => {
159
+
160
+ module.exports = require("next/dist/shared/lib/is-plain-object.js");
161
+
162
+ /***/ }),
163
+
164
+ /***/ 8020:
165
+ /***/ ((module) => {
166
+
167
+ module.exports = require("next/dist/shared/lib/mitt.js");
168
+
169
+ /***/ }),
170
+
171
+ /***/ 4406:
172
+ /***/ ((module) => {
173
+
174
+ module.exports = require("next/dist/shared/lib/page-path/denormalize-page-path.js");
175
+
176
+ /***/ }),
177
+
178
+ /***/ 4964:
179
+ /***/ ((module) => {
180
+
181
+ module.exports = require("next/dist/shared/lib/router-context.js");
182
+
183
+ /***/ }),
184
+
185
+ /***/ 3431:
186
+ /***/ ((module) => {
187
+
188
+ module.exports = require("next/dist/shared/lib/router/utils/add-locale.js");
189
+
190
+ /***/ }),
191
+
192
+ /***/ 1751:
193
+ /***/ ((module) => {
194
+
195
+ module.exports = require("next/dist/shared/lib/router/utils/add-path-prefix.js");
196
+
197
+ /***/ }),
198
+
199
+ /***/ 6220:
200
+ /***/ ((module) => {
201
+
202
+ module.exports = require("next/dist/shared/lib/router/utils/compare-states.js");
203
+
204
+ /***/ }),
205
+
206
+ /***/ 299:
207
+ /***/ ((module) => {
208
+
209
+ module.exports = require("next/dist/shared/lib/router/utils/format-next-pathname-info.js");
210
+
211
+ /***/ }),
212
+
213
+ /***/ 3938:
214
+ /***/ ((module) => {
215
+
216
+ module.exports = require("next/dist/shared/lib/router/utils/format-url.js");
217
+
218
+ /***/ }),
219
+
220
+ /***/ 9565:
221
+ /***/ ((module) => {
222
+
223
+ module.exports = require("next/dist/shared/lib/router/utils/get-asset-path-from-route.js");
224
+
225
+ /***/ }),
226
+
227
+ /***/ 5789:
228
+ /***/ ((module) => {
229
+
230
+ module.exports = require("next/dist/shared/lib/router/utils/get-next-pathname-info.js");
231
+
232
+ /***/ }),
233
+
234
+ /***/ 1897:
235
+ /***/ ((module) => {
236
+
237
+ module.exports = require("next/dist/shared/lib/router/utils/is-bot.js");
238
+
239
+ /***/ }),
240
+
241
+ /***/ 1428:
242
+ /***/ ((module) => {
243
+
244
+ module.exports = require("next/dist/shared/lib/router/utils/is-dynamic.js");
245
+
246
+ /***/ }),
247
+
248
+ /***/ 8854:
249
+ /***/ ((module) => {
250
+
251
+ module.exports = require("next/dist/shared/lib/router/utils/parse-path.js");
252
+
253
+ /***/ }),
254
+
255
+ /***/ 1292:
256
+ /***/ ((module) => {
257
+
258
+ module.exports = require("next/dist/shared/lib/router/utils/parse-relative-url.js");
259
+
260
+ /***/ }),
261
+
262
+ /***/ 4567:
263
+ /***/ ((module) => {
264
+
265
+ module.exports = require("next/dist/shared/lib/router/utils/path-has-prefix.js");
266
+
267
+ /***/ }),
268
+
269
+ /***/ 979:
270
+ /***/ ((module) => {
271
+
272
+ module.exports = require("next/dist/shared/lib/router/utils/querystring.js");
273
+
274
+ /***/ }),
275
+
276
+ /***/ 3297:
277
+ /***/ ((module) => {
278
+
279
+ module.exports = require("next/dist/shared/lib/router/utils/remove-trailing-slash.js");
280
+
281
+ /***/ }),
282
+
283
+ /***/ 6052:
284
+ /***/ ((module) => {
285
+
286
+ module.exports = require("next/dist/shared/lib/router/utils/resolve-rewrites.js");
287
+
288
+ /***/ }),
289
+
290
+ /***/ 4226:
291
+ /***/ ((module) => {
292
+
293
+ module.exports = require("next/dist/shared/lib/router/utils/route-matcher.js");
294
+
295
+ /***/ }),
296
+
297
+ /***/ 5052:
298
+ /***/ ((module) => {
299
+
300
+ module.exports = require("next/dist/shared/lib/router/utils/route-regex.js");
301
+
302
+ /***/ }),
303
+
304
+ /***/ 9232:
305
+ /***/ ((module) => {
306
+
307
+ module.exports = require("next/dist/shared/lib/utils.js");
308
+
309
+ /***/ }),
310
+
311
+ /***/ 1853:
312
+ /***/ ((module) => {
313
+
314
+ module.exports = require("next/router");
315
+
316
+ /***/ }),
317
+
318
+ /***/ 6689:
319
+ /***/ ((module) => {
320
+
321
+ module.exports = require("react");
322
+
323
+ /***/ }),
324
+
325
+ /***/ 6405:
326
+ /***/ ((module) => {
327
+
328
+ module.exports = require("react-dom");
329
+
330
+ /***/ }),
331
+
332
+ /***/ 997:
333
+ /***/ ((module) => {
334
+
335
+ module.exports = require("react/jsx-runtime");
336
+
337
+ /***/ }),
338
+
339
+ /***/ 3823:
340
+ /***/ ((module) => {
341
+
342
+ module.exports = require("tabbable");
343
+
344
+ /***/ }),
345
+
346
+ /***/ 7564:
347
+ /***/ ((module) => {
348
+
349
+ module.exports = import("chalk");;
350
+
351
+ /***/ }),
352
+
353
+ /***/ 5941:
354
+ /***/ ((module) => {
355
+
356
+ module.exports = import("swr");;
357
+
358
+ /***/ })
359
+
360
+ };
361
+ ;
362
+
363
+ // load runtime
364
+ var __webpack_require__ = require("../webpack-runtime.js");
365
+ __webpack_require__.C(exports);
366
+ var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
367
+ var __webpack_exports__ = __webpack_require__.X(0, [608,676,664,336,183,644,886,74], () => (__webpack_exec__(7200)));
368
+ module.exports = __webpack_exports__;
369
+
370
+ })();
@@ -0,0 +1 @@
1
+ {"version":1,"files":["../webpack-runtime.js","../chunks/608.js","../chunks/676.js","../chunks/664.js","../chunks/336.js","../chunks/183.js","../chunks/644.js","../chunks/886.js","../chunks/74.js","../chunks/247.js","../chunks/854.js","../chunks/312.js","../../package.json","../../../node_modules/chalk/package.json","../../../node_modules/@faststore/graphql-utils/package.json","../../../node_modules/next/dist/shared/lib/head.js","../../../node_modules/next/dist/shared/lib/app-router-context.js","../../../node_modules/next/dist/shared/lib/head-manager-context.js","../../../node_modules/next/dist/shared/lib/image-blur-svg.js","../../../node_modules/next/dist/shared/lib/image-config-context.js","../../../node_modules/next/dist/shared/lib/image-config.js","../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../node_modules/next/dist/shared/lib/mitt.js","../../../node_modules/next/dist/shared/lib/router-context.js","../../../node_modules/next/dist/shared/lib/utils.js","../../../node_modules/next/dist/shared/lib/i18n/detect-domain-locale.js","../../../node_modules/next/dist/shared/lib/i18n/normalize-locale-path.js","../../../node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js","../../../node_modules/next/dist/shared/lib/router/utils/add-locale.js","../../../node_modules/next/dist/shared/lib/router/utils/add-path-prefix.js","../../../node_modules/next/dist/shared/lib/router/utils/compare-states.js","../../../node_modules/next/dist/shared/lib/router/utils/format-next-pathname-info.js","../../../node_modules/next/dist/shared/lib/router/utils/format-url.js","../../../node_modules/next/dist/shared/lib/router/utils/get-asset-path-from-route.js","../../../node_modules/next/dist/shared/lib/router/utils/get-next-pathname-info.js","../../../node_modules/next/dist/shared/lib/router/utils/is-bot.js","../../../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../../../node_modules/next/dist/shared/lib/router/utils/parse-path.js","../../../node_modules/next/dist/shared/lib/router/utils/parse-relative-url.js","../../../node_modules/next/dist/shared/lib/router/utils/path-has-prefix.js","../../../node_modules/next/dist/shared/lib/router/utils/querystring.js","../../../node_modules/next/dist/shared/lib/router/utils/remove-trailing-slash.js","../../../node_modules/next/dist/shared/lib/router/utils/resolve-rewrites.js","../../../node_modules/next/dist/shared/lib/router/utils/route-matcher.js","../../../node_modules/next/dist/shared/lib/router/utils/route-regex.js","../../../node_modules/chalk/source/index.js","../../../node_modules/@faststore/graphql-utils/dist/index.js","../../../node_modules/next/router.js","../../../node_modules/next/package.json","../../../node_modules/chalk/source/utilities.js","../../../node_modules/next/dist/client/remove-base-path.js","../../../node_modules/chalk/source/vendor/ansi-styles/index.js","../../../node_modules/chalk/source/vendor/supports-color/index.js","../../../node_modules/next/dist/client/router.js","../../../node_modules/next/dist/client/has-base-path.js","../../../node_modules/next/dist/shared/lib/side-effect.js","../../../node_modules/next/dist/shared/lib/amp-context.js","../../../node_modules/next/dist/shared/lib/amp-mode.js","../../../node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js","../../../node_modules/next/dist/shared/lib/router/utils/add-path-suffix.js","../../../node_modules/next/dist/shared/lib/router/utils/remove-path-prefix.js","../../../node_modules/next/dist/shared/lib/router/utils/path-match.js","../../../node_modules/next/dist/shared/lib/router/utils/prepare-destination.js","../../../node_modules/next/dist/shared/lib/escape-regexp.js","../../../node_modules/next/dist/shared/lib/router/utils/index.js","../../../node_modules/next/dist/shared/lib/router/router.js","../../../node_modules/next/dist/lib/is-error.js","../../../node_modules/next/dist/client/normalize-trailing-slash.js","../../../node_modules/next/dist/client/route-loader.js","../../../node_modules/next/dist/client/script.js","../../../node_modules/next/dist/client/detect-domain-locale.js","../../../node_modules/next/dist/client/add-locale.js","../../../node_modules/next/dist/client/remove-locale.js","../../../node_modules/next/dist/client/add-base-path.js","../../../node_modules/next/dist/client/trusted-types.js","../../../node_modules/next/dist/client/request-idle-callback.js","../../../node_modules/next/dist/client/head-manager.js","../../../node_modules/@swc/helpers/lib/_extends.js","../../../node_modules/@swc/helpers/package.json","../../../node_modules/@swc/helpers/lib/_interop_require_default.js","../../../node_modules/@swc/helpers/lib/_interop_require_wildcard.js","../../../node_modules/@swc/helpers/lib/_async_to_generator.js","../../../node_modules/next/dist/client/with-router.js","../../../node_modules/next/dist/shared/lib/router/utils/parse-url.js","../../../node_modules/@swc/helpers/lib/_object_without_properties_loose.js","../../../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../../../node_modules/next/dist/compiled/path-to-regexp/index.js","../../../node_modules/next/dist/compiled/react-is/package.json","../../../node_modules/next/dist/compiled/react-is/index.js","../../../node_modules/next/dist/compiled/react-is/cjs/react-is.production.min.js","../../../node_modules/next/dist/compiled/react-is/cjs/react-is.development.js","../../../src/components/search/SearchDropdown/index.ts","../../../package.json"]}
@@ -0,0 +1,81 @@
1
+ <!DOCTYPE html><html lang="en-US"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="next-head-count" content="2"/><script type="text/partytown">!window.location.search.includes('gtm_debug=')&&
2
+ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
3
+ new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
4
+ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
5
+ 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
6
+ })(window,document,'script',"dataLayer","GTM-PGHZ95N");</script><script type="text/javascript">window.location.search.includes('gtm_debug=')&&
7
+ (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
8
+ new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
9
+ j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
10
+ 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
11
+ })(window,document,'script',"dataLayer","GTM-PGHZ95N");</script><script type="text/partytown">
12
+ window.sendrc=function(en,ed){window.NavigationCapture&&window.NavigationCapture.sendEvent(en,ed)};
13
+ </script><script type="text/partytown" async="" src="https://io.vtex.com.br/rc/rc.js"></script><script>!(function(w,p,f,c){c=w[p]=w[p]||{};c[f]=(c[f]||[]).concat(["dataLayer.push","sendrc"])})(window,'partytown','forward');/* Partytown 0.6.4 - MIT builder.io */
14
+ !function(t,e,n,i,r,o,a,d,s,c,p,l){function u(){l||(l=1,"/"==(a=(o.lib||"/~partytown/")+(o.debug?"debug/":""))[0]&&(s=e.querySelectorAll('script[type="text/partytown"]'),i!=t?i.dispatchEvent(new CustomEvent("pt1",{detail:t})):(d=setTimeout(w,1e4),e.addEventListener("pt0",f),r?h(1):n.serviceWorker?n.serviceWorker.register(a+(o.swPath||"partytown-sw.js"),{scope:a}).then((function(t){t.active?h():t.installing&&t.installing.addEventListener("statechange",(function(t){"activated"==t.target.state&&h()}))}),console.error):w())))}function h(t){c=e.createElement(t?"script":"iframe"),t||(c.setAttribute("style","display:block;width:0;height:0;border:0;visibility:hidden"),c.setAttribute("aria-hidden",!0)),c.src=a+"partytown-"+(t?"atomics.js?v=0.6.4":"sandbox-sw.html?"+Date.now()),e.body.appendChild(c)}function w(t,n){for(f(),t=0;t<s.length;t++)(n=e.createElement("script")).innerHTML=s[t].innerHTML,e.head.appendChild(n);c&&c.parentNode.removeChild(c)}function f(){clearTimeout(d)}o=t.partytown||{},i==t&&(o.forward||[]).map((function(e){p=t,e.split(".").map((function(e,n,i){p=p[i[n]]=n+1<i.length?"push"==i[n+1]?[]:p[i[n]]||{}:function(){(t._ptf=t._ptf||[]).push(i,arguments)}}))})),"complete"==e.readyState?u():(t.addEventListener("DOMContentLoaded",u),t.addEventListener("load",u))}(window,document,navigator,top,window.crossOriginIsolated);document.currentScript.dataset.partytown="";</script><link rel="preload" href="/_next/static/css/bde408cc006e64f8.css" as="style"/><link rel="stylesheet" href="/_next/static/css/bde408cc006e64f8.css" data-n-g=""/><link rel="preload" href="/_next/static/css/a13a9f9cd349d906.css" as="style"/><link rel="stylesheet" href="/_next/static/css/a13a9f9cd349d906.css" data-n-p=""/><link rel="preload" href="/_next/static/css/e02cdad8fc000339.css" as="style"/><link rel="stylesheet" href="/_next/static/css/e02cdad8fc000339.css" data-n-p=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-976c8f7df8e3dea3.js" defer=""></script><script src="/_next/static/chunks/framework-dfd14d7ce6600b03.js" defer=""></script><script src="/_next/static/chunks/main-fd466221927468fd.js" defer=""></script><script src="/_next/static/chunks/pages/_app-3e4e7e579cb0681a.js" defer=""></script><script src="/_next/static/chunks/391-47b923ef44945418.js" defer=""></script><script src="/_next/static/chunks/545-1d3d08edfd2ee4c6.js" defer=""></script><script src="/_next/static/chunks/377-61e89c711b136605.js" defer=""></script><script src="/_next/static/chunks/pages/404-459452495a0df278.js" defer=""></script><script src="/_next/static/d4K49oW-EfaWNefvNv5AZ/_buildManifest.js" defer=""></script><script src="/_next/static/d4K49oW-EfaWNefvNv5AZ/_ssgManifest.js" defer=""></script></head><body class="theme"><div id="__next"><style>
15
+ #nprogress {
16
+ pointer-events: none;
17
+ }
18
+ #nprogress .bar {
19
+ background: var(--fs-color-primary-bkg);;
20
+ position: fixed;
21
+ z-index: 9999;
22
+ top: 0;
23
+ left: 0;
24
+ width: 100%;
25
+ height: 3px;
26
+ }
27
+ #nprogress .peg {
28
+ display: block;
29
+ position: absolute;
30
+ right: 0px;
31
+ width: 100px;
32
+ height: 100%;
33
+ box-shadow: 0 0 10px var(--fs-color-primary-bkg);, 0 0 5px var(--fs-color-primary-bkg);;
34
+ opacity: 1;
35
+ -webkit-transform: rotate(3deg) translate(0px, -4px);
36
+ -ms-transform: rotate(3deg) translate(0px, -4px);
37
+ transform: rotate(3deg) translate(0px, -4px);
38
+ }
39
+ #nprogress .spinner {
40
+ display: block;
41
+ position: fixed;
42
+ z-index: 1031;
43
+ top: 15px;
44
+ right: 15px;
45
+ }
46
+ #nprogress .spinner-icon {
47
+ width: 18px;
48
+ height: 18px;
49
+ box-sizing: border-box;
50
+ border: solid 2px transparent;
51
+ border-top-color: var(--fs-color-primary-bkg);;
52
+ border-left-color: var(--fs-color-primary-bkg);;
53
+ border-radius: 50%;
54
+ -webkit-animation: nprogresss-spinner 400ms linear infinite;
55
+ animation: nprogress-spinner 400ms linear infinite;
56
+ }
57
+ .nprogress-custom-parent {
58
+ overflow: hidden;
59
+ position: relative;
60
+ }
61
+ .nprogress-custom-parent #nprogress .spinner,
62
+ .nprogress-custom-parent #nprogress .bar {
63
+ position: absolute;
64
+ }
65
+ @-webkit-keyframes nprogress-spinner {
66
+ 0% {
67
+ -webkit-transform: rotate(0deg);
68
+ }
69
+ 100% {
70
+ -webkit-transform: rotate(360deg);
71
+ }
72
+ }
73
+ @keyframes nprogress-spinner {
74
+ 0% {
75
+ transform: rotate(0deg);
76
+ }
77
+ 100% {
78
+ transform: rotate(360deg);
79
+ }
80
+ }
81
+ </style><section class="section section_section__YiggP section-alert"><div role="alert" data-fs-alert="true" data-testid="fs-alert" data-fs-alert-dismissible="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#BellRinging"></use></svg><p data-fs-alert-content="true">Get 10% off today: NEW10!</p><a data-fs-link="true" data-fs-link-variant="inline" data-fs-link-size="regular" data-testid="fs-link" data-fs-alert-link="true" href="/office" target="_self">Buy now</a><button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-icon-button" data-fs-icon-button="true" aria-label="Close" data-fs-alert-button="true"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#X"></use></svg></span></div></button></div></section><header class="section section_section__dPVmH section-navbar"><header data-fs-navbar="true" data-testid="fs-navbar" data-fs-navbar-scroll=""><section data-fs-navbar-header="true" data-testid="fs-navbar-header"><div data-fs-navbar-row="true" data-testid="fs-navbar-row" class="layout__content"><button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="fs-icon-button" data-fs-icon-button="true" aria-label="List" data-fs-navbar-button-menu="true"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="32" stroke-width="16"><use href="/icons.svg#List"></use></svg></span></div></button><a data-fs-link="true" data-fs-link-variant="default" data-fs-link-size="regular" data-testid="fs-link" data-fs-navbar-logo="true" title="Go to Home" aria-label="Go to Home" href="/"><div data-fs-logo="true"><img data-fs-image="true" alt="Store logo" sizes="15vw" srcSet="https://storeframework.vtexassets.com/unsafe/68x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 68w, https://storeframework.vtexassets.com/unsafe/154x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 154w, https://storeframework.vtexassets.com/unsafe/320x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 320w, https://storeframework.vtexassets.com/unsafe/360x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 360w, https://storeframework.vtexassets.com/unsafe/540x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 540w, https://storeframework.vtexassets.com/unsafe/768x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 768w, https://storeframework.vtexassets.com/unsafe/1280x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 1280w, https://storeframework.vtexassets.com/unsafe/1440x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 1440w" src="https://storeframework.vtexassets.com/unsafe/1440x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png" width="0" height="0" decoding="async" data-nimg="future" loading="lazy" style="color:transparent;width:100%;height:auto"/></div></a><div data-fs-search-input="true" data-fs-search-input-dropdown-visible="false" data-testid="fs-search-input"><form data-fs-search-input-field="true" data-testid="fs-search-input" role="search"><input data-fs-input="true" data-testid="fs-input" aria-label="search" data-fs-search-input-field-input="true" placeholder="Search everything at the store" value=""/><button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-search-button" data-fs-icon-button="true" aria-label="Submit Search" type="submit"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#MagnifyingGlass"></use></svg></span></div></button></form></div><div data-fs-navbar-buttons="true" data-testid="fs-navbar-buttons" data-fs-navbar-search-expanded="false"><div data-fs-search-input="true" data-fs-search-input-dropdown-visible="false" data-testid="fs-search-input"><form data-fs-search-input-field="true" data-testid="store-input-mobile" role="search"><input data-fs-input="true" data-testid="fs-input" aria-label="search" data-fs-search-input-field-input="true" placeholder="" value=""/><button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="store-input-mobile-button" data-fs-icon-button="true" aria-label="Submit Search" type="submit"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#MagnifyingGlass"></use></svg></span></div></button></form></div><!--$--><a data-fs-button="true" data-fs-link-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="fs-link-button" data-fs-button-signin-link="true" href="/login?orderFormId=" class="text__title-mini" aria-label="User"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="18" height="18" stroke-width="24"><use href="/icons.svg#User"></use></svg></span><span>Sign In</span></div></a><!--/$--><button data-fs-button="true" data-fs-button-size="regular" data-fs-button-variant="tertiary" data-testid="cart-toggle" data-fs-icon-button="true" aria-label="Shopping Cart" data-fs-cart-toggle="true" data-items="0"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="32" stroke-width="16"><use href="/icons.svg#ShoppingCart"></use></svg></span><span><div data-fs-badge="true" data-fs-badge-size="small" data-fs-badge-counter="true" data-testid="fs-badge"><div data-fs-badge-wrapper="true">0</div></div></span></div></button></div></div></section><nav data-fs-navbar-links="true" data-testid="fs-navbar-links" class="hidden-mobile"><div class="layout__content"><button data-fs-button="true" data-fs-button-size="small" data-fs-button-variant="tertiary" data-testid="fs-button"><div data-fs-button-wrapper="true"><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="18" height="18" stroke-width="24"><use href="/icons.svg#MapPin"></use></svg></span><span>Set your location</span></div></button><ul data-fs-list="true" data-testid="fs-navbar-links-list" data-fs-navbar-links-list="true"><li data-fs-navbar-links-list-item="true" data-testid="fs-navbar-links-list-item"><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="regular" data-testid="fs-link" href="/office">Office</a></li><li data-fs-navbar-links-list-item="true" data-testid="fs-navbar-links-list-item"><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="regular" data-testid="fs-link" href="/technology">Technology</a></li></ul></div></nav></header></header><main><section class="section section_section__qqZcd section-region-bar"><div data-fs-region-bar="true" class="display-mobile"><button data-fs-button="true" data-fs-button-size="regular" data-testid="fs-button"><div data-fs-button-wrapper="true"><span><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#MapPin"></use></svg><span data-fs-region-bar-message="true">Set your location</span></span><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#CaretRight"></use></svg></span></div></button></div></section><section class="section section_section__TgowL section-empty-state"><section data-fs-empty-state="true" data-fs-empty-state-variant="default" data-fs-empty-state-bkg-color="light" data-testid="fs-empty-state"><header data-fs-empty-state-title="true"><svg data-fs-icon="true" data-testid="fs-icon" width="56" height="56" stroke-width="8"><use href="/icons.svg#CircleWavyWarning"></use></svg><p>Not Found: 404</p></header><p>This app could not find url <!-- -->/404</p></section></section></main><section class="section section_section__Ox_hX section-footer"><div data-fs-footer="true" data-fs-footer-social="true" data-fs-footer-incentives="true" data-fs-footer-payment-methods="true" class="layout__content-full"><div data-fs-incentives="true" data-fs-incentives-colored="false" data-fs-incentives-variant="horizontal"><ul data-fs-list="true" data-testid="fs-list" class="layout__content"><li><div data-fs-incentive="true" data-testid="store-incentive"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="32" stroke-width="16" data-fs-incentive-icon="true"><use href="/icons.svg#Truck"></use></svg><div data-fs-incentive-content="true"><p data-fs-incentive-title="true"> </p><span data-fs-incentive-description="true">Trusted</span><span data-fs-incentive-description="true">by Safecon</span></div></div></li><li><div data-fs-incentive="true" data-testid="store-incentive"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="32" stroke-width="16" data-fs-incentive-icon="true"><use href="/icons.svg#ShieldCheck"></use></svg><div data-fs-incentive-content="true"><p data-fs-incentive-title="true"> </p><span data-fs-incentive-description="true">Quality</span><span data-fs-incentive-description="true">Products</span></div></div></li><li><div data-fs-incentive="true" data-testid="store-incentive"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="32" stroke-width="16" data-fs-incentive-icon="true"><use href="/icons.svg#Storefront"></use></svg><div data-fs-incentive-content="true"><p data-fs-incentive-title="true"> </p><span data-fs-incentive-description="true">Pickup</span><span data-fs-incentive-description="true">Options</span></div></div></li></ul></div><div data-fs-footer-navigation="true" class="layout__content"><section data-fs-footer="true" data-fs-footer-links="true"><div class="display-mobile"><div data-fs-accordion="true" role="region" data-testid="fs-accordion"><div data-fs-accordion-item="true" data-testid="fs-accordion-item"><button data-fs-button="true" data-fs-button-size="regular" data-testid="fs-accordion-button" id="button--0" data-fs-accordion-button="true" aria-expanded="false" aria-controls="panel--0"><div data-fs-button-wrapper="true"><span>Our company</span><span data-fs-button-icon="true"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16" data-icon="collapsed"><use href="/icons.svg#PlusCircle"></use></svg></span></div></button><div id="panel--0" data-fs-accordion-panel="true" aria-labelledby="button--0" role="region" hidden="" data-testid="fs-accordion-panel"><ul data-fs-list="true" data-testid="fs-list"><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://starter.vtex.app">About Us</a></li></ul></div></div></div></div><div class="hidden-mobile"><nav data-fs-footer-links-columns="true"><div><p data-fs-footer-links-title="true">Our company</p><ul data-fs-list="true" data-testid="fs-list"><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://starter.vtex.app">About Us</a></li></ul></div></nav></div></section><section data-fs-footer-social="true"><p data-fs-footer-social-title="true">Follow Us</p><ul data-fs-list="true" data-testid="fs-list"><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://www.facebook.com" title="Facebook" target="_blank" rel="noopener noreferrer"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#Facebook"></use></svg></a></li><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://www.instagram.com" title="Instagram" target="_blank" rel="noopener noreferrer"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#Instagram"></use></svg></a></li><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://www.pinterest.com" title="Pinterest" target="_blank" rel="noopener noreferrer"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#Pinterest"></use></svg></a></li><li><a data-fs-link="true" data-fs-link-variant="display" data-fs-link-size="small" data-testid="fs-link" href="https://www.twitter.com" title="Twitter" target="_blank" rel="noopener noreferrer"><svg data-fs-icon="true" data-testid="fs-icon" width="24" height="24" stroke-width="16"><use href="/icons.svg#Twitter"></use></svg></a></li></ul></section></div><div data-fs-footer-info="true" class="layout__content"><div data-fs-logo="true"><img data-fs-image="true" alt="Store Logo" sizes="15vw" srcSet="https://storeframework.vtexassets.com/unsafe/68x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 68w, https://storeframework.vtexassets.com/unsafe/154x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 154w, https://storeframework.vtexassets.com/unsafe/320x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 320w, https://storeframework.vtexassets.com/unsafe/360x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 360w, https://storeframework.vtexassets.com/unsafe/540x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 540w, https://storeframework.vtexassets.com/unsafe/768x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 768w, https://storeframework.vtexassets.com/unsafe/1280x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 1280w, https://storeframework.vtexassets.com/unsafe/1440x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png 1440w" src="https://storeframework.vtexassets.com/unsafe/1440x0/center/middle/https%3A%2F%2Fstoreframework.vtexassets.com%2Fassets%2Fvtex.file-manager-graphql%2Fimages%2Fab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png" width="0" height="0" decoding="async" data-nimg="future" loading="lazy" style="color:transparent;width:100%;height:auto"/></div><div data-fs-payment-methods="true" data-testid="fs-payment-methods"><div data-fs-payment-methods-title="true"><p>Payment Methods</p></div><ul data-fs-list="true" data-testid="fs-list" data-fs-payment-methods-flags="true"><li data-fs-payment-methods-flag="true"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="22.5" stroke-width="16"><use href="/icons.svg#Diners"></use></svg><span data-fs-sr-only="true">Diners Club</span></li><li data-fs-payment-methods-flag="true"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="22.5" stroke-width="16"><use href="/icons.svg#Visa"></use></svg><span data-fs-sr-only="true">Visa</span></li><li data-fs-payment-methods-flag="true"><svg data-fs-icon="true" data-testid="fs-icon" width="32" height="22.5" stroke-width="16"><use href="/icons.svg#Mastercard"></use></svg><span data-fs-sr-only="true">Mastercard</span></li></ul></div><div data-fs-footer-copyright="true" class="text__legend"><p></p></div></div></div></section></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"globalSections":{"sections":[{"id":"1681925481186","name":"Alert","data":{"link":{"text":"Buy now","to":"/office"},"dismissible":true,"icon":"BellRinging","content":"Get 10% off today: NEW10!"}},{"id":"1684246619463","name":"Navbar","data":{"logo":{"src":"https://storeframework.vtexassets.com/assets/vtex.file-manager-graphql/images/ab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png","alt":"Store logo"},"signInButton":{"icon":{"icon":"User","alt":"User"},"label":"Sign In","myAccountLabel":"My Account"},"cartIcon":{"icon":"ShoppingCart","alt":"Shopping Cart"},"navigation":{"regionalization":{"enabled":true,"icon":{"icon":"MapPin","alt":"MapPin"},"label":"Set your location"},"pageLinks":[{"text":"Office","url":"/office"},{"text":"Technology","url":"/technology"}],"menu":{"icon":{"icon":"List","alt":"List"}},"home":{"label":"Go to Home"}}}},{"id":"1682000013636","name":"Children","data":{}},{"id":"1683576659989","name":"Footer","data":{"incentives":[{"title":" ","firstLineText":"Trusted","icon":"Truck","secondLineText":"by Safecon"},{"title":" ","firstLineText":"Quality","icon":"ShieldCheck","secondLineText":"Products"},{"title":" ","firstLineText":"Pickup","icon":"Storefront","secondLineText":"Options"}],"footerLinks":[{"items":[{"text":"About Us","url":"https://starter.vtex.app"}],"sectionTitle":"Our company"}],"footerSocial":{"title":"Follow Us","socialLinks":[{"icon":{"icon":"Facebook"},"alt":"Facebook","url":"https://www.facebook.com"},{"icon":{"icon":"Instagram"},"alt":"Instagram","url":"https://www.instagram.com"},{"icon":{"icon":"Pinterest"},"alt":"Pinterest","url":"https://www.pinterest.com"},{"icon":{"icon":"Twitter"},"alt":"Twitter","url":"https://www.twitter.com"}]},"logo":{"src":"https://storeframework.vtexassets.com/assets/vtex.file-manager-graphql/images/ab9997f4-8fd6-46f5-99d2-9d5af3ef5e34___6d75a203771d7408d8f0d1c660a076dd.png","alt":"Store Logo"},"acceptedPaymentMethods":{"showPaymentMethods":true,"title":"Payment Methods","paymentMethods":[{"icon":{"icon":"Diners"},"alt":"Diners Club"},{"icon":{"icon":"Visa"},"alt":"Visa"},{"icon":{"icon":"Mastercard"},"alt":"Mastercard"}]}}}]}},"__N_SSG":true},"page":"/404","query":{},"buildId":"d4K49oW-EfaWNefvNv5AZ","isFallback":false,"gsp":true,"locale":"en-US","locales":["en-US"],"defaultLocale":"en-US","scriptLoader":[]}</script></body></html>