diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..1a12318 --- /dev/null +++ b/.npmrc @@ -0,0 +1,2 @@ +; force @adobe namespaced packages to be installed from npmjs.org +@adobe:registry=https://registry.npmjs.org diff --git a/package.json b/package.json index 685a5d1..d2dfba2 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "dependencies": { "@adobe/magento-storefront-event-collector": "^1.7.1", "@adobe/magento-storefront-events-sdk": "^1.7.1", - "@dropins/storefront-cart": "0.1.1-beta1", + "@dropins/storefront-cart": "0.1.1", "@dropins/storefront-checkout": "0.1.0-alpha30", "@dropins/storefront-order-confirmation": "0.1.0-alpha19", "@dropins/storefront-pdp": "0.2.2-alpha24", diff --git a/postinstall.js b/postinstall.js index 78ae089..6ec3dc7 100644 --- a/postinstall.js +++ b/postinstall.js @@ -28,4 +28,42 @@ fs.readdirSync('node_modules/@dropins', { withFileTypes: true }).forEach((file) fs.copyFileSync(path.resolve(__dirname, './node_modules/@adobe/magento-storefront-event-collector/dist/index.js'), path.resolve(__dirname, './scripts/commerce-events-collector.js')); fs.copyFileSync(path.resolve(__dirname, './node_modules/@adobe/magento-storefront-events-sdk/dist/index.js'), path.resolve(__dirname, './scripts/commerce-events-sdk.js')); -console.log('🫡 Drop-ins installed successfully!'); +function checkPackageLockForArtifactory() { + return new Promise((resolve, reject) => { + fs.readFile('package-lock.json', 'utf8', (err, data) => { + if (err) { + reject(err); + return; + } + try { + const packageLock = JSON.parse(data); + let found = false; + Object.keys(packageLock.packages).forEach((packageName) => { + const packageInfo = packageLock.packages[packageName]; + if (packageInfo.resolved && packageInfo.resolved.includes('artifactory')) { + console.warn(`Warning: artifactory found in resolved property for package ${packageName}`); + found = true; + } + }); + resolve(found); + } catch (error) { + reject(error); + } + }); + }); +} + +checkPackageLockForArtifactory() + .then((found) => { + if (!found) { + console.log('🫡 Drop-ins installed successfully!'); + process.exit(0); + } else { + console.error('🚨 Fix artifactory references before committing! 🚨'); + process.exit(1); + } + }) + .catch((error) => { + console.error('Error:', error); + process.exit(1); + }); diff --git a/scripts/__dropins__/storefront-cart/928.js b/scripts/__dropins__/storefront-cart/928.js index d74645d..88eff69 100644 --- a/scripts/__dropins__/storefront-cart/928.js +++ b/scripts/__dropins__/storefront-cart/928.js @@ -1 +1 @@ -export const id=928;export const ids=[928];export const modules={3584:(n,t,e)=>{e.d(t,{CA:()=>c,Ef:()=>i,Uh:()=>o,__:()=>u,eE:()=>l,o8:()=>a});var r=e(8616),{setEndpoint:i,setFetchGraphQlHeader:a,removeFetchGraphQlHeader:u,setFetchGraphQlHeaders:o,fetchGraphQl:c,getConfig:l}=(new r.FetchGraphQL).getMethods()},6696:(n,t,e)=>{e.d(t,{K:()=>d});var r=e(3584),i=e(764),a=e(7218),u=e(4020),o=e(1136),c="\n query GUEST_CART_QUERY(\n $cartId: String!,\n ".concat(o.w,"\n ) {\n\n cart(cart_id: $cartId){\n ...CartFragment\n }\n }\n\n ").concat(o.A,"\n"),l="\n query CUSTOMER_CART_QUERY(\n ".concat(o.w,"\n ) {\n\n cart: customerCart {\n ...CartFragment\n }\n }\n\n ").concat(o.A,"\n");function s(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}var d=function(){var n,t=(n=function*(){var n=a.K.authenticated,t=a.K.cartId;if(n)return(0,r.CA)(l,{method:"GET"}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):(0,u.o)(e.cart)}));if(!t)throw new Error("No cart ID found");return(0,r.CA)(c,{method:"GET",cache:"no-cache",variables:{cartId:t}}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):(0,u.o)(e.cart)}))},function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){s(a,r,i,u,o,"next",n)}function o(n){s(a,r,i,u,o,"throw",n)}u(void 0)}))});return function(){return t.apply(this,arguments)}}()},8960:(n,t,e)=>{e.d(t,{a:()=>u});var r=e(3584);var i=e(764);function a(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}var u=function(){var n,t=(n=function*(){return(0,r.CA)("\nquery STORE_CONFIG_QUERY {\n storeConfig {\n minicart_display \n minicart_max_items\n cart_expires_in_days \n cart_summary_display_total\n default_country\n category_fixed_product_tax_display_setting\n product_fixed_product_tax_display_setting\n sales_fixed_product_tax_display_setting\n shopping_cart_display_zero_tax\n }\n}\n",{method:"GET",cache:"force-cache"}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):function(n){return n?{displayMiniCart:n.minicart_display,miniCartMaxItemsDisplay:n.minicart_max_items,cartExpiresInDays:n.cart_expires_in_days,cartSummaryDisplayTotal:n.cart_summary_display_total,defaultCountry:n.default_country,categoryFixedProductTaxDisplaySetting:n.category_fixed_product_tax_display_setting,productFixedProductTaxDisplaySetting:n.product_fixed_product_tax_display_setting,salesFixedProductTaxDisplaySetting:n.sales_fixed_product_tax_display_setting,shoppingCartDisplayZeroTax:n.shopping_cart_display_zero_tax}:null}(e.storeConfig)}))},function(){var t=this,e=arguments;return new Promise((function(r,i){var u=n.apply(t,e);function o(n){a(u,r,i,o,c,"next",n)}function c(n){a(u,r,i,o,c,"throw",n)}o(void 0)}))});return function(){return t.apply(this,arguments)}}()},1136:(n,t,e)=>{e.d(t,{A:()=>r,w:()=>i});var r="\nfragment CartFragment on Cart {\n id\n total_quantity\n is_virtual\n prices {\n subtotal_with_discount_excluding_tax {\n currency\n value\n }\n subtotal_including_tax {\n currency\n value\n }\n subtotal_excluding_tax {\n currency\n value\n }\n grand_total {\n currency\n value\n }\n applied_taxes {\n label,\n amount {\n value\n currency\n }\n }\n discounts {\n amount {\n value\n currency\n }\n label\n }\n }\n itemsV2 (\n pageSize:$pageSize,\n currentPage:$currentPage,\n sort: $itemsSortInput\n ) {\n items {\n uid\n quantity\n \n errors {\n code\n message\n }\n \n prices {\n price {\n value\n currency\n }\n total_item_discount {\n value\n currency\n }\n row_total {\n value\n currency\n }\n }\n \n product {\n name\n sku\n thumbnail {\n url\n label\n }\n url_key\n url_suffix\n categories {\n url_path\n url_key\n }\n price_range {\n maximum_price {\n regular_price {\n value\n currency\n }\n }\n }\n }\n ...on SimpleCartItem {\n customizable_options {\n customizable_option_uid\n label\n values {\n label\n }\n }\n }\n ... on ConfigurableCartItem {\n configurable_options {\n configurable_product_option_uid\n option_label\n value_label\n }\n configured_variant {\n uid\n thumbnail {\n label\n url\n }\n }\n }\n ... on DownloadableCartItem {\n links {\n sort_order\n title\n }\n }\n ... on BundleCartItem {\n bundle_options {\n uid\n label\n values {\n uid\n label\n quantity\n price\n }\n }\n }\n }\n }\n shipping_addresses {\n country {\n code\n }\n region {\n code\n }\n postcode\n }\n}\n",i="\n $pageSize: Int! = 100,\n $currentPage: Int! = 1,\n $itemsSortInput: QuoteItemsSortInput! = {field: CREATED_AT, order: DESC}\n"},7540:(n,t,e)=>{e.d(t,{E:()=>y,i:()=>v});var r=e(412),i=e(2840),a=e(4444),u=e(7218),o=e(8122),c=e(2336);function l(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,r)}return e}function s(n,t,e){var r;return(t="symbol"==typeof(r=function(n,t){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var r=e.call(n,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(n)}(t,"string"))?r:String(r))in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}function d(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}function p(n){return function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){d(a,r,i,u,o,"next",n)}function o(n){d(a,r,i,u,o,"throw",n)}u(void 0)}))}}var _,v=new r._({init:(_=p((function*(n){var t=function(n){for(var t=1;t[o.events.on("authenticated",function(){var n=p((function*(n){n!==u.K.authenticated&&(u.K.authenticated=n,(0,i.c)().catch(console.error))}));return function(t){return n.apply(this,arguments)}}()),o.events.on("locale",function(){var n=p((function*(n){n!==u.K.locale&&(u.K.locale=n,(0,i.c)().catch(console.error))}));return function(t){return n.apply(this,arguments)}}()),o.events.on("cart/reset",(()=>{(0,a.a)().catch(console.error)})),o.events.on("cart/data",(n=>{(0,c.y)(n)}))]}),y=v.config},2840:(n,t,e)=>{e.d(t,{c:()=>v});var r=e(8122),i=e(7218),a=e(8960),u=e(6696),o=e(3584),c=e(7540),l=e(1136),s="\n mutation MERGE_CARTS_MUTATION(\n $guestCartId: String!, \n $customerCartId: String!,\n ".concat(l.w,"\n ) {\n mergeCarts(\n source_cart_id: $guestCartId,\n destination_cart_id: $customerCartId\n ) {\n ...CartFragment \n }\n }\n\n ").concat(l.A,"\n"),d=e(4020);function p(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}function _(n){return function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){p(a,r,i,u,o,"next",n)}function o(n){p(a,r,i,u,o,"throw",n)}u(void 0)}))}}var v=function(){var n=_((function*(){i.K.config=yield(0,a.a)();var n=i.K.authenticated?yield function(){return y.apply(this,arguments)}():yield function(){return m.apply(this,arguments)}();return r.events.emit("cart/initialized",n),r.events.emit("cart/data",n),n}));return function(){return n.apply(this,arguments)}}();function y(){return(y=_((function*(){var n=i.K.cartId,t=yield(0,u.K)();return t?(i.K.cartId=t.id,n&&t.id!==n?yield(0,o.CA)(s,{variables:{guestCartId:n,customerCartId:t.id}}).then((n=>{var{data:t}=n;return(0,d.o)(t.mergeCarts)})).catch((()=>(console.error("Could not merge carts"),t))):t):null}))).apply(this,arguments)}function m(){return(m=_((function*(){if(!0===c.E.getConfig().disableGuestCart)return null;if(!i.K.cartId)return null;try{return yield(0,u.K)()}catch(n){return console.error(n),null}}))).apply(this,arguments)}},4444:(n,t,e)=>{e.d(t,{a:()=>a});var r=e(7218),i=e(2840),a=()=>(r.K.cartId=null,r.K.authenticated=!1,(0,i.c)())},4020:(n,t,e)=>{e.d(t,{o:()=>i});var r=e(7218);function i(n){var t,e,i,l,p,_,v,y;return n?{id:n.id,totalQuantity:s(n),errors:o(null==n?void 0:n.itemsV2),items:u(null==n?void 0:n.itemsV2),miniCartMaxItems:u(null==n?void 0:n.itemsV2).slice(0,null!==(t=null===(e=r.K.config)||void 0===e?void 0:e.miniCartMaxItemsDisplay)&&void 0!==t?t:10),total:{value:n.prices.grand_total.value,currency:n.prices.grand_total.currency},subtotal:{excludingTax:{value:null===(i=n.prices.subtotal_excluding_tax)||void 0===i?void 0:i.value,currency:null===(l=n.prices.subtotal_excluding_tax)||void 0===l?void 0:l.currency},includingTax:{value:null===(p=n.prices.subtotal_including_tax)||void 0===p?void 0:p.value,currency:null===(_=n.prices.subtotal_including_tax)||void 0===_?void 0:_.currency},includingDiscountOnly:{value:null===(v=n.prices.subtotal_with_discount_excluding_tax)||void 0===v?void 0:v.value,currency:null===(y=n.prices.subtotal_with_discount_excluding_tax)||void 0===y?void 0:y.currency}},appliedTaxes:c(n.prices.applied_taxes),totalTax:a(n.prices.applied_taxes),appliedDiscounts:c(n.prices.discounts),isVirtual:n.is_virtual,addresses:{shipping:n.shipping_addresses&&d(n.shipping_addresses)}}:null}function a(n){return null!=n&&n.length?n.reduce(((n,t)=>({value:n.value+t.amount.value,currency:t.amount.currency})),{value:0,currency:""}):null}function u(n){var t;return null!=n&&null!==(t=n.items)&&void 0!==t&&t.length?n.items.map((n=>{var t,e,r,i,a;return{uid:n.uid,url:{urlKey:n.product.url_key,categories:n.product.categories.map((n=>n.url_key))},quantity:n.quantity,sku:n.product.sku,name:n.product.name,image:{src:n.product.thumbnail.url,alt:n.product.thumbnail.label},price:{value:n.prices.price.value,currency:n.prices.price.currency},total:n.configurable_options?{value:n.prices.row_total.value,currency:n.prices.row_total.currency}:{value:(null===(t=n.product.price_range)||void 0===t?void 0:t.maximum_price.regular_price.value)*n.quantity,currency:null===(e=n.product.price_range)||void 0===e?void 0:e.maximum_price.regular_price.currency},discount:{value:n.prices.total_item_discount.value,currency:n.prices.total_item_discount.currency},regularPrice:n.configurable_options?{value:n.prices.price.value,currency:n.prices.price.currency}:{value:null===(r=n.product.price_range)||void 0===r?void 0:r.maximum_price.regular_price.value,currency:null===(i=n.product.price_range)||void 0===i?void 0:i.maximum_price.regular_price.currency},discounted:!n.configurable_options&&Number((null===(a=n.product.price_range)||void 0===a?void 0:a.maximum_price.regular_price.value)*n.quantity).toFixed(2)!==Number(n.prices.row_total.value).toFixed(2),selectedOptions:l(n.configurable_options),discountedTotal:!n.configurable_options&&{value:n.prices.row_total.value,currency:n.prices.row_total.currency}}})):[]}function o(n){var t,e=null==n||null===(t=n.items)||void 0===t?void 0:t.reduce(((n,t)=>{var e;return null===(e=t.errors)||void 0===e||e.forEach((e=>{n.push({uid:t.uid,text:e.message})})),n}),[]);return null!=e&&e.length?e:null}function c(n){return null!=n&&n.length?n.map((n=>({amount:{value:n.amount.value,currency:n.amount.currency},label:n.label}))):[]}function l(n){var t=null==n?void 0:n.map((n=>({uid:n.configurable_product_option_uid,label:n.option_label,value:n.value_label}))),e={};return null==t||t.forEach((n=>{e[n.label]=n.value})),Object.keys(e).length>0?e:null}function s(n){var t,e;return 0===(null===(t=r.K.config)||void 0===t?void 0:t.cartSummaryDisplayTotal)?n.itemsV2.items.length:1===(null===(e=r.K.config)||void 0===e?void 0:e.cartSummaryDisplayTotal)?n.total_quantity:n.itemsV2.items.length}function d(n){return null!=n&&n.length?n.map((n=>{var t,e;return{countryCode:null===(t=n.country)||void 0===t?void 0:t.code,zipCode:n.postcode,regionCode:null===(e=n.region)||void 0===e?void 0:e.code}})):null}},764:(n,t,e)=>{e.d(t,{H:()=>i});var r=e(4444),i=n=>{var t=n.findIndex((n=>{var{extensions:t}=n;return"graphql-authorization"===(null==t?void 0:t.category)}))>-1,e=n.findIndex((n=>{var{extensions:t}=n;return"graphql-no-such-entity"===(null==t?void 0:t.category)}))>-1,i=n.map((n=>n.message)).join(" ");if(t||e)return(0,r.a)(),console.error(i),null;throw Error(i)}},2336:(n,t,e)=>{function r(n){n?sessionStorage.setItem("DROPIN__CART__CART__DATA",JSON.stringify(n)):sessionStorage.removeItem("DROPIN__CART__CART__DATA")}function i(){var n=sessionStorage.getItem("DROPIN__CART__CART__DATA");return n?JSON.parse(n):null}e.d(t,{u:()=>i,y:()=>r})},7218:(n,t,e)=>{e.d(t,{K:()=>r});var r=new Proxy({cartId:null,authenticated:!1},{set(n,t,e){if(n[t]=e,"cartId"===t){var i;if(e===r.cartId)return!0;if(null===e)return document.cookie="DROPIN__CART__CART-ID=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/",!0;var a=null===(i=r.config)||void 0===i?void 0:i.cartExpiresInDays;a||console.warn('Missing "expiresInDays" config. Cookie expiration will default to 30 days.');var u=new Date;u.setDate(u.getDate()+(null!=a?a:30)),document.cookie="DROPIN__CART__CART-ID=".concat(e,"; expires=").concat(u.toUTCString(),"; path=/")}return!0},get:(n,t)=>"cartId"===t?function(n){for(var t=document.cookie.split(";"),e=0;e{e.d(t,{CA:()=>c,Ef:()=>i,Uh:()=>o,__:()=>u,eE:()=>l,o8:()=>a});var r=e(8616),{setEndpoint:i,setFetchGraphQlHeader:a,removeFetchGraphQlHeader:u,setFetchGraphQlHeaders:o,fetchGraphQl:c,getConfig:l}=(new r.FetchGraphQL).getMethods()},6696:(n,t,e)=>{e.d(t,{K:()=>d});var r=e(3584),i=e(764),a=e(7218),u=e(4020),o=e(1136),c="\n query GUEST_CART_QUERY(\n $cartId: String!,\n ".concat(o.w,"\n ) {\n\n cart(cart_id: $cartId){\n ...CartFragment\n }\n }\n\n ").concat(o.A,"\n"),l="\n query CUSTOMER_CART_QUERY(\n ".concat(o.w,"\n ) {\n\n cart: customerCart {\n ...CartFragment\n }\n }\n\n ").concat(o.A,"\n");function s(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}var d=function(){var n,t=(n=function*(){var n=a.K.authenticated,t=a.K.cartId;if(n)return(0,r.CA)(l,{method:"GET"}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):(0,u.o)(e.cart)}));if(!t)throw new Error("No cart ID found");return(0,r.CA)(c,{method:"GET",cache:"no-cache",variables:{cartId:t}}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):(0,u.o)(e.cart)}))},function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){s(a,r,i,u,o,"next",n)}function o(n){s(a,r,i,u,o,"throw",n)}u(void 0)}))});return function(){return t.apply(this,arguments)}}()},8960:(n,t,e)=>{e.d(t,{a:()=>u});var r=e(3584);var i=e(764);function a(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}var u=function(){var n,t=(n=function*(){return(0,r.CA)("\nquery STORE_CONFIG_QUERY {\n storeConfig {\n minicart_display \n minicart_max_items\n cart_expires_in_days \n cart_summary_display_quantity\n default_country\n category_fixed_product_tax_display_setting\n product_fixed_product_tax_display_setting\n sales_fixed_product_tax_display_setting\n shopping_cart_display_zero_tax\n }\n}\n",{method:"GET",cache:"force-cache"}).then((n=>{var{errors:t,data:e}=n;return t?(0,i.H)(t):function(n){return n?{displayMiniCart:n.minicart_display,miniCartMaxItemsDisplay:n.minicart_max_items,cartExpiresInDays:n.cart_expires_in_days,cartSummaryDisplayTotal:n.cart_summary_display_quantity,defaultCountry:n.default_country,categoryFixedProductTaxDisplaySetting:n.category_fixed_product_tax_display_setting,productFixedProductTaxDisplaySetting:n.product_fixed_product_tax_display_setting,salesFixedProductTaxDisplaySetting:n.sales_fixed_product_tax_display_setting,shoppingCartDisplayZeroTax:n.shopping_cart_display_zero_tax}:null}(e.storeConfig)}))},function(){var t=this,e=arguments;return new Promise((function(r,i){var u=n.apply(t,e);function o(n){a(u,r,i,o,c,"next",n)}function c(n){a(u,r,i,o,c,"throw",n)}o(void 0)}))});return function(){return t.apply(this,arguments)}}()},1136:(n,t,e)=>{e.d(t,{A:()=>r,w:()=>i});var r="\nfragment CartFragment on Cart {\n id\n total_quantity\n is_virtual\n prices {\n subtotal_with_discount_excluding_tax {\n currency\n value\n }\n subtotal_including_tax {\n currency\n value\n }\n subtotal_excluding_tax {\n currency\n value\n }\n grand_total {\n currency\n value\n }\n applied_taxes {\n label,\n amount {\n value\n currency\n }\n }\n discounts {\n amount {\n value\n currency\n }\n label\n }\n }\n itemsV2 (\n pageSize:$pageSize,\n currentPage:$currentPage,\n sort: $itemsSortInput\n ) {\n items {\n uid\n quantity\n \n errors {\n code\n message\n }\n \n prices {\n price {\n value\n currency\n }\n total_item_discount {\n value\n currency\n }\n row_total {\n value\n currency\n }\n }\n \n product {\n name\n sku\n thumbnail {\n url\n label\n }\n url_key\n url_suffix\n categories {\n url_path\n url_key\n }\n price_range {\n maximum_price {\n regular_price {\n value\n currency\n }\n }\n }\n }\n ...on SimpleCartItem {\n customizable_options {\n customizable_option_uid\n label\n values {\n label\n }\n }\n }\n ... on ConfigurableCartItem {\n configurable_options {\n configurable_product_option_uid\n option_label\n value_label\n }\n configured_variant {\n uid\n thumbnail {\n label\n url\n }\n }\n }\n ... on DownloadableCartItem {\n links {\n sort_order\n title\n }\n }\n ... on BundleCartItem {\n bundle_options {\n uid\n label\n values {\n uid\n label\n quantity\n price\n }\n }\n }\n }\n }\n shipping_addresses {\n country {\n code\n }\n region {\n code\n }\n postcode\n }\n}\n",i="\n $pageSize: Int! = 100,\n $currentPage: Int! = 1,\n $itemsSortInput: QuoteItemsSortInput! = {field: CREATED_AT, order: DESC}\n"},7540:(n,t,e)=>{e.d(t,{E:()=>y,i:()=>v});var r=e(412),i=e(2840),a=e(4444),u=e(7218),o=e(8122),c=e(2336);function l(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(n);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),e.push.apply(e,r)}return e}function s(n,t,e){var r;return(t="symbol"==typeof(r=function(n,t){if("object"!=typeof n||!n)return n;var e=n[Symbol.toPrimitive];if(void 0!==e){var r=e.call(n,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(n)}(t,"string"))?r:String(r))in n?Object.defineProperty(n,t,{value:e,enumerable:!0,configurable:!0,writable:!0}):n[t]=e,n}function d(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}function p(n){return function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){d(a,r,i,u,o,"next",n)}function o(n){d(a,r,i,u,o,"throw",n)}u(void 0)}))}}var _,v=new r._({init:(_=p((function*(n){var t=function(n){for(var t=1;t[o.events.on("authenticated",function(){var n=p((function*(n){n!==u.K.authenticated&&(u.K.authenticated=n,(0,i.c)().catch(console.error))}));return function(t){return n.apply(this,arguments)}}()),o.events.on("locale",function(){var n=p((function*(n){n!==u.K.locale&&(u.K.locale=n,(0,i.c)().catch(console.error))}));return function(t){return n.apply(this,arguments)}}()),o.events.on("cart/reset",(()=>{(0,a.a)().catch(console.error)})),o.events.on("cart/data",(n=>{(0,c.y)(n)}))]}),y=v.config},2840:(n,t,e)=>{e.d(t,{c:()=>v});var r=e(8122),i=e(7218),a=e(8960),u=e(6696),o=e(3584),c=e(7540),l=e(1136),s="\n mutation MERGE_CARTS_MUTATION(\n $guestCartId: String!, \n $customerCartId: String!,\n ".concat(l.w,"\n ) {\n mergeCarts(\n source_cart_id: $guestCartId,\n destination_cart_id: $customerCartId\n ) {\n ...CartFragment \n }\n }\n\n ").concat(l.A,"\n"),d=e(4020);function p(n,t,e,r,i,a,u){try{var o=n[a](u),c=o.value}catch(n){return void e(n)}o.done?t(c):Promise.resolve(c).then(r,i)}function _(n){return function(){var t=this,e=arguments;return new Promise((function(r,i){var a=n.apply(t,e);function u(n){p(a,r,i,u,o,"next",n)}function o(n){p(a,r,i,u,o,"throw",n)}u(void 0)}))}}var v=function(){var n=_((function*(){i.K.config=yield(0,a.a)();var n=i.K.authenticated?yield function(){return y.apply(this,arguments)}():yield function(){return m.apply(this,arguments)}();return r.events.emit("cart/initialized",n),r.events.emit("cart/data",n),n}));return function(){return n.apply(this,arguments)}}();function y(){return(y=_((function*(){var n=i.K.cartId,t=yield(0,u.K)();return t?(i.K.cartId=t.id,n&&t.id!==n?yield(0,o.CA)(s,{variables:{guestCartId:n,customerCartId:t.id}}).then((n=>{var{data:t}=n;return(0,d.o)(t.mergeCarts)})).catch((()=>(console.error("Could not merge carts"),t))):t):null}))).apply(this,arguments)}function m(){return(m=_((function*(){if(!0===c.E.getConfig().disableGuestCart)return null;if(!i.K.cartId)return null;try{return yield(0,u.K)()}catch(n){return console.error(n),null}}))).apply(this,arguments)}},4444:(n,t,e)=>{e.d(t,{a:()=>a});var r=e(7218),i=e(2840),a=()=>(r.K.cartId=null,r.K.authenticated=!1,(0,i.c)())},4020:(n,t,e)=>{e.d(t,{o:()=>i});var r=e(7218);function i(n){var t,e,i,l,p,_,v,y;return n?{id:n.id,totalQuantity:s(n),errors:o(null==n?void 0:n.itemsV2),items:u(null==n?void 0:n.itemsV2),miniCartMaxItems:u(null==n?void 0:n.itemsV2).slice(0,null!==(t=null===(e=r.K.config)||void 0===e?void 0:e.miniCartMaxItemsDisplay)&&void 0!==t?t:10),total:{value:n.prices.grand_total.value,currency:n.prices.grand_total.currency},subtotal:{excludingTax:{value:null===(i=n.prices.subtotal_excluding_tax)||void 0===i?void 0:i.value,currency:null===(l=n.prices.subtotal_excluding_tax)||void 0===l?void 0:l.currency},includingTax:{value:null===(p=n.prices.subtotal_including_tax)||void 0===p?void 0:p.value,currency:null===(_=n.prices.subtotal_including_tax)||void 0===_?void 0:_.currency},includingDiscountOnly:{value:null===(v=n.prices.subtotal_with_discount_excluding_tax)||void 0===v?void 0:v.value,currency:null===(y=n.prices.subtotal_with_discount_excluding_tax)||void 0===y?void 0:y.currency}},appliedTaxes:c(n.prices.applied_taxes),totalTax:a(n.prices.applied_taxes),appliedDiscounts:c(n.prices.discounts),isVirtual:n.is_virtual,addresses:{shipping:n.shipping_addresses&&d(n.shipping_addresses)}}:null}function a(n){return null!=n&&n.length?n.reduce(((n,t)=>({value:n.value+t.amount.value,currency:t.amount.currency})),{value:0,currency:""}):null}function u(n){var t;return null!=n&&null!==(t=n.items)&&void 0!==t&&t.length?n.items.map((n=>{var t,e,r,i,a;return{uid:n.uid,url:{urlKey:n.product.url_key,categories:n.product.categories.map((n=>n.url_key))},quantity:n.quantity,sku:n.product.sku,name:n.product.name,image:{src:n.product.thumbnail.url,alt:n.product.thumbnail.label},price:{value:n.prices.price.value,currency:n.prices.price.currency},total:n.configurable_options?{value:n.prices.row_total.value,currency:n.prices.row_total.currency}:{value:(null===(t=n.product.price_range)||void 0===t?void 0:t.maximum_price.regular_price.value)*n.quantity,currency:null===(e=n.product.price_range)||void 0===e?void 0:e.maximum_price.regular_price.currency},discount:{value:n.prices.total_item_discount.value,currency:n.prices.total_item_discount.currency},regularPrice:n.configurable_options?{value:n.prices.price.value,currency:n.prices.price.currency}:{value:null===(r=n.product.price_range)||void 0===r?void 0:r.maximum_price.regular_price.value,currency:null===(i=n.product.price_range)||void 0===i?void 0:i.maximum_price.regular_price.currency},discounted:!n.configurable_options&&Number((null===(a=n.product.price_range)||void 0===a?void 0:a.maximum_price.regular_price.value)*n.quantity).toFixed(2)!==Number(n.prices.row_total.value).toFixed(2),selectedOptions:l(n.configurable_options),discountedTotal:!n.configurable_options&&{value:n.prices.row_total.value,currency:n.prices.row_total.currency}}})):[]}function o(n){var t,e=null==n||null===(t=n.items)||void 0===t?void 0:t.reduce(((n,t)=>{var e;return null===(e=t.errors)||void 0===e||e.forEach((e=>{n.push({uid:t.uid,text:e.message})})),n}),[]);return null!=e&&e.length?e:null}function c(n){return null!=n&&n.length?n.map((n=>({amount:{value:n.amount.value,currency:n.amount.currency},label:n.label}))):[]}function l(n){var t=null==n?void 0:n.map((n=>({uid:n.configurable_product_option_uid,label:n.option_label,value:n.value_label}))),e={};return null==t||t.forEach((n=>{e[n.label]=n.value})),Object.keys(e).length>0?e:null}function s(n){var t,e;return 0===(null===(t=r.K.config)||void 0===t?void 0:t.cartSummaryDisplayTotal)?n.itemsV2.items.length:1===(null===(e=r.K.config)||void 0===e?void 0:e.cartSummaryDisplayTotal)?n.total_quantity:n.itemsV2.items.length}function d(n){return null!=n&&n.length?n.map((n=>{var t,e;return{countryCode:null===(t=n.country)||void 0===t?void 0:t.code,zipCode:n.postcode,regionCode:null===(e=n.region)||void 0===e?void 0:e.code}})):null}},764:(n,t,e)=>{e.d(t,{H:()=>i});var r=e(4444),i=n=>{var t=n.findIndex((n=>{var{extensions:t}=n;return"graphql-authorization"===(null==t?void 0:t.category)}))>-1,e=n.findIndex((n=>{var{extensions:t}=n;return"graphql-no-such-entity"===(null==t?void 0:t.category)}))>-1,i=n.map((n=>n.message)).join(" ");if(t||e)return(0,r.a)(),console.error(i),null;throw Error(i)}},2336:(n,t,e)=>{function r(n){n?sessionStorage.setItem("DROPIN__CART__CART__DATA",JSON.stringify(n)):sessionStorage.removeItem("DROPIN__CART__CART__DATA")}function i(){var n=sessionStorage.getItem("DROPIN__CART__CART__DATA");return n?JSON.parse(n):null}e.d(t,{u:()=>i,y:()=>r})},7218:(n,t,e)=>{e.d(t,{K:()=>r});var r=new Proxy({cartId:null,authenticated:!1},{set(n,t,e){if(n[t]=e,"cartId"===t){var i;if(e===r.cartId)return!0;if(null===e)return document.cookie="DROPIN__CART__CART-ID=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/",!0;var a=null===(i=r.config)||void 0===i?void 0:i.cartExpiresInDays;a||console.warn('Missing "expiresInDays" config. Cookie expiration will default to 30 days.');var u=new Date;u.setDate(u.getDate()+(null!=a?a:30)),document.cookie="DROPIN__CART__CART-ID=".concat(e,"; expires=").concat(u.toUTCString(),"; path=/")}return!0},get:(n,t)=>"cartId"===t?function(n){for(var t=document.cookie.split(";"),e=0;e=600px) { main .section { - padding: 64px 32px; + padding: var(--spacing-large) var(--spacing-big); } }