@ikas/storefront-providers 4.12.0-beta.8 → 4.12.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.
@@ -1 +1 @@
1
- import{__awaiter as e,__generator as t,__assign as r}from'./../../../ext/tslib/tslib.es6.js';import{IkasThemeJsonPageType as i,IkasCategoryProductsOrderType as n}from"@ikas/storefront-models";import{IkasProductListType as a,IkasProductSearchShowStockOption as o,IkasProductListSortType as d}from"./index.js";import{IkasProductFilterFunctions as u}from"@ikas/storefront-model-functions";import{searchProducts as s,getSuggestedProducts as l,GetSuggestedProductsMethodEnum as c,getProductFilterData as f,SortByDirectionEnum as v,SortByTypeEnum as E}from"@ikas/storefront-api";import{IkasStorefrontConfig as I}from"@ikas/storefront-config";import"../blog-category-list/index.js";import"../blog-list/index.js";import"../brand-list/index.js";import"../category-list/index.js";function p(i,o){var s,l,c,f;return e(this,void 0,void 0,(function(){var e,v,E,I,p,g,y;return t(this,(function(t){switch(t.label){case 0:!function(e){var t;if((null===(t=e.pageSpecificData)||void 0===t?void 0:t.orderType)&&[a.ALL].includes(e.type))switch(e.pageSpecificData.orderType){case n.HIGHEST_DISCOUNT_RATIO:e.sort=d.DECRASING_DISCOUNT;break;case n.LOWEST_DISCOUNT_RATIO:e.sort=d.INCREASING_DISCOUNT;break;case n.HIGHEST_PRICE:e.sort=d.DECREASING_PRICE;break;case n.LOWEST_PRICE:e.sort=d.INCREASING_PRICE;break;case n.NEWEST:e.sort=d.LAST_ADDED;break;case n.OLDEST:e.sort=d.FIRST_ADDED;break;case n.MANUALLY:e.sort=d.FEATURED}}(i),i.isLoading=!0,e=Date.now(),i.fetchRequestTime=e,t.label=1;case 1:return t.trys.push([1,5,,6]),v=o?i.page:1,E=i.limit,!function(e){return e.type===a.ALL||e.type===a.CATEGORY}(i)||i.filters?[3,3]:[4,D(i)];case 2:t.sent(),t.label=3;case 3:if(A(i))return i.data=[],i.page=1,i.minPage=1,i.count=0,i.initialized=!0,[2,!0];if(void 0,C(i))v=void 0,E=200;else if(function(e){return e.type===a.DISCOUNTED}(i))v=1,E=10;else if(function(e){return e.type===a.RECOMMENDED}(i))v=1,E=10;else if(T(i))return[2];return[4,S(i,v||1,E||10,undefined)];case 4:return(I=t.sent())&&i.fetchRequestTime===e?(p=[],T(i)?[2]:(C(i)?(g=i.productListPropValue.productIds||[],p=(null==g?void 0:g.map((function(e){var t,i,n=null===(i=null===(t=I.data)||void 0===t?void 0:t.data)||void 0===i?void 0:i.find((function(t){return t.id===e.productId})),a=null==n?void 0:n.variants.find((function(t){return t.id===e.variantId}));if((null==a?void 0:a.isActive)||(a=null==n?void 0:n.variants.find((function(e){return e.isActive}))),n&&a)return r(r({},n),{selectedVariantValues:a.variantValues})})).filter((function(e){return!!e})))||[]):p=(null===(l=null===(s=I.data)||void 0===s?void 0:s.data)||void 0===l?void 0:l.map((function(e){var t=e.variants.find((function(e){return e.isActive}));return r(r({},e),{selectedVariantValues:(t||e.variants[0]).variantValues})})))||[],function(e,t){var r,i,n=u.isCustomValueFilter;null===(r=e.filters)||void 0===r||r.forEach((function(e){var r,i,a,o=null==t?void 0:t.find((function(t){return t.id===e.id}));o?null===(r=e.values)||void 0===r||r.forEach((function(t){var r=o.values.find((function(e){return e.id===t.id}));r?t.resultCount=r.count:n(e)?t.resultCount=null:t.resultCount=0})):n(e)?null===(i=e.values)||void 0===i||i.forEach((function(e){return e.resultCount=null})):null===(a=e.values)||void 0===a||a.forEach((function(e){return e.resultCount=0}))}));var a=null==t?void 0:t.find((function(e){return"category"===e.id}));a&&(null===(i=e.filterCategories)||void 0===i||i.forEach((function(e){var t=a.values.find((function(t){return t.id===e.id}));e.resultCount=t?t.count:0})))}(i,null===(c=I.data)||void 0===c?void 0:c.facets),i.data=p,i.count=(null===(f=I.data)||void 0===f?void 0:f.count)||0,i.initialized=!0,i.page=v||1,i.minPage=i.page,[2,!0])):[2];case 5:return y=t.sent(),console.error(y),[3,6];case 6:return[2]}}))}))}function C(e){return e.type===a.STATIC}function T(e){return e.type===a.LAST_VIEWED}function A(e){return e.type===a.SEARCH}function S(r,n,f,p){var T,S,D;return e(this,void 0,void 0,(function(){var e,g,y,R,L,_;return t(this,(function(t){switch(t.label){case 0:return e=[],g=[],y=u.getValueList,null===(T=r.filters)||void 0===T||T.forEach((function(t){var r=y(t);r.length&&e.push({id:t.id,type:t.type,displayType:t.displayType,valueList:r}),t.isFacetFilter&&g.push({id:t.id,type:t.type,displayType:t.displayType})})),R=null===(S=r.filterCategories)||void 0===S?void 0:S.filter((function(e){return e.isSelected})).map((function(e){return e.id})),L=function(e){var t,r;switch(e.sort){case d.INCREASING_PRICE:t=v.ASC,r=E.PRICE;break;case d.DECREASING_PRICE:t=v.DESC,r=E.PRICE;break;case d.FIRST_ADDED:t=v.ASC,r=E.CREATED_AT;break;case d.LAST_ADDED:t=v.DESC,r=E.CREATED_AT;break;case d.INCREASING_DISCOUNT:t=v.ASC,r=E.DISCOUNT_RATIO;break;case d.DECRASING_DISCOUNT:t=v.DESC,r=E.DISCOUNT_RATIO;break;case d.FEATURED:if(A(e))return;t=v.ASC,r=E.MANUAL_SORT;break;case d.DEFAULT:t=void 0,r=void 0;break;case d.AVERAGE_RATING:t=v.DESC,r=E.AVERAGE_RATING;break;case d.REVIEW_COUNT:t=v.DESC,r=E.REVIEW_COUNT;break;case d.SALE_COUNT:t=v.DESC,r=E.SALE_COUNT;break;case d.A_Z:t=v.ASC,r=E.NAME;break;case d.Z_A:t=v.DESC,r=E.NAME}if(t&&r)return{direction:t,type:r}}(r),function(e){return e.type===a.RELATED_PRODUCTS}(r)&&r.relatedProductData?[4,l({priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),productId:r.relatedProductData.productId,brandIds:r.relatedProductData.brandIds,categoryIds:r.relatedProductData.categoryIds,locale:I.getCurrentLocale()})]:[3,2];case 1:case 3:case 5:return[2,t.sent()];case 2:return function(e){return e.type===a.VIEWED_TOGETHER}(r)&&r.viewedTogetherProductData?[4,l({priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),method:c.VIEWED_TOGETHER,productIds:r.viewedTogetherProductData.productIds,locale:I.getCurrentLocale()})]:[3,4];case 4:return _={input:{page:n,perPage:f,productIdList:C(r)?null===(D=r.productListPropValue.productIds)||void 0===D?void 0:D.map((function(e){return e.productId})):p,filterList:e,facetList:g,brandId:r.pageType===i.BRAND&&r.type!==a.SEARCH?r.filterBrandId:void 0,categoryIdList:R&&R.length?R:r.filterCategoryId?[r.filterCategoryId]:void 0,priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),query:r.searchKeyword,order:r.type===a.SEARCH?[]:L?[L]:[],showStockOption:I.getStockPreference()||o.SHOW_ALL}},[4,s(_,r.excludedFields)]}}))}))}function D(r){var n,a,o,d;return e(this,void 0,void 0,(function(){var e,u;return t(this,(function(t){switch(t.label){case 0:return[4,f({categoryId:r.filterCategoryId?r.filterCategoryId:void 0,locale:I.getCurrentLocale()})];case 1:return e=t.sent(),r.filters=(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.filters)||null,r.filterCategories=(null===(a=null==e?void 0:e.data)||void 0===a?void 0:a.categories)||null,r.disabledSortTypes=null===(o=e.data)||void 0===o?void 0:o.disabledSortTypes,r.pageType!==i.CATEGORY&&r.filterCategoryId&&(u=null===(d=r.filterCategories)||void 0===d?void 0:d.find((function(e){return e.id===r.filterCategoryId})))&&(u.isSelected=!0),r.filters&&r.filters.sort((function(e,t){return e.order>t.order?1:-1})),[2]}}))}))}export{p as getInitial};
1
+ import{__awaiter as e,__generator as t,__assign as r}from'./../../../ext/tslib/tslib.es6.js';import{IkasThemeJsonPageType as i,IkasCategoryProductsOrderType as n}from"@ikas/storefront-models";import{IkasProductListType as a,IkasProductSearchShowStockOption as o,IkasProductListSortType as d}from"./index.js";import{IkasProductFilterFunctions as u}from"@ikas/storefront-model-functions";import{searchProducts as s,getSuggestedProducts as l,GetSuggestedProductsMethodEnum as c,getProductFilterData as f,SortByDirectionEnum as v,SortByTypeEnum as E}from"@ikas/storefront-api";import{IkasStorefrontConfig as I}from"@ikas/storefront-config";import"../blog-category-list/index.js";import"../blog-list/index.js";import"../brand-list/index.js";import"../category-list/index.js";function p(i,o){var s,l,c,f;return e(this,void 0,void 0,(function(){var e,v,E,I,p,g,y;return t(this,(function(t){switch(t.label){case 0:!function(e){var t;if((null===(t=e.pageSpecificData)||void 0===t?void 0:t.orderType)&&[a.ALL].includes(e.type))switch(e.pageSpecificData.orderType){case n.HIGHEST_DISCOUNT_RATIO:e.sort=d.DECRASING_DISCOUNT;break;case n.LOWEST_DISCOUNT_RATIO:e.sort=d.INCREASING_DISCOUNT;break;case n.HIGHEST_PRICE:e.sort=d.DECREASING_PRICE;break;case n.LOWEST_PRICE:e.sort=d.INCREASING_PRICE;break;case n.NEWEST:e.sort=d.LAST_ADDED;break;case n.OLDEST:e.sort=d.FIRST_ADDED;break;case n.MANUALLY:e.sort=d.FEATURED}}(i),i.isLoading=!0,e=Date.now(),i.fetchRequestTime=e,t.label=1;case 1:return t.trys.push([1,5,,6]),v=o?i.page:1,E=i.limit,!function(e){return e.type===a.ALL||e.type===a.CATEGORY}(i)||i.filters?[3,3]:[4,D(i)];case 2:t.sent(),t.label=3;case 3:if(S(i))return i.data=[],i.page=1,i.minPage=1,i.count=0,i.initialized=!0,[2,!0];if(void 0,C(i))v=void 0,E=200;else if(function(e){return e.type===a.DISCOUNTED}(i))v=1,E=10;else if(function(e){return e.type===a.RECOMMENDED}(i))v=1,E=10;else if(A(i))return[2];return[4,T(i,v||1,E||10,undefined)];case 4:return(I=t.sent())&&i.fetchRequestTime===e?(p=[],A(i)?[2]:(C(i)?(g=i.productListPropValue.productIds||[],p=(null==g?void 0:g.map((function(e){var t,i,n=null===(i=null===(t=I.data)||void 0===t?void 0:t.data)||void 0===i?void 0:i.find((function(t){return t.id===e.productId})),a=null==n?void 0:n.variants.find((function(t){return t.id===e.variantId}));if((null==a?void 0:a.isActive)||(a=null==n?void 0:n.variants.find((function(e){return e.isActive}))),n&&a)return r(r({},n),{selectedVariantValues:a.variantValues})})).filter((function(e){return!!e})))||[]):p=(null===(l=null===(s=I.data)||void 0===s?void 0:s.data)||void 0===l?void 0:l.map((function(e){var t=e.variants.find((function(e){return e.isActive}));return r(r({},e),{selectedVariantValues:(t||e.variants[0]).variantValues})})))||[],function(e,t){var r,i,n=u.isCustomValueFilter;null===(r=e.filters)||void 0===r||r.forEach((function(e){var r,i,a,o=null==t?void 0:t.find((function(t){return t.id===e.id}));o?null===(r=e.values)||void 0===r||r.forEach((function(t){var r=o.values.find((function(e){return e.id===t.id}));r?t.resultCount=r.count:n(e)?t.resultCount=null:t.resultCount=0})):n(e)?null===(i=e.values)||void 0===i||i.forEach((function(e){return e.resultCount=null})):null===(a=e.values)||void 0===a||a.forEach((function(e){return e.resultCount=0}))}));var a=null==t?void 0:t.find((function(e){return"category"===e.id}));a&&(null===(i=e.filterCategories)||void 0===i||i.forEach((function(e){var t=a.values.find((function(t){return t.id===e.id}));e.resultCount=t?t.count:0})))}(i,null===(c=I.data)||void 0===c?void 0:c.facets),i.data=p,i.count=(null===(f=I.data)||void 0===f?void 0:f.count)||0,i.initialized=!0,i.page=v||1,i.minPage=i.page,[2,!0])):[2];case 5:return y=t.sent(),console.error(y),[3,6];case 6:return[2]}}))}))}function C(e){return e.type===a.STATIC}function A(e){return e.type===a.LAST_VIEWED}function S(e){return e.type===a.SEARCH}function T(r,n,f,p){var A,T,D;return e(this,void 0,void 0,(function(){var e,g,y,R,h,m;return t(this,(function(t){switch(t.label){case 0:return e=[],g=[],y=u.getValueList,null===(A=r.filters)||void 0===A||A.forEach((function(t){var r=y(t);r.length&&e.push({id:t.id,type:t.type,displayType:t.displayType,valueList:r}),t.isFacetFilter&&g.push({id:t.id,type:t.type,displayType:t.displayType})})),R=null===(T=r.filterCategories)||void 0===T?void 0:T.filter((function(e){return e.isSelected})).map((function(e){return e.id})),h=function(e){var t,r;switch(e.sort){case d.INCREASING_PRICE:t=v.ASC,r=E.PRICE;break;case d.DECREASING_PRICE:t=v.DESC,r=E.PRICE;break;case d.FIRST_ADDED:t=v.ASC,r=E.CREATED_AT;break;case d.LAST_ADDED:t=v.DESC,r=E.CREATED_AT;break;case d.INCREASING_DISCOUNT:t=v.ASC,r=E.DISCOUNT_RATIO;break;case d.DECRASING_DISCOUNT:t=v.DESC,r=E.DISCOUNT_RATIO;break;case d.FEATURED:if(S(e))return;t=v.ASC,r=E.MANUAL_SORT;break;case d.DEFAULT:t=void 0,r=void 0;break;case d.AVERAGE_RATING:t=v.DESC,r=E.AVERAGE_RATING;break;case d.REVIEW_COUNT:t=v.DESC,r=E.REVIEW_COUNT;break;case d.SALE_COUNT:t=v.DESC,r=E.SALE_COUNT;break;case d.A_Z:t=v.ASC,r=E.NAME;break;case d.Z_A:t=v.DESC,r=E.NAME}if(t&&r)return{direction:t,type:r}}(r),function(e){return e.type===a.RELATED_PRODUCTS}(r)&&r.relatedProductData?[4,l({priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),productId:r.relatedProductData.productId,brandIds:r.relatedProductData.brandIds,categoryIds:r.relatedProductData.categoryIds,locale:I.getCurrentLocale()})]:[3,2];case 1:case 3:case 5:return[2,t.sent()];case 2:return function(e){return e.type===a.VIEWED_TOGETHER}(r)&&r.viewedTogetherProductData?[4,l({priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),method:c.VIEWED_TOGETHER,productIds:r.viewedTogetherProductData.productIds,locale:I.getCurrentLocale()})]:[3,4];case 4:return m={input:{page:n,perPage:f,productIdList:C(r)?null===(D=r.productListPropValue.productIds)||void 0===D?void 0:D.map((function(e){return e.productId})):p,filterList:e,facetList:g,brandId:r.pageType===i.BRAND&&r.type!==a.SEARCH?r.filterBrandId:void 0,categoryIdList:R&&R.length?R:r.filterCategoryId?[r.filterCategoryId]:void 0,priceListId:I.getPriceListId(),salesChannelId:I.getSalesChannelId(),query:r.searchKeyword,order:r.type===a.SEARCH?[]:h?[h]:[],showStockOption:I.getStockPreference()||o.SHOW_ALL}},[4,s(m,r.excludedFields)]}}))}))}function D(r){var n,a,o,d,u;return e(this,void 0,void 0,(function(){var e,s;return t(this,(function(t){switch(t.label){case 0:return[4,f({categoryId:r.filterCategoryId?r.filterCategoryId:void 0,locale:I.getCurrentLocale()})];case 1:return e=t.sent(),r.filters=(null===(n=null==e?void 0:e.data)||void 0===n?void 0:n.filters)||null,r.filterCategories=(null===(o=null===(a=null==e?void 0:e.data)||void 0===a?void 0:a.categories)||void 0===o?void 0:o.map((function(e){return new g(e)})))||null,r.disabledSortTypes=null===(d=e.data)||void 0===d?void 0:d.disabledSortTypes,r.pageType!==i.CATEGORY&&r.filterCategoryId&&(s=null===(u=r.filterCategories)||void 0===u?void 0:u.find((function(e){return e.id===r.filterCategoryId})))&&(s.isSelected=!0),r.filters&&r.filters.sort((function(e,t){return e.order>t.order?1:-1})),[2]}}))}))}var g=function(e){this.id=e.id,this.name=e.name,this.metaData=e.metaData,this.isAutomated=e.isAutomated,this.resultCount=e.resultCount,this.isSelected=e.isSelected,this.imageId=e.imageId};export{p as getInitial};
@@ -1 +1 @@
1
- import{__awaiter as e,__generator as t,__assign as n}from'./../ext/tslib/tslib.es6.js';import r from"lodash/uniq";import a from"lodash/flatten";import{makeAutoObservable as i}from"mobx";import{IkasThemeJsonPageType as s,IkasCampaignOfferProductApplicablePriceEnum as o,IkasCategoryConditionTypeEnum as u,IkasRaffleMetadataTargetType as c,IkasBlogMetaDataTargetType as p,IkasHTMLMetaDataTargetType as l,IkasThemeJsonComponentPropType as d}from"@ikas/storefront-models";import{IkasStorefrontConfig as f}from"@ikas/storefront-config";import{IkasProductFunctions as h}from"@ikas/storefront-model-functions";import{IkasProductListPropValueProvider as g}from"./prop-value/product-list.js";import{IkasProductPropValueProvider as v}from"./prop-value/product-detail.js";import{IkasBrandListPropValueProvider as m}from"./prop-value/brand-list.js";import{IkasBrandPropValueProvider as T}from"./prop-value/brand.js";import{IkasLinkPropValueProvider as S}from"./prop-value/link.js";import{IkasImageListPropValueProvider as P}from"./prop-value/image-list.js";import{IkasTextPropValueProvider as D}from"./prop-value/text.js";import{IkasColorPropValueProvider as y}from"./prop-value/color.js";import{IkasBooleanPropValueProvider as L}from"./prop-value/boolean.js";import{IkasImagePropValueProvider as O}from"./prop-value/image.js";import{IkasCategoryPropValueProvider as I}from"./prop-value/category.js";import{IkasCategoryListPropValueProvider as b}from"./prop-value/category-list.js";import{IkasCustomPropValueProvider as C}from"./prop-value/custom.js";import{IkasSliderPropValueProvider as w}from"./prop-value/slider.js";import{IkasRichTextPropValueProvider as R}from"./prop-value/rich-text.js";import{IkasBlogPropValueProvider as E}from"./prop-value/blog.js";import{IkasBlogListPropValueProvider as A}from"./prop-value/blog-list.js";import{IkasAttributePropValueProvider as V}from"./prop-value/attribute.js";import{IkasAttributeListPropValueProvider as j}from"./prop-value/attribute-list.js";import{IkasBlogCategoryPropValueProvider as F}from"./prop-value/blog-category.js";import{IkasBlogCategoryListPropValueProvider as G}from"./prop-value/blog-category-list.js";import{IkasRafflePropValueProvider as _}from"./prop-value/raffle.js";import{IkasRaffleListPropValueProvider as B}from"./prop-value/raffle-list.js";import{listMerchantSettings as M,listCustomerReviewSummary as U,searchProducts as k,listCampaignOffer as N,listProductOptionSet as x,listProductBrand as q,listCategory as Y,listBlog as J,listBlogCategory as K,listStorefrontRaffle as X,listHTMLMetaData as H,listRaffleMetaData as $,listBlogMetaData as z}from"@ikas/storefront-api";import{populateRaffleProducts as Q}from"./helpers/raffle.js";import{IkasVideoPropValueProvider as W}from"./prop-value/video.js";var Z=function(){function Z(e,t,n){this.pageType=null,this.pageParams={},this.pageComponentPropValues=[],this.pageSpecificData=null,this.merchantSettings=null,this.possiblePageTypes=[],this.linkMetaDataTargetIds=[],this.productReviewSummary=null,this.theme=e,this.pageParams=t||{},this.pageType=n,i(this)}return Object.defineProperty(Z.prototype,"page",{get:function(){var e=this;if(this.pageType===s.CUSTOM){var t=this.pageParams.slug;return this.theme.pages.find((function(e){return e.type===s.CUSTOM&&e.slug===t}))}return this.theme.pages.find((function(t){return t.type===e.pageType}))},enumerable:!1,configurable:!0}),Object.defineProperty(Z.prototype,"nextPageData",{get:function(){var e,t,r,a,i,o=[],u=[];return this.pageComponentPropValues.forEach((function(e){if(u.push({pageComponent:{id:e.pageComponent.id,componentId:e.pageComponent.componentId},propValues:e.propValues}),!o.find((function(t){return t.id===e.component.id}))){var t=n({},e.component);t.props.forEach((function(e){delete e.description,delete e.displayName,delete e.translations,delete e.groupId})),delete t.translations,delete t.defaultPropValues,delete t.displayName,delete t.description,delete t.dir,o.push(t)}})),{props:JSON.parse(JSON.stringify({propValues:u,themeJsonComponents:o,customDataList:this.theme.customData,pageSpecificData:this.pageSpecificData||null,pageType:(null===(e=this.page)||void 0===e?void 0:e.type)||s.CUSTOM,pageTitle:(null===(t=this.page)||void 0===t?void 0:t.pageTitle)||null,pageDescription:(null===(r=this.page)||void 0===r?void 0:r.description)||null,canonicals:(null===(a=this.page)||void 0===a?void 0:a.canonicals)||null,disableIndex:(null===(i=this.page)||void 0===i?void 0:i.disableIndex)||null,settings:this.theme.settings||{},productReviewSummary:this.productReviewSummary,configJson:f.toJSON(),merchantSettings:this.getMerchantSettings()}))}},enumerable:!1,configurable:!0}),Object.defineProperty(Z.prototype,"specification",{get:function(){var e,t,n=this,r=this.page;return(null==r?void 0:r.type)===s.PRODUCT?null===(e=r.specifications)||void 0===e?void 0:e.find((function(e){var t;return e.id===(null===(t=n.pageSpecificData)||void 0===t?void 0:t.id)})):null===(t=null==r?void 0:r.specifications)||void 0===t?void 0:t.find((function(e){var t;return e.id===(null===(t=n.pageSpecificData)||void 0===t?void 0:t.id)}))},enumerable:!1,configurable:!0}),Object.defineProperty(Z.prototype,"pageComponents",{get:function(){var e;return this.specification?this.specification.components:(null===(e=this.page)||void 0===e?void 0:e.components)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(Z.prototype,"$pageComponentPropValues",{get:function(){return this.pageComponentPropValues},enumerable:!1,configurable:!0}),Z.prototype.getMerchantSettings=function(){return e(this,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return[4,M({})];case 1:return(e=t.sent()).isSuccess&&e.data&&(this.merchantSettings=e.data),[2]}}))}))},Z.prototype.getPageData=function(){return e(this,void 0,void 0,(function(){var e,n=this;return t(this,(function(t){switch(t.label){case 0:return this.pageSpecificData?[3,2]:[4,this.getPageSpecificData()];case 1:t.sent(),t.label=2;case 2:return this.page?[4,this.getMerchantSettings()]:[2];case 3:return t.sent(),e=this,[4,Promise.all(this.pageComponents.map((function(e){return n.getPageComponentPropValues(e)})))];case 4:return e.pageComponentPropValues=t.sent(),[4,this.setLinkSlugs()];case 5:return t.sent(),[4,this.getProductReviewSummary()];case 6:return t.sent(),[2]}}))}))},Z.prototype.getProductReviewSummary=function(){var n,r,a;return e(this,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return this.pageType!==s.PRODUCT?[3,2]:[4,U({productId:{eq:null===(n=this.pageSpecificData)||void 0===n?void 0:n.id}})];case 1:(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)&&(this.productReviewSummary=e.data.data[0]),t.label=2;case 2:return[2]}}))}))},Z.prototype.getPageSpecificData=function(){var r,a,i,d;return e(this,void 0,void 0,(function(){var g,v,m,T,S,P,D,y,L,O,I=this;return t(this,(function(b){switch(b.label){case 0:return this.pageType&&![s.BRAND,s.PRODUCT,s.CATEGORY,s.BLOG,s.BLOG_CATEGORY,s.RAFFLE_DETAIL].includes(this.pageType)?[2]:(g=this.pageParams.slug)?(v=[],(null===(r=this.possiblePageTypes)||void 0===r?void 0:r.includes(s.BLOG))||(null===(a=this.possiblePageTypes)||void 0===a?void 0:a.includes(s.BLOG_CATEGORY))?[4,z({slug:{eq:g}})]:[3,2]):[2];case 1:return m=b.sent(),(v=(null===(i=m.data)||void 0===i?void 0:i.data)||[]).length?[3,6]:[2];case 2:return(null===(d=this.possiblePageTypes)||void 0===d?void 0:d.includes(s.RAFFLE_DETAIL))?[4,$({slug:{eq:g}})]:[3,4];case 3:return m=b.sent(),(v=m.data||[]).length?[3,6]:[2];case 4:return[4,H({slug:{eq:g}})];case 5:if(m=b.sent(),!(v=m.data||[])||!v.length)return[2];b.label=6;case 6:if(!(T=v[0]).targetId)return[2];switch(S=function(){return e(I,void 0,void 0,(function(){var e,r,a,i,u,c,p,l,d,g,v,m,S,P,D,y,L;return t(this,(function(t){switch(t.label){case 0:return[4,k({input:{productIdList:[T.targetId],priceListId:f.getPriceListId(),salesChannelId:f.getSalesChannelId()}})];case 1:return e=t.sent(),(null===(D=null===(P=null==e?void 0:e.data)||void 0===P?void 0:P.data)||void 0===D?void 0:D.length)?(r=e.data.data[0]).productOptionSetId?[4,x({id:{eq:r.productOptionSetId}})]:[3,3]:[2];case 2:(a=t.sent()).isSuccess&&(null===(y=null==a?void 0:a.data)||void 0===y?void 0:y.length)&&(r.productOptionSet=a.data[0]),t.label=3;case 3:return(null===(L=r.campaignOffers)||void 0===L?void 0:L.length)?[4,N({id:{in:r.campaignOffers.map((function(e){return e.id}))}})]:[3,6];case 4:return(i=t.sent()).isSuccess&&i.data?(u=i.data[0],c=[],p=[],u.offers.forEach((function(e){return c.push(e.productId)})),[4,k({input:{productIdList:c}})]):[3,6];case 5:(l=t.sent()).isSuccess&&l.data&&u.offers.forEach((function(e){var t,r,a,i=null===(r=null===(t=l.data)||void 0===t?void 0:t.data)||void 0===r?void 0:r.find((function(t){return t.id===e.productId}));if(i){var s=i.variants.map((function(t){return e.discountAmount?n(n({},t),{prices:t.prices.map((function(t){var r=null!==t.discountPrice?t.discountPrice:t.sellPrice,a=r,i=r-r*e.discountAmount/100;return e.applicablePrice===o.SELL_PRICE&&(a=t.sellPrice,i=t.sellPrice-t.sellPrice*e.discountAmount/100),n(n({},t),{sellPrice:a,discountPrice:i})}))}):t}));(null===(a=e.excludedVariantIdList)||void 0===a?void 0:a.length)&&(s=i.variants.filter((function(t){return!e.excludedVariantIdList.some((function(e){return e===t.id}))}))),s.length&&p.push({campaignOfferId:u.id,campaignOfferProductId:e.id,product:n(n({},i),{variants:s})})}})),r.offers=p,t.label=6;case 6:return(d=r.variants.find((function(e){return e.isActive})))?(r.selectedVariantValues=d.variantValues,g=h.getDisplayedVariantTypes,this.pageSpecificData=r,(v=g(this.pageSpecificData,r.selectedVariantValues)).length&&(m=v[0]).displayedVariantValues.length&&(S=m.displayedVariantValues.find((function(e){return e.hasStock})))&&(this.pageSpecificData.selectedVariantValues=S.variant.variantValues),this.pageType=s.PRODUCT,this.setPageMetaData(T),[2]):[2]}}))}))},P=function(){return e(I,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,q({id:{eq:T.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BRAND,this.setPageMetaData(T),[2]):[2]}}))}))},D=function(){return e(I,void 0,void 0,(function(){var e,n,r,a,i,o,c,p;return t(this,(function(t){switch(t.label){case 0:return[4,Y({id:{eq:T.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(o=null===(i=e.data)||void 0===i?void 0:i.data)||void 0===o?void 0:o.length)?(n=e.data.data[0]).conditions&&(r=n.conditions.find((function(e){return e.conditionType===u.PRODUCT_BRAND})))?[4,q({id:{eq:r.valueList[0]}})]:[3,3]:[2];case 2:if(!(a=t.sent()).isSuccess||!(null===(p=null===(c=a.data)||void 0===c?void 0:c.data)||void 0===p?void 0:p.length))return[2];n.conditionValues={brand:a.data.data[0]},t.label=3;case 3:return this.pageSpecificData=n,this.pageType=s.CATEGORY,this.setPageMetaData(T),[2]}}))}))},y=function(){return e(I,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,J({id:{eq:T.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BLOG,this.setPageMetaData(T),[2]):[2]}}))}))},L=function(){return e(I,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,K({id:{eq:T.targetId},pagination:{page:1,limit:1}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BLOG_CATEGORY,this.setPageMetaData(T),[2]):[2]}}))}))},O=function(){return e(I,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,X({id:{eq:T.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],[4,Q([n])]):[2];case 2:return t.sent(),this.pageSpecificData=n,this.pageType=s.RAFFLE_DETAIL,this.setPageMetaData(T),[2]}}))}))},T.targetType){case l.BRAND:return[3,7];case l.CATEGORY:return[3,9];case l.PRODUCT:return[3,11];case p.BLOG:return[3,13];case p.BLOG_CATEGORY:return[3,15];case c.RAFFLE:return[3,17]}return[3,19];case 7:return[4,P()];case 8:return[2,b.sent()];case 9:return[4,D()];case 10:return[2,b.sent()];case 11:return[4,S()];case 12:return[2,b.sent()];case 13:return[4,y()];case 14:return[2,b.sent()];case 15:return[4,L()];case 16:return[2,b.sent()];case 17:return[4,O()];case 18:return[2,b.sent()];case 19:return[3,20];case 20:return[2]}}))}))},Z.prototype.getPageComponentPropValues=function(n){return e(this,void 0,void 0,(function(){var r,a,i,s=this;return t(this,(function(o){switch(o.label){case 0:return r=this.theme.components.find((function(e){return e.id===n.componentId})),a={pageComponent:n,component:r,propValues:{}},i=function(r){return e(s,void 0,void 0,(function(){var e,i;return t(this,(function(t){switch(t.label){case 0:return e=a.propValues,i=r.name,[4,this.getPageComponentPropValue(n,r)];case 1:return e[i]=t.sent(),[2]}}))}))},[4,Promise.all(r.props.map(i))];case 1:return o.sent(),[2,a]}}))}))},Z.prototype.getPageComponentPropValue=function(r,a){return e(this,void 0,void 0,(function(){var e,i,s,o,u,c,p,l,f=this;return t(this,(function(t){switch(t.label){case 0:if(i=r.propValues[a.name],s=[d.RAFFLE_LIST],null==i&&!s.includes(a.type))return[2,null];switch(a.type){case d.TEXT:return[3,1];case d.RICH_TEXT:return[3,2];case d.BOOLEAN:return[3,3];case d.IMAGE:return[3,4];case d.IMAGE_LIST:return[3,5];case d.BRAND:return[3,6];case d.BRAND_LIST:return[3,7];case d.PRODUCT_LIST:return[3,8];case d.PRODUCT_DETAIL:return[3,9];case d.PRODUCT_ATTRIBUTE:return[3,10];case d.PRODUCT_ATTRIBUTE_LIST:return[3,11];case d.CATEGORY:return[3,12];case d.CATEGORY_LIST:return[3,13];case d.LINK:case d.LIST_OF_LINK:return[3,14];case d.COLOR:return[3,15];case d.CUSTOM:return[3,16];case d.COMPONENT:case d.COMPONENT_LIST:return[3,17];case d.BLOG:return[3,19];case d.BLOG_LIST:return[3,20];case d.BLOG_CATEGORY:return[3,21];case d.BLOG_CATEGORY_LIST:return[3,22];case d.RAFFLE:return[3,23];case d.RAFFLE_LIST:return[3,24];case d.SLIDER:return[3,25];case d.VIDEO:return[3,26]}return[3,27];case 1:return e=new D(i),[3,28];case 2:return e=new R(i),[3,28];case 3:return e=new L(i),[3,28];case 4:return e=new O(i),[3,28];case 5:return e=new P(i),[3,28];case 6:return e=new T(i),[3,28];case 7:return e=new m(i),[3,28];case 8:return o=this.theme.components.find((function(e){return e.id===r.componentId})),u=[],o&&(c=o.props.find((function(e){return e.name===a.name})))&&(u=c.excludedFields||[]),e=new g(this.pageType,n(n({},i),{excludedFields:u}),this.pageSpecificData),[3,28];case 9:return e=new v(i),[3,28];case 10:return e=new V(i),[3,28];case 11:return e=new j(i),[3,28];case 12:return e=new I(i),[3,28];case 13:return e=new b(i),[3,28];case 14:return e=new S(i,this.theme,this.linkMetaDataTargetIds),[3,28];case 15:return e=new y(i),[3,28];case 16:return(p=this.theme.customData.find((function(e){return e.id===a.customDataId})))?(e=new C(i,p,this.theme,this.pageType,this,this.pageSpecificData,this.pageParams),[3,28]):[2];case 17:return l=i,[4,Promise.all(l.map((function(e){return f.getPageComponentPropValues(e)})))];case 18:case 29:return[2,t.sent()];case 19:return e=new E(i),[3,28];case 20:return e=new A(this.pageType,i,this.pageSpecificData),[3,28];case 21:return e=new F(i),[3,28];case 22:return e=new G(i),[3,28];case 23:return e=new _(i),[3,28];case 24:return e=new B,[3,28];case 25:return e=new w(i),[3,28];case 26:return e=new W(i),[3,28];case 27:return[3,28];case 28:return[4,null==e?void 0:e.getValue()]}}))}))},Z.prototype.setPageMetaData=function(e){this.page&&(this.page.pageTitle=e.pageTitle||null,this.page.description=e.description||null,this.page.canonicals=e.canonicals||null,this.page.disableIndex=e.disableIndex||null)},Z.prototype.setLinkSlugs=function(){return e(this,void 0,void 0,(function(){var e,n,r;return t(this,(function(t){switch(t.label){case 0:return e=[],n=[],r=[],this.linkMetaDataTargetIds.forEach((function(t){switch(t.type){case"DEFAULT":e.push(t);break;case"BLOG":n.push(t);break;case"RAFFLE":r.push(t)}})),[4,Promise.all([this.getLinkSlugs(e,"DEFAULT"),this.getLinkSlugs(n,"BLOG"),this.getLinkSlugs(r,"RAFFLE")])];case 1:return[2,t.sent()]}}))}))},Z.prototype.getLinkSlugs=function(n,a){return e(this,void 0,void 0,(function(){var i,s,o=this;return t(this,(function(u){switch(u.label){case 0:return i=r(n.map((function(e){return e.id}))),s=[],i.length?[4,function(){return e(o,void 0,void 0,(function(){var e,n,r,o,u;return t(this,(function(t){switch(t.label){case 0:switch(e=[],a){case"DEFAULT":return[3,1];case"BLOG":return[3,3];case"RAFFLE":return[3,5]}return[3,7];case 1:return[4,H({targetId:{in:i}})];case 2:return n=t.sent(),e=n.data||[],[3,8];case 3:return[4,z({targetId:{in:i}})];case 4:return r=t.sent(),e=(null===(u=r.data)||void 0===u?void 0:u.data)||[],[3,8];case 5:return[4,$({targetId:{in:i}})];case 6:return o=t.sent(),e=o.data||[],[3,8];case 7:return[3,8];case 8:return e.length&&(s=e),[2]}}))}))}()]:[2];case 1:return u.sent(),n.forEach((function(e){var t=s.find((function(t){return t.targetId===e.id}));t&&(e.navigationLink.href+=t.slug)})),[2]}}))}))},Z.prototype.getFlatCustomData=function(e){var t=this;if(!e.nestedData||!e.nestedData.length)return[e];var n=a(e.nestedData.map((function(e){return t.getFlatCustomData(e)}))),r=[];return r.push(e),r=r.concat(n)},Z}();export{Z as IkasPageDataProvider};
1
+ import{__awaiter as e,__generator as t,__assign as n}from'./../ext/tslib/tslib.es6.js';import r from"lodash/uniq";import a from"lodash/flatten";import{makeAutoObservable as i}from"mobx";import{IkasThemeJsonPageType as s,IkasCampaignOfferProductApplicablePriceEnum as o,IkasCategoryConditionTypeEnum as u,IkasRaffleMetadataTargetType as c,IkasBlogMetaDataTargetType as p,IkasHTMLMetaDataTargetType as l,IkasThemeJsonComponentPropType as d}from"@ikas/storefront-models";import{IkasStorefrontConfig as f}from"@ikas/storefront-config";import{IkasProductFunctions as h,IkasProductVariantFunctions as g}from"@ikas/storefront-model-functions";import{IkasProductListPropValueProvider as v}from"./prop-value/product-list.js";import{IkasProductPropValueProvider as m}from"./prop-value/product-detail.js";import{IkasBrandListPropValueProvider as T}from"./prop-value/brand-list.js";import{IkasBrandPropValueProvider as S}from"./prop-value/brand.js";import{IkasLinkPropValueProvider as P}from"./prop-value/link.js";import{IkasImageListPropValueProvider as D}from"./prop-value/image-list.js";import{IkasTextPropValueProvider as y}from"./prop-value/text.js";import{IkasColorPropValueProvider as I}from"./prop-value/color.js";import{IkasBooleanPropValueProvider as L}from"./prop-value/boolean.js";import{IkasImagePropValueProvider as O}from"./prop-value/image.js";import{IkasCategoryPropValueProvider as b}from"./prop-value/category.js";import{IkasCategoryListPropValueProvider as C}from"./prop-value/category-list.js";import{IkasCustomPropValueProvider as w}from"./prop-value/custom.js";import{IkasSliderPropValueProvider as R}from"./prop-value/slider.js";import{IkasRichTextPropValueProvider as E}from"./prop-value/rich-text.js";import{IkasBlogPropValueProvider as A}from"./prop-value/blog.js";import{IkasBlogListPropValueProvider as V}from"./prop-value/blog-list.js";import{IkasAttributePropValueProvider as j}from"./prop-value/attribute.js";import{IkasAttributeListPropValueProvider as F}from"./prop-value/attribute-list.js";import{IkasBlogCategoryPropValueProvider as G}from"./prop-value/blog-category.js";import{IkasBlogCategoryListPropValueProvider as _}from"./prop-value/blog-category-list.js";import{IkasRafflePropValueProvider as B}from"./prop-value/raffle.js";import{IkasRaffleListPropValueProvider as M}from"./prop-value/raffle-list.js";import{listMerchantSettings as k,listCustomerReviewSummary as U,searchProducts as N,listCampaignOffer as q,listProductOptionSet as x,listProductBrand as Y,listCategory as J,listBlog as K,listBlogCategory as X,listStorefrontRaffle as H,listHTMLMetaData as $,listRaffleMetaData as z,listBlogMetaData as Q}from"@ikas/storefront-api";import{populateRaffleProducts as W}from"./helpers/raffle.js";import{IkasVideoPropValueProvider as Z}from"./prop-value/video.js";var ee=function(){function ee(e,t,n){this.pageType=null,this.pageParams={},this.pageComponentPropValues=[],this.pageSpecificData=null,this.merchantSettings=null,this.possiblePageTypes=[],this.linkMetaDataTargetIds=[],this.productReviewSummary=null,this.theme=e,this.pageParams=t||{},this.pageType=n,i(this)}return Object.defineProperty(ee.prototype,"page",{get:function(){var e=this;if(this.pageType===s.CUSTOM){var t=this.pageParams.slug;return this.theme.pages.find((function(e){return e.type===s.CUSTOM&&e.slug===t}))}return this.theme.pages.find((function(t){return t.type===e.pageType}))},enumerable:!1,configurable:!0}),Object.defineProperty(ee.prototype,"nextPageData",{get:function(){var e,t,r,a,i,o=[],u=[];return this.pageComponentPropValues.forEach((function(e){if(u.push({pageComponent:{id:e.pageComponent.id,componentId:e.pageComponent.componentId},propValues:e.propValues}),!o.find((function(t){return t.id===e.component.id}))){var t=n({},e.component);t.props.forEach((function(e){delete e.description,delete e.displayName,delete e.translations,delete e.groupId})),delete t.translations,delete t.defaultPropValues,delete t.displayName,delete t.description,delete t.dir,o.push(t)}})),{props:JSON.parse(JSON.stringify({propValues:u,themeJsonComponents:o,customDataList:this.theme.customData,pageSpecificData:this.pageSpecificData||null,pageType:(null===(e=this.page)||void 0===e?void 0:e.type)||s.CUSTOM,pageTitle:(null===(t=this.page)||void 0===t?void 0:t.pageTitle)||null,pageDescription:(null===(r=this.page)||void 0===r?void 0:r.description)||null,canonicals:(null===(a=this.page)||void 0===a?void 0:a.canonicals)||null,disableIndex:(null===(i=this.page)||void 0===i?void 0:i.disableIndex)||null,settings:this.theme.settings||{},productReviewSummary:this.productReviewSummary,configJson:f.toJSON(),merchantSettings:this.getMerchantSettings()}))}},enumerable:!1,configurable:!0}),Object.defineProperty(ee.prototype,"specification",{get:function(){var e,t,n=this,r=this.page;return(null==r?void 0:r.type)===s.PRODUCT?null===(e=r.specifications)||void 0===e?void 0:e.find((function(e){var t;return e.id===(null===(t=n.pageSpecificData)||void 0===t?void 0:t.id)})):null===(t=null==r?void 0:r.specifications)||void 0===t?void 0:t.find((function(e){var t;return e.id===(null===(t=n.pageSpecificData)||void 0===t?void 0:t.id)}))},enumerable:!1,configurable:!0}),Object.defineProperty(ee.prototype,"pageComponents",{get:function(){var e;return this.specification?this.specification.components:(null===(e=this.page)||void 0===e?void 0:e.components)||[]},enumerable:!1,configurable:!0}),Object.defineProperty(ee.prototype,"$pageComponentPropValues",{get:function(){return this.pageComponentPropValues},enumerable:!1,configurable:!0}),ee.prototype.getMerchantSettings=function(){return e(this,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return[4,k({})];case 1:return(e=t.sent()).isSuccess&&e.data&&(this.merchantSettings=e.data),[2]}}))}))},ee.prototype.getPageData=function(){return e(this,void 0,void 0,(function(){var e,n=this;return t(this,(function(t){switch(t.label){case 0:return this.pageSpecificData?[3,2]:[4,this.getPageSpecificData()];case 1:t.sent(),t.label=2;case 2:return this.page?[4,this.getMerchantSettings()]:[2];case 3:return t.sent(),e=this,[4,Promise.all(this.pageComponents.map((function(e){return n.getPageComponentPropValues(e)})))];case 4:return e.pageComponentPropValues=t.sent(),[4,this.setLinkSlugs()];case 5:return t.sent(),[4,this.getProductReviewSummary()];case 6:return t.sent(),[2]}}))}))},ee.prototype.getProductReviewSummary=function(){var n,r,a;return e(this,void 0,void 0,(function(){var e;return t(this,(function(t){switch(t.label){case 0:return this.pageType!==s.PRODUCT?[3,2]:[4,U({productId:{eq:null===(n=this.pageSpecificData)||void 0===n?void 0:n.id}})];case 1:(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)&&(this.productReviewSummary=e.data.data[0]),t.label=2;case 2:return[2]}}))}))},ee.prototype.getPageSpecificData=function(){var r,a,i,d;return e(this,void 0,void 0,(function(){var v,m,T,S,P,D,y,I,L,O,b=this;return t(this,(function(C){switch(C.label){case 0:return this.pageType&&![s.BRAND,s.PRODUCT,s.CATEGORY,s.BLOG,s.BLOG_CATEGORY,s.RAFFLE_DETAIL].includes(this.pageType)?[2]:(v=this.pageParams.slug)?(m=[],(null===(r=this.possiblePageTypes)||void 0===r?void 0:r.includes(s.BLOG))||(null===(a=this.possiblePageTypes)||void 0===a?void 0:a.includes(s.BLOG_CATEGORY))?[4,Q({slug:{eq:v}})]:[3,2]):[2];case 1:return T=C.sent(),(m=(null===(i=T.data)||void 0===i?void 0:i.data)||[]).length?[3,6]:[2];case 2:return(null===(d=this.possiblePageTypes)||void 0===d?void 0:d.includes(s.RAFFLE_DETAIL))?[4,z({slug:{eq:v}})]:[3,4];case 3:return T=C.sent(),(m=T.data||[]).length?[3,6]:[2];case 4:return[4,$({slug:{eq:v}})];case 5:if(T=C.sent(),!(m=T.data||[])||!m.length)return[2];C.label=6;case 6:if(!(S=m[0]).targetId)return[2];switch(P=function(){return e(b,void 0,void 0,(function(){var e,r,a,i,u,c,p,l,d,v,m,T,P,D,y,I,L,O;return t(this,(function(t){switch(t.label){case 0:return[4,N({input:{productIdList:[S.targetId],priceListId:f.getPriceListId(),salesChannelId:f.getSalesChannelId()}})];case 1:return e=t.sent(),(null===(y=null===(D=null==e?void 0:e.data)||void 0===D?void 0:D.data)||void 0===y?void 0:y.length)?(r=e.data.data[0]).productOptionSetId?[4,x({id:{eq:r.productOptionSetId}})]:[3,3]:[2];case 2:(a=t.sent()).isSuccess&&(null===(I=null==a?void 0:a.data)||void 0===I?void 0:I.length)&&(r.productOptionSet=a.data[0]),t.label=3;case 3:return(null===(L=r.campaignOffers)||void 0===L?void 0:L.length)?[4,q({id:{in:r.campaignOffers.map((function(e){return e.id}))}})]:[3,6];case 4:return(i=t.sent()).isSuccess&&(null===(O=i.data)||void 0===O?void 0:O.length)?(u=i.data[0],c=[],p=[],u.offers.forEach((function(e){return c.push(e.productId)})),[4,N({input:{productIdList:c,priceListId:f.getPriceListId(),salesChannelId:f.getSalesChannelId()}})]):[3,6];case 5:(l=t.sent()).isSuccess&&l.data&&u.offers.forEach((function(e){var t,r,a=null===(r=null===(t=l.data)||void 0===t?void 0:t.data)||void 0===r?void 0:r.find((function(t){return t.id===e.productId}));if(a){var i=a.variants.filter((function(t){return g.hasStock(t)&&!(e.excludedVariantIdList||[]).some((function(e){return e===t.id}))})).map((function(t){return e.discountAmount?n(n({},t),{prices:t.prices.map((function(t){var r=null!==t.discountPrice?t.discountPrice:t.sellPrice,a=r,i=r-r*e.discountAmount/100;return e.applicablePrice===o.SELL_PRICE&&(a=t.sellPrice,i=t.sellPrice-t.sellPrice*e.discountAmount/100),n(n({},t),{sellPrice:a,discountPrice:i})}))}):t}));i.length&&p.push({campaignOfferId:u.id,campaignOfferProductId:e.id,product:n(n({},a),{variants:i})})}})),r.offers=p,t.label=6;case 6:return(d=r.variants.find((function(e){return e.isActive})))?(r.selectedVariantValues=d.variantValues,v=h.getDisplayedVariantTypes,this.pageSpecificData=r,(m=v(this.pageSpecificData,r.selectedVariantValues)).length&&(T=m[0]).displayedVariantValues.length&&(P=T.displayedVariantValues.find((function(e){return e.hasStock})))&&(this.pageSpecificData.selectedVariantValues=P.variant.variantValues),this.pageType=s.PRODUCT,this.setPageMetaData(S),[2]):[2]}}))}))},D=function(){return e(b,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,Y({id:{eq:S.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BRAND,this.setPageMetaData(S),[2]):[2]}}))}))},y=function(){return e(b,void 0,void 0,(function(){var e,n,r,a,i,o,c,p;return t(this,(function(t){switch(t.label){case 0:return[4,J({id:{eq:S.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(o=null===(i=e.data)||void 0===i?void 0:i.data)||void 0===o?void 0:o.length)?(n=e.data.data[0]).conditions&&(r=n.conditions.find((function(e){return e.conditionType===u.PRODUCT_BRAND})))?[4,Y({id:{eq:r.valueList[0]}})]:[3,3]:[2];case 2:if(!(a=t.sent()).isSuccess||!(null===(p=null===(c=a.data)||void 0===c?void 0:c.data)||void 0===p?void 0:p.length))return[2];n.conditionValues={brand:a.data.data[0]},t.label=3;case 3:return this.pageSpecificData=n,this.pageType=s.CATEGORY,this.setPageMetaData(S),[2]}}))}))},I=function(){return e(b,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,K({id:{eq:S.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BLOG,this.setPageMetaData(S),[2]):[2]}}))}))},L=function(){return e(b,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,X({id:{eq:S.targetId},pagination:{page:1,limit:1}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],this.pageSpecificData=n,this.pageType=s.BLOG_CATEGORY,this.setPageMetaData(S),[2]):[2]}}))}))},O=function(){return e(b,void 0,void 0,(function(){var e,n,r,a;return t(this,(function(t){switch(t.label){case 0:return[4,H({id:{eq:S.targetId}})];case 1:return(e=t.sent()).isSuccess&&(null===(a=null===(r=e.data)||void 0===r?void 0:r.data)||void 0===a?void 0:a.length)?(n=e.data.data[0],[4,W([n])]):[2];case 2:return t.sent(),this.pageSpecificData=n,this.pageType=s.RAFFLE_DETAIL,this.setPageMetaData(S),[2]}}))}))},S.targetType){case l.BRAND:return[3,7];case l.CATEGORY:return[3,9];case l.PRODUCT:return[3,11];case p.BLOG:return[3,13];case p.BLOG_CATEGORY:return[3,15];case c.RAFFLE:return[3,17]}return[3,19];case 7:return[4,D()];case 8:return[2,C.sent()];case 9:return[4,y()];case 10:return[2,C.sent()];case 11:return[4,P()];case 12:return[2,C.sent()];case 13:return[4,I()];case 14:return[2,C.sent()];case 15:return[4,L()];case 16:return[2,C.sent()];case 17:return[4,O()];case 18:return[2,C.sent()];case 19:return[3,20];case 20:return[2]}}))}))},ee.prototype.getPageComponentPropValues=function(n){return e(this,void 0,void 0,(function(){var r,a,i,s=this;return t(this,(function(o){switch(o.label){case 0:return r=this.theme.components.find((function(e){return e.id===n.componentId})),a={pageComponent:n,component:r,propValues:{}},i=function(r){return e(s,void 0,void 0,(function(){var e,i;return t(this,(function(t){switch(t.label){case 0:return e=a.propValues,i=r.name,[4,this.getPageComponentPropValue(n,r)];case 1:return e[i]=t.sent(),[2]}}))}))},[4,Promise.all(r.props.map(i))];case 1:return o.sent(),[2,a]}}))}))},ee.prototype.getPageComponentPropValue=function(r,a){return e(this,void 0,void 0,(function(){var e,i,s,o,u,c,p,l,f=this;return t(this,(function(t){switch(t.label){case 0:if(i=r.propValues[a.name],s=[d.RAFFLE_LIST],null==i&&!s.includes(a.type))return[2,null];switch(a.type){case d.TEXT:return[3,1];case d.RICH_TEXT:return[3,2];case d.BOOLEAN:return[3,3];case d.IMAGE:return[3,4];case d.IMAGE_LIST:return[3,5];case d.BRAND:return[3,6];case d.BRAND_LIST:return[3,7];case d.PRODUCT_LIST:return[3,8];case d.PRODUCT_DETAIL:return[3,9];case d.PRODUCT_ATTRIBUTE:return[3,10];case d.PRODUCT_ATTRIBUTE_LIST:return[3,11];case d.CATEGORY:return[3,12];case d.CATEGORY_LIST:return[3,13];case d.LINK:case d.LIST_OF_LINK:return[3,14];case d.COLOR:return[3,15];case d.CUSTOM:return[3,16];case d.COMPONENT:case d.COMPONENT_LIST:return[3,17];case d.BLOG:return[3,19];case d.BLOG_LIST:return[3,20];case d.BLOG_CATEGORY:return[3,21];case d.BLOG_CATEGORY_LIST:return[3,22];case d.RAFFLE:return[3,23];case d.RAFFLE_LIST:return[3,24];case d.SLIDER:return[3,25];case d.VIDEO:return[3,26]}return[3,27];case 1:return e=new y(i),[3,28];case 2:return e=new E(i),[3,28];case 3:return e=new L(i),[3,28];case 4:return e=new O(i),[3,28];case 5:return e=new D(i),[3,28];case 6:return e=new S(i),[3,28];case 7:return e=new T(i),[3,28];case 8:return o=this.theme.components.find((function(e){return e.id===r.componentId})),u=[],o&&(c=o.props.find((function(e){return e.name===a.name})))&&(u=c.excludedFields||[]),e=new v(this.pageType,n(n({},i),{excludedFields:u}),this.pageSpecificData),[3,28];case 9:return e=new m(i),[3,28];case 10:return e=new j(i),[3,28];case 11:return e=new F(i),[3,28];case 12:return e=new b(i),[3,28];case 13:return e=new C(i),[3,28];case 14:return e=new P(i,this.theme,this.linkMetaDataTargetIds),[3,28];case 15:return e=new I(i),[3,28];case 16:return(p=this.theme.customData.find((function(e){return e.id===a.customDataId})))?(e=new w(i,p,this.theme,this.pageType,this,this.pageSpecificData,this.pageParams),[3,28]):[2];case 17:return l=i,[4,Promise.all(l.map((function(e){return f.getPageComponentPropValues(e)})))];case 18:case 29:return[2,t.sent()];case 19:return e=new A(i),[3,28];case 20:return e=new V(this.pageType,i,this.pageSpecificData),[3,28];case 21:return e=new G(i),[3,28];case 22:return e=new _(i),[3,28];case 23:return e=new B(i),[3,28];case 24:return e=new M,[3,28];case 25:return e=new R(i),[3,28];case 26:return e=new Z(i),[3,28];case 27:return[3,28];case 28:return[4,null==e?void 0:e.getValue()]}}))}))},ee.prototype.setPageMetaData=function(e){this.page&&(this.page.pageTitle=e.pageTitle||null,this.page.description=e.description||null,this.page.canonicals=e.canonicals||null,this.page.disableIndex=e.disableIndex||null)},ee.prototype.setLinkSlugs=function(){return e(this,void 0,void 0,(function(){var e,n,r;return t(this,(function(t){switch(t.label){case 0:return e=[],n=[],r=[],this.linkMetaDataTargetIds.forEach((function(t){switch(t.type){case"DEFAULT":e.push(t);break;case"BLOG":n.push(t);break;case"RAFFLE":r.push(t)}})),[4,Promise.all([this.getLinkSlugs(e,"DEFAULT"),this.getLinkSlugs(n,"BLOG"),this.getLinkSlugs(r,"RAFFLE")])];case 1:return[2,t.sent()]}}))}))},ee.prototype.getLinkSlugs=function(n,a){return e(this,void 0,void 0,(function(){var i,s,o=this;return t(this,(function(u){switch(u.label){case 0:return i=r(n.map((function(e){return e.id}))),s=[],i.length?[4,function(){return e(o,void 0,void 0,(function(){var e,n,r,o,u;return t(this,(function(t){switch(t.label){case 0:switch(e=[],a){case"DEFAULT":return[3,1];case"BLOG":return[3,3];case"RAFFLE":return[3,5]}return[3,7];case 1:return[4,$({targetId:{in:i}})];case 2:return n=t.sent(),e=n.data||[],[3,8];case 3:return[4,Q({targetId:{in:i}})];case 4:return r=t.sent(),e=(null===(u=r.data)||void 0===u?void 0:u.data)||[],[3,8];case 5:return[4,z({targetId:{in:i}})];case 6:return o=t.sent(),e=o.data||[],[3,8];case 7:return[3,8];case 8:return e.length&&(s=e),[2]}}))}))}()]:[2];case 1:return u.sent(),n.forEach((function(e){var t=s.find((function(t){return t.targetId===e.id}));t&&(e.navigationLink.href+=t.slug)})),[2]}}))}))},ee.prototype.getFlatCustomData=function(e){var t=this;if(!e.nestedData||!e.nestedData.length)return[e];var n=a(e.nestedData.map((function(e){return t.getFlatCustomData(e)}))),r=[];return r.push(e),r=r.concat(n)},ee}();export{ee as IkasPageDataProvider};
@@ -1 +1 @@
1
- import{__awaiter as t,__generator as e}from'./../../ext/tslib/tslib.es6.js';import{listProductOptionSet as a,searchProducts as r}from"@ikas/storefront-api";import{IkasStorefrontConfig as i}from"@ikas/storefront-config";import{IkasProductFunctions as o}from"@ikas/storefront-model-functions";import{getPlaceholderProduct as u}from"../placeholders.js";var l=function(){function l(t){this.productDetailPropValue=t}return l.prototype.getValue=function(){var l,n,d;return t(this,void 0,void 0,(function(){var t,s,p,c,V,f,v,h=this;return e(this,(function(e){switch(e.label){case 0:return(null===(l=this.productDetailPropValue)||void 0===l?void 0:l.usePageData)?[2,{productDetailPropValue:this.productDetailPropValue,productDetail:null}]:this.productDetailPropValue.productId?[4,r({input:{productIdList:[this.productDetailPropValue.productId],priceListId:i.getPriceListId(),salesChannelId:i.getSalesChannelId()}})]:[2,null];case 1:return(t=e.sent()).isSuccess&&(null===(n=t.data)||void 0===n?void 0:n.data)?(s=t.data.data).length?(p=s[0]).productOptionSetId?[4,a({id:{eq:p.productOptionSetId}})]:[3,3]:[3,4]:[3,5];case 2:(c=e.sent()).isSuccess&&(null===(d=c.data)||void 0===d?void 0:d.length)&&(p.productOptionSet=c.data[0]),e.label=3;case 3:return V=o.hasVariant,p&&V(p)?(f=p.variants.find((function(t){return t.id===h.productDetailPropValue.variantId})))?(p.selectedVariantValues=null==f?void 0:f.variantValues,[2,{productDetailPropValue:this.productDetailPropValue,productDetail:p}]):[2,null]:(v=p.variants.find((function(t){return t.isActive})),p.selectedVariantValues=(v||p.variants[0]).variantValues,[2,{productDetailPropValue:this.productDetailPropValue,productDetail:p}]);case 4:return[2,{productDetailPropValue:this.productDetailPropValue,productDetail:u()}];case 5:return[2,null]}}))}))},l}();export{l as IkasProductPropValueProvider};
1
+ import{__awaiter as t,__generator as e}from'./../../ext/tslib/tslib.es6.js';import{listProductOptionSet as a,searchProducts as r}from"@ikas/storefront-api";import{IkasStorefrontConfig as i}from"@ikas/storefront-config";import{IkasProductFunctions as o,IkasProductVariantFunctions as u}from"@ikas/storefront-model-functions";import{getPlaceholderProduct as l}from"../placeholders.js";var n=function(){function n(t){this.productDetailPropValue=t}return n.prototype.getValue=function(){var n,s,d;return t(this,void 0,void 0,(function(){var t,p,c,V,f,h,v,D=this;return e(this,(function(e){switch(e.label){case 0:return(null===(n=this.productDetailPropValue)||void 0===n?void 0:n.usePageData)?[2,{productDetailPropValue:this.productDetailPropValue,productDetail:null}]:this.productDetailPropValue.productId?[4,r({input:{productIdList:[this.productDetailPropValue.productId],priceListId:i.getPriceListId(),salesChannelId:i.getSalesChannelId()}})]:[2,null];case 1:return(t=e.sent()).isSuccess&&(null===(s=t.data)||void 0===s?void 0:s.data)?(p=t.data.data).length?(c=p[0]).productOptionSetId?[4,a({id:{eq:c.productOptionSetId}})]:[3,3]:[3,4]:[3,5];case 2:(V=e.sent()).isSuccess&&(null===(d=V.data)||void 0===d?void 0:d.length)&&(c.productOptionSet=V.data[0]),e.label=3;case 3:return f=o.hasVariant,c&&f(c)?(h=c.variants.find((function(t){return t.id===D.productDetailPropValue.variantId})))?(c.selectedVariantValues=null==h?void 0:h.variantValues,[2,{productDetailPropValue:this.productDetailPropValue,productDetail:c}]):[2,null]:(v=c.variants.find((function(t){return t.isActive&&u.hasStock(t)})),c.selectedVariantValues=(v||c.variants[0]).variantValues,[2,{productDetailPropValue:this.productDetailPropValue,productDetail:c}]);case 4:return[2,{productDetailPropValue:this.productDetailPropValue,productDetail:l()}];case 5:return[2,null]}}))}))},n}();export{n as IkasProductPropValueProvider};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikas/storefront-providers",
3
- "version": "4.12.0-beta.8",
3
+ "version": "4.12.0",
4
4
  "description": "Data providers for ikas storefront theme components.",
