@faststore/core 2.2.0-alpha.8 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -0
- package/.next/build-manifest.json +128 -0
- package/.next/cache/.tsbuildinfo +1 -0
- package/.next/cache/eslint/.cache_1ncte1t +1 -0
- package/.next/cache/next-server.js.nft.json +1 -0
- package/.next/cache/webpack/client-development/0.pack +0 -0
- package/.next/cache/webpack/client-development/1.pack +0 -0
- package/.next/cache/webpack/client-development/10.pack +0 -0
- package/.next/cache/webpack/client-development/11.pack +0 -0
- package/.next/cache/webpack/client-development/12.pack +0 -0
- package/.next/cache/webpack/client-development/13.pack +0 -0
- package/.next/cache/webpack/client-development/14.pack +0 -0
- package/.next/cache/webpack/client-development/15.pack +0 -0
- package/.next/cache/webpack/client-development/16.pack +0 -0
- package/.next/cache/webpack/client-development/17.pack +0 -0
- package/.next/cache/webpack/client-development/2.pack +0 -0
- package/.next/cache/webpack/client-development/3.pack +0 -0
- package/.next/cache/webpack/client-development/4.pack +0 -0
- package/.next/cache/webpack/client-development/5.pack +0 -0
- package/.next/cache/webpack/client-development/6.pack +0 -0
- package/.next/cache/webpack/client-development/7.pack +0 -0
- package/.next/cache/webpack/client-development/8.pack +0 -0
- package/.next/cache/webpack/client-development/9.pack +0 -0
- package/.next/cache/webpack/client-development/index.pack +0 -0
- package/.next/cache/webpack/client-development/index.pack.old +0 -0
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/1.pack +0 -0
- package/.next/cache/webpack/client-production/2.pack +0 -0
- package/.next/cache/webpack/client-production/3.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack.old +0 -0
- package/.next/cache/webpack/server-development/0.pack +0 -0
- package/.next/cache/webpack/server-development/1.pack +0 -0
- package/.next/cache/webpack/server-development/10.pack +0 -0
- package/.next/cache/webpack/server-development/11.pack +0 -0
- package/.next/cache/webpack/server-development/12.pack +0 -0
- package/.next/cache/webpack/server-development/13.pack +0 -0
- package/.next/cache/webpack/server-development/14.pack +0 -0
- package/.next/cache/webpack/server-development/15.pack +0 -0
- package/.next/cache/webpack/server-development/16.pack +0 -0
- package/.next/cache/webpack/server-development/17.pack +0 -0
- package/.next/cache/webpack/server-development/18.pack +0 -0
- package/.next/cache/webpack/server-development/19.pack +0 -0
- package/.next/cache/webpack/server-development/19.pack_ +0 -0
- package/.next/cache/webpack/server-development/2.pack +0 -0
- package/.next/cache/webpack/server-development/20.pack +0 -0
- package/.next/cache/webpack/server-development/21.pack +0 -0
- package/.next/cache/webpack/server-development/3.pack +0 -0
- package/.next/cache/webpack/server-development/4.pack +0 -0
- package/.next/cache/webpack/server-development/5.pack +0 -0
- package/.next/cache/webpack/server-development/6.pack +0 -0
- package/.next/cache/webpack/server-development/7.pack +0 -0
- package/.next/cache/webpack/server-development/8.pack +0 -0
- package/.next/cache/webpack/server-development/9.pack +0 -0
- package/.next/cache/webpack/server-development/index.pack +0 -0
- package/.next/cache/webpack/server-development/index.pack.old +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/1.pack +0 -0
- package/.next/cache/webpack/server-production/2.pack +0 -0
- package/.next/cache/webpack/server-production/3.pack +0 -0
- package/.next/cache/webpack/server-production/4.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack.old +0 -0
- package/.next/export-marker.json +1 -0
- package/.next/images-manifest.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +1 -0
- package/.next/react-loadable-manifest.json +47 -0
- package/.next/required-server-files.json +1 -0
- package/.next/routes-manifest.json +1 -0
- package/.next/server/chunks/117.js +430 -0
- package/.next/server/chunks/177.js +120 -0
- package/.next/server/chunks/183.js +95 -0
- package/.next/server/chunks/184.js +61 -0
- package/.next/server/chunks/289.js +240 -0
- package/.next/server/chunks/312.js +678 -0
- package/.next/server/chunks/350.js +200 -0
- package/.next/server/chunks/37.js +610 -0
- package/.next/server/chunks/386.js +200 -0
- package/.next/server/chunks/387.js +550 -0
- package/.next/server/chunks/52.js +4007 -0
- package/.next/server/chunks/53.js +61 -0
- package/.next/server/chunks/574.js +145 -0
- package/.next/server/chunks/576.js +95 -0
- package/.next/server/chunks/585.js +640 -0
- package/.next/server/chunks/676.js +32 -0
- package/.next/server/chunks/692.js +111 -0
- package/.next/server/chunks/693.js +58 -0
- package/.next/server/chunks/732.js +1880 -0
- package/.next/server/chunks/74.js +3964 -0
- package/.next/server/chunks/779.js +58 -0
- package/.next/server/chunks/817.js +4007 -0
- package/.next/server/chunks/825.js +4074 -0
- package/.next/server/chunks/854.js +72 -0
- package/.next/server/chunks/859.js +959 -0
- package/.next/server/chunks/897.js +1289 -0
- package/.next/server/chunks/98.js +163 -0
- package/.next/server/chunks/988.js +211 -0
- package/.next/server/chunks/font-manifest.json +1 -0
- package/.next/server/font-manifest.json +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/pages/404.js +386 -0
- package/.next/server/pages/404.js.nft.json +1 -0
- package/.next/server/pages/500.js +388 -0
- package/.next/server/pages/500.js.nft.json +1 -0
- package/.next/server/pages/[...slug].js +1084 -0
- package/.next/server/pages/[...slug].js.nft.json +1 -0
- package/.next/server/pages/[slug]/p.js +2274 -0
- package/.next/server/pages/[slug]/p.js.nft.json +1 -0
- package/.next/server/pages/_app.js +279 -0
- package/.next/server/pages/_app.js.nft.json +1 -0
- package/.next/server/pages/_document.js +358 -0
- package/.next/server/pages/_document.js.nft.json +1 -0
- package/.next/server/pages/_error.js +164 -0
- package/.next/server/pages/_error.js.nft.json +1 -0
- package/.next/server/pages/account.js +363 -0
- package/.next/server/pages/account.js.nft.json +1 -0
- package/.next/server/pages/api/graphql.js +457 -0
- package/.next/server/pages/api/graphql.js.nft.json +1 -0
- package/.next/server/pages/api/health/live.js +31 -0
- package/.next/server/pages/api/health/live.js.nft.json +1 -0
- package/.next/server/pages/api/health/ready.js +31 -0
- package/.next/server/pages/api/health/ready.js.nft.json +1 -0
- package/.next/server/pages/api/preview.js +130 -0
- package/.next/server/pages/api/preview.js.nft.json +1 -0
- package/.next/server/pages/checkout.js +363 -0
- package/.next/server/pages/checkout.js.nft.json +1 -0
- package/.next/server/pages/en-US/404.html +81 -0
- package/.next/server/pages/en-US/404.json +1 -0
- package/.next/server/pages/en-US/500.html +81 -0
- package/.next/server/pages/en-US/500.json +1 -0
- package/.next/server/pages/en-US/account.html +81 -0
- package/.next/server/pages/en-US/account.json +1 -0
- package/.next/server/pages/en-US/checkout.html +81 -0
- package/.next/server/pages/en-US/checkout.json +1 -0
- package/.next/server/pages/en-US/login.html +81 -0
- package/.next/server/pages/en-US/login.json +1 -0
- package/.next/server/pages/en-US/s.html +81 -0
- package/.next/server/pages/en-US/s.json +1 -0
- package/.next/server/pages/en-US.html +90 -0
- package/.next/server/pages/en-US.json +1 -0
- package/.next/server/pages/index.js +432 -0
- package/.next/server/pages/index.js.nft.json +1 -0
- package/.next/server/pages/login.js +368 -0
- package/.next/server/pages/login.js.nft.json +1 -0
- package/.next/server/pages/s.js +548 -0
- package/.next/server/pages/s.js.nft.json +1 -0
- package/.next/server/pages-manifest.json +18 -0
- package/.next/server/webpack-api-runtime.js +229 -0
- package/.next/server/webpack-runtime.js +229 -0
- package/.next/static/chunks/251.ffc4f3998ecb915a.js +1 -0
- package/.next/static/chunks/383-6217b37bd38ffd07.js +1 -0
- package/.next/static/chunks/386.d01e0db26c523f0f.js +1 -0
- package/.next/static/chunks/574.70612be06fd1365f.js +1 -0
- package/.next/static/chunks/585.3350efefe61c9461.js +1 -0
- package/.next/static/chunks/635-666ee2cad2925bb7.js +1 -0
- package/.next/static/chunks/651.7142f31ce1e052b3.js +1 -0
- package/.next/static/chunks/721-f1665b3f1d98b7a9.js +1 -0
- package/.next/static/chunks/722-d0cc87aacd616b5d.js +1 -0
- package/.next/static/chunks/741.52f7fb873418346f.js +1 -0
- package/.next/static/chunks/783-ded9d8cda0d5c8d9.js +1 -0
- package/.next/static/chunks/800.851af48fe2ab4a4c.js +1 -0
- package/.next/static/chunks/98.40c7e17d9de4eb8f.js +1 -0
- package/.next/static/chunks/988.afda042dd9ba11d1.js +1 -0
- package/.next/static/chunks/framework-dfd14d7ce6600b03.js +1 -0
- package/.next/static/chunks/main-e4e873ee741162eb.js +1 -0
- package/.next/static/chunks/pages/404-6c674028b2f80cbb.js +1 -0
- package/.next/static/chunks/pages/500-ff55de77265a7e43.js +1 -0
- package/.next/static/chunks/pages/[...slug]-7f8dc13cc9542463.js +1 -0
- package/.next/static/chunks/pages/[slug]/p-2fb3fd9027f2923b.js +1 -0
- package/.next/static/chunks/pages/_app-7db7de3d205714be.js +1 -0
- package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +1 -0
- package/.next/static/chunks/pages/account-b06035cba2c99604.js +1 -0
- package/.next/static/chunks/pages/checkout-f0c3e8d691cb8a54.js +1 -0
- package/.next/static/chunks/pages/index-a141c747fcc197a1.js +1 -0
- package/.next/static/chunks/pages/login-4e0e6cab7a07f1f3.js +1 -0
- package/.next/static/chunks/pages/s-823f8e1cabbf63b3.js +1 -0
- package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
- package/.next/static/chunks/webpack-4bb3d8db2d6302ef.js +1 -0
- package/.next/static/css/527e334fa69cf40a.css +1 -0
- package/.next/static/css/5d1f64b61ea581f4.css +1 -0
- package/.next/static/css/6a7fdc5a21fbead5.css +1 -0
- package/.next/static/css/6e1a7434f061d0ef.css +1 -0
- package/.next/static/css/723835bce380750d.css +1 -0
- package/.next/static/css/8f93a4630936c20b.css +1 -0
- package/.next/static/css/9f79fa103f49bca1.css +1 -0
- package/.next/static/css/a2eefb25a4608343.css +1 -0
- package/.next/static/css/cb7d1fcea42fab9c.css +1 -0
- package/.next/static/css/df588bb98c0b0ca6.css +1 -0
- package/.next/static/css/fd27ecc37832aa54.css +1 -0
- package/.next/static/nWxpZUamURezDcVWQSg4_/_buildManifest.js +1 -0
- package/.next/static/nWxpZUamURezDcVWQSg4_/_ssgManifest.js +1 -0
- package/.next/trace +5 -0
- package/.turbo/turbo-build.log +15 -19
- package/.turbo/turbo-test.log +59 -11
- package/@generated/graphql/index.ts +23 -7
- package/@generated/graphql/persisted.json +3 -3
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/next.config.js +4 -0
- package/package.json +9 -9
- package/public/~partytown/debug/partytown-atomics.js +556 -0
- package/public/~partytown/debug/partytown-media.js +374 -0
- package/public/~partytown/debug/partytown-sandbox-sw.js +543 -0
- package/public/~partytown/debug/partytown-sw.js +59 -0
- package/public/~partytown/debug/partytown-ww-atomics.js +1789 -0
- package/public/~partytown/debug/partytown-ww-sw.js +1781 -0
- package/public/~partytown/debug/partytown.js +72 -0
- package/public/~partytown/partytown-atomics.js +2 -0
- package/public/~partytown/partytown-media.js +2 -0
- package/public/~partytown/partytown-sw.js +2 -0
- package/public/~partytown/partytown.js +2 -0
- package/src/components/search/SearchInput/SearchInput.tsx +12 -1
- package/src/components/search/SearchTop/SearchTop.tsx +7 -1
- package/src/components/ui/ProductDescription/ProductDescription.tsx +6 -1
- package/src/components/ui/ShippingSimulation/ShippingSimulation.tsx +11 -33
- package/src/customizations/fragments/ClientSearchSuggestions.ts +13 -0
- package/src/customizations/fragments/ClientShippingSimulation.ts +11 -0
- package/src/customizations/fragments/ClientTopSearchSuggestions.ts +13 -0
- package/src/experimental/index.ts +2 -24
- package/src/sdk/search/useSuggestions.ts +7 -9
- package/src/sdk/search/useTopSearch.ts +7 -12
- package/src/sdk/shipping/index.ts +6 -4
- package/src/sdk/shipping/useShippingSimulation.ts +33 -56
- package/yarn-error.log +25534 -0
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.id = 53;
|
|
3
|
+
exports.ids = [53];
|
|
4
|
+
exports.modules = {
|
|
5
|
+
|
|
6
|
+
/***/ 9767:
|
|
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 */ });
|
|
12
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
|
|
13
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
14
|
+
/* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5450);
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
const Price = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(function Price({ value, as: Component = 'span', variant = 'selling', testId = 'fs-price', formatter = (price) => price, SRText, ...otherProps }, ref) {
|
|
18
|
+
const formattedPrice = formatter(value, variant);
|
|
19
|
+
return (react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Component, { ref: ref, "data-fs-price": true, "data-fs-price-variant": variant, "data-testid": testId, ...otherProps },
|
|
20
|
+
SRText && react__WEBPACK_IMPORTED_MODULE_0___default().createElement(___WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z, { text: SRText }),
|
|
21
|
+
formattedPrice));
|
|
22
|
+
});
|
|
23
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Price);
|
|
24
|
+
//# sourceMappingURL=Price.js.map
|
|
25
|
+
|
|
26
|
+
/***/ }),
|
|
27
|
+
|
|
28
|
+
/***/ 5346:
|
|
29
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
30
|
+
|
|
31
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
32
|
+
/* harmony export */ "P": () => (/* binding */ useFormattedPrice)
|
|
33
|
+
/* harmony export */ });
|
|
34
|
+
/* unused harmony export usePriceFormatter */
|
|
35
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6689);
|
|
36
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
37
|
+
/* harmony import */ var _session__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7295);
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
const usePriceFormatter = ({
|
|
41
|
+
decimals
|
|
42
|
+
} = {}) => {
|
|
43
|
+
const {
|
|
44
|
+
currency,
|
|
45
|
+
locale
|
|
46
|
+
} = (0,_session__WEBPACK_IMPORTED_MODULE_1__/* .useSession */ .kP)();
|
|
47
|
+
return (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(price => Intl.NumberFormat(locale, {
|
|
48
|
+
style: 'currency',
|
|
49
|
+
currency: currency.code,
|
|
50
|
+
minimumFractionDigits: decimals ? 2 : 0
|
|
51
|
+
}).format(price), [currency.code, locale, decimals]);
|
|
52
|
+
};
|
|
53
|
+
const useFormattedPrice = price => {
|
|
54
|
+
const formatter = usePriceFormatter();
|
|
55
|
+
return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => formatter(price), [formatter, price]);
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/***/ })
|
|
59
|
+
|
|
60
|
+
};
|
|
61
|
+
;
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.id = 574;
|
|
3
|
+
exports.ids = [574];
|
|
4
|
+
exports.modules = {
|
|
5
|
+
|
|
6
|
+
/***/ 3574:
|
|
7
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
+
|
|
9
|
+
// ESM COMPAT FLAG
|
|
10
|
+
__webpack_require__.r(__webpack_exports__);
|
|
11
|
+
|
|
12
|
+
// EXPORTS
|
|
13
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
14
|
+
"default": () => (/* binding */ search)
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
// EXTERNAL MODULE: ./faststore.config.js
|
|
18
|
+
var faststore_config = __webpack_require__(7183);
|
|
19
|
+
var faststore_config_default = /*#__PURE__*/__webpack_require__.n(faststore_config);
|
|
20
|
+
;// CONCATENATED MODULE: ./src/utils/getCookie.ts
|
|
21
|
+
function getCookie(name) {
|
|
22
|
+
const cookieString = decodeURIComponent(document.cookie);
|
|
23
|
+
const cookies = cookieString.split(';');
|
|
24
|
+
|
|
25
|
+
for (const cookie of cookies) {
|
|
26
|
+
const [cookieName, cookieValue] = cookie.trim().split('=');
|
|
27
|
+
|
|
28
|
+
if (cookieName === name) {
|
|
29
|
+
return cookieValue;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
return undefined; // Cookie not found
|
|
34
|
+
}
|
|
35
|
+
;// CONCATENATED MODULE: ./src/sdk/analytics/platform/vtex/search.ts
|
|
36
|
+
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; }
|
|
37
|
+
|
|
38
|
+
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; }
|
|
39
|
+
|
|
40
|
+
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; }
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* More info at: https://www.notion.so/vtexhandbook/Event-API-Documentation-48eee26730cf4d7f80f8fd7262231f84
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
const THIRTY_MINUTES_S = 30 * 60;
|
|
48
|
+
const ONE_YEAR_S = 365 * 24 * 3600;
|
|
49
|
+
|
|
50
|
+
const randomUUID = () => typeof crypto.randomUUID === 'function' ? crypto.randomUUID() : (Math.random() * 1e6).toFixed(0);
|
|
51
|
+
|
|
52
|
+
const createCookie = (key, expiresSecond) => {
|
|
53
|
+
// Setting the domain attribute specifies which host can receive it; we need it to make the cookies available on the `secure` subdomain.
|
|
54
|
+
// Although https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie mentioned leading dot (.) is not needed and ignored. I couldn't set the cookies without it.
|
|
55
|
+
const urlDomain = `.${new URL((faststore_config_default()).storeUrl).hostname}`;
|
|
56
|
+
return () => {
|
|
57
|
+
const isExpired = getCookie(key) === undefined;
|
|
58
|
+
|
|
59
|
+
if (isExpired) {
|
|
60
|
+
const value = randomUUID();
|
|
61
|
+
document.cookie = `${key}=${value}; max-age=${expiresSecond}; domain=${urlDomain}; path=/;`; // Setting the `path=/` makes the cookie accessible on any path of the domain/subdomain
|
|
62
|
+
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return getCookie(key);
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const user = {
|
|
71
|
+
anonymous: createCookie('vtex-faststore-anonymous', ONE_YEAR_S),
|
|
72
|
+
session: createCookie('vtex-faststore-session', THIRTY_MINUTES_S)
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const sendEvent = options => fetch(`https://sp.vtex.com/event-api/v1/${(faststore_config_default()).api.storeId}/event`, {
|
|
76
|
+
method: 'POST',
|
|
77
|
+
body: JSON.stringify(_objectSpread(_objectSpread({}, options), {}, {
|
|
78
|
+
userAgent: navigator.userAgent,
|
|
79
|
+
anonymous: user.anonymous(),
|
|
80
|
+
session: user.session()
|
|
81
|
+
})),
|
|
82
|
+
headers: {
|
|
83
|
+
'content-type': 'application/json'
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
const isFullTextSearch = url => typeof url.searchParams.get('q') === 'string' && /^\/s(\/)?$/g.test(url.pathname);
|
|
88
|
+
|
|
89
|
+
const handleEvent = event => {
|
|
90
|
+
switch (event.name) {
|
|
91
|
+
case 'search_select_item':
|
|
92
|
+
{
|
|
93
|
+
const url = new URL(event.params.url);
|
|
94
|
+
|
|
95
|
+
if (!isFullTextSearch(url)) {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
for (const item of event.params.items ?? []) {
|
|
100
|
+
const productId = item.item_id ?? item.item_variant;
|
|
101
|
+
const position = item.index;
|
|
102
|
+
|
|
103
|
+
if (productId && position) {
|
|
104
|
+
sendEvent({
|
|
105
|
+
type: 'search.click',
|
|
106
|
+
productId,
|
|
107
|
+
position,
|
|
108
|
+
url: url.href,
|
|
109
|
+
text: url.searchParams.get('q') ?? '<empty>'
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
case 'intelligent_search_query':
|
|
118
|
+
{
|
|
119
|
+
sendEvent({
|
|
120
|
+
type: 'search.query',
|
|
121
|
+
url: event.params.url,
|
|
122
|
+
text: event.params.term,
|
|
123
|
+
misspelled: event.params.isTermMisspelled,
|
|
124
|
+
match: event.params.totalCount,
|
|
125
|
+
operator: event.params.logicalOperator,
|
|
126
|
+
locale: event.params.locale
|
|
127
|
+
});
|
|
128
|
+
break;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
default:
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
setInterval(() => sendEvent({
|
|
136
|
+
type: 'session.ping'
|
|
137
|
+
}), 60 * 1e3
|
|
138
|
+
/* One minute */
|
|
139
|
+
);
|
|
140
|
+
/* harmony default export */ const search = (handleEvent);
|
|
141
|
+
|
|
142
|
+
/***/ })
|
|
143
|
+
|
|
144
|
+
};
|
|
145
|
+
;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
exports.id = 576;
|
|
2
|
+
exports.ids = [576];
|
|
3
|
+
exports.modules = {
|
|
4
|
+
|
|
5
|
+
/***/ 5576:
|
|
6
|
+
/***/ ((module) => {
|
|
7
|
+
|
|
8
|
+
module.exports = {
|
|
9
|
+
seo: {
|
|
10
|
+
title: 'FastStore Starter',
|
|
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
|
+
cypressVersion: 12,
|
|
88
|
+
enableCypressExtension: false
|
|
89
|
+
}
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
/***/ })
|
|
93
|
+
|
|
94
|
+
};
|
|
95
|
+
;
|