@ikas/storefront-model-functions 5.0.0-beta.25 → 5.0.0-beta.26
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.
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var r=function(){return r=Object.assign||function(r){for(var t,n=1,e=arguments.length;n<e;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(r[o]=t[o]);return r},r.apply(this,arguments)};function t(r,t,n){if(n||2===arguments.length)for(var e,o=0,a=t.length;o<a;o++)!e&&o in t||(e||(e=Array.prototype.slice.call(t,0,o)),e[o]=t[o]);return r.concat(e||Array.prototype.slice.call(t))}export{r as __assign,t as __spreadArray};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__assign as i}from
|
|
1
|
+
import{__assign as i}from'./../../../ext/tslib/tslib.es6.js';import{createBaseModel as a}from"../../base/index.js";function e(i){i.image=i.imageId?{id:i.imageId,isVideo:!1}:void 0}function t(){var t=i(i({},a()),{imageId:"",name:"",metadata:i(i({},a()),{id:"",slug:""})});return e(t),t}function o(i){var a;return(null===(a=i.metadata)||void 0===a?void 0:a.slug)?"/blog/".concat(i.metadata.slug):""}export{t as createBlogCategory,o as getBlogCategoryHref,e as initBlogCategory};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__assign as e}from
|
|
1
|
+
import{__assign as e}from'./../../../ext/tslib/tslib.es6.js';import{IkasProductFilterDisplayType as n,IkasProductFilterType as t,IkasProductFilterSortType as i}from"@ikas/storefront-models";import r from"lodash/sortBy";import u from"lodash/cloneDeep";function o(t){var i;if(t.displayType===n.NUMBER_RANGE_LIST&&t.customValues&&t.customValues.length&&(t.numberRangeListOptions=t.customValues.map((function(n){return e(e({key:n},g(n)),{isSelected:!1})}))),t.displayType===n.NUMBER_RANGE&&t.customValues&&t.customValues.length){var r=t.customValues[0];t.numberRangeLimit=g(r)}null===(i=t.values)||void 0===i||i.forEach((function(e){return e.thumbnailImageId&&(e.thumbnailImage={id:e.thumbnailImageId,isVideo:!1})}))}function l(e){return[n.NUMBER_RANGE_LIST,n.NUMBER_RANGE].includes(e.displayType)}function s(e){return e.type===t.STOCK_STATUS}function a(e){var n;return e.numberRange?[S(e.numberRange)]:e.numberRangeListOptions?e.numberRangeListOptions.filter((function(e){return e.isSelected})).map((function(e){return S(e)})):(null===(n=e.values)||void 0===n?void 0:n.filter((function(e){return e.isSelected})).map((function(e){return e.id})))||[]}function c(e){var n;return e.numberRange?[S(e.numberRange)]:e.numberRangeListOptions?e.numberRangeListOptions.filter((function(e){return e.isSelected})).map((function(e){return S(e)})):(null===(n=e.values)||void 0===n?void 0:n.filter((function(e){return e.isSelected})).map((function(e){return e.key})))||[]}function d(e){var n,t,u,o=(null===(n=e.settings)||void 0===n?void 0:n.sortType)||i.ALPHABETICAL_ASC,l=[i.ALPHABETICAL_DESC,i.PRODUCT_COUNT_DESC].includes(o),s=[i.ALPHABETICAL_ASC,i.ALPHABETICAL_DESC].includes(o),a=o===i.CUSTOM_SORT,c=null===(t=e.values)||void 0===t?void 0:t.filter((function(e){return 0!==e.resultCount||e.isSelected}));if(c=r(c,s?"name":"resultCount"),l&&(c=null==c?void 0:c.reverse()),a){var d=(null===(u=e.settings)||void 0===u?void 0:u.customSortedValues)||[];c=c.sort((function(e,n){return d.indexOf(e.id)-d.indexOf(n.id)}))}return c}function f(e,n){var t;if(l(e))throw new Error("handleFilterValueClick cannot be used with NUMBER_RANGE | NUMBER_RANGE_LIST types!");n.isSelected=!n.isSelected,!e.isMultiSelect&&n.isSelected&&(null===(t=e.values)||void 0===t||t.forEach((function(e){e.id!==n.id&&(e.isSelected=!1)})))}function m(e,t){var i;if(e.displayType!==n.NUMBER_RANGE_LIST)throw new Error("handleNumberRangeClick can only be used with NUMBER_RANGE filters!");t.isSelected=!t.isSelected,!e.isMultiSelect&&t.isSelected&&(null===(i=e.numberRangeListOptions)||void 0===i||i.forEach((function(e){e.key!==t.key&&(e.isSelected=!1)})))}function R(e,t){var i;if(e.displayType!==n.NUMBER_RANGE)throw new Error("handleNumberRangeChange can only be used with NUMBER_RANGE filters!");if(t){var r=u(t);r.from<e.numberRangeLimit.from&&(r.from=e.numberRange.from),r.to&&(null===(i=e.numberRangeLimit)||void 0===i?void 0:i.to)&&r.to>e.numberRangeLimit.to&&(r.to=e.numberRangeLimit.to),e.numberRange=r}else e.numberRange=null}function v(e){var n,t;e.numberRange=null,null===(n=e.numberRangeListOptions)||void 0===n||n.forEach((function(e){return e.isSelected=!1})),null===(t=e.values)||void 0===t||t.forEach((function(e){return e.isSelected=!1}))}function p(e){var n;return{id:e.key,type:e.type,valueList:a(e),useAndFilter:null===(n=e.settings)||void 0===n?void 0:n.useAndFilter}}function E(e,t){var i,r,u=t.split(",");e.displayType===n.NUMBER_RANGE?e.numberRange=g(t):e.displayType===n.NUMBER_RANGE_LIST?null===(i=e.numberRangeListOptions)||void 0===i||i.forEach((function(e){u.includes(e.key)&&(e.isSelected=!0)})):null===(r=e.values)||void 0===r||r.forEach((function(e){u.includes(e.key)&&0!==e.resultCount&&(e.isSelected=!0)}))}function S(e){return"".concat(e.from,":").concat(e.to||"")}function g(e){try{var n=e.split(":").map((function(e){return parseInt(e)}));return{from:isNaN(n[0])?0:n[0],to:isNaN(n[1])?void 0:n[1]}}catch(e){return console.log(e),{from:0,to:0}}}export{E as applyQueryParam,v as clear,d as getDisplayedValues,c as getKeyList,a as getValueList,f as handleFilterValueClick,R as handleNumberRangeChange,m as handleNumberRangeClick,o as initFilter,l as isCustomValueFilter,s as isStockFilter,g as parseRangeStr,S as rangeToId,p as toInput};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__spreadArray as t}from
|
|
1
|
+
import{__spreadArray as t}from'./../../ext/tslib/tslib.es6.js';import{formatCurrency as n}from"../../utils/currency.js";import{initBrand as r}from"../brand/index.js";import{initCategory as i}from"../category/index.js";import{initHTMLMetaData as e}from"../html-meta-data/index.js";import{getVariantTypeSlug as a}from"../variant-type/index.js";import{getVariantValueSlug as u}from"../variant-type/variant-value/index.js";import{initProductAttributeValue as o}from"./attribute-value/index.js";import{hasValidValues as c}from"./option-set/index.js";import{initProductVariantType as s}from"./variant-type/index.js";import{initProductVariant as f,hasVariantStock as v}from"./variant/index.js";import d from"lodash/groupBy";var l;function p(t,n){t.metaData&&e(t.metaData,n),t.brand&&r(t.brand,n),t.categories.forEach((function(t){return i(t,n)})),t.variants.forEach(f),t.attributes.forEach(o),t.variantTypes.forEach(s)}function m(n,r,i){var e=n.selectedVariantValues.map((function(t){return t.variantTypeId===r.variantTypeId?r:t})),a=n.variants.find((function(t){return t.isActive&&e.every((function(n){return t.variantValues.some((function(t){return t.id===n.id}))}))}));if(a)n.selectedVariantValues=e;else{var u=n.variantTypes.findIndex((function(t){return t.variantType.id===r.variantTypeId}));if(u>0){var o=n.variantTypes.slice(0,u),c=n.selectedVariantValues.filter((function(t){return o.some((function(n){return n.variantType.id===t.variantTypeId}))})),s=t(t([],c,!0),[r],!1);a=n.variants.find((function(t){return t.isActive&&s.every((function(n){return t.variantValues.some((function(t){return t.id===n.id}))}))}))}else{var f=e.slice(0,e.length-1);(a=n.variants.find((function(t){return t.isActive&&f.every((function(n){return t.variantValues.some((function(t){return t.id===n.id}))}))})))||(a=n.variants.find((function(t){return t.isActive&&t.variantValues.some((function(t){return t.id===r.id}))})))}if(!a)return;n.selectedVariantValues=a.variantValues}l&&l(n,r,i)}function y(t){if(!V(t))return t.variants[0];var n=t.selectedVariantValues.map((function(t){return t.id}));return t.variants.find((function(t){return t.variantValues.every((function(t){return n.includes(t.id)}))}))}function V(t){return!!t.variantTypes.length}function T(t){if(t.isStatic)return v(y(t));if(t.groupVariantsByVariantTypeId){var n=t.variants[0].variantValues.find((function(n){return n.variantTypeId==t.groupVariantsByVariantTypeId}));if(n)return t.variants.filter((function(t){return t.variantValues.find((function(t){return t.id==n.id}))})).some((function(t){return t.stock>0||t.sellIfOutOfStock}))}return t.variants.some((function(t){return t.stock>0||t.sellIfOutOfStock}))}function b(t){var n=t.productOptionSet;return!n||c(n)}function g(t){return t.length?t[0]:void 0}function I(t){if(V(t))return t.variantTypes[0].variantType}function h(n){var r=n.selectedVariantValues,i=n.variantTypes.map((function(i,e){var a=i.variantType,u=[],o=e>0?n.variantTypes.slice(0,e):null,c=[];return o&&(c=r.filter((function(t){return o.some((function(n){return n.variantType.id===t.variantTypeId}))}))),a.values.forEach((function(i){var e=t(t([],c,!0),[i],!1),a=n.variants.find((function(t){return t.isActive&&e.every((function(n){return t.variantValues.some((function(t){return t.id===n.id}))}))})),o=n.variants.find((function(t){return t.isActive&&v(t)&&e.every((function(n){return t.variantValues.some((function(t){return t.id===n.id}))}))})),s=r.some((function(t){return t.id===i.id}));a&&u.push({variant:a,variantValue:i,hasStock:!!o,isSelected:s})})),{variantType:a,displayedVariantValues:u}}));return 1===i.length&&(i[0].displayedVariantValues=i[0].displayedVariantValues.filter((function(t){return t.variant.isActive}))),i}function j(t){var n=t.metaData;if(!(null==n?void 0:n.slug))return"";var r=t.variantTypes.map((function(n){var r=n.variantType,i=r.values.find((function(n){return t.selectedVariantValues.some((function(t){return t.id===n.id}))}));if(i)return"".concat(a(r),"=").concat(u(i))})).filter((function(t){return!!t})).join("&");return r?"/".concat(n.slug,"?").concat(r):"/".concat(n.slug)}function A(t){if(t.groupVariantsByVariantTypeId||t.isFiltered)return j(t);var n=t.metaData;return(null==n?void 0:n.slug)?"/".concat(n.slug):""}function x(t){var n=y(t),r=t.productOptionSet;return(!r||c(r))&&(v(n)||n.sellIfOutOfStock)}function S(t){var n,r=d(t.attributes,"productAttributeId");return(null===(n=t.attributes)||void 0===n?void 0:n.map((function(t){var n=t.productAttributeId;if(n){var i=r[n];return(null==i?void 0:i.length)&&i[0].productAttribute?{attribute:i[0].productAttribute,values:i}:void 0}})).filter((function(t){return!!t})))||[]}function O(t,r){var i,e,a=r.price;if(a.unitPrice&&t.baseUnit){var u=t.baseUnit.baseAmount,o=(null===(e=null===(i=t.baseUnit)||void 0===i?void 0:i.unit)||void 0===e?void 0:e.name)||"";return"".concat(n(a.unitPrice,a.currency||"",a.currencySymbol||"")," / ").concat(u&&1!==u?u:"").concat(o)}}function k(t){l=t}export{k as _setSelectVariantValueCallback,h as getDisplayedVariantTypes,S as getGroupedAttributeValues,I as getMainVariantType,g as getMainVariantValue,A as getProductHref,y as getSelectedVariant,j as getSelectedVariantHref,O as getVariantUnitPriceText,T as hasProductStock,b as hasValidProductOptionValues,V as hasVariant,p as initProduct,x as isAddToCartEnabled,m as selectVariantValue};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ikas/storefront-model-functions",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.26",
|
|
4
4
|
"description": "Functions for ikas storefront models.",
|
|
5
5
|
"author": "ikas",
|
|
6
6
|
"license": "ISC",
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
"build": "rm -rf build && rollup -c"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@ikas/storefront-config": "^5.0.0-beta.
|
|
21
|
-
"@ikas/storefront-models": "^5.0.0-beta.
|
|
20
|
+
"@ikas/storefront-config": "^5.0.0-beta.26",
|
|
21
|
+
"@ikas/storefront-models": "^5.0.0-beta.26",
|
|
22
22
|
"lodash": "^4.17.21"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|