@faststore/core 2.1.83 → 2.1.87
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +2 -2
- package/cms/faststore/sections.json +32 -2
- package/faststore.config.js +1 -1
- package/package.json +2 -2
- package/src/components/navigation/Navbar/Navbar.tsx +3 -4
- package/src/components/navigation/NavbarSlider/NavbarSlider.tsx +4 -5
- package/src/components/sections/Footer/Footer.tsx +14 -2
- package/src/components/sections/Navbar/Navbar.tsx +4 -0
- package/src/sdk/analytics/platform/vtex/search.ts +15 -11
- package/src/utils/getCookie.ts +14 -0
- package/.next/BUILD_ID +0 -1
- package/.next/build-manifest.json +0 -129
- package/.next/cache/.tsbuildinfo +0 -1
- package/.next/cache/config.json +0 -7
- package/.next/cache/eslint/.cache_1gneedd +0 -1
- package/.next/cache/next-server.js.nft.json +0 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/export-marker.json +0 -1
- package/.next/images-manifest.json +0 -1
- package/.next/next-server.js.nft.json +0 -1
- package/.next/package.json +0 -1
- package/.next/prerender-manifest.json +0 -1
- package/.next/react-loadable-manifest.json +0 -44
- package/.next/required-server-files.json +0 -1
- package/.next/routes-manifest.json +0 -1
- package/.next/server/chunks/143.js +0 -106
- package/.next/server/chunks/177.js +0 -120
- package/.next/server/chunks/183.js +0 -94
- package/.next/server/chunks/184.js +0 -61
- package/.next/server/chunks/186.js +0 -113
- package/.next/server/chunks/289.js +0 -239
- package/.next/server/chunks/312.js +0 -697
- package/.next/server/chunks/350.js +0 -143
- package/.next/server/chunks/483.js +0 -650
- package/.next/server/chunks/487.js +0 -9142
- package/.next/server/chunks/53.js +0 -61
- package/.next/server/chunks/530.js +0 -626
- package/.next/server/chunks/576.js +0 -94
- package/.next/server/chunks/650.js +0 -9142
- package/.next/server/chunks/676.js +0 -32
- package/.next/server/chunks/693.js +0 -58
- package/.next/server/chunks/71.js +0 -1254
- package/.next/server/chunks/74.js +0 -4054
- package/.next/server/chunks/753.js +0 -509
- package/.next/server/chunks/779.js +0 -58
- package/.next/server/chunks/825.js +0 -4039
- package/.next/server/chunks/854.js +0 -72
- package/.next/server/chunks/859.js +0 -959
- package/.next/server/chunks/907.js +0 -1911
- package/.next/server/chunks/933.js +0 -517
- package/.next/server/chunks/98.js +0 -124
- package/.next/server/chunks/988.js +0 -211
- package/.next/server/chunks/font-manifest.json +0 -1
- package/.next/server/font-manifest.json +0 -1
- package/.next/server/middleware-build-manifest.js +0 -1
- package/.next/server/middleware-manifest.json +0 -6
- package/.next/server/middleware-react-loadable-manifest.js +0 -1
- package/.next/server/pages/404.js +0 -386
- package/.next/server/pages/404.js.nft.json +0 -1
- package/.next/server/pages/500.js +0 -388
- package/.next/server/pages/500.js.nft.json +0 -1
- package/.next/server/pages/[...slug].js +0 -1005
- package/.next/server/pages/[...slug].js.nft.json +0 -1
- package/.next/server/pages/[slug]/p.js +0 -2269
- package/.next/server/pages/[slug]/p.js.nft.json +0 -1
- package/.next/server/pages/_app.js +0 -280
- package/.next/server/pages/_app.js.nft.json +0 -1
- package/.next/server/pages/_document.js +0 -374
- package/.next/server/pages/_document.js.nft.json +0 -1
- package/.next/server/pages/_error.js +0 -164
- package/.next/server/pages/_error.js.nft.json +0 -1
- package/.next/server/pages/account.js +0 -363
- package/.next/server/pages/account.js.nft.json +0 -1
- package/.next/server/pages/api/graphql.js +0 -365
- package/.next/server/pages/api/graphql.js.nft.json +0 -1
- package/.next/server/pages/api/health/live.js +0 -31
- package/.next/server/pages/api/health/live.js.nft.json +0 -1
- package/.next/server/pages/api/health/ready.js +0 -31
- package/.next/server/pages/api/health/ready.js.nft.json +0 -1
- package/.next/server/pages/api/preview.js +0 -148
- package/.next/server/pages/api/preview.js.nft.json +0 -1
- package/.next/server/pages/checkout.js +0 -363
- package/.next/server/pages/checkout.js.nft.json +0 -1
- package/.next/server/pages/en-US/404.html +0 -81
- package/.next/server/pages/en-US/404.json +0 -1
- package/.next/server/pages/en-US/500.html +0 -81
- package/.next/server/pages/en-US/500.json +0 -1
- package/.next/server/pages/en-US/account.html +0 -81
- package/.next/server/pages/en-US/account.json +0 -1
- package/.next/server/pages/en-US/checkout.html +0 -81
- package/.next/server/pages/en-US/checkout.json +0 -1
- package/.next/server/pages/en-US/login.html +0 -81
- package/.next/server/pages/en-US/login.json +0 -1
- package/.next/server/pages/en-US/s.html +0 -81
- package/.next/server/pages/en-US/s.json +0 -1
- package/.next/server/pages/en-US.html +0 -81
- package/.next/server/pages/en-US.json +0 -1
- package/.next/server/pages/index.js +0 -439
- package/.next/server/pages/index.js.nft.json +0 -1
- package/.next/server/pages/login.js +0 -368
- package/.next/server/pages/login.js.nft.json +0 -1
- package/.next/server/pages/s.js +0 -466
- package/.next/server/pages/s.js.nft.json +0 -1
- package/.next/server/pages-manifest.json +0 -18
- package/.next/server/webpack-api-runtime.js +0 -229
- package/.next/server/webpack-runtime.js +0 -229
- package/.next/static/chunks/143.dd8a556e6957baa1.js +0 -1
- package/.next/static/chunks/148.3bb7e05cc5d1c1c4.js +0 -1
- package/.next/static/chunks/238-e5e4b2094f0e1df8.js +0 -1
- package/.next/static/chunks/243-8f5650ed908aa75c.js +0 -1
- package/.next/static/chunks/530.848b014622932b93.js +0 -1
- package/.next/static/chunks/548-ab84e9e8b49413ab.js +0 -1
- package/.next/static/chunks/603-d1c069aa8a349c86.js +0 -1
- package/.next/static/chunks/651.7142f31ce1e052b3.js +0 -1
- package/.next/static/chunks/709.7bc5a25ce30abda6.js +0 -1
- package/.next/static/chunks/738-67a288ca3569cdbb.js +0 -1
- package/.next/static/chunks/741.52f7fb873418346f.js +0 -1
- package/.next/static/chunks/98.97381d2021f86cd9.js +0 -1
- package/.next/static/chunks/988.d10040040cdfebbb.js +0 -1
- package/.next/static/chunks/framework-dfd14d7ce6600b03.js +0 -1
- package/.next/static/chunks/main-fd466221927468fd.js +0 -1
- package/.next/static/chunks/pages/404-af78f7cd1d3c1f60.js +0 -1
- package/.next/static/chunks/pages/500-f6346ca5f9dc4fef.js +0 -1
- package/.next/static/chunks/pages/[...slug]-ca533c74c22cb787.js +0 -1
- package/.next/static/chunks/pages/[slug]/p-7bb760bb3fcfc0bb.js +0 -1
- package/.next/static/chunks/pages/_app-895781b1c7b5bf56.js +0 -1
- package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +0 -1
- package/.next/static/chunks/pages/account-05bd79fb78365e88.js +0 -1
- package/.next/static/chunks/pages/checkout-c973786e68f25a39.js +0 -1
- package/.next/static/chunks/pages/index-d521ce4f4e2b89a6.js +0 -1
- package/.next/static/chunks/pages/login-8deb9243376b6aa1.js +0 -1
- package/.next/static/chunks/pages/s-0e516ab36bb49c99.js +0 -1
- package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +0 -1
- package/.next/static/chunks/webpack-062512aedeb4b39e.js +0 -1
- package/.next/static/css/0d056c673d2869bb.css +0 -1
- package/.next/static/css/4b7138899cd07c63.css +0 -1
- package/.next/static/css/527e334fa69cf40a.css +0 -1
- package/.next/static/css/6e1a7434f061d0ef.css +0 -1
- package/.next/static/css/9e76fef1c9ca89af.css +0 -1
- package/.next/static/css/a2eefb25a4608343.css +0 -1
- package/.next/static/css/cb7d1fcea42fab9c.css +0 -1
- package/.next/static/css/df588bb98c0b0ca6.css +0 -1
- package/.next/static/css/e3b039e8f5daf95f.css +0 -1
- package/.next/static/css/f0e2d1b8832e935d.css +0 -1
- package/.next/static/jxv75E0IlXYBYk71TulQP/_buildManifest.js +0 -1
- package/.next/static/jxv75E0IlXYBYk71TulQP/_ssgManifest.js +0 -1
- package/.next/trace +0 -80
- package/public/~partytown/debug/partytown-atomics.js +0 -556
- package/public/~partytown/debug/partytown-media.js +0 -374
- package/public/~partytown/debug/partytown-sandbox-sw.js +0 -543
- package/public/~partytown/debug/partytown-sw.js +0 -59
- package/public/~partytown/debug/partytown-ww-atomics.js +0 -1789
- package/public/~partytown/debug/partytown-ww-sw.js +0 -1781
- package/public/~partytown/debug/partytown.js +0 -72
- package/public/~partytown/partytown-atomics.js +0 -2
- package/public/~partytown/partytown-media.js +0 -2
- package/public/~partytown/partytown-sw.js +0 -2
- package/public/~partytown/partytown.js +0 -2
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":1,"config":{"env":{},"webpackDevMiddleware":null,"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"target":"server","poweredByHeader":true,"compress":true,"analyticsId":"","images":{"deviceSizes":[360,540,768,1280,1440],"imageSizes":[34,68,154,320],"path":"/_next/image","loader":"default","domains":["storeframework.vtexassets.com"],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","remotePatterns":[],"unoptimized":false},"devIndicators":{"buildActivity":true,"buildActivityPosition":"bottom-right"},"onDemandEntries":{"maxInactiveAge":15000,"pagesBufferLength":2},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{"additionalData":"@import \"src/customizations/styles/custom-mixins.scss\";"},"trailingSlash":false,"i18n":{"locales":["en-US"],"defaultLocale":"en-US"},"productionBrowserSourceMaps":false,"optimizeFonts":true,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactStrictMode":false,"httpAgentOptions":{"keepAlive":true},"outputFileTracing":true,"staticPageGenerationTimeout":60,"swcMinify":false,"experimental":{"optimisticClientCache":true,"manualClientBasePath":false,"legacyBrowsers":true,"browsersListForSwc":false,"newNextLinkBehavior":false,"cpus":1,"sharedPool":true,"profiling":false,"isrFlushToDisk":true,"workerThreads":false,"pageEnv":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"swcFileReading":true,"craCompat":false,"esmExternals":true,"appDir":false,"isrMemoryCacheSize":52428800,"serverComponents":false,"fullySpecified":false,"outputFileTracingRoot":"","swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"adjustFontFallbacks":false,"trustHostHeader":false},"configFileName":"next.config.js"},"appDir":"/home/runner/work/faststore/faststore/packages/core","files":[".next/routes-manifest.json",".next/server/pages-manifest.json",".next/build-manifest.json",".next/prerender-manifest.json",".next/server/middleware-manifest.json",".next/react-loadable-manifest.json",".next/server/font-manifest.json",".next/BUILD_ID"],"ignore":["node_modules/next/dist/compiled/@ampproject/toolbox-optimizer/**/*"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"pages404":true,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","locale":false,"internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"}],"headers":[],"dynamicRoutes":[{"page":"/[slug]/p","regex":"^/([^/]+?)/p(?:/)?$","routeKeys":{"slug":"slug"},"namedRegex":"^/(?<slug>[^/]+?)/p(?:/)?$"},{"page":"/[...slug]","regex":"^/(.+?)(?:/)?$","routeKeys":{"slug":"slug"},"namedRegex":"^/(?<slug>.+?)(?:/)?$"}],"staticRoutes":[{"page":"/","regex":"^/(?:/)?$","routeKeys":{},"namedRegex":"^/(?:/)?$"},{"page":"/404","regex":"^/404(?:/)?$","routeKeys":{},"namedRegex":"^/404(?:/)?$"},{"page":"/500","regex":"^/500(?:/)?$","routeKeys":{},"namedRegex":"^/500(?:/)?$"},{"page":"/account","regex":"^/account(?:/)?$","routeKeys":{},"namedRegex":"^/account(?:/)?$"},{"page":"/checkout","regex":"^/checkout(?:/)?$","routeKeys":{},"namedRegex":"^/checkout(?:/)?$"},{"page":"/login","regex":"^/login(?:/)?$","routeKeys":{},"namedRegex":"^/login(?:/)?$"},{"page":"/s","regex":"^/s(?:/)?$","routeKeys":{},"namedRegex":"^/s(?:/)?$"}],"dataRoutes":[{"page":"/","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/index.json$"},{"page":"/404","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/404.json$"},{"page":"/500","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/500.json$"},{"page":"/account","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/account.json$"},{"page":"/checkout","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/checkout.json$"},{"page":"/login","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/login.json$"},{"page":"/s","dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/s.json$"},{"page":"/[slug]/p","routeKeys":{"slug":"slug"},"dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/([^/]+?)/p\\.json$","namedDataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/(?<slug>[^/]+?)/p\\.json$"},{"page":"/[...slug]","routeKeys":{"slug":"slug"},"dataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/(.+?)\\.json$","namedDataRouteRegex":"^/_next/data/jxv75E0IlXYBYk71TulQP/(?<slug>.+?)\\.json$"}],"i18n":{"locales":["en-US"],"defaultLocale":"en-US"},"rewrites":[]}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.id = 143;
|
|
3
|
-
exports.ids = [143];
|
|
4
|
-
exports.modules = {
|
|
5
|
-
|
|
6
|
-
/***/ 29143:
|
|
7
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
-
|
|
9
|
-
__webpack_require__.r(__webpack_exports__);
|
|
10
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
11
|
-
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
12
|
-
/* harmony export */ });
|
|
13
|
-
/* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(97183);
|
|
14
|
-
/* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_0__);
|
|
15
|
-
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; }
|
|
16
|
-
|
|
17
|
-
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; }
|
|
18
|
-
|
|
19
|
-
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; }
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* More info at: https://www.notion.so/vtexhandbook/Event-API-Documentation-48eee26730cf4d7f80f8fd7262231f84
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
const THIRTY_MINUTES_S = 30 * 60;
|
|
26
|
-
const ONE_YEAR_S = 365 * 24 * 3600;
|
|
27
|
-
|
|
28
|
-
const randomUUID = () => typeof crypto.randomUUID === 'function' ? crypto.randomUUID() : (Math.random() * 1e6).toFixed(0);
|
|
29
|
-
|
|
30
|
-
const createStorage = (key, expiresSecond) => {
|
|
31
|
-
const timelapsed = past => (Date.now() - past) / 1e3;
|
|
32
|
-
|
|
33
|
-
return () => {
|
|
34
|
-
const item = JSON.parse(localStorage.getItem(key) ?? 'null');
|
|
35
|
-
const isExpired = !item || timelapsed(item.createdAt) > expiresSecond;
|
|
36
|
-
const payload = isExpired ? randomUUID() : item.payload;
|
|
37
|
-
|
|
38
|
-
if (isExpired) {
|
|
39
|
-
const data = {
|
|
40
|
-
payload,
|
|
41
|
-
createdAt: Date.now()
|
|
42
|
-
};
|
|
43
|
-
localStorage.setItem(key, JSON.stringify(data));
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
return payload;
|
|
47
|
-
};
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
const user = {
|
|
51
|
-
anonymous: createStorage('vtex.search.anonymous', ONE_YEAR_S),
|
|
52
|
-
session: createStorage('vtex.search.session', THIRTY_MINUTES_S)
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const sendEvent = options => fetch(`https://sp.vtex.com/event-api/v1/${(_faststore_config__WEBPACK_IMPORTED_MODULE_0___default().api.storeId)}/event`, {
|
|
56
|
-
method: 'POST',
|
|
57
|
-
body: JSON.stringify(_objectSpread(_objectSpread({}, options), {}, {
|
|
58
|
-
userAgent: navigator.userAgent,
|
|
59
|
-
anonymous: user.anonymous(),
|
|
60
|
-
session: user.session()
|
|
61
|
-
})),
|
|
62
|
-
headers: {
|
|
63
|
-
'content-type': 'application/json'
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
const isFullTextSearch = url => typeof url.searchParams.get('q') === 'string' && /^\/s(\/)?$/g.test(url.pathname);
|
|
68
|
-
|
|
69
|
-
const handleEvent = event => {
|
|
70
|
-
if (event.name !== 'search_select_item') {
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const url = new URL(event.params.url);
|
|
75
|
-
|
|
76
|
-
if (!isFullTextSearch(url)) {
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
for (const item of event.params.items ?? []) {
|
|
81
|
-
const productId = item.item_id ?? item.item_variant;
|
|
82
|
-
const position = item.index;
|
|
83
|
-
|
|
84
|
-
if (productId && position) {
|
|
85
|
-
sendEvent({
|
|
86
|
-
type: 'search.click',
|
|
87
|
-
productId,
|
|
88
|
-
position,
|
|
89
|
-
url: url.href,
|
|
90
|
-
text: url.searchParams.get('q') ?? '<empty>'
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
|
|
96
|
-
setInterval(() => sendEvent({
|
|
97
|
-
type: 'session.ping'
|
|
98
|
-
}), 60 * 1e3
|
|
99
|
-
/* One minute */
|
|
100
|
-
);
|
|
101
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (handleEvent);
|
|
102
|
-
|
|
103
|
-
/***/ })
|
|
104
|
-
|
|
105
|
-
};
|
|
106
|
-
;
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.id = 177;
|
|
3
|
-
exports.ids = [177];
|
|
4
|
-
exports.modules = {
|
|
5
|
-
|
|
6
|
-
/***/ 16652:
|
|
7
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
-
|
|
9
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
10
|
-
/* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__),
|
|
11
|
-
/* harmony export */ "l": () => (/* binding */ useUI)
|
|
12
|
-
/* harmony export */ });
|
|
13
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
|
|
14
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
15
|
-
|
|
16
|
-
const reducer = (state, action) => {
|
|
17
|
-
const { type } = action;
|
|
18
|
-
switch (type) {
|
|
19
|
-
case 'open': {
|
|
20
|
-
const { payload } = action;
|
|
21
|
-
document.body.classList.add('no-scroll');
|
|
22
|
-
return {
|
|
23
|
-
...state,
|
|
24
|
-
[payload]: true,
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
case 'close': {
|
|
28
|
-
const { payload } = action;
|
|
29
|
-
document.body.classList.remove('no-scroll');
|
|
30
|
-
return {
|
|
31
|
-
...state,
|
|
32
|
-
[payload]: false,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
case 'pushToast': {
|
|
36
|
-
return {
|
|
37
|
-
...state,
|
|
38
|
-
toasts: [...state.toasts, action.payload],
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
case 'popToast': {
|
|
42
|
-
return {
|
|
43
|
-
...state,
|
|
44
|
-
toasts: state.toasts.slice(1),
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
default:
|
|
48
|
-
throw new Error(`Action ${type} not implemented`);
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
const initializer = () => ({
|
|
52
|
-
cart: false,
|
|
53
|
-
modal: false,
|
|
54
|
-
navbar: false,
|
|
55
|
-
filter: false,
|
|
56
|
-
toasts: [],
|
|
57
|
-
});
|
|
58
|
-
const UIContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined);
|
|
59
|
-
function UIProvider({ children }) {
|
|
60
|
-
const [ui, dispatch] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useReducer)(reducer, undefined, initializer);
|
|
61
|
-
const callbacks = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
|
|
62
|
-
openFilter: () => dispatch({ type: 'open', payload: 'filter' }),
|
|
63
|
-
closeFilter: () => dispatch({ type: 'close', payload: 'filter' }),
|
|
64
|
-
openNavbar: () => dispatch({ type: 'open', payload: 'navbar' }),
|
|
65
|
-
closeNavbar: () => dispatch({ type: 'close', payload: 'navbar' }),
|
|
66
|
-
openCart: () => dispatch({ type: 'open', payload: 'cart' }),
|
|
67
|
-
closeCart: () => dispatch({ type: 'close', payload: 'cart' }),
|
|
68
|
-
openModal: () => dispatch({ type: 'open', payload: 'modal' }),
|
|
69
|
-
closeModal: () => dispatch({ type: 'close', payload: 'modal' }),
|
|
70
|
-
pushToast: (toast) => dispatch({ type: 'pushToast', payload: toast }),
|
|
71
|
-
popToast: () => dispatch({ type: 'popToast' }),
|
|
72
|
-
}), []);
|
|
73
|
-
const value = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => ({
|
|
74
|
-
...ui,
|
|
75
|
-
...callbacks,
|
|
76
|
-
}), [callbacks, ui]);
|
|
77
|
-
return react__WEBPACK_IMPORTED_MODULE_0___default().createElement(UIContext.Provider, { value: value }, children);
|
|
78
|
-
}
|
|
79
|
-
function useUI() {
|
|
80
|
-
const context = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(UIContext);
|
|
81
|
-
if (context === undefined) {
|
|
82
|
-
throw new Error('Missing UI context on React tree');
|
|
83
|
-
}
|
|
84
|
-
return context;
|
|
85
|
-
}
|
|
86
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (UIProvider);
|
|
87
|
-
//# sourceMappingURL=UIProvider.js.map
|
|
88
|
-
|
|
89
|
-
/***/ }),
|
|
90
|
-
|
|
91
|
-
/***/ 14950:
|
|
92
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
93
|
-
|
|
94
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
95
|
-
/* harmony export */ "Wg": () => (/* binding */ unwrap),
|
|
96
|
-
/* harmony export */ "re": () => (/* binding */ wrap),
|
|
97
|
-
/* harmony export */ "vi": () => (/* binding */ ANALYTICS_EVENT_TYPE)
|
|
98
|
-
/* harmony export */ });
|
|
99
|
-
/* unused harmony export STORE_EVENT_PREFIX */
|
|
100
|
-
const STORE_EVENT_PREFIX = 'store:';
|
|
101
|
-
const ANALYTICS_EVENT_TYPE = 'AnalyticsEvent';
|
|
102
|
-
const wrap = (event) => ({
|
|
103
|
-
name: ANALYTICS_EVENT_TYPE,
|
|
104
|
-
params: {
|
|
105
|
-
...event,
|
|
106
|
-
name: `${STORE_EVENT_PREFIX}${event.name}`,
|
|
107
|
-
},
|
|
108
|
-
});
|
|
109
|
-
const unwrap = (event) => {
|
|
110
|
-
return {
|
|
111
|
-
...event.params,
|
|
112
|
-
name: event.params.name.slice(STORE_EVENT_PREFIX.length, event.params.name.length),
|
|
113
|
-
};
|
|
114
|
-
};
|
|
115
|
-
//# sourceMappingURL=wrap.js.map
|
|
116
|
-
|
|
117
|
-
/***/ })
|
|
118
|
-
|
|
119
|
-
};
|
|
120
|
-
;
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
exports.id = 183;
|
|
2
|
-
exports.ids = [183];
|
|
3
|
-
exports.modules = {
|
|
4
|
-
|
|
5
|
-
/***/ 97183:
|
|
6
|
-
/***/ ((module) => {
|
|
7
|
-
|
|
8
|
-
module.exports = {
|
|
9
|
-
seo: {
|
|
10
|
-
title: 'NextJSStore',
|
|
11
|
-
description: 'Fast Demo Store',
|
|
12
|
-
titleTemplate: '%s | FastStore',
|
|
13
|
-
author: 'Store Framework'
|
|
14
|
-
},
|
|
15
|
-
// Theming
|
|
16
|
-
theme: 'custom-theme',
|
|
17
|
-
// Ecommerce Platform
|
|
18
|
-
platform: 'vtex',
|
|
19
|
-
// Platform specific configs for API
|
|
20
|
-
api: {
|
|
21
|
-
storeId: 'storeframework',
|
|
22
|
-
workspace: 'master',
|
|
23
|
-
environment: 'vtexcommercestable',
|
|
24
|
-
hideUnavailableItems: false,
|
|
25
|
-
incrementAddress: true
|
|
26
|
-
},
|
|
27
|
-
// Default session
|
|
28
|
-
session: {
|
|
29
|
-
currency: {
|
|
30
|
-
code: 'USD',
|
|
31
|
-
symbol: '$'
|
|
32
|
-
},
|
|
33
|
-
locale: 'en-US',
|
|
34
|
-
channel: '{"salesChannel":"1","regionId":""}',
|
|
35
|
-
country: 'USA',
|
|
36
|
-
deliveryMode: null,
|
|
37
|
-
addressType: null,
|
|
38
|
-
postalCode: null,
|
|
39
|
-
geoCoordinates: null,
|
|
40
|
-
person: null
|
|
41
|
-
},
|
|
42
|
-
// Default cart
|
|
43
|
-
cart: {
|
|
44
|
-
id: '',
|
|
45
|
-
items: [],
|
|
46
|
-
messages: [],
|
|
47
|
-
shouldSplitItem: true
|
|
48
|
-
},
|
|
49
|
-
// Production URLs
|
|
50
|
-
storeUrl: 'https://vtexfaststore.com',
|
|
51
|
-
secureSubdomain: 'https://secure.vtexfaststore.com',
|
|
52
|
-
checkoutUrl: 'https://secure.vtexfaststore.com/checkout',
|
|
53
|
-
loginUrl: 'https://secure.vtexfaststore.com/api/io/login',
|
|
54
|
-
accountUrl: 'https://secure.vtexfaststore.com/api/io/account',
|
|
55
|
-
// Preview redirects
|
|
56
|
-
previewRedirects: {
|
|
57
|
-
home: '/',
|
|
58
|
-
plp: '/office',
|
|
59
|
-
search: '/s?q=headphone',
|
|
60
|
-
pdp: '/apple-magic-mouse/p'
|
|
61
|
-
},
|
|
62
|
-
// Lighthouse CI
|
|
63
|
-
lighthouse: {
|
|
64
|
-
server: process.env.BASE_SITE_URL || 'http://localhost:3000',
|
|
65
|
-
pages: {
|
|
66
|
-
home: '/',
|
|
67
|
-
pdp: '/apple-magic-mouse/p',
|
|
68
|
-
collection: '/office'
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
// E2E CI
|
|
72
|
-
cypress: {
|
|
73
|
-
pages: {
|
|
74
|
-
home: '/',
|
|
75
|
-
pdp: '/apple-magic-mouse/p',
|
|
76
|
-
collection: '/office',
|
|
77
|
-
collection_2: '/technology',
|
|
78
|
-
collection_filtered: '/office/?category-1=office&marca=acer&facets=category-1%2Cmarca',
|
|
79
|
-
search: '/s?q=orange'
|
|
80
|
-
}
|
|
81
|
-
},
|
|
82
|
-
analytics: {
|
|
83
|
-
// https://developers.google.com/tag-platform/tag-manager/web#standard_web_page_installation,
|
|
84
|
-
gtmContainerId: 'GTM-PGHZ95N'
|
|
85
|
-
},
|
|
86
|
-
experimental: {
|
|
87
|
-
enableCypressExtension: false
|
|
88
|
-
}
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
/***/ })
|
|
92
|
-
|
|
93
|
-
};
|
|
94
|
-
;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.id = 184;
|
|
3
|
-
exports.ids = [184];
|
|
4
|
-
exports.modules = {
|
|
5
|
-
|
|
6
|
-
/***/ 55184:
|
|
7
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
-
|
|
9
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
10
|
-
/* harmony export */ "m": () => (/* binding */ useViewItemListEvent)
|
|
11
|
-
/* harmony export */ });
|
|
12
|
-
/* harmony import */ var _faststore_sdk__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(71072);
|
|
13
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
|
|
14
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
15
|
-
/* harmony import */ var src_sdk_session__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(97295);
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
const useViewItemListEvent = ({
|
|
20
|
-
products,
|
|
21
|
-
title,
|
|
22
|
-
page,
|
|
23
|
-
pageSize
|
|
24
|
-
}) => {
|
|
25
|
-
const {
|
|
26
|
-
currency: {
|
|
27
|
-
code
|
|
28
|
-
}
|
|
29
|
-
} = (0,src_sdk_session__WEBPACK_IMPORTED_MODULE_1__/* .useSession */ .kP)();
|
|
30
|
-
const sendViewItemListEvent = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
|
|
31
|
-
(0,_faststore_sdk__WEBPACK_IMPORTED_MODULE_2__/* .sendAnalyticsEvent */ ._)({
|
|
32
|
-
name: 'view_item_list',
|
|
33
|
-
params: {
|
|
34
|
-
item_list_name: title,
|
|
35
|
-
item_list_id: title,
|
|
36
|
-
items: products.map(({
|
|
37
|
-
node: product
|
|
38
|
-
}, index) => ({
|
|
39
|
-
item_id: product.isVariantOf.productGroupID,
|
|
40
|
-
item_name: product.isVariantOf.name,
|
|
41
|
-
item_brand: product.brand.name,
|
|
42
|
-
item_variant: product.sku,
|
|
43
|
-
price: product.offers.offers[0].price,
|
|
44
|
-
index: page * pageSize + index + 1,
|
|
45
|
-
discount: product.offers.offers[0].listPrice - product.offers.offers[0].price,
|
|
46
|
-
currency: code,
|
|
47
|
-
item_variant_name: product.name,
|
|
48
|
-
product_reference_id: product.gtin
|
|
49
|
-
}))
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}, [code, products, title, page, pageSize]);
|
|
53
|
-
return {
|
|
54
|
-
sendViewItemListEvent
|
|
55
|
-
};
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
/***/ })
|
|
59
|
-
|
|
60
|
-
};
|
|
61
|
-
;
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
exports.id = 186;
|
|
2
|
-
exports.ids = [186];
|
|
3
|
-
exports.modules = {
|
|
4
|
-
|
|
5
|
-
/***/ 6133:
|
|
6
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
7
|
-
|
|
8
|
-
"use strict";
|
|
9
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
10
|
-
/* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
11
|
-
/* harmony export */ });
|
|
12
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
|
|
13
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
14
|
-
|
|
15
|
-
function EmptyState({ testId = 'fs-empty-state', title, titleIcon, variant = 'default', bkgColor = 'default', children, ...otherProps }) {
|
|
16
|
-
return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("section", { "data-fs-empty-state": true, "data-fs-empty-state-variant": variant, "data-fs-empty-state-bkg-color": bkgColor, "data-fs-content": "empty-state", "data-testid": testId, ...otherProps },
|
|
17
|
-
title && (react__WEBPACK_IMPORTED_MODULE_0___default().createElement("header", { "data-fs-empty-state-title": true },
|
|
18
|
-
titleIcon && react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, titleIcon),
|
|
19
|
-
react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, title))),
|
|
20
|
-
children));
|
|
21
|
-
}
|
|
22
|
-
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (EmptyState);
|
|
23
|
-
//# sourceMappingURL=EmptyState.js.map
|
|
24
|
-
|
|
25
|
-
/***/ }),
|
|
26
|
-
|
|
27
|
-
/***/ 11186:
|
|
28
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
29
|
-
|
|
30
|
-
"use strict";
|
|
31
|
-
|
|
32
|
-
// EXPORTS
|
|
33
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
34
|
-
"Z": () => (/* reexport */ sections_EmptyState_EmptyState)
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
// EXTERNAL MODULE: ./src/components/sections/Section/index.ts
|
|
38
|
-
var Section = __webpack_require__(57067);
|
|
39
|
-
// EXTERNAL MODULE: ./src/components/sections/EmptyState/section.module.scss
|
|
40
|
-
var section_module = __webpack_require__(96791);
|
|
41
|
-
var section_module_default = /*#__PURE__*/__webpack_require__.n(section_module);
|
|
42
|
-
// EXTERNAL MODULE: ../components/dist/esm/organisms/EmptyState/EmptyState.js
|
|
43
|
-
var EmptyState = __webpack_require__(6133);
|
|
44
|
-
// EXTERNAL MODULE: ./src/utils/overrides.ts
|
|
45
|
-
var overrides = __webpack_require__(59104);
|
|
46
|
-
;// CONCATENATED MODULE: ./src/customizations/components/overrides/EmptyState.tsx
|
|
47
|
-
// This is an example of how it can be used on the starter.
|
|
48
|
-
const SECTION = 'EmptyState';
|
|
49
|
-
const override = {
|
|
50
|
-
section: SECTION
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
;// CONCATENATED MODULE: ./src/components/sections/EmptyState/Overrides.tsx
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const {
|
|
58
|
-
EmptyState: Overrides_EmptyState
|
|
59
|
-
} = (0,overrides/* getSectionOverrides */.f)({
|
|
60
|
-
EmptyState: EmptyState/* default */.Z
|
|
61
|
-
}, override);
|
|
62
|
-
|
|
63
|
-
// EXTERNAL MODULE: external "react/jsx-runtime"
|
|
64
|
-
var jsx_runtime_ = __webpack_require__(20997);
|
|
65
|
-
;// CONCATENATED MODULE: ./src/components/sections/EmptyState/EmptyState.tsx
|
|
66
|
-
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; }
|
|
67
|
-
|
|
68
|
-
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; }
|
|
69
|
-
|
|
70
|
-
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; }
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
function EmptyState_EmptyState({
|
|
78
|
-
title = Overrides_EmptyState.props.title,
|
|
79
|
-
titleIcon = Overrides_EmptyState.props.titleIcon,
|
|
80
|
-
children
|
|
81
|
-
}) {
|
|
82
|
-
return /*#__PURE__*/jsx_runtime_.jsx(Section/* default */.Z, {
|
|
83
|
-
className: `${(section_module_default()).section} section-empty-state`,
|
|
84
|
-
children: /*#__PURE__*/jsx_runtime_.jsx(Overrides_EmptyState.Component, _objectSpread(_objectSpread({
|
|
85
|
-
bkgColor: "light"
|
|
86
|
-
}, Overrides_EmptyState.props), {}, {
|
|
87
|
-
title: title,
|
|
88
|
-
titleIcon: titleIcon,
|
|
89
|
-
children: children
|
|
90
|
-
}))
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/* harmony default export */ const sections_EmptyState_EmptyState = (EmptyState_EmptyState);
|
|
95
|
-
;// CONCATENATED MODULE: ./src/components/sections/EmptyState/index.ts
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
/***/ }),
|
|
99
|
-
|
|
100
|
-
/***/ 96791:
|
|
101
|
-
/***/ ((module) => {
|
|
102
|
-
|
|
103
|
-
// Exports
|
|
104
|
-
module.exports = {
|
|
105
|
-
"section": "section_section__TgowL",
|
|
106
|
-
"load": "section_load__F5rqW"
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
/***/ })
|
|
111
|
-
|
|
112
|
-
};
|
|
113
|
-
;
|