@faststore/core 2.0.67-alpha.0 → 2.0.70-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.
- package/.next/BUILD_ID +1 -0
- package/.next/build-manifest.json +103 -0
- package/.next/cache/.tsbuildinfo +1 -0
- package/.next/cache/config.json +7 -0
- package/.next/cache/eslint/.cache_1gneedd +1 -0
- package/.next/cache/next-server.js.nft.json +1 -0
- 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 +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 +50 -0
- package/.next/required-server-files.json +1 -0
- package/.next/routes-manifest.json +1 -0
- package/.next/server/chunks/104.js +196 -0
- package/.next/server/chunks/143.js +106 -0
- package/.next/server/chunks/154.js +201 -0
- package/.next/server/chunks/183.js +72 -0
- package/.next/server/chunks/247.js +61 -0
- package/.next/server/chunks/264.js +67 -0
- package/.next/server/chunks/280.js +417 -0
- package/.next/server/chunks/287.js +79 -0
- package/.next/server/chunks/307.js +109 -0
- package/.next/server/chunks/312.js +669 -0
- package/.next/server/chunks/350.js +120 -0
- package/.next/server/chunks/352.js +158 -0
- package/.next/server/chunks/371.js +1480 -0
- package/.next/server/chunks/394.js +3801 -0
- package/.next/server/chunks/439.js +175 -0
- package/.next/server/chunks/444.js +464 -0
- package/.next/server/chunks/465.js +91 -0
- package/.next/server/chunks/528.js +126 -0
- package/.next/server/chunks/576.js +72 -0
- package/.next/server/chunks/650.js +216 -0
- package/.next/server/chunks/676.js +32 -0
- package/.next/server/chunks/731.js +282 -0
- package/.next/server/chunks/732.js +51 -0
- package/.next/server/chunks/746.js +237 -0
- package/.next/server/chunks/849.js +665 -0
- package/.next/server/chunks/854.js +72 -0
- package/.next/server/chunks/859.js +959 -0
- package/.next/server/chunks/872.js +378 -0
- package/.next/server/chunks/881.js +320 -0
- package/.next/server/chunks/898.js +240 -0
- package/.next/server/chunks/914.js +96 -0
- package/.next/server/chunks/953.js +687 -0
- package/.next/server/chunks/98.js +124 -0
- package/.next/server/chunks/992.js +562 -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.nft.json +1 -0
- package/.next/server/pages/500.js.nft.json +1 -0
- package/.next/server/pages/[...slug].js +609 -0
- package/.next/server/pages/[...slug].js.nft.json +1 -0
- package/.next/server/pages/[slug]/p.js +2563 -0
- package/.next/server/pages/[slug]/p.js.nft.json +1 -0
- package/.next/server/pages/_app.js +2069 -0
- package/.next/server/pages/_app.js.nft.json +1 -0
- package/.next/server/pages/_document.js +304 -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.nft.json +1 -0
- package/.next/server/pages/api/graphql.js +259 -0
- package/.next/server/pages/api/graphql.js.nft.json +1 -0
- package/.next/server/pages/api/preview.js +118 -0
- package/.next/server/pages/api/preview.js.nft.json +1 -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/500.html +81 -0
- package/.next/server/pages/en-US/account.html +81 -0
- package/.next/server/pages/en-US/checkout.html +81 -0
- package/.next/server/pages/en-US/login.html +81 -0
- package/.next/server/pages/en-US/s.html +81 -0
- package/.next/server/pages/en-US.html +81 -0
- package/.next/server/pages/en-US.json +1 -0
- package/.next/server/pages/index.js +407 -0
- package/.next/server/pages/index.js.nft.json +1 -0
- package/.next/server/pages/login.js.nft.json +1 -0
- package/.next/server/pages/s.js.nft.json +1 -0
- package/.next/server/pages-manifest.json +16 -0
- package/.next/server/webpack-api-runtime.js +229 -0
- package/.next/server/webpack-runtime.js +229 -0
- package/.next/static/chunks/143.dd8a556e6957baa1.js +1 -0
- package/.next/static/chunks/153-a20e3f2da180607e.js +1 -0
- package/.next/static/chunks/158.b4898013c4a4f10c.js +1 -0
- package/.next/static/chunks/260-994385416f68673d.js +1 -0
- package/.next/static/chunks/307.10facde65af3066a.js +1 -0
- package/.next/static/chunks/337-12ae3c3ff71e4dcf.js +1 -0
- package/.next/static/chunks/351-a4e28d64f48c5269.js +1 -0
- package/.next/static/chunks/588.591fb3bf1a136c66.js +1 -0
- package/.next/static/chunks/650.32d18858075fbe98.js +1 -0
- package/.next/static/chunks/651.7142f31ce1e052b3.js +1 -0
- package/.next/static/chunks/686.36adeba271636edd.js +1 -0
- package/.next/static/chunks/741.52f7fb873418346f.js +1 -0
- package/.next/static/chunks/817-728f854c2948afc0.js +1 -0
- package/.next/static/chunks/953.b6387969c2dcdcae.js +1 -0
- package/.next/static/chunks/98.97381d2021f86cd9.js +1 -0
- package/.next/static/chunks/framework-dfd14d7ce6600b03.js +1 -0
- package/.next/static/chunks/main-9746772201fe3ac1.js +1 -0
- package/.next/static/chunks/pages/404-ba608a2a9f0c420a.js +1 -0
- package/.next/static/chunks/pages/500-910883c20541d9ce.js +1 -0
- package/.next/static/chunks/pages/[...slug]-320aee38665be1f9.js +1 -0
- package/.next/static/chunks/pages/[slug]/p-d64952a99f04e24d.js +1 -0
- package/.next/static/chunks/pages/_app-8bf35fcba4db8198.js +1 -0
- package/.next/static/chunks/pages/_error-a7a0c1d9bfbb4f38.js +1 -0
- package/.next/static/chunks/pages/account-f19102933e6fd84c.js +1 -0
- package/.next/static/chunks/pages/checkout-f8cb7cb22225ef9d.js +1 -0
- package/.next/static/chunks/pages/index-d6f91f5ff8ab8b48.js +1 -0
- package/.next/static/chunks/pages/login-0b9ea80d9fa0f91b.js +1 -0
- package/.next/static/chunks/pages/s-86fe1e3303388123.js +1 -0
- package/.next/static/chunks/polyfills-c67a75d1b6f99dc8.js +1 -0
- package/.next/static/chunks/webpack-1bf4acba8ca90a1e.js +1 -0
- package/.next/static/css/1bc30e7e0de1217d.css +1 -0
- package/.next/static/css/43d61b402f41569b.css +1 -0
- package/.next/static/css/4d4cbc524ba58b0a.css +1 -0
- package/.next/static/css/4d7e7f156483493d.css +1 -0
- package/.next/static/css/5f6541bfaaa52b08.css +1 -0
- package/.next/static/css/6507cb48401e73a4.css +1 -0
- package/.next/static/css/8e980d3191396e67.css +1 -0
- package/.next/static/css/bd743407c8049677.css +1 -0
- package/.next/static/css/e8f44fcf61ab2e4a.css +1 -0
- package/.next/static/css/f03ffa52b8ad3e4c.css +1 -0
- package/.next/static/gidMrsbL6xhTavmj2FN7p/_buildManifest.js +1 -0
- package/.next/static/gidMrsbL6xhTavmj2FN7p/_ssgManifest.js +1 -0
- package/.next/static/media/brandless-neutral.76ddf63a.png +0 -0
- package/.next/trace +65 -0
- package/.turbo/turbo-build.log +9 -9
- package/CHANGELOG.md +12 -0
- package/package.json +4 -4
- 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/SearchProductCard/SearchProductCard.tsx +22 -56
- package/src/components/search/search.module.scss +3 -0
- package/src/components/ui/Breadcrumb/Breadcrumb.tsx +14 -96
- package/src/components/search/SearchProductCard/search-product-card.module.scss +0 -54
- package/src/components/ui/Breadcrumb/breadcrumb.module.scss +0 -144
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.id = 350;
|
|
3
|
+
exports.ids = [350];
|
|
4
|
+
exports.modules = {
|
|
5
|
+
|
|
6
|
+
/***/ 9685:
|
|
7
|
+
/***/ ((module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
+
|
|
9
|
+
__webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
|
|
10
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
11
|
+
/* harmony export */ "h": () => (/* binding */ execute)
|
|
12
|
+
/* harmony export */ });
|
|
13
|
+
/* unused harmony export apiSchema */
|
|
14
|
+
/* harmony import */ var _envelop_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9664);
|
|
15
|
+
/* harmony import */ var _envelop_graphql_jit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7886);
|
|
16
|
+
/* harmony import */ var _envelop_parser_cache__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4656);
|
|
17
|
+
/* harmony import */ var _envelop_validation_cache__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6093);
|
|
18
|
+
/* harmony import */ var _faststore_api__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5363);
|
|
19
|
+
/* harmony import */ var _faststore_api__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_faststore_api__WEBPACK_IMPORTED_MODULE_4__);
|
|
20
|
+
/* harmony import */ var graphql__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(7343);
|
|
21
|
+
/* harmony import */ var graphql__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(graphql__WEBPACK_IMPORTED_MODULE_5__);
|
|
22
|
+
/* harmony import */ var _generated_graphql_persisted_json__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6984);
|
|
23
|
+
/* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(7183);
|
|
24
|
+
/* harmony import */ var _faststore_config__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_faststore_config__WEBPACK_IMPORTED_MODULE_7__);
|
|
25
|
+
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_envelop_core__WEBPACK_IMPORTED_MODULE_0__, _envelop_graphql_jit__WEBPACK_IMPORTED_MODULE_1__, _envelop_parser_cache__WEBPACK_IMPORTED_MODULE_2__, _envelop_validation_cache__WEBPACK_IMPORTED_MODULE_3__]);
|
|
26
|
+
([_envelop_core__WEBPACK_IMPORTED_MODULE_0__, _envelop_graphql_jit__WEBPACK_IMPORTED_MODULE_1__, _envelop_parser_cache__WEBPACK_IMPORTED_MODULE_2__, _envelop_validation_cache__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
|
|
27
|
+
/* eslint-disable react-hooks/rules-of-hooks */
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
const persistedQueries = new Map(Object.entries(_generated_graphql_persisted_json__WEBPACK_IMPORTED_MODULE_6__));
|
|
37
|
+
const apiOptions = {
|
|
38
|
+
platform: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().platform),
|
|
39
|
+
account: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().api.storeId),
|
|
40
|
+
environment: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().api.environment),
|
|
41
|
+
hideUnavailableItems: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().api.hideUnavailableItems),
|
|
42
|
+
channel: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().session.channel),
|
|
43
|
+
locale: (_faststore_config__WEBPACK_IMPORTED_MODULE_7___default().session.locale),
|
|
44
|
+
flags: {
|
|
45
|
+
enableOrderFormSync: true
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const apiSchema = (0,_faststore_api__WEBPACK_IMPORTED_MODULE_4__.getSchema)(apiOptions);
|
|
49
|
+
const apiContextFactory = (0,_faststore_api__WEBPACK_IMPORTED_MODULE_4__.getContextFactory)(apiOptions);
|
|
50
|
+
|
|
51
|
+
const formatError = err => {
|
|
52
|
+
if (err instanceof graphql__WEBPACK_IMPORTED_MODULE_5__.GraphQLError && (0,_faststore_api__WEBPACK_IMPORTED_MODULE_4__.isFastStoreError)(err.originalError)) {
|
|
53
|
+
return err;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
console.error(err);
|
|
57
|
+
return new graphql__WEBPACK_IMPORTED_MODULE_5__.GraphQLError('Sorry, something went wrong.');
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
const getEnvelop = async () => (0,_envelop_core__WEBPACK_IMPORTED_MODULE_0__.envelop)({
|
|
61
|
+
plugins: [(0,_envelop_core__WEBPACK_IMPORTED_MODULE_0__.useAsyncSchema)(apiSchema), (0,_envelop_core__WEBPACK_IMPORTED_MODULE_0__.useExtendContext)(apiContextFactory), (0,_envelop_core__WEBPACK_IMPORTED_MODULE_0__.useMaskedErrors)({
|
|
62
|
+
formatError
|
|
63
|
+
}), (0,_envelop_graphql_jit__WEBPACK_IMPORTED_MODULE_1__.useGraphQlJit)(), (0,_envelop_validation_cache__WEBPACK_IMPORTED_MODULE_3__.useValidationCache)(), (0,_envelop_parser_cache__WEBPACK_IMPORTED_MODULE_2__.useParserCache)()]
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
const envelopPromise = getEnvelop();
|
|
67
|
+
const execute = async (options, envelopContext = {
|
|
68
|
+
headers: {}
|
|
69
|
+
}) => {
|
|
70
|
+
const {
|
|
71
|
+
operationName,
|
|
72
|
+
variables,
|
|
73
|
+
query: maybeQuery
|
|
74
|
+
} = options;
|
|
75
|
+
const query = maybeQuery ?? persistedQueries.get(operationName);
|
|
76
|
+
|
|
77
|
+
if (query == null) {
|
|
78
|
+
throw new Error(`No query found for operationName: ${operationName}`);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
const enveloped = await envelopPromise;
|
|
82
|
+
const {
|
|
83
|
+
parse,
|
|
84
|
+
contextFactory,
|
|
85
|
+
execute: run,
|
|
86
|
+
schema
|
|
87
|
+
} = enveloped(envelopContext);
|
|
88
|
+
const contextValue = await contextFactory(envelopContext);
|
|
89
|
+
const {
|
|
90
|
+
data,
|
|
91
|
+
errors
|
|
92
|
+
} = await run({
|
|
93
|
+
schema,
|
|
94
|
+
document: parse(query),
|
|
95
|
+
variableValues: variables,
|
|
96
|
+
contextValue,
|
|
97
|
+
operationName
|
|
98
|
+
});
|
|
99
|
+
return {
|
|
100
|
+
data,
|
|
101
|
+
errors,
|
|
102
|
+
extensions: {
|
|
103
|
+
cacheControl: contextValue.cacheControl
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
__webpack_async_result__();
|
|
108
|
+
} catch(e) { __webpack_async_result__(e); } });
|
|
109
|
+
|
|
110
|
+
/***/ }),
|
|
111
|
+
|
|
112
|
+
/***/ 6984:
|
|
113
|
+
/***/ ((module) => {
|
|
114
|
+
|
|
115
|
+
module.exports = JSON.parse('{"ProductGalleryQuery":"query ProductGalleryQuery($first: Int!, $after: String!, $sort: StoreSort!, $term: String!, $selectedFacets: [IStoreSelectedFacet!]!) {\\n search(\\n first: $first\\n after: $after\\n sort: $sort\\n term: $term\\n selectedFacets: $selectedFacets\\n ) {\\n products {\\n pageInfo {\\n totalCount\\n }\\n }\\n facets {\\n ... on StoreFacetRange {\\n key\\n label\\n min {\\n selected\\n absolute\\n }\\n max {\\n selected\\n absolute\\n }\\n __typename\\n }\\n ... on StoreFacetBoolean {\\n key\\n label\\n values {\\n label\\n value\\n selected\\n quantity\\n }\\n __typename\\n }\\n }\\n }\\n}\\n","ServerCollectionPageQuery":"query ServerCollectionPageQuery($slug: String!) {\\n collection(slug: $slug) {\\n seo {\\n title\\n description\\n }\\n breadcrumbList {\\n itemListElement {\\n item\\n name\\n position\\n }\\n }\\n meta {\\n selectedFacets {\\n key\\n value\\n }\\n }\\n }\\n}\\n","ServerProductPageQuery":"query ServerProductPageQuery($slug: String!) {\\n product(locator: [{key: \\"slug\\", value: $slug}]) {\\n id: productID\\n seo {\\n title\\n description\\n canonical\\n }\\n brand {\\n name\\n }\\n sku\\n gtin\\n name\\n description\\n releaseDate\\n breadcrumbList {\\n itemListElement {\\n item\\n name\\n position\\n }\\n }\\n image {\\n url\\n alternateName\\n }\\n offers {\\n lowPrice\\n highPrice\\n priceCurrency\\n offers {\\n availability\\n price\\n priceValidUntil\\n priceCurrency\\n itemCondition\\n seller {\\n identifier\\n }\\n listPrice\\n }\\n }\\n isVariantOf {\\n productGroupID\\n name\\n skuVariants {\\n activeVariations\\n slugsMap(dominantVariantName: \\"Color\\")\\n availableVariations(dominantVariantName: \\"Color\\")\\n }\\n }\\n additionalProperty {\\n propertyID\\n name\\n value\\n valueReference\\n }\\n }\\n}\\n","ValidateCartMutation":"mutation ValidateCartMutation($cart: IStoreCart!, $session: IStoreSession!) {\\n validateCart(cart: $cart, session: $session) {\\n order {\\n orderNumber\\n acceptedOffer {\\n seller {\\n identifier\\n }\\n quantity\\n price\\n listPrice\\n itemOffered {\\n sku\\n name\\n image {\\n url\\n alternateName\\n }\\n brand {\\n name\\n }\\n isVariantOf {\\n productGroupID\\n name\\n skuVariants {\\n activeVariations\\n slugsMap(dominantVariantName: \\"Color\\")\\n availableVariations(dominantVariantName: \\"Color\\")\\n }\\n }\\n gtin\\n additionalProperty {\\n propertyID\\n name\\n value\\n valueReference\\n }\\n }\\n }\\n }\\n messages {\\n text\\n status\\n }\\n }\\n}\\n","SubscribeToNewsletter":"mutation SubscribeToNewsletter($data: IPersonNewsletter!) {\\n subscribeToNewsletter(data: $data) {\\n id\\n }\\n}\\n","BrowserProductQuery":"query BrowserProductQuery($locator: [IStoreSelectedFacet!]!) {\\n product(locator: $locator) {\\n id: productID\\n sku\\n name\\n gtin\\n description\\n isVariantOf {\\n name\\n productGroupID\\n skuVariants {\\n activeVariations\\n slugsMap(dominantVariantName: \\"Color\\")\\n availableVariations(dominantVariantName: \\"Color\\")\\n }\\n }\\n image {\\n url\\n alternateName\\n }\\n brand {\\n name\\n }\\n offers {\\n lowPrice\\n offers {\\n availability\\n price\\n listPrice\\n seller {\\n identifier\\n }\\n }\\n }\\n breadcrumbList {\\n itemListElement {\\n item\\n name\\n position\\n }\\n }\\n additionalProperty {\\n propertyID\\n name\\n value\\n valueReference\\n }\\n }\\n}\\n","ProductsQuery":"query ProductsQuery($first: Int!, $after: String, $sort: StoreSort!, $term: String!, $selectedFacets: [IStoreSelectedFacet!]!) {\\n search(\\n first: $first\\n after: $after\\n sort: $sort\\n term: $term\\n selectedFacets: $selectedFacets\\n ) {\\n products {\\n pageInfo {\\n totalCount\\n }\\n edges {\\n node {\\n id: productID\\n slug\\n sku\\n brand {\\n brandName: name\\n name\\n }\\n name\\n gtin\\n isVariantOf {\\n productGroupID\\n name\\n }\\n image {\\n url\\n alternateName\\n }\\n offers {\\n lowPrice\\n offers {\\n availability\\n price\\n listPrice\\n quantity\\n seller {\\n identifier\\n }\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n","SearchSuggestionsQuery":"query SearchSuggestionsQuery($term: String!, $selectedFacets: [IStoreSelectedFacet!]) {\\n search(first: 5, term: $term, selectedFacets: $selectedFacets) {\\n suggestions {\\n terms {\\n value\\n }\\n products {\\n id: productID\\n slug\\n sku\\n brand {\\n brandName: name\\n name\\n }\\n name\\n gtin\\n isVariantOf {\\n productGroupID\\n name\\n }\\n image {\\n url\\n alternateName\\n }\\n offers {\\n lowPrice\\n offers {\\n availability\\n price\\n listPrice\\n quantity\\n seller {\\n identifier\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n","TopSearchSuggestionsQuery":"query TopSearchSuggestionsQuery($term: String!, $selectedFacets: [IStoreSelectedFacet!]) {\\n search(first: 5, term: $term, selectedFacets: $selectedFacets) {\\n suggestions {\\n terms {\\n value\\n }\\n }\\n }\\n}\\n","ValidateSession":"mutation ValidateSession($session: IStoreSession!, $search: String!) {\\n validateSession(session: $session, search: $search) {\\n locale\\n channel\\n country\\n postalCode\\n currency {\\n code\\n symbol\\n }\\n person {\\n id\\n email\\n givenName\\n familyName\\n }\\n }\\n}\\n","ShippingSimulationQuery":"query ShippingSimulationQuery($postalCode: String!, $country: String!, $items: [IShippingItem!]!) {\\n shipping(items: $items, postalCode: $postalCode, country: $country) {\\n logisticsInfo {\\n slas {\\n carrier\\n price\\n shippingEstimate\\n localizedEstimates\\n }\\n }\\n address {\\n city\\n neighborhood\\n }\\n }\\n}\\n"}');
|
|
116
|
+
|
|
117
|
+
/***/ })
|
|
118
|
+
|
|
119
|
+
};
|
|
120
|
+
;
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
exports.id = 352;
|
|
2
|
+
exports.ids = [352];
|
|
3
|
+
exports.modules = {
|
|
4
|
+
|
|
5
|
+
/***/ 7377:
|
|
6
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
7
|
+
|
|
8
|
+
"use strict";
|
|
9
|
+
|
|
10
|
+
// EXPORTS
|
|
11
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
12
|
+
"Z": () => (/* binding */ QuantitySelector_QuantitySelector)
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
// EXTERNAL MODULE: external "react"
|
|
16
|
+
var external_react_ = __webpack_require__(6689);
|
|
17
|
+
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
|
|
18
|
+
// EXTERNAL MODULE: ../components/dist/molecules/IconButton/IconButton.js
|
|
19
|
+
var IconButton = __webpack_require__(2765);
|
|
20
|
+
// EXTERNAL MODULE: ../components/dist/atoms/Input/Input.js
|
|
21
|
+
var Input = __webpack_require__(875);
|
|
22
|
+
;// CONCATENATED MODULE: ../components/dist/assets/Minus.js
|
|
23
|
+
|
|
24
|
+
// Icon from Phosphor Icons
|
|
25
|
+
const Minus = () => (external_react_default().createElement("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 256 256", strokeWidth: "24", width: 16, height: 16 },
|
|
26
|
+
external_react_default().createElement("rect", { width: "256", height: "256", fill: "none" }),
|
|
27
|
+
external_react_default().createElement("line", { x1: "40", y1: "128", x2: "216", y2: "128", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" })));
|
|
28
|
+
/* harmony default export */ const assets_Minus = (Minus);
|
|
29
|
+
//# sourceMappingURL=Minus.js.map
|
|
30
|
+
;// CONCATENATED MODULE: ../components/dist/assets/Plus.js
|
|
31
|
+
|
|
32
|
+
// Icon from Phosphor Icons
|
|
33
|
+
const Plus = () => (external_react_default().createElement("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "currentColor", viewBox: "0 0 256 256", strokeWidth: "24", width: 16, height: 16 },
|
|
34
|
+
external_react_default().createElement("rect", { width: "256", height: "256", fill: "none" }),
|
|
35
|
+
external_react_default().createElement("line", { x1: "40", y1: "128", x2: "216", y2: "128", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" }),
|
|
36
|
+
external_react_default().createElement("line", { x1: "128", y1: "40", x2: "128", y2: "216", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round" })));
|
|
37
|
+
/* harmony default export */ const assets_Plus = (Plus);
|
|
38
|
+
//# sourceMappingURL=Plus.js.map
|
|
39
|
+
;// CONCATENATED MODULE: ../components/dist/molecules/QuantitySelector/QuantitySelector.js
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
const QuantitySelector = ({ max, min = 1, initial, disabled = false, onChange, testId = 'fs-quantity-selector', ...otherProps }) => {
|
|
44
|
+
const [quantity, setQuantity] = (0,external_react_.useState)(initial ?? min);
|
|
45
|
+
const isLeftDisabled = quantity === min;
|
|
46
|
+
const isRightDisabled = quantity === max;
|
|
47
|
+
const changeQuantity = (increaseValue) => {
|
|
48
|
+
const quantityValue = validateQuantityBounds(quantity + increaseValue);
|
|
49
|
+
onChange?.(quantityValue);
|
|
50
|
+
setQuantity(quantityValue);
|
|
51
|
+
};
|
|
52
|
+
const increase = () => changeQuantity(1);
|
|
53
|
+
const decrease = () => changeQuantity(-1);
|
|
54
|
+
function validateQuantityBounds(n) {
|
|
55
|
+
const maxValue = min ? Math.max(n, min) : n;
|
|
56
|
+
return max ? Math.min(maxValue, max) : maxValue;
|
|
57
|
+
}
|
|
58
|
+
function validateInput(e) {
|
|
59
|
+
const val = e.currentTarget.value;
|
|
60
|
+
if (!Number.isNaN(Number(val))) {
|
|
61
|
+
setQuantity(() => {
|
|
62
|
+
const quantityValue = validateQuantityBounds(Number(val));
|
|
63
|
+
onChange?.(quantityValue);
|
|
64
|
+
return quantityValue;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
(0,external_react_.useEffect)(() => {
|
|
69
|
+
initial && setQuantity(initial);
|
|
70
|
+
}, [initial]);
|
|
71
|
+
return (external_react_default().createElement("div", { "data-fs-quantity-selector": disabled ? 'disabled' : 'true', "data-testid": testId, ...otherProps },
|
|
72
|
+
external_react_default().createElement(IconButton/* default */.Z, { "data-quantity-selector-button": "left", icon: external_react_default().createElement(assets_Minus, null), "aria-label": "Decrement Quantity", "aria-controls": "quantity-selector-input", disabled: isLeftDisabled || disabled, onClick: decrease, testId: `${testId}-left-button` }),
|
|
73
|
+
external_react_default().createElement(Input/* default */.Z, { "data-quantity-selector-input": true, id: "quantity-selector-input", "aria-label": "Quantity", value: quantity, onChange: validateInput, disabled: disabled }),
|
|
74
|
+
external_react_default().createElement(IconButton/* default */.Z, { "data-quantity-selector-button": "right", "aria-controls": "quantity-selector-input", "aria-label": "Increment Quantity", disabled: isRightDisabled || disabled, icon: external_react_default().createElement(assets_Plus, null), onClick: increase, testId: `${testId}-right-button` })));
|
|
75
|
+
};
|
|
76
|
+
/* harmony default export */ const QuantitySelector_QuantitySelector = (QuantitySelector);
|
|
77
|
+
//# sourceMappingURL=QuantitySelector.js.map
|
|
78
|
+
|
|
79
|
+
/***/ }),
|
|
80
|
+
|
|
81
|
+
/***/ 7902:
|
|
82
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
83
|
+
|
|
84
|
+
"use strict";
|
|
85
|
+
|
|
86
|
+
// EXPORTS
|
|
87
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
88
|
+
"Z": () => (/* reexport */ ui_Price_Price)
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
// EXTERNAL MODULE: ../components/dist/atoms/SROnly/SROnly.js
|
|
92
|
+
var SROnly = __webpack_require__(2691);
|
|
93
|
+
// EXTERNAL MODULE: ../components/dist/atoms/Price/Price.js
|
|
94
|
+
var Price = __webpack_require__(7549);
|
|
95
|
+
// EXTERNAL MODULE: external "react"
|
|
96
|
+
var external_react_ = __webpack_require__(6689);
|
|
97
|
+
// EXTERNAL MODULE: ./src/components/ui/Price/price.module.scss
|
|
98
|
+
var price_module = __webpack_require__(9204);
|
|
99
|
+
var price_module_default = /*#__PURE__*/__webpack_require__.n(price_module);
|
|
100
|
+
// EXTERNAL MODULE: external "react/jsx-runtime"
|
|
101
|
+
var jsx_runtime_ = __webpack_require__(997);
|
|
102
|
+
;// CONCATENATED MODULE: ./src/components/ui/Price/Price.tsx
|
|
103
|
+
const _excluded = ["classes", "SRText"];
|
|
104
|
+
|
|
105
|
+
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; }
|
|
106
|
+
|
|
107
|
+
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; }
|
|
108
|
+
|
|
109
|
+
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; }
|
|
110
|
+
|
|
111
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
112
|
+
|
|
113
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
function Price_Price(_ref) {
|
|
123
|
+
let {
|
|
124
|
+
classes = '',
|
|
125
|
+
SRText
|
|
126
|
+
} = _ref,
|
|
127
|
+
props = _objectWithoutProperties(_ref, _excluded);
|
|
128
|
+
|
|
129
|
+
return /*#__PURE__*/(0,jsx_runtime_.jsxs)(jsx_runtime_.Fragment, {
|
|
130
|
+
children: [/*#__PURE__*/jsx_runtime_.jsx(SROnly/* default */.Z, {
|
|
131
|
+
text: SRText
|
|
132
|
+
}), /*#__PURE__*/jsx_runtime_.jsx(Price/* default */.Z, _objectSpread({
|
|
133
|
+
"data-fs-price": true,
|
|
134
|
+
className: `${(price_module_default()).fsPrice} ${classes}`
|
|
135
|
+
}, props))]
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
/* harmony default export */ const ui_Price_Price = (/*#__PURE__*/(0,external_react_.memo)(Price_Price));
|
|
140
|
+
;// CONCATENATED MODULE: ./src/components/ui/Price/index.ts
|
|
141
|
+
|
|
142
|
+
|
|
143
|
+
/***/ }),
|
|
144
|
+
|
|
145
|
+
/***/ 9204:
|
|
146
|
+
/***/ ((module) => {
|
|
147
|
+
|
|
148
|
+
// Exports
|
|
149
|
+
module.exports = {
|
|
150
|
+
"fs-price": "price_fs-price__7Y_0s",
|
|
151
|
+
"fsPrice": "price_fs-price__7Y_0s"
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
/***/ })
|
|
156
|
+
|
|
157
|
+
};
|
|
158
|
+
;
|