5
5
  "author": "ikas",
6
6
  "license": "ISC",
@@ -17,10 +17,10 @@
17
17
  },
18
18
  "devDependencies": {
19
19
  "@rollup/plugin-commonjs": "^22.0.0",
20
- "@ikas/storefront-api": "^4.12.0-beta.8",
21
- "@ikas/storefront-config": "^4.12.0-beta.8",
22
- "@ikas/storefront-model-functions": "^4.12.0-beta.8",
23
- "@ikas/storefront-models": "^4.12.0-beta.8",
20
+ "@ikas/storefront-api": "^4.12.0",
21
+ "@ikas/storefront-config": "^4.12.0",
22
+ "@ikas/storefront-model-functions": "^4.12.0",
23
+ "@ikas/storefront-models": "^4.12.0",
24
24
  "@rollup/plugin-node-resolve": "^13.3.0",
25
25
  "rollup-plugin-rename-node-modules": "^1.2.0",
26
26
  "@types/lodash": "^4.14.168",
@@ -38,10 +38,10 @@
38
38
  },
39
39
  "peerDependencies": {
40
40
  "mobx": "^6.1.3",
41
- "@ikas/storefront-api": "^4.12.0-beta.8",
42
- "@ikas/storefront-config": "^4.12.0-beta.8",
43
- "@ikas/storefront-model-functions": "^4.12.0-beta.8",
44
- "@ikas/storefront-models": "^4.12.0-beta.8",
41
+ "@ikas/storefront-api": "^4.12.0",
42
+ "@ikas/storefront-config": "^4.12.0",
43
+ "@ikas/storefront-model-functions": "^4.12.0",
44
+ "@ikas/storefront-models": "^4.12.0",
45
45
  "lodash": "^4.17.21"
46
46
  }
47
47
  }