@ikas/storefront 4.1.10-beta.1 → 4.1.10-beta.3

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.
@@ -1 +1 @@
1
- import{__spreadArray as t,__awaiter as e,__generator as i}from'./../../../ext/tslib/tslib.es6.js';import n from"lodash/sortBy";import{IkasCategory as r}from"../category/index.js";import{IkasProductVariant as a}from"./variant/index.js";import{IkasProductAttributeValue as o}from"./attribute-value/index.js";import{IkasProductVariantType as s}from"./variant-type/index.js";import{IkasBrand as u}from"../brand/index.js";import{IkasHTMLMetaData as c}from"../html-meta-data/index.js";import{IkasProductTag as l}from"./tag/index.js";import{IkasProductType as d}from"@ikas/storefront-models";export{IkasProductType}from"@ikas/storefront-models";import{IkasProductOptionSet as p}from"./option-set/index.js";import{makeObservable as f,observable as m,computed as v}from"mobx";import{IkasProductFunctions as h}from"@ikas/storefront-model-functions";import{IkasProductCampaign as g}from"./campaign/index.js";import{IkasStorefrontConfig as b}from"@ikas/storefront-config";import{Analytics as y}from"../../../analytics/analytics.js";import"../../../analytics/head/index.js";import{IkasBaseStore as V}from"../../../store/base.js";import O from"lodash/groupBy";import{IkasProductBaseUnit as P}from"./base-unit/index.js";import{formatCurrency as j}from"../../../utils/currency.js";import"lodash/get";import w from"../../../store/product/index.js";import{IkasCustomerReviewList as S}from"../../ui/customer-review-list/index.js";var T=function(){function T(h){void 0===h&&(h={});var O,T,I,x=this;this.metaData=null,this.brand=null,this.tags=null,this.productOptionSetId=null,this.productOptionSet=null,this.campaigns=null,this.selectedVariantValues=[],this.selectVariantValue=function(e,i){var n,r=x.metaData,a=x.selectedVariantValues.map((function(t){return t.variantTypeId===e.variantTypeId?e:t})),o=x.variants.find((function(t){return t.isActive&&a.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))}));if(o)x.selectedVariantValues=a;else{var s=x.variantTypes.findIndex((function(t){return t.variantType.id===e.variantTypeId}));if(s>0){var u=x.variantTypes.slice(0,s),c=x.selectedVariantValues.filter((function(t){return u.some((function(e){return e.variantType.id===t.variantTypeId}))})),l=t(t([],c,!0),[e],!1);o=x.variants.find((function(t){return t.isActive&&l.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))}))}else{var d=a.slice(0,a.length-1);(o=x.variants.find((function(t){return t.isActive&&d.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))})))||(o=x.variants.find((function(t){return t.isActive&&t.variantValues.some((function(t){return t.id===e.id}))})))}if(!o)return;x.selectedVariantValues=o.variantValues}var p=x.variantTypes.map((function(t){var e=t.variantType,i=e.values.find((function(t){return x.selectedVariantValues.some((function(e){return e.id===t.id}))}));if(i)return"".concat(e.slug,"=").concat(i.slug)})).filter((function(t){return!!t})).join("&");if(!i){var f="/".concat(r.slug);if(p&&(f="/".concat(r.slug,"?").concat(p)),f===window.location.pathname)return;var m="production"!==process.env.NODE_ENV;null===(n=V.getInstance().router)||void 0===n||n.replace(f,void 0,{shallow:m,scroll:!1})}y.productView(x)},this.getVariantUnitPriceText=function(t){var e,i,n=t.price;if(n.unitPrice&&x.baseUnit)return"".concat(j(n.unitPrice,n.currency||"",n.currencySymbol||"")," / ").concat(null===(i=null===(e=x.baseUnit)||void 0===e?void 0:e.unit)||void 0===i?void 0:i.name)},this.getCampaigns=function(){return e(x,void 0,void 0,(function(){var t,e,n,r,a,o=this;return i(this,(function(i){switch(i.label){case 0:return t=V.getInstance(),e=t.customerStore.customer,n=e?e.customerGroupIds:null,r=this.variants.map((function(t){return t.id})),[4,w.getProductCampaigns({input:{customerGroupIds:n,salesChannelId:b.getSalesChannelId()||"",variantIds:r}})];case 1:return a=i.sent(),this.campaigns=a.data,this.campaigns?(this.campaigns.map((function(t){o.variants.map((function(e){var i;t.variantIds.some((function(t){return t===e.id}))&&(null===(i=e.campaigns)||void 0===i||i.push(t))}))})),[2,this.campaigns]):[2]}}))}))},this.getCustomerReviews=function(t){return e(x,void 0,void 0,(function(){var e;return i(this,(function(i){switch(i.label){case 0:return[4,(e=new S({productId:this.id,limit:null==t?void 0:t.limit,page:null==t?void 0:t.page})).getInitial()];case 1:return i.sent(),[2,e]}}))}))},this.getProductOptionSet=function(){return e(x,void 0,void 0,(function(){var t,e;return i(this,(function(i){switch(i.label){case 0:return this.productOptionSet?[2,!0]:this.productOptionSetId?[4,w.listProductOptionSet({id:{eq:this.productOptionSetId}})]:[2,!1];case 1:return(t=i.sent()).isSuccess&&(null===(e=t.data)||void 0===e?void 0:e.length)?(this.productOptionSet=t.data[0],this.setOptionPrices(),[2,!0]):[2,!1]}}))}))},this.setOptionPrices=function(){var t,e=x.variants[0];if(e){var i=e.price.currency;null===(t=x.productOptionSet)||void 0===t||t.options.forEach((function(t){var e;t.selectSettings&&t.selectSettings.values.forEach((function(t){var e;t.otherPrices&&(t.price=(null===(e=t.otherPrices.find((function(t){return t.currencyCode===i})))||void 0===e?void 0:e.price)||t.price)})),t.otherPrices&&(t.price=(null===(e=t.otherPrices.find((function(t){return t.currencyCode===i})))||void 0===e?void 0:e.price)||t.price)}))}},this.id=h.id||Date.now()+"",this.name=h.name||"",this.type=h.type||d.PHYSICAL,this.description=h.description||"",this.shortDescription=h.shortDescription||"",this.metaData=h.metaData?new c(h.metaData):null,this.brand=h.brand?new u(h.brand):null,this.categories=h.categories?h.categories.map((function(t){return new r(t)})):[],this.tags=h.tags?h.tags.map((function(t){return new l(t)})):[],this.variants=h.variants?h.variants.map((function(t){return new a(t)})):[],this.attributes=h.attributes?h.attributes.map((function(t){return new o(t)})):[],this.variantTypes=h.variantTypes?h.variantTypes.map((function(t){return new s(t)})):[],this.productOptionSetId=h.productOptionSetId||null,this.averageRating=null!==(O=h.averageRating)&&void 0!==O?O:null,this.reviewCount=null!==(T=h.reviewCount)&&void 0!==T?T:null,this.baseUnit=h.baseUnit?new P(h.baseUnit):null,this.productOptionSet=h.productOptionSet?new p(h.productOptionSet):null,this.campaigns=(null===(I=h.campaigns)||void 0===I?void 0:I.map((function(t){return new g(t)})))||null,this.selectedVariantValues=h.selectedVariantValues||[],this.variantTypes=n(this.variantTypes,"order"),this.setOptionPrices(),f(this,{selectedVariantValues:m,hasVariant:v,hasStock:v,hasValidProductOptionValues:v,href:v,productHref:v,mainVariantType:v,mainVariantValue:v,selectedVariant:v,displayedVariantTypes:v,isCustomerReviewEnabled:v,isCustomerReviewLoginRequired:v,isAddToCartEnabled:v,groupedAttributeValues:v,selectedVariantUnitPriceText:v})}return Object.defineProperty(T.prototype,"hasVariant",{get:function(){return h.hasVariant(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"hasStock",{get:function(){return h.hasStock(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"hasValidProductOptionValues",{get:function(){return!this.productOptionSet||this.productOptionSet.hasValidValues},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"href",{get:function(){return h.getSelectedVariantHref(this,this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"productHref",{get:function(){return h.getProductHref(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"mainVariantType",{get:function(){return h.getMainVariantType(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"mainVariantValue",{get:function(){return h.getMainVariantValue(this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"selectedVariant",{get:function(){if(!this.hasVariant)return this.variants[0];var t=this.selectedVariantValues.map((function(t){return t.id}));return this.variants.find((function(e){return e.variantValues.every((function(e){return t.includes(e.id)}))}))},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"displayedVariantTypes",{get:function(){return h.getDisplayedVariantTypes(this,this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isCustomerReviewEnabled",{get:function(){return b.isCustomerReviewEnabled()},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isCustomerReviewLoginRequired",{get:function(){return b.isCustomerReviewLoginRequired()},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isAddToCartEnabled",{get:function(){return this.hasValidProductOptionValues&&(this.selectedVariant.hasStock||this.selectedVariant.sellIfOutOfStock)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"groupedAttributeValues",{get:function(){var t,e=O(this.attributes,"productAttributeId");return(null===(t=this.attributes)||void 0===t?void 0:t.map((function(t){var i=t.productAttributeId;if(i){var n=e[i];return(null==n?void 0:n.length)&&n[0].productAttribute?{attribute:n[0].productAttribute,values:n}:void 0}})).filter((function(t){return!!t})))||[]},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"selectedVariantUnitPriceText",{get:function(){return this.getVariantUnitPriceText(this.selectedVariant)},enumerable:!1,configurable:!0}),T}();export{T as IkasProduct};
1
+ import{__spreadArray as t,__awaiter as e,__generator as i}from'./../../../ext/tslib/tslib.es6.js';import n from"lodash/sortBy";import{IkasCategory as r}from"../category/index.js";import{IkasProductVariant as a}from"./variant/index.js";import{IkasProductAttributeValue as o}from"./attribute-value/index.js";import{IkasProductVariantType as s}from"./variant-type/index.js";import{IkasBrand as u}from"../brand/index.js";import{IkasHTMLMetaData as c}from"../html-meta-data/index.js";import{IkasProductTag as l}from"./tag/index.js";import{IkasProductType as d}from"@ikas/storefront-models";export{IkasProductType}from"@ikas/storefront-models";import{IkasProductOptionSet as p}from"./option-set/index.js";import{makeObservable as f,observable as m,computed as v}from"mobx";import{IkasProductFunctions as h}from"@ikas/storefront-model-functions";import{IkasProductCampaign as g}from"./campaign/index.js";import{IkasStorefrontConfig as b}from"@ikas/storefront-config";import{Analytics as y}from"../../../analytics/analytics.js";import"../../../analytics/head/index.js";import{IkasBaseStore as V}from"../../../store/base.js";import O from"lodash/groupBy";import{IkasProductBaseUnit as P}from"./base-unit/index.js";import{formatCurrency as j}from"../../../utils/currency.js";import"lodash/get";import w from"../../../store/product/index.js";import{IkasCustomerReviewList as S}from"../../ui/customer-review-list/index.js";var T=function(){function T(h){void 0===h&&(h={});var O,T,I,x=this;this.metaData=null,this.brand=null,this.tags=null,this.productOptionSetId=null,this.productOptionSet=null,this.campaigns=null,this.selectedVariantValues=[],this.selectVariantValue=function(e,i){var n,r=x.metaData,a=x.selectedVariantValues.map((function(t){return t.variantTypeId===e.variantTypeId?e:t})),o=x.variants.find((function(t){return t.isActive&&a.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))}));if(o)x.selectedVariantValues=a;else{var s=x.variantTypes.findIndex((function(t){return t.variantType.id===e.variantTypeId}));if(s>0){var u=x.variantTypes.slice(0,s),c=x.selectedVariantValues.filter((function(t){return u.some((function(e){return e.variantType.id===t.variantTypeId}))})),l=t(t([],c,!0),[e],!1);o=x.variants.find((function(t){return t.isActive&&l.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))}))}else{var d=a.slice(0,a.length-1);(o=x.variants.find((function(t){return t.isActive&&d.every((function(e){return t.variantValues.some((function(t){return t.id===e.id}))}))})))||(o=x.variants.find((function(t){return t.isActive&&t.variantValues.some((function(t){return t.id===e.id}))})))}if(!o)return;x.selectedVariantValues=o.variantValues}var p=x.variantTypes.map((function(t){var e=t.variantType,i=e.values.find((function(t){return x.selectedVariantValues.some((function(e){return e.id===t.id}))}));if(i)return"".concat(e.slug,"=").concat(i.slug)})).filter((function(t){return!!t})).join("&");if(!i){var f="/".concat(r.slug);if(p&&(f="/".concat(r.slug,"?").concat(p)),f===window.location.pathname)return;var m="production"!==process.env.NODE_ENV;null===(n=V.getInstance().router)||void 0===n||n.replace(f,void 0,{shallow:m,scroll:!1})}y.productView(x)},this.getVariantUnitPriceText=function(t){var e,i,n=t.price;if(n.unitPrice&&x.baseUnit){var r=x.baseUnit.baseAmount,a=(null===(i=null===(e=x.baseUnit)||void 0===e?void 0:e.unit)||void 0===i?void 0:i.name)||"";return"".concat(j(n.unitPrice,n.currency||"",n.currencySymbol||"")," / ").concat(r&&1!==r?r:"").concat(a)}},this.getCampaigns=function(){return e(x,void 0,void 0,(function(){var t,e,n,r,a,o=this;return i(this,(function(i){switch(i.label){case 0:return t=V.getInstance(),e=t.customerStore.customer,n=e?e.customerGroupIds:null,r=this.variants.map((function(t){return t.id})),[4,w.getProductCampaigns({input:{customerGroupIds:n,salesChannelId:b.getSalesChannelId()||"",variantIds:r}})];case 1:return a=i.sent(),this.campaigns=a.data,this.campaigns?(this.campaigns.map((function(t){o.variants.map((function(e){var i;t.variantIds.some((function(t){return t===e.id}))&&(null===(i=e.campaigns)||void 0===i||i.push(t))}))})),[2,this.campaigns]):[2]}}))}))},this.getCustomerReviews=function(t){return e(x,void 0,void 0,(function(){var e;return i(this,(function(i){switch(i.label){case 0:return[4,(e=new S({productId:this.id,limit:null==t?void 0:t.limit,page:null==t?void 0:t.page})).getInitial()];case 1:return i.sent(),[2,e]}}))}))},this.getProductOptionSet=function(){return e(x,void 0,void 0,(function(){var t,e;return i(this,(function(i){switch(i.label){case 0:return this.productOptionSet?[2,!0]:this.productOptionSetId?[4,w.listProductOptionSet({id:{eq:this.productOptionSetId}})]:[2,!1];case 1:return(t=i.sent()).isSuccess&&(null===(e=t.data)||void 0===e?void 0:e.length)?(this.productOptionSet=t.data[0],this.setOptionPrices(),[2,!0]):[2,!1]}}))}))},this.setOptionPrices=function(){var t,e=x.variants[0];if(e){var i=e.price.currency;null===(t=x.productOptionSet)||void 0===t||t.options.forEach((function(t){var e;t.selectSettings&&t.selectSettings.values.forEach((function(t){var e;t.otherPrices&&(t.price=(null===(e=t.otherPrices.find((function(t){return t.currencyCode===i})))||void 0===e?void 0:e.price)||t.price)})),t.otherPrices&&(t.price=(null===(e=t.otherPrices.find((function(t){return t.currencyCode===i})))||void 0===e?void 0:e.price)||t.price)}))}},this.id=h.id||Date.now()+"",this.name=h.name||"",this.type=h.type||d.PHYSICAL,this.description=h.description||"",this.shortDescription=h.shortDescription||"",this.metaData=h.metaData?new c(h.metaData):null,this.brand=h.brand?new u(h.brand):null,this.categories=h.categories?h.categories.map((function(t){return new r(t)})):[],this.tags=h.tags?h.tags.map((function(t){return new l(t)})):[],this.variants=h.variants?h.variants.map((function(t){return new a(t)})):[],this.attributes=h.attributes?h.attributes.map((function(t){return new o(t)})):[],this.variantTypes=h.variantTypes?h.variantTypes.map((function(t){return new s(t)})):[],this.productOptionSetId=h.productOptionSetId||null,this.averageRating=null!==(O=h.averageRating)&&void 0!==O?O:null,this.reviewCount=null!==(T=h.reviewCount)&&void 0!==T?T:null,this.baseUnit=h.baseUnit?new P(h.baseUnit):null,this.productOptionSet=h.productOptionSet?new p(h.productOptionSet):null,this.campaigns=(null===(I=h.campaigns)||void 0===I?void 0:I.map((function(t){return new g(t)})))||null,this.selectedVariantValues=h.selectedVariantValues||[],this.variantTypes=n(this.variantTypes,"order"),this.setOptionPrices(),f(this,{selectedVariantValues:m,hasVariant:v,hasStock:v,hasValidProductOptionValues:v,href:v,productHref:v,mainVariantType:v,mainVariantValue:v,selectedVariant:v,displayedVariantTypes:v,isCustomerReviewEnabled:v,isCustomerReviewLoginRequired:v,isAddToCartEnabled:v,groupedAttributeValues:v,selectedVariantUnitPriceText:v})}return Object.defineProperty(T.prototype,"hasVariant",{get:function(){return h.hasVariant(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"hasStock",{get:function(){return h.hasStock(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"hasValidProductOptionValues",{get:function(){return!this.productOptionSet||this.productOptionSet.hasValidValues},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"href",{get:function(){return h.getSelectedVariantHref(this,this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"productHref",{get:function(){return h.getProductHref(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"mainVariantType",{get:function(){return h.getMainVariantType(this)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"mainVariantValue",{get:function(){return h.getMainVariantValue(this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"selectedVariant",{get:function(){if(!this.hasVariant)return this.variants[0];var t=this.selectedVariantValues.map((function(t){return t.id}));return this.variants.find((function(e){return e.variantValues.every((function(e){return t.includes(e.id)}))}))},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"displayedVariantTypes",{get:function(){return h.getDisplayedVariantTypes(this,this.selectedVariantValues)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isCustomerReviewEnabled",{get:function(){return b.isCustomerReviewEnabled()},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isCustomerReviewLoginRequired",{get:function(){return b.isCustomerReviewLoginRequired()},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"isAddToCartEnabled",{get:function(){return this.hasValidProductOptionValues&&(this.selectedVariant.hasStock||this.selectedVariant.sellIfOutOfStock)},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"groupedAttributeValues",{get:function(){var t,e=O(this.attributes,"productAttributeId");return(null===(t=this.attributes)||void 0===t?void 0:t.map((function(t){var i=t.productAttributeId;if(i){var n=e[i];return(null==n?void 0:n.length)&&n[0].productAttribute?{attribute:n[0].productAttribute,values:n}:void 0}})).filter((function(t){return!!t})))||[]},enumerable:!1,configurable:!0}),Object.defineProperty(T.prototype,"selectedVariantUnitPriceText",{get:function(){return this.getVariantUnitPriceText(this.selectedVariant)},enumerable:!1,configurable:!0}),T}();export{T as IkasProduct};
@@ -1 +1 @@
1
- import{__awaiter as o,__generator as n}from'./../ext/tslib/tslib.es6.js';import{configure as t,makeObservable as i,observable as e}from"mobx";import{enableStaticRendering as r}from"mobx-react-lite";import s from"lodash/sortBy";import u from"lodash/flatten";import{IkasCartStore as c}from"./cart/index.js";import{IkasCustomerStore as a}from"./customer/index.js";import l from"./location/index.js";import{IkasStorefrontConfig as d}from"@ikas/storefront-config";t({enforceActions:"never"}),r("undefined"==typeof window);var h=function(){function t(){this.currentPageType=null,this.localeOptions=[],this.languageOptions=[],this.showLocaleOptions=!1,this.currentCountryCode=null,this.spaLinksDisabled=!1,this.localeChecked=!1,this.customerStore=new a(this),this.cartStore=new c(this),"undefined"!=typeof window&&(this.spaLinksDisabled=navigator.userAgent.includes("Instagram")),this.init(),i(this,{currentPageType:e,localeOptions:e,languageOptions:e,showLocaleOptions:e,currentCountryCode:e,spaLinksDisabled:e})}return t.getInstance=function(){return this._instance||(this._instance=new t),this._instance},t.prototype.setLocalization=function(o){o.routing.domain?window.location.replace("https://"+o.routing.domain):window.location.replace(window.location.origin+(o.routing.path?"/"+o.routing.path:""))},t.prototype.setLanguage=function(o){var n=d.getRoutings().find((function(n){return n.id===o.id}));n&&window.location.replace(window.location.origin+(n.path?"/"+n.path:""))},t.prototype.checkLocalization=function(){return o(this,void 0,void 0,(function(){var o,t,i,e,r,c,a,h,g,f,p;return n(this,(function(n){switch(n.label){case 0:return this.localeChecked?[2]:"undefined"==typeof window?(console.warn("checkLocalization should be called on the client side!"),[2]):[4,l.getMyCountry()];case 1:return(o=n.sent()).isSuccess?(t=o.data,i=d.getCurrentRouting(),this.currentCountryCode=t,i&&t?(e=!0,r=d.getRoutings().filter((function(o){var n;return null===(n=o.countryCodes)||void 0===n?void 0:n.includes(t)})),c=d.getRoutings().find((function(o){var n;return!(null===(n=o.countryCodes)||void 0===n?void 0:n.length)})),r.length?r.some((function(o){return o.id===i.id}))||(e=!1):c&&i.id!==c.id&&(e=!1),a=[],h=[],g=u(d.getRoutings().map((function(o){return o.countryCodes||[]}))),[4,l.listCountry({iso2:{in:g}})]):[3,3]):[2];case 2:if(!(f=n.sent()).isSuccess)return[2];p=f.data||[],d.getRoutings().forEach((function(o){var n;(null===(n=o.countryCodes)||void 0===n?void 0:n.length)?o.countryCodes.forEach((function(n){var i=p.find((function(o){return o.iso2===n}));a.some((function(o){return o.iso2===(null==i?void 0:i.iso2)}))||a.push({id:(null==i?void 0:i.iso2)||(null==i?void 0:i.iso3)||Date.now()+"",countryName:(null==i?void 0:i.native)||(null==i?void 0:i.name)||"",iso2:(null==i?void 0:i.iso2)||void 0,iso3:(null==i?void 0:i.iso3)||void 0,routing:o,isRecommended:n===t})})):a.push({id:o.id,routing:o,isRecommended:!d.getRoutings().some((function(o){var n;return null===(n=o.countryCodes)||void 0===n?void 0:n.includes(t)}))})})),r.length&&(d.getRoutings().forEach((function(o){var n;r.some((function(n){return n.id===o.id}))&&h.push({id:o.id,currencyCode:o.currencyCode,currencySymbol:o.currencySymbol,language:new Intl.DisplayNames([],{type:"language"}).of(o.locale)||"",locale:o.locale,isSelected:o.id===(null===(n=d.getCurrentRouting())||void 0===n?void 0:n.id)||!1})})),this.languageOptions=s(h,"language")),this.localeOptions=s(a,"countryName"),e||(this.showLocaleOptions=!0),this.localeChecked=!0,n.label=3;case 3:return[2]}}))}))},t.prototype.init=function(){this.customerStore.init()},t}();export{h as IkasBaseStore};
1
+ import{__awaiter as o,__generator as t}from'./../ext/tslib/tslib.es6.js';import{configure as n,makeObservable as i,observable as e}from"mobx";import{enableStaticRendering as r}from"mobx-react-lite";import s from"lodash/sortBy";import u from"lodash/flatten";import{IkasCartStore as c}from"./cart/index.js";import{IkasCustomerStore as a}from"./customer/index.js";import l from"./location/index.js";import{IkasStorefrontConfig as d}from"@ikas/storefront-config";n({enforceActions:"never"}),r("undefined"==typeof window);var h=function(){function n(){this.currentPageType=null,this.localeOptions=[],this.languageOptions=[],this.showLocaleOptions=!1,this.currentCountryCode=null,this.spaLinksDisabled=!1,this.localeChecked=!1,this.customerStore=new a(this),this.cartStore=new c(this),"undefined"!=typeof window&&(this.spaLinksDisabled=navigator.userAgent.includes("Instagram")),this.init(),i(this,{currentPageType:e,localeOptions:e,languageOptions:e,showLocaleOptions:e,currentCountryCode:e,spaLinksDisabled:e})}return n.getInstance=function(){return this._instance||(this._instance=new n),this._instance},n.prototype.setLocalization=function(o){o.routing.domain?window.location.replace("https://"+o.routing.domain):window.location.replace(window.location.origin+(o.routing.path?"/"+o.routing.path:"")+(this.router?this.router.asPath:""))},n.prototype.setLanguage=function(o){var t=d.getRoutings().find((function(t){return t.id===o.id}));t&&window.location.replace(window.location.origin+(t.path?"/"+t.path:"")+(this.router?this.router.asPath:""))},n.prototype.checkLocalization=function(){return o(this,void 0,void 0,(function(){var o,n,i,e,r,c,a,h,g,f,p;return t(this,(function(t){switch(t.label){case 0:return this.localeChecked?[2]:"undefined"==typeof window?(console.warn("checkLocalization should be called on the client side!"),[2]):[4,l.getMyCountry()];case 1:return(o=t.sent()).isSuccess?(n=o.data,i=d.getCurrentRouting(),this.currentCountryCode=n,i&&n?(e=!0,r=d.getRoutings().filter((function(o){var t;return null===(t=o.countryCodes)||void 0===t?void 0:t.includes(n)})),c=d.getRoutings().find((function(o){var t;return!(null===(t=o.countryCodes)||void 0===t?void 0:t.length)})),r.length?r.some((function(o){return o.id===i.id}))||(e=!1):c&&i.id!==c.id&&(e=!1),a=[],h=[],g=u(d.getRoutings().map((function(o){return o.countryCodes||[]}))),[4,l.listCountry({iso2:{in:g}})]):[3,3]):[2];case 2:if(!(f=t.sent()).isSuccess)return[2];p=f.data||[],d.getRoutings().forEach((function(o){var t;(null===(t=o.countryCodes)||void 0===t?void 0:t.length)?o.countryCodes.forEach((function(t){var i=p.find((function(o){return o.iso2===t}));a.some((function(o){return o.iso2===(null==i?void 0:i.iso2)}))||a.push({id:(null==i?void 0:i.iso2)||(null==i?void 0:i.iso3)||Date.now()+"",countryName:(null==i?void 0:i.native)||(null==i?void 0:i.name)||"",iso2:(null==i?void 0:i.iso2)||void 0,iso3:(null==i?void 0:i.iso3)||void 0,routing:o,isRecommended:t===n})})):a.push({id:o.id,routing:o,isRecommended:!d.getRoutings().some((function(o){var t;return null===(t=o.countryCodes)||void 0===t?void 0:t.includes(n)}))})})),r.length&&(d.getRoutings().forEach((function(o){var t;r.some((function(t){return t.id===o.id}))&&h.push({id:o.id,currencyCode:o.currencyCode,currencySymbol:o.currencySymbol,language:new Intl.DisplayNames([],{type:"language"}).of(o.locale)||"",locale:o.locale,isSelected:o.id===(null===(t=d.getCurrentRouting())||void 0===t?void 0:t.id)||!1})})),this.languageOptions=s(h,"language")),this.localeOptions=s(a,"countryName"),e||(this.showLocaleOptions=!0),this.localeChecked=!0,t.label=3;case 3:return[2]}}))}))},n.prototype.init=function(){this.customerStore.init()},n}();export{h as IkasBaseStore};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikas/storefront",
3
- "version": "4.1.10-beta.1",
3
+ "version": "4.1.10-beta.3",
4
4
  "description": "Storefront functionality for ikas storefront themes.",
5
5
  "author": "ikas",
6
6
  "license": "ISC",
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "dependencies": {},
20
20
  "devDependencies": {
21
- "@ikas/storefront-api": "^4.1.10-beta.1",
22
- "@ikas/storefront-config": "^4.1.10-beta.1",
23
- "@ikas/storefront-model-functions": "^4.1.10-beta.1",
24
- "@ikas/storefront-models": "^4.1.10-beta.1",
25
- "@ikas/storefront-providers": "^4.1.10-beta.1",
21
+ "@ikas/storefront-api": "^4.1.10-beta.3",
22
+ "@ikas/storefront-config": "^4.1.10-beta.3",
23
+ "@ikas/storefront-model-functions": "^4.1.10-beta.3",
24
+ "@ikas/storefront-models": "^4.1.10-beta.3",
25
+ "@ikas/storefront-providers": "^4.1.10-beta.3",
26
26
  "@rollup/plugin-commonjs": "^22.0.0",
27
27
  "@rollup/plugin-json": "^4.1.0",
28
28
  "@rollup/plugin-node-resolve": "^13.3.0",
@@ -52,11 +52,11 @@
52
52
  "libphonenumber-js": "^1.10.6"
53
53
  },
54
54
  "peerDependencies": {
55
- "@ikas/storefront-api": "^4.1.10-beta.1",
56
- "@ikas/storefront-config": "^4.1.10-beta.1",
57
- "@ikas/storefront-model-functions": "^4.1.10-beta.1",
58
- "@ikas/storefront-models": "^4.1.10-beta.1",
59
- "@ikas/storefront-providers": "^4.1.10-beta.1",
55
+ "@ikas/storefront-api": "^4.1.10-beta.3",
56
+ "@ikas/storefront-config": "^4.1.10-beta.3",
57
+ "@ikas/storefront-model-functions": "^4.1.10-beta.3",
58
+ "@ikas/storefront-models": "^4.1.10-beta.3",
59
+ "@ikas/storefront-providers": "^4.1.10-beta.3",
60
60
  "mobx": "^6.1.3",
61
61
  "mobx-react-lite": "^3.1.5",
62
62
  "next": "12.2.0",