@ikas/storefront-model-functions 5.0.0-beta.2 → 5.0.0-beta.21

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.
Files changed (84) hide show
  1. package/build/ext/tslib/tslib.es6.js +1 -1
  2. package/build/functions/base/index.d.ts +6 -0
  3. package/build/functions/base/index.js +1 -0
  4. package/build/functions/blog/category/index.d.ts +11 -1
  5. package/build/functions/blog/category/index.js +1 -1
  6. package/build/functions/blog/index.d.ts +2 -1
  7. package/build/functions/blog/index.js +1 -1
  8. package/build/functions/brand/index.d.ts +2 -1
  9. package/build/functions/brand/index.js +1 -1
  10. package/build/functions/category/index.d.ts +2 -1
  11. package/build/functions/category/index.js +1 -1
  12. package/build/functions/category/path-item/index.d.ts +3 -2
  13. package/build/functions/category/path-item/index.js +1 -1
  14. package/build/functions/checkout/index.d.ts +7 -2
  15. package/build/functions/checkout/index.js +1 -1
  16. package/build/functions/country/index.d.ts +2 -0
  17. package/build/functions/country/index.js +1 -0
  18. package/build/functions/customer/address/index.d.ts +4 -3
  19. package/build/functions/customer/address/index.js +1 -1
  20. package/build/functions/customer/attribute/index.d.ts +3 -2
  21. package/build/functions/customer/attribute/index.js +1 -1
  22. package/build/functions/customer/index.d.ts +2 -2
  23. package/build/functions/customer/index.js +1 -1
  24. package/build/functions/customer/review/index.d.ts +2 -0
  25. package/build/functions/customer/review/index.js +1 -0
  26. package/build/functions/filter-category/index.d.ts +2 -1
  27. package/build/functions/filter-category/index.js +1 -1
  28. package/build/functions/html-meta-data/index.d.ts +3 -0
  29. package/build/functions/html-meta-data/index.js +1 -0
  30. package/build/functions/image/index.d.ts +3 -3
  31. package/build/functions/image/index.js +1 -1
  32. package/build/functions/merchant-settings/index.d.ts +2 -0
  33. package/build/functions/merchant-settings/index.js +1 -0
  34. package/build/functions/order/address/index.d.ts +3 -3
  35. package/build/functions/order/address/index.js +1 -1
  36. package/build/functions/order/index.d.ts +11 -2
  37. package/build/functions/order/index.js +1 -1
  38. package/build/functions/order/line-item/index.d.ts +10 -0
  39. package/build/functions/order/line-item/index.js +1 -1
  40. package/build/functions/order/line-item/variant/index.d.ts +1 -1
  41. package/build/functions/order/line-item/variant/index.js +1 -1
  42. package/build/functions/order/line-item/variant/value/index.d.ts +2 -2
  43. package/build/functions/order/line-item/variant/value/index.js +1 -1
  44. package/build/functions/order/package/index.d.ts +2 -0
  45. package/build/functions/order/package/index.js +1 -0
  46. package/build/functions/order/transaction/index.d.ts +2 -0
  47. package/build/functions/order/transaction/index.js +1 -0
  48. package/build/functions/payment-gateway/index.d.ts +1 -0
  49. package/build/functions/payment-gateway/index.js +1 -1
  50. package/build/functions/product/attribute/index.d.ts +2 -0
  51. package/build/functions/product/attribute/index.js +1 -0
  52. package/build/functions/product/attribute-value/index.d.ts +3 -1
  53. package/build/functions/product/attribute-value/index.js +1 -1
  54. package/build/functions/product/filter/index.d.ts +4 -3
  55. package/build/functions/product/filter/index.js +1 -1
  56. package/build/functions/product/image/index.d.ts +2 -0
  57. package/build/functions/product/image/index.js +1 -0
  58. package/build/functions/product/index.d.ts +14 -5
  59. package/build/functions/product/index.js +1 -1
  60. package/build/functions/product/option-set/index.d.ts +5 -2
  61. package/build/functions/product/option-set/index.js +1 -1
  62. package/build/functions/product/option-set/option/index.d.ts +2 -1
  63. package/build/functions/product/option-set/option/index.js +1 -1
  64. package/build/functions/product/stock-location/index.d.ts +2 -0
  65. package/build/functions/product/stock-location/index.js +1 -0
  66. package/build/functions/product/variant/index.d.ts +4 -2
  67. package/build/functions/product/variant/index.js +1 -1
  68. package/build/functions/product/variant/price/index.d.ts +4 -0
  69. package/build/functions/product/variant/price/index.js +1 -1
  70. package/build/functions/product/variant-type/index.d.ts +2 -0
  71. package/build/functions/product/variant-type/index.js +1 -0
  72. package/build/functions/raffle/index.d.ts +1 -0
  73. package/build/functions/raffle/index.js +1 -1
  74. package/build/functions/state/index.d.ts +2 -0
  75. package/build/functions/state/index.js +1 -0
  76. package/build/functions/variant-type/index.d.ts +2 -1
  77. package/build/functions/variant-type/index.js +1 -1
  78. package/build/functions/variant-type/variant-value/index.d.ts +3 -3
  79. package/build/functions/variant-type/variant-value/index.js +1 -1
  80. package/build/index.d.ts +41 -54
  81. package/build/index.js +1 -1
  82. package/build/utils/currency.d.ts +7 -0
  83. package/build/utils/currency.js +1 -0
  84. package/package.json +5 -5
@@ -1 +1 @@
1
- function r(r,t,e){if(e||2===arguments.length)for(var l,o=0,c=t.length;o<c;o++)!l&&o in t||(l||(l=Array.prototype.slice.call(t,0,o)),l[o]=t[o]);return r.concat(l||Array.prototype.slice.call(t))}export{r as __spreadArray};
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};
@@ -0,0 +1,6 @@
1
+ import { IkasBaseModel } from "@ikas/storefront-models";
2
+ /**
3
+ * Creates an empty base model object
4
+ * @returns An initialized empty base model object.
5
+ */
6
+ export declare function createBaseModel(): IkasBaseModel;
@@ -0,0 +1 @@
1
+ function e(){return{id:"",createdAt:Date.now(),updatedAt:Date.now(),deleted:!1}}export{e as createBaseModel};
@@ -1,2 +1,12 @@
1
1
  import { IkasBlogCategory } from "@ikas/storefront-models";
2
- export declare function getIkasBlogCategoryHref(blogCategory: IkasBlogCategory): string;
2
+ /**
3
+ * Initializes the given blog category.
4
+ * @param blogCategory Blog category to initialize.
5
+ */
6
+ export declare function initBlogCategory(blogCategory: IkasBlogCategory): void;
7
+ /**
8
+ * Creates an empty blog category object.
9
+ * @returns An initialized empty blog category object.
10
+ */
11
+ export declare function createBlogCategory(): IkasBlogCategory;
12
+ export declare function getBlogCategoryHref(blogCategory: IkasBlogCategory): string;
@@ -1 +1 @@
1
- function a(a){var t;return(null===(t=a.metadata)||void 0===t?void 0:t.slug)?"/blog/".concat(a.metadata.slug):""}export{a as getIkasBlogCategoryHref};
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,2 +1,3 @@
1
1
  import { IkasBlog } from "@ikas/storefront-models";
2
- export declare function getIkasBlogHref(blog: IkasBlog): string;
2
+ export declare function initBlog(blog: IkasBlog): void;
3
+ export declare function getBlogHref(blog: IkasBlog): string;
@@ -1 +1 @@
1
- function a(a){var t;return(null===(t=a.metadata)||void 0===t?void 0:t.slug)?"/blog/".concat(a.metadata.slug):""}export{a as getIkasBlogHref};
1
+ import{initBlogCategory as a}from"./category/index.js";function i(i){a(i.category),i.image=i.imageId?{id:i.imageId,isVideo:!1}:void 0}function o(a){var i;return(null===(i=a.metadata)||void 0===i?void 0:i.slug)?"/blog/".concat(a.metadata.slug):""}export{o as getBlogHref,i as initBlog};
@@ -1,2 +1,3 @@
1
1
  import { IkasBrand } from "@ikas/storefront-models";
2
- export declare function getIkasBrandHref(brand: IkasBrand): string;
2
+ export declare function initBrand(brand: IkasBrand, locale: string | null): void;
3
+ export declare function getBrandHref(brand: IkasBrand): string;
@@ -1 +1 @@
1
- function a(a){var t;return(null===(t=a.metaData)||void 0===t?void 0:t.slug)?"/".concat(a.metaData.slug):""}export{a as getIkasBrandHref};
1
+ import{initHTMLMetaData as a}from"../html-meta-data/index.js";function n(n,t){n.image=n.imageId?{id:n.imageId,isVideo:!1}:null,n.metaData&&a(n.metaData,t),n.translations&&t&&(!function(a,n,t){if(n&&n.some((function(a){return a.locale===t}))){var i=n.find((function(a){return a.locale===t}));(null==i?void 0:i.name)&&(a.name=i.name),(null==i?void 0:i.description)&&(a.description=i.description)}}(n,n.translations,t),delete n.translations)}function t(a){var n;return(null===(n=a.metaData)||void 0===n?void 0:n.slug)?"/".concat(a.metaData.slug):""}export{t as getBrandHref,n as initBrand};
@@ -1,2 +1,3 @@
1
1
  import { IkasCategory } from "@ikas/storefront-models";
2
- export declare function getIkasCategoryHref(category: IkasCategory): string;
2
+ export declare function initCategory(category: IkasCategory, locale: string | null): void;
3
+ export declare function getCategoryHref(category: IkasCategory): string;
@@ -1 +1 @@
1
- function a(a){var t;return(null===(t=a.metaData)||void 0===t?void 0:t.slug)?"/".concat(a.metaData.slug):""}export{a as getIkasCategoryHref};
1
+ import{initHTMLMetaData as t}from"../html-meta-data/index.js";import{initCategoryPathItem as a}from"./path-item/index.js";function e(e,i){var n={id:e.id,createdAt:e.createdAt,updatedAt:e.updatedAt,deleted:e.deleted,metaData:e.metaData,description:e.description,imageId:e.imageId,name:e.name,translations:e.translations};e.categoryPathItems.push(n),e.image=e.imageId?{id:e.imageId,isVideo:!1}:void 0,e.metaData&&t(e.metaData,i),e.translations&&i&&(!function(t,a,e){if(a&&a.some((function(t){return t.locale===e}))){var i=a.find((function(t){return t.locale===e}));(null==i?void 0:i.name)&&(t.name=i.name),(null==i?void 0:i.description)&&(t.description=i.description)}}(e,e.translations,i),delete e.translations),e.categoryPathItems.map((function(t){return a(t,i)}))}function i(t){var a;return(null===(a=t.metaData)||void 0===a?void 0:a.slug)?"/".concat(t.metaData.slug):""}export{i as getCategoryHref,e as initCategory};
@@ -1,3 +1,4 @@
1
1
  import { IkasCategoryPathItem } from "@ikas/storefront-models";
2
- export declare function getIkasCategoryPathItemSlug(categoryPathItem: IkasCategoryPathItem): string | undefined;
3
- export declare function getIkasCategoryPathItemHref(categoryPathItem: IkasCategoryPathItem): string;
2
+ export declare function initCategoryPathItem(categoryPathItem: IkasCategoryPathItem, locale: string | null): void;
3
+ export declare function getCategoryPathItemSlug(categoryPathItem: IkasCategoryPathItem): string | undefined;
4
+ export declare function getCategoryPathItemHref(categoryPathItem: IkasCategoryPathItem): string;
@@ -1 +1 @@
1
- function n(n){var t;return null===(t=n.metaData)||void 0===t?void 0:t.slug}function t(t){var r=n(t);return r?"/".concat(r):""}export{t as getIkasCategoryPathItemHref,n as getIkasCategoryPathItemSlug};
1
+ function n(n,t){n.translations&&t&&(!function(n,t,a){if(t&&t.some((function(n){return n.locale===a}))){var o=t.find((function(n){return n.locale===a}));(null==o?void 0:o.name)&&(n.name=o.name)}}(n,n.translations,t),delete n.translations)}function t(n){var t;return null===(t=n.metaData)||void 0===t?void 0:t.slug}function a(n){var a=t(n);return a?"/".concat(a):""}export{a as getCategoryPathItemHref,t as getCategoryPathItemSlug,n as initCategoryPathItem};
@@ -1,3 +1,8 @@
1
1
  import { IkasCheckout, IkasPaymentGateway } from "@ikas/storefront-models";
2
- export declare function isComplete(checkout: IkasCheckout): boolean;
3
- export declare function getTotalFinalPrice(checkout: IkasCheckout, selectedPaymentGateway: IkasPaymentGateway): number;
2
+ export declare function isCheckoutComplete(checkout: IkasCheckout): boolean;
3
+ export declare function getCheckoutTotalFinalPrice(checkout: IkasCheckout, selectedPaymentGateway?: IkasPaymentGateway | null): number;
4
+ export declare function getCheckoutTotalFinalPriceTaxModifier(checkout: IkasCheckout): number;
5
+ export declare function getCheckoutTotalTax(checkout: IkasCheckout): number;
6
+ export declare function getCheckoutFormattedTotalTax(checkout: IkasCheckout): string;
7
+ export declare function getCheckoutFormattedTotalFinalPrice(checkout: IkasCheckout): string;
8
+ export declare function getCheckoutDateStr(checkout: IkasCheckout): string;
@@ -1 +1 @@
1
- import{IkasCartCreatedBy as t,IkasOrderPaymentStatus as r,IkasPaymentGatewayAdditionalPriceType as n}from"@ikas/storefront-models";import{getCalculatedAdditionalPrices as o}from"../payment-gateway/index.js";function e(n){return n.createdBy===t.ADMIN?n.orderPaymentStatus===r.PAID:!!n.orderNumber}function a(t,r){var e=r?o(r,t.totalFinalPrice||0,t.shippingLines||null):void 0,a=t.totalFinalPrice||0;return null==e||e.forEach((function(t){t.type===n.DECREMENT?a-=t.amount:a+=t.amount})),a}export{a as getTotalFinalPrice,e as isComplete};
1
+ import{IkasCartCreatedBy as r,IkasOrderPaymentStatus as t,IkasPaymentGatewayAdditionalPriceType as n}from"@ikas/storefront-models";import{getTotalTax as e}from"../order/index.js";import{formatCurrency as o}from"../../utils/currency.js";import{formatDate as i}from"../../utils/helper.js";import{getCalculatedAdditionalPrices as u}from"../payment-gateway/index.js";function c(n){return n.createdBy===r.ADMIN?n.orderPaymentStatus===t.PAID:!!n.orderNumber}function a(r,t){if(!t)return r.totalFinalPrice;var e=t?u(t,r.totalFinalPrice||0,r.shippingLines||null):void 0,o=r.totalFinalPrice||0;return null==e||e.forEach((function(r){r.type===n.DECREMENT?o-=r.amount:o+=r.amount})),o}function m(r){return a(r)/r.totalFinalPrice}function l(r){return e(r)*m(r)}function f(r){return o(l(r),r.currencyCode,r.currencySymbol||"")}function s(r){return o(a(r),r.currencyCode,r.currencySymbol)}function d(r){var t=new Date;return t.setTime(r.updatedAt),i(t)}export{d as getCheckoutDateStr,s as getCheckoutFormattedTotalFinalPrice,f as getCheckoutFormattedTotalTax,a as getCheckoutTotalFinalPrice,m as getCheckoutTotalFinalPriceTaxModifier,l as getCheckoutTotalTax,c as isCheckoutComplete};
@@ -0,0 +1,2 @@
1
+ import { IkasCountry } from "@ikas/storefront-models";
2
+ export declare function initCountry(country: IkasCountry, locale: string | null): void;
@@ -0,0 +1 @@
1
+ function n(n,o){n.locationTranslations&&o&&(!function(n,o){n.name=n.locationTranslations&&n.locationTranslations[o]||n.name}(n,o),delete n.locationTranslations)}export{n as initCountry};
@@ -1,7 +1,8 @@
1
1
  import { IkasCheckoutSettings, IkasCustomerAddress } from "@ikas/storefront-models";
2
- export declare function getAddressText(address: IkasCustomerAddress): string;
3
- export declare function getValidationResult(address: IkasCustomerAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): IkasCustomerAddressValidationResult;
4
- export declare function isValidAddress(address: IkasCustomerAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): boolean;
2
+ export declare function createCustomerAddress(address?: Partial<IkasCustomerAddress>): IkasCustomerAddress;
3
+ export declare function getCustomerAddressText(address: IkasCustomerAddress): string;
4
+ export declare function validateCustomerAddress(address: IkasCustomerAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): IkasCustomerAddressValidationResult;
5
+ export declare function isValidCustomerAddress(address: IkasCustomerAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): boolean;
5
6
  export declare type IkasCustomerAddressValidationResult = {
6
7
  firstName: boolean;
7
8
  lastName: boolean;
@@ -1 +1 @@
1
- import{IkasCheckoutRequirement as e}from"@ikas/storefront-models";import{validatePhoneNumber as t}from"../../../utils/helper.js";function n(e){var t=[];return e.addressLine1&&t.push(e.addressLine1),e.addressLine2&&t.push(e.addressLine2),e.postalCode&&t.push(e.postalCode),e.district&&e.district.name&&t.push(e.district.name),e.city&&e.city.name&&t.push(e.city.name),e.state&&e.state.name&&"Default"!==e.state.name&&t.push(e.state.name),e.country&&e.country.name&&t.push(e.country.name),t.join(", ")}function i(n,i,r){var s,o,a,d=!!n.phone&&n.phone.length>=10&&t(n.phone);return{firstName:!!n.firstName,lastName:!!n.lastName,addressLine1:!!n.addressLine1,country:!!(null===(s=n.country)||void 0===s?void 0:s.name),state:!!n.state,city:!!(null===(o=n.city)||void 0===o?void 0:o.name),district:!r||!!(null===(a=n.district)||void 0===a?void 0:a.id),phone:!(i.phoneRequirement===e.MANDATORY||i.phoneRequirement===e.OPTIONAL&&n.phone)||d,postalCode:i.postalCodeRequirement!==e.MANDATORY||!!n.postalCode,identityNumber:i.identityNumberRequirement!==e.MANDATORY||!!n.identityNumber,title:!!n.title}}function r(e,t,n){var r=i(e,t,n);return Object.values(r).every((function(e){return e}))}export{n as getAddressText,i as getValidationResult,r as isValidAddress};
1
+ import{IkasCheckoutRequirement as t}from"@ikas/storefront-models";import{validatePhoneNumber as e}from"../../../utils/helper.js";function i(t){return{firstName:(null==t?void 0:t.firstName)||"",lastName:(null==t?void 0:t.lastName)||"",addressLine1:(null==t?void 0:t.addressLine1)||"",addressLine2:(null==t?void 0:t.addressLine2)||"",postalCode:(null==t?void 0:t.postalCode)||"",district:(null==t?void 0:t.district)||null,city:(null==t?void 0:t.city)||null,state:(null==t?void 0:t.state)||null,country:(null==t?void 0:t.country)||null,phone:(null==t?void 0:t.phone)||"",identityNumber:(null==t?void 0:t.identityNumber)||"",title:(null==t?void 0:t.title)||"",id:(null==t?void 0:t.id)||"",updatedAt:(null==t?void 0:t.updatedAt)||0,createdAt:(null==t?void 0:t.createdAt)||0,company:(null==t?void 0:t.company)||"",taxNumber:(null==t?void 0:t.taxNumber)||"",taxOffice:(null==t?void 0:t.taxOffice)||"",isDefault:(null==t?void 0:t.isDefault)||!1,attributes:(null==t?void 0:t.attributes)||[]}}function n(t){var e=[];return t.addressLine1&&e.push(t.addressLine1),t.addressLine2&&e.push(t.addressLine2),t.postalCode&&e.push(t.postalCode),t.district&&t.district.name&&e.push(t.district.name),t.city&&t.city.name&&e.push(t.city.name),t.state&&t.state.name&&"Default"!==t.state.name&&e.push(t.state.name),t.country&&t.country.name&&e.push(t.country.name),e.join(", ")}function l(i,n,l){var d,o,u,a=!!i.phone&&i.phone.length>=10&&e(i.phone);return{firstName:!!i.firstName,lastName:!!i.lastName,addressLine1:!!i.addressLine1,country:!!(null===(d=i.country)||void 0===d?void 0:d.name),state:!!i.state,city:!!(null===(o=i.city)||void 0===o?void 0:o.name),district:!l||!!(null===(u=i.district)||void 0===u?void 0:u.id),phone:!(n.phoneRequirement===t.MANDATORY||n.phoneRequirement===t.OPTIONAL&&i.phone)||a,postalCode:n.postalCodeRequirement!==t.MANDATORY||!!i.postalCode,identityNumber:n.identityNumberRequirement!==t.MANDATORY||!!i.identityNumber,title:!!i.title}}function d(t,e,i){var n=l(t,e,i);return Object.values(n).every((function(t){return t}))}export{i as createCustomerAddress,n as getCustomerAddressText,d as isValidCustomerAddress,l as validateCustomerAddress};
@@ -1,3 +1,4 @@
1
1
  import { IkasCustomerAttribute } from "@ikas/storefront-models";
2
- export declare function getAccountPagePermission(attribute: IkasCustomerAttribute): import("@ikas/storefront-models").IkasCustomerAttributePermission | undefined;
3
- export declare function getRegisterPageRequirement(attribute: IkasCustomerAttribute): import("@ikas/storefront-models").IkasCustomerAttributeRegisterPageRequirement | undefined;
2
+ export declare function initCustomerAttribute(attribute: IkasCustomerAttribute, locale: string | null): void;
3
+ export declare function getCustomerAttributeAccountPagePermission(attribute: IkasCustomerAttribute): import("@ikas/storefront-models").IkasCustomerAttributePermission | undefined;
4
+ export declare function getCustomerAttributeRegisterPageRequirement(attribute: IkasCustomerAttribute): import("@ikas/storefront-models").IkasCustomerAttributeRegisterPageRequirement | undefined;
@@ -1 +1 @@
1
- import{IkasStorefrontConfig as n}from"@ikas/storefront-config";function e(e){var i,l,o=n.getSalesChannelId();return null===(l=null===(i=e.salesChannels)||void 0===i?void 0:i.find((function(n){return n.salesChannelId===o})))||void 0===l?void 0:l.permission}function i(e){var i,l,o=n.getSalesChannelId();return null===(l=null===(i=e.salesChannels)||void 0===i?void 0:i.find((function(n){return n.salesChannelId===o})))||void 0===l?void 0:l.registerPageRequirement}export{e as getAccountPagePermission,i as getRegisterPageRequirement};
1
+ import{IkasStorefrontConfig as n}from"@ikas/storefront-config";function i(n,i){n.translations&&i&&(!function(n,i,o){var e;if(i&&i.some((function(n){return n.locale===o}))){var l=i.find((function(n){return n.locale===o}));(null==l?void 0:l.name)&&(n.name=l.name),(null==l?void 0:l.description)&&(n.description=l.description),(null==l?void 0:l.options)&&(null===(e=n.options)||void 0===e||e.forEach((function(n){var i,o=null===(i=l.options)||void 0===i?void 0:i.find((function(i){return i.id===n.id}));o&&o.name&&(n.name=o.name)})))}}(n,n.translations,i),delete n.translations)}function o(i){var o,e,l=n.getSalesChannelId();return null===(e=null===(o=i.salesChannels)||void 0===o?void 0:o.find((function(n){return n.salesChannelId===l})))||void 0===e?void 0:e.permission}function e(i){var o,e,l=n.getSalesChannelId();return null===(e=null===(o=i.salesChannels)||void 0===o?void 0:o.find((function(n){return n.salesChannelId===l})))||void 0===e?void 0:e.registerPageRequirement}export{o as getCustomerAttributeAccountPagePermission,e as getCustomerAttributeRegisterPageRequirement,i as initCustomerAttribute};
@@ -1,6 +1,6 @@
1
1
  import { IkasCustomer } from "@ikas/storefront-models";
2
- export declare function isSubscribed(customer: IkasCustomer): boolean;
3
- export declare function getBasicInfo(customer: IkasCustomer): {
2
+ export declare function isCustomerSubscribedToEmails(customer: IkasCustomer): boolean;
3
+ export declare function getCustomerBasicInfo(customer: IkasCustomer): {
4
4
  id: string;
5
5
  firstName: string;
6
6
  lastName: string | null;
@@ -1 +1 @@
1
- import{IkasCustomerEmailSubscriptionStatus as t}from"@ikas/storefront-models";function i(i){return i.subscriptionStatus===t.SUBSCRIBED||i.subscriptionStatus===t.PENDING_CONFIRMATION}function e(t){return{id:t.id,firstName:t.firstName,lastName:t.lastName,email:t.email,phone:t.phone}}export{e as getBasicInfo,i as isSubscribed};
1
+ import{IkasCustomerEmailSubscriptionStatus as t}from"@ikas/storefront-models";function i(i){return i.subscriptionStatus===t.SUBSCRIBED||i.subscriptionStatus===t.PENDING_CONFIRMATION}function e(t){return{id:t.id,firstName:t.firstName,lastName:t.lastName,email:t.email,phone:t.phone}}export{e as getCustomerBasicInfo,i as isCustomerSubscribedToEmails};
@@ -0,0 +1,2 @@
1
+ import { IkasCustomerReview } from "@ikas/storefront-models";
2
+ export declare function initCustomerReview(customerReview: IkasCustomerReview): void;
@@ -0,0 +1 @@
1
+ function i(i){i.images=i.imageIds?i.imageIds.map((function(i){return{id:i,isVideo:!1}})):null}export{i as initCustomerReview};
@@ -1,2 +1,3 @@
1
1
  import { IkasFilterCategory } from "@ikas/storefront-models";
2
- export declare function getIkasFilterCategoryHref(filterCategory: IkasFilterCategory): string;
2
+ export declare function getFilterCategorySlug(filterCategory: IkasFilterCategory): string | undefined;
3
+ export declare function getFilterCategoryHref(filterCategory: IkasFilterCategory): string;
@@ -1 +1 @@
1
- function t(t){return t.metaData?"/".concat(t.metaData.slug):""}export{t as getIkasFilterCategoryHref};
1
+ function t(t){var a;return null===(a=t.metaData)||void 0===a?void 0:a.slug}function a(t){return t.metaData?"/".concat(t.metaData.slug):""}export{a as getFilterCategoryHref,t as getFilterCategorySlug};
@@ -0,0 +1,3 @@
1
+ import { IkasHTMLMetaData } from "@ikas/storefront-models";
2
+ export declare function initHTMLMetaData(metaData: IkasHTMLMetaData, locale: string | null): void;
3
+ export declare function setHTMLMetaDataTranslations(metaData: IkasHTMLMetaData, locale: string): void;
@@ -0,0 +1 @@
1
+ function n(n,t){t&&i(n,t)}function i(n,i){if(n.translations&&n.translations.some((function(n){return n.locale===i}))){var t=n.translations.find((function(n){return n.locale===i}));(null==t?void 0:t.pageTitle)&&(n.pageTitle=t.pageTitle),(null==t?void 0:t.description)&&(n.description=t.description)}}export{n as initHTMLMetaData,i as setHTMLMetaDataTranslations};
@@ -1,4 +1,4 @@
1
1
  import { IkasImage } from "@ikas/storefront-models";
2
- export declare function getDefaultSrc(image: IkasImage): string;
3
- export declare function getThumbnailSrc(image: IkasImage): string;
4
- export declare function getSrc(image: IkasImage, size: number): string;
2
+ export declare function getImageDefaultSrc(image: IkasImage): string;
3
+ export declare function getImageThumbnailSrc(image: IkasImage): string;
4
+ export declare function getImageSrc(image: IkasImage, size: number): string;
@@ -1 +1 @@
1
- import{IkasStorefrontConfig as n}from"@ikas/storefront-config";function c(n){return o(n,1080)}function i(n){return o(n,180)}function o(c,i){var o,t=n.getCdnUrl();if(c.id.includes("/"))return c.isVideo?"".concat(t,"videos/").concat(c.id,"/original.mp4"):"".concat(t,"images/").concat(c.id,"/image_").concat(i,".webp");var a=null===(o=n.getMerchantSettings())||void 0===o?void 0:o.merchantId;return c.isVideo?"".concat(t,"videos/").concat(a,"/").concat(c.id,"/original.mp4"):"".concat(t,"images/").concat(a,"/").concat(c.id,"/image_").concat(i,".webp")}export{c as getDefaultSrc,o as getSrc,i as getThumbnailSrc};
1
+ import{IkasStorefrontConfig as n}from"@ikas/storefront-config";function c(n){return o(n,1080)}function i(n){return o(n,180)}function o(c,i){var o,t=n.getCdnUrl();if(c.id.includes("/"))return c.isVideo?"".concat(t,"videos/").concat(c.id,"/original.mp4"):"".concat(t,"images/").concat(c.id,"/image_").concat(i,".webp");var a=null===(o=n.getMerchantSettings())||void 0===o?void 0:o.merchantId;return c.isVideo?"".concat(t,"videos/").concat(a,"/").concat(c.id,"/original.mp4"):"".concat(t,"images/").concat(a,"/").concat(c.id,"/image_").concat(i,".webp")}export{c as getImageDefaultSrc,o as getImageSrc,i as getImageThumbnailSrc};
@@ -0,0 +1,2 @@
1
+ import { IkasMerchantSettings } from "@ikas/storefront-models";
2
+ export declare function initMerchantSettings(settings: IkasMerchantSettings): void;
@@ -0,0 +1 @@
1
+ function o(o){o.logo=o.logoId?{id:o.logoId,isVideo:!1}:null}export{o as initMerchantSettings};
@@ -1,8 +1,8 @@
1
1
  import { IkasCheckoutSettings, IkasOrderAddress } from "@ikas/storefront-models";
2
2
  export declare function createOrderAddress(): IkasOrderAddress;
3
- export declare function getAddressText(address: IkasOrderAddress): string;
4
- export declare function getValidationResult(address: IkasOrderAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): IkasOrderAddressValidationResult;
5
- export declare function isValidAddress(address: IkasOrderAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): boolean;
3
+ export declare function getOrderAddressText(address: IkasOrderAddress): string;
4
+ export declare function validateOrderAddress(address: IkasOrderAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): IkasOrderAddressValidationResult;
5
+ export declare function isValidOrderAddress(address: IkasOrderAddress, checkoutSettings: IkasCheckoutSettings, isDistrictRequired: boolean): boolean;
6
6
  export declare type IkasOrderAddressValidationResult = {
7
7
  firstName: boolean;
8
8
  lastName: boolean;
@@ -1 +1 @@
1
- import{IkasCheckoutRequirement as e}from"@ikas/storefront-models";import{validatePhoneNumber as t}from"../../../utils/helper.js";function n(){return{addressLine1:"",addressLine2:null,company:null,firstName:"",id:null,identityNumber:null,isDefault:!1,lastName:"",phone:null,postalCode:null,taxNumber:null,taxOffice:null,country:null,state:null,city:null,district:null}}function i(e){var t=[];return e.addressLine1&&t.push(e.addressLine1),e.addressLine2&&t.push(e.addressLine2),e.postalCode&&t.push(e.postalCode),e.district&&e.district.name&&t.push(e.district.name),e.city&&e.city.name&&t.push(e.city.name),e.state&&e.state.name&&"Default"!==e.state.name&&t.push(e.state.name),e.country&&e.country.name&&t.push(e.country.name),t.join(", ")}function s(n,i,s){var r,a,u,o=!!n.phone&&n.phone.length>=10&&t(n.phone);return{firstName:!!n.firstName,lastName:!!n.lastName,addressLine1:!!n.addressLine1,country:!!(null===(r=n.country)||void 0===r?void 0:r.name),state:!!n.state,city:!!(null===(a=n.city)||void 0===a?void 0:a.name),district:!s||!!(null===(u=n.district)||void 0===u?void 0:u.name),phone:!(i.phoneRequirement===e.MANDATORY||i.phoneRequirement===e.OPTIONAL&&n.phone)||o,postalCode:i.postalCodeRequirement!==e.MANDATORY||!!n.postalCode,identityNumber:i.identityNumberRequirement!==e.MANDATORY||!!n.identityNumber}}function r(e,t,n){var i=s(e,t,n);return Object.values(i).every((function(e){return e}))}export{n as createOrderAddress,i as getAddressText,s as getValidationResult,r as isValidAddress};
1
+ import{IkasCheckoutRequirement as e}from"@ikas/storefront-models";import{validatePhoneNumber as t}from"../../../utils/helper.js";function n(){return{addressLine1:"",addressLine2:null,company:null,firstName:"",id:null,identityNumber:null,isDefault:!1,lastName:"",phone:null,postalCode:null,taxNumber:null,taxOffice:null,country:null,state:null,city:null,district:null}}function i(e){var t=[];return e.addressLine1&&t.push(e.addressLine1),e.addressLine2&&t.push(e.addressLine2),e.postalCode&&t.push(e.postalCode),e.district&&e.district.name&&t.push(e.district.name),e.city&&e.city.name&&t.push(e.city.name),e.state&&e.state.name&&"Default"!==e.state.name&&t.push(e.state.name),e.country&&e.country.name&&t.push(e.country.name),t.join(", ")}function s(n,i,s){var r,a,u,o=!!n.phone&&n.phone.length>=10&&t(n.phone);return{firstName:!!n.firstName,lastName:!!n.lastName,addressLine1:!!n.addressLine1,country:!!(null===(r=n.country)||void 0===r?void 0:r.name),state:!!n.state,city:!!(null===(a=n.city)||void 0===a?void 0:a.name),district:!s||!!(null===(u=n.district)||void 0===u?void 0:u.name),phone:!(i.phoneRequirement===e.MANDATORY||i.phoneRequirement===e.OPTIONAL&&n.phone)||o,postalCode:i.postalCodeRequirement!==e.MANDATORY||!!n.postalCode,identityNumber:i.identityNumberRequirement!==e.MANDATORY||!!n.identityNumber}}function r(e,t,n){var i=s(e,t,n);return Object.values(i).every((function(e){return e}))}export{n as createOrderAddress,i as getOrderAddressText,r as isValidOrderAddress,s as validateOrderAddress};
@@ -1,13 +1,22 @@
1
- import { IkasOrder, IkasOrderPackage, IkasOrderRefundSettings } from "@ikas/storefront-models";
1
+ import { IkasOrder, IkasOrderPackage } from "@ikas/storefront-models";
2
+ export declare function initOrder(order: IkasOrder): void;
3
+ export declare function getItemCount(order: IkasOrder): number;
4
+ export declare function getItemQuantity(order: IkasOrder): number;
2
5
  export declare function getDisplayedPackages(order: IkasOrder): IkasOrderPackage[];
3
- export declare function getRefundableItems(order: IkasOrder, refundSettings: IkasOrderRefundSettings): import("@ikas/storefront-models").IkasOrderLineItem[];
6
+ export declare function getRefundableItems(order: IkasOrder): import("@ikas/storefront-models").IkasOrderLineItem[];
4
7
  export declare function getUnfullfilledItems(order: IkasOrder): import("@ikas/storefront-models").IkasOrderLineItem[];
5
8
  export declare function getRefundedItems(order: IkasOrder): import("@ikas/storefront-models").IkasOrderLineItem[];
6
9
  export declare function getTotalTax(order: IkasOrder): number;
10
+ export declare function getFormattedTotalTax(order: IkasOrder): string;
7
11
  export declare function getShippingTotal(order: IkasOrder): number;
12
+ export declare function getFormattedShippingTotal(order: IkasOrder): string;
13
+ export declare function getFormattedTotalPrice(order: IkasOrder): string;
14
+ export declare function getFormattedTotalFinalPrice(order: IkasOrder): string;
8
15
  export declare function hasCustomer(order: IkasOrder): boolean;
9
16
  export declare function hasValidCustomerEmail(order: IkasOrder): boolean;
10
17
  export declare function getCustomerFullName(order: IkasOrder): string;
11
18
  export declare function getFormattedDate(order: IkasOrder): string;
12
19
  export declare function getCouponAdjustment(order: IkasOrder): import("@ikas/storefront-models").IkasOrderAdjustment | undefined;
13
20
  export declare function getNonCouponAdjustments(order: IkasOrder): import("@ikas/storefront-models").IkasOrderAdjustment[] | undefined;
21
+ export declare function isRefundEnabled(order: IkasOrder): boolean;
22
+ export declare function getDisplayedOrderAdjustments(order: IkasOrder): import("@ikas/storefront-models").IkasOrderAdjustment[] | undefined;
@@ -1 +1 @@
1
- import{IkasOrderLineItemStatus as e,IkasOrderPackageFullfillStatus as r}from"@ikas/storefront-models";import{validateEmail as t,formatDate as n}from"../../utils/helper.js";function u(t){var n,u=i(t),o=null===(n=t.orderPackages)||void 0===n?void 0:n.filter((function(e){return!e.deleted&&![r.REFUNDED,r.REFUND_REQUESTED,r.REFUND_REQUEST_ACCEPTED,r.REFUND_REJECTED].includes(e.orderPackageFulfillStatus)})),a=t.orderLineItems.filter((function(r){return!r.deleted&&(r.status===e.CANCELLED||r.status===e.CANCEL_REJECTED||r.status===e.CANCEL_REQUESTED)})),c=d(t),s=[];return u.length&&s.push({id:t.id+"-u",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:u.map((function(e){return e.id})),orderPackageFulfillStatus:r.UNFULFILLED,orderPackageNumber:t.orderNumber?t.orderNumber+"-u":"u",stockLocationId:u[0].stockLocationId||"",trackingInfo:null}),o&&s.push.apply(s,o),a.length&&s.push({id:t.id+"-c",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:a.map((function(e){return e.id})),orderPackageFulfillStatus:r.CANCELLED,orderPackageNumber:t.orderNumber?t.orderNumber+"-c":"c",stockLocationId:a[0].stockLocationId||"",trackingInfo:null}),c.length&&s.push({id:t.id+"-r",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:c.map((function(e){return e.id})),orderPackageFulfillStatus:r.REFUNDED,orderPackageNumber:t.orderNumber?t.orderNumber+"-r":"r",stockLocationId:c[0].stockLocationId||"",trackingInfo:null}),s}function o(r,t){if(t&&!t.isActiveRefundSection)return[];var n=function(e){var r=e.orderedAt,t=Date.now();return Math.abs(t-r)/864e5}(r);return r.orderLineItems.filter((function(r){return[e.FULFILLED,e.UNFULFILLED,e.DELIVERED].includes(r.status)&&(!t.orderRefundDayLimit||t.orderRefundDayLimit>=n)}))}function i(r){return r.orderLineItems.filter((function(r){return r.status===e.UNFULFILLED}))}function d(r){return r.orderLineItems.filter((function(r){return r.status===e.REFUNDED||r.status===e.REFUND_REQUESTED||r.status===e.REFUND_REQUEST_ACCEPTED||r.status===e.REFUND_REJECTED}))}function a(e){var r;return(null===(r=e.taxLines)||void 0===r?void 0:r.reduce((function(e,r){return e+r.price}),0))||0}function c(e){var r;return(null===(r=e.shippingLines)||void 0===r?void 0:r.reduce((function(e,r){return e+r.price}),0))||0}function s(e){var r;return!!(null===(r=e.customer)||void 0===r?void 0:r.id)&&!e.customer.isGuestCheckout}function l(e){var r;return!!(null===(r=e.customer)||void 0===r?void 0:r.email)&&t(e.customer.email)}function E(e){var r,t;return"".concat((null===(r=e.customer)||void 0===r?void 0:r.firstName)||""," ").concat((null===(t=e.customer)||void 0===t?void 0:t.lastName)||"")}function f(e){var r=new Date;return r.setTime(e.updatedAt),n(r)}function m(e){var r;return null===(r=e.orderAdjustments)||void 0===r?void 0:r.find((function(e){return!!e.couponId}))}function D(e){var r;return null===(r=e.orderAdjustments)||void 0===r?void 0:r.filter((function(e){return!e.couponId}))}export{m as getCouponAdjustment,E as getCustomerFullName,u as getDisplayedPackages,f as getFormattedDate,D as getNonCouponAdjustments,o as getRefundableItems,d as getRefundedItems,c as getShippingTotal,a as getTotalTax,i as getUnfullfilledItems,s as hasCustomer,l as hasValidCustomerEmail};
1
+ import{IkasOrderLineItemStatus as r,IkasOrderPackageFullfillStatus as e,IkasCampaignType as n}from"@ikas/storefront-models";import{formatCurrency as t}from"../../utils/currency.js";import{validateEmail as u,formatDate as o}from"../../utils/helper.js";function i(r){r.orderLineItems.forEach((function(r){r.variant.mainImage=r.variant.mainImageId?{id:r.variant.mainImageId,isVideo:!1}:null}))}function d(r){var e;return(null===(e=r.orderLineItems)||void 0===e?void 0:e.length)||0}function c(r){var e;return(null===(e=r.orderLineItems)||void 0===e?void 0:e.reduce((function(r,e){return r+e.quantity}),0))||0}function a(n){var t,u=s(n),o=null===(t=n.orderPackages)||void 0===t?void 0:t.filter((function(r){return!r.deleted&&![e.REFUNDED,e.REFUND_REQUESTED,e.REFUND_REQUEST_ACCEPTED,e.REFUND_REJECTED].includes(r.orderPackageFulfillStatus)})),i=n.orderLineItems.filter((function(e){return!e.deleted&&(e.status===r.CANCELLED||e.status===r.CANCEL_REJECTED||e.status===r.CANCEL_REQUESTED)})),d=f(n),c=[];return u.length&&c.push({id:n.id+"-u",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:u.map((function(r){return r.id})),orderPackageFulfillStatus:e.UNFULFILLED,orderPackageNumber:n.orderNumber?n.orderNumber+"-u":"u",stockLocationId:u[0].stockLocationId||"",trackingInfo:null}),o&&c.push.apply(c,o),i.length&&c.push({id:n.id+"-c",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:i.map((function(r){return r.id})),orderPackageFulfillStatus:e.CANCELLED,orderPackageNumber:n.orderNumber?n.orderNumber+"-c":"c",stockLocationId:i[0].stockLocationId||"",trackingInfo:null}),d.length&&c.push({id:n.id+"-r",createdAt:Date.now(),updatedAt:Date.now(),errorMessage:null,note:null,orderLineItemIds:d.map((function(r){return r.id})),orderPackageFulfillStatus:e.REFUNDED,orderPackageNumber:n.orderNumber?n.orderNumber+"-r":"r",stockLocationId:d[0].stockLocationId||"",trackingInfo:null}),c}function l(e){var n=e.refundSettings;if(n&&!n.isActiveRefundSection)return[];var t=function(r){var e=r.orderedAt,n=Date.now();return Math.abs(n-e)/864e5}(e);return e.orderLineItems.filter((function(e){return[r.FULFILLED,r.UNFULFILLED,r.DELIVERED].includes(e.status)&&(!n.orderRefundDayLimit||n.orderRefundDayLimit>=t)}))}function s(e){return e.orderLineItems.filter((function(e){return e.status===r.UNFULFILLED}))}function f(e){return e.orderLineItems.filter((function(e){return e.status===r.REFUNDED||e.status===r.REFUND_REQUESTED||e.status===r.REFUND_REQUEST_ACCEPTED||e.status===r.REFUND_REJECTED}))}function m(r){var e;return(null===(e=r.taxLines)||void 0===e?void 0:e.reduce((function(r,e){return r+e.price}),0))||0}function E(r){return t(m(r),r.currencyCode,r.currencySymbol||"")}function v(r){var e;return(null===(e=r.shippingLines)||void 0===e?void 0:e.reduce((function(r,e){return r+e.finalPrice}),0))||0}function L(r){return t(v(r),r.currencyCode,r.currencySymbol||"")}function D(r){return t(r.totalPrice,r.currencyCode,r.currencySymbol||"")}function I(r){return t(r.totalFinalPrice,r.currencyCode,r.currencySymbol||"")}function N(r){var e;return!!(null===(e=r.customer)||void 0===e?void 0:e.id)&&!r.customer.isGuestCheckout}function g(r){var e;return!!(null===(e=r.customer)||void 0===e?void 0:e.email)&&u(r.customer.email)}function p(r){var e,n;return"".concat((null===(e=r.customer)||void 0===e?void 0:e.firstName)||""," ").concat((null===(n=r.customer)||void 0===n?void 0:n.lastName)||"")}function F(r){var e=new Date;return e.setTime(r.updatedAt),o(e)}function R(r){var e;return null===(e=r.orderAdjustments)||void 0===e?void 0:e.find((function(r){return!!r.couponId}))}function U(r){var e;return null===(e=r.orderAdjustments)||void 0===e?void 0:e.filter((function(r){return!r.couponId}))}function C(r){return!!r.refundSettings&&l(r).some((function(r){return null!==r.refundQuantity}))}function k(r){var e;return null===(e=r.orderAdjustments)||void 0===e?void 0:e.filter((function(r){return r.campaignType!==n.FREE_SHIPPING}))}export{R as getCouponAdjustment,p as getCustomerFullName,k as getDisplayedOrderAdjustments,a as getDisplayedPackages,F as getFormattedDate,L as getFormattedShippingTotal,I as getFormattedTotalFinalPrice,D as getFormattedTotalPrice,E as getFormattedTotalTax,d as getItemCount,c as getItemQuantity,U as getNonCouponAdjustments,l as getRefundableItems,f as getRefundedItems,v as getShippingTotal,m as getTotalTax,s as getUnfullfilledItems,N as hasCustomer,g as hasValidCustomerEmail,i as initOrder,C as isRefundEnabled};
@@ -1,6 +1,16 @@
1
1
  import { IkasOrderLineItem } from "@ikas/storefront-models";
2
2
  export declare function getPriceWithQuantity(item: IkasOrderLineItem): number;
3
+ export declare function getFormattedPriceWithQuantity(item: IkasOrderLineItem): string;
3
4
  export declare function getOverridenPriceWithQuantity(item: IkasOrderLineItem): number;
5
+ export declare function getFormattedOverridenPriceWithQuantity(item: IkasOrderLineItem): string;
4
6
  export declare function getFinalPriceWithQuantity(item: IkasOrderLineItem): number;
7
+ export declare function getFormattedFinalPriceWithQuantity(item: IkasOrderLineItem): string;
8
+ export declare function getFormattedFinalPrice(item: IkasOrderLineItem): string;
9
+ export declare function getFormattedUnitPrice(item: IkasOrderLineItem): string;
10
+ export declare function getFormattedFinalUnitPrice(item: IkasOrderLineItem): string;
11
+ export declare function getUnitPriceText(item: IkasOrderLineItem): string | undefined;
12
+ export declare function getFormattedDiscountPrice(item: IkasOrderLineItem): string;
5
13
  export declare function getTax(item: IkasOrderLineItem): number;
14
+ export declare function getFormattedTax(item: IkasOrderLineItem): string;
6
15
  export declare function hasDiscount(item: IkasOrderLineItem): boolean;
16
+ export declare function setRefundQuantity(item: IkasOrderLineItem, value: number | null | undefined): void;
@@ -1 +1 @@
1
- function n(n){return n.price*n.quantity}function i(n){return n.price!==n.finalPrice?n.price*n.quantity:0}function r(n){var i;return(null!==(i=n.finalPrice)&&void 0!==i?i:n.price)*n.quantity}function t(n){var i=n.taxValue||0;return(n.finalPrice||0)*n.quantity/(100+i)*i}function u(n){return null!==n.discountPrice}export{r as getFinalPriceWithQuantity,i as getOverridenPriceWithQuantity,n as getPriceWithQuantity,t as getTax,u as hasDiscount};
1
+ import{formatCurrency as n}from"../../../utils/currency.js";function r(n){return n.price*n.quantity}function c(c){return n(r(c),c.currencyCode||"",c.currencySymbol||"")}function u(n){return n.price!==n.finalPrice?n.price*n.quantity:0}function i(r){return n(u(r)||0,r.currencyCode||"",r.currencySymbol||"")}function e(n){var r;return(null!==(r=n.finalPrice)&&void 0!==r?r:n.price)*n.quantity}function t(r){return n(e(r)||0,r.currencyCode||"",r.currencySymbol||"")}function o(r){return n(r.finalPrice||0,r.currencyCode||"",r.currencySymbol||"")}function y(r){return n(r.unitPrice||0,r.currencyCode||"",r.currencySymbol||"")}function l(r){return n(r.finalUnitPrice||0,r.currencyCode||"",r.currencySymbol||"")}function a(r){var c,u,i;if(null!==r.finalUnitPrice)return"".concat(n(r.finalUnitPrice,r.currencyCode||"",r.currencySymbol||"")," / ").concat((null===(u=null===(c=r.variant.baseUnit)||void 0===c?void 0:c.unit)||void 0===u?void 0:u.name)||(null===(i=r.variant.baseUnit)||void 0===i?void 0:i.type))}function f(r){return n(r.discountPrice||0,r.currencyCode||"",r.currencySymbol||"")}function d(n){var r=n.taxValue||0;return(n.finalPrice||0)*n.quantity/(100+r)*r}function m(r){return n(d(r),r.currencyCode||"",r.currencySymbol||"")}function v(n){return null!==n.discountPrice}function b(n,r){r?(r>n.quantity&&(r=n.quantity),r<=0&&(r=null),n.refundQuantity=r):n.refundQuantity=null}export{e as getFinalPriceWithQuantity,f as getFormattedDiscountPrice,o as getFormattedFinalPrice,t as getFormattedFinalPriceWithQuantity,l as getFormattedFinalUnitPrice,i as getFormattedOverridenPriceWithQuantity,c as getFormattedPriceWithQuantity,m as getFormattedTax,y as getFormattedUnitPrice,u as getOverridenPriceWithQuantity,r as getPriceWithQuantity,d as getTax,a as getUnitPriceText,v as hasDiscount,b as setRefundQuantity};
@@ -1,2 +1,2 @@
1
1
  import { IkasOrderLineVariant } from "@ikas/storefront-models";
2
- export declare function getIkasOrderLineVariantHref(variant: IkasOrderLineVariant): string | undefined;
2
+ export declare function getOrderLineVariantHref(variant: IkasOrderLineVariant): string | undefined;
@@ -1 +1 @@
1
- import{getIkasVariantTypeSlug as n,getIkasVariantNameSlug as o}from"./value/index.js";function a(a){var c;if(a.slug){var t=null===(c=a.variantValues)||void 0===c?void 0:c.map((function(a){return"".concat(n(a),"=").concat(o(a))})).join("&");return t?"/".concat(a.slug,"?").concat(t):"/".concat(a.slug)}}export{a as getIkasOrderLineVariantHref};
1
+ import{getOrderLineVariantTypeSlug as n,getOrderLineVariantValueSlug as o}from"./value/index.js";function a(a){var c;if(a.slug){var t=null===(c=a.variantValues)||void 0===c?void 0:c.map((function(a){return"".concat(n(a),"=").concat(o(a))})).join("&");return t?"/".concat(a.slug,"?").concat(t):"/".concat(a.slug)}}export{a as getOrderLineVariantHref};
@@ -1,3 +1,3 @@
1
1
  import { IkasOrderLineVariantVariantValue } from "@ikas/storefront-models";
2
- export declare function getIkasVariantTypeSlug(variantValue: IkasOrderLineVariantVariantValue): string;
3
- export declare function getIkasVariantNameSlug(variantValue: IkasOrderLineVariantVariantValue): string;
2
+ export declare function getOrderLineVariantTypeSlug(variantValue: IkasOrderLineVariantVariantValue): string;
3
+ export declare function getOrderLineVariantValueSlug(variantValue: IkasOrderLineVariantVariantValue): string;
@@ -1 +1 @@
1
- import{stringToSlug as a}from"../../../../../utils/helper.js";function e(e){return e.variantTypeName?a(e.variantTypeName):""}function r(e){return e.variantValueName?a(e.variantValueName):""}export{r as getIkasVariantNameSlug,e as getIkasVariantTypeSlug};
1
+ import{stringToSlug as a}from"../../../../../utils/helper.js";function e(e){return e.variantTypeName?a(e.variantTypeName):""}function r(e){return e.variantValueName?a(e.variantValueName):""}export{e as getOrderLineVariantTypeSlug,r as getOrderLineVariantValueSlug};
@@ -0,0 +1,2 @@
1
+ import { IkasOrder, IkasOrderPackage } from "@ikas/storefront-models";
2
+ export declare function getOrderLineItems(orderPackage: IkasOrderPackage, order: IkasOrder): import("@ikas/storefront-models").IkasOrderLineItem[];
@@ -0,0 +1 @@
1
+ function e(e,r){return r.orderLineItems.filter((function(r){return e.orderLineItemIds.includes(r.id)}))}export{e as getOrderLineItems};
@@ -0,0 +1,2 @@
1
+ import { IkasOrderTransaction } from "@ikas/storefront-models";
2
+ export declare function getFormattedAmount(transaction: IkasOrderTransaction): string;
@@ -0,0 +1 @@
1
+ import{formatCurrency as r}from"../../../utils/currency.js";function c(c){return r(c.amount||0,c.currencyCode||"",c.currencySymbol||"")}export{c as getFormattedAmount};
@@ -1,4 +1,5 @@
1
1
  import { IkasOrderShippingLine, IkasPaymentGateway, IkasPaymentGatewayAdditionalPriceType } from "@ikas/storefront-models";
2
+ export declare function initPaymentGateway(paymentGateway: IkasPaymentGateway, locale: string | null): void;
2
3
  export declare function getCalculatedAdditionalPrices(paymentGateway: IkasPaymentGateway, totalFinalPrice: number, shippingLines: IkasOrderShippingLine[] | null): {
3
4
  name: string;
4
5
  amount: number;
@@ -1 +1 @@
1
- import{IkasPaymentGatewayTransactionFeeType as n,IkasPaymentGatewayAdditionalPriceType as t}from"@ikas/storefront-models";function e(e,r,o){if(e.additionalPrices){var a=(null==o?void 0:o.reduce((function(n,t){return n+t.price}),0))||0;return r-=a,e.additionalPrices.map((function(o){var a=0;return a=o.amountType===n.RATIO?(r||0)*o.amount/100:o.amount,o.type===t.DECREMENT?r-=a:r+=a,{name:o.name||e.name,amount:a,type:o.type}}))}}export{e as getCalculatedAdditionalPrices};
1
+ import{IkasPaymentGatewayTransactionFeeType as n,IkasPaymentGatewayAdditionalPriceType as t}from"@ikas/storefront-models";function e(n,t){n.translations&&t&&(!function(n,t,e){if(t&&t.some((function(n){return n.locale===e}))){var i=t.find((function(n){return n.locale===e}));(null==i?void 0:i.name)&&(n.name=i.name),(null==i?void 0:i.description)&&(n.description=i.description)}}(n,n.translations,t),delete n.translations)}function i(e,i,o){if(e.additionalPrices){var r=(null==o?void 0:o.reduce((function(n,t){return n+t.price}),0))||0;return i-=r,e.additionalPrices.map((function(o){var r=0;return r=o.amountType===n.RATIO?(i||0)*o.amount/100:o.amount,o.type===t.DECREMENT?i-=r:i+=r,{name:o.name||e.name,amount:r,type:o.type}}))}}export{i as getCalculatedAdditionalPrices,e as initPaymentGateway};
@@ -0,0 +1,2 @@
1
+ import { IkasProductAttribute } from "@ikas/storefront-models";
2
+ export declare function initProductAttribute(attribute: IkasProductAttribute, locale: string | null): void;
@@ -0,0 +1 @@
1
+ function n(n,i){n.translations&&i&&(!function(n,i,o){var t;if(i&&i.some((function(n){return n.locale===o}))){var e=i.find((function(n){return n.locale===o}));(null==e?void 0:e.name)&&(n.name=e.name),(null==e?void 0:e.description)&&(n.description=e.description),(null==e?void 0:e.options)&&(null===(t=n.options)||void 0===t||t.forEach((function(n){var i,o=null===(i=e.options)||void 0===i?void 0:i.find((function(i){return i.id===n.id}));o&&o.name&&(n.name=o.name)})))}}(n,n.translations,i),delete n.translations)}export{n as initProductAttribute};
@@ -1,2 +1,4 @@
1
- import { IkasAttributeTableCellValue } from "@ikas/storefront-models";
1
+ import { IkasAttributeTableCellValue, IkasProductAttributeValue } from "@ikas/storefront-models";
2
+ export declare function initProductAttributeValue(value: IkasProductAttributeValue): void;
2
3
  export declare function getTableValue(value: string | null): IkasAttributeTableCellValue[] | undefined;
4
+ export declare function getProductIds(paValue: IkasProductAttributeValue): string[];
@@ -1 +1 @@
1
- function r(r){if(r)return JSON.parse(r)}export{r as getTableValue};
1
+ import{IkasProductAttributeType as r}from"@ikas/storefront-models";function t(r){var t;r.images=null===(t=r.imageIds)||void 0===t?void 0:t.map((function(r){return{id:r,isVideo:!1}}))}function e(r){if(r)return JSON.parse(r)}function o(t){var e;if((null===(e=t.productAttribute)||void 0===e?void 0:e.type)!==r.PRODUCT||!t.value)return[];try{return JSON.parse(t.value)}catch(r){return console.error(r),[]}}export{o as getProductIds,e as getTableValue,t as initProductAttributeValue};
@@ -1,12 +1,13 @@
1
1
  import { IkasApplicableProductFilterValue, IkasFilterRangeValue, IkasProductFilter, IkasProductFilterDisplayType, IkasProductFilterNumberRangeListOption, IkasProductFilterType } from "@ikas/storefront-models";
2
+ export declare function initFilter(filter: IkasProductFilter): void;
2
3
  export declare function isCustomValueFilter(filter: IkasProductFilter): boolean;
3
4
  export declare function isStockFilter(filter: IkasProductFilter): boolean;
4
5
  export declare function getValueList(filter: IkasProductFilter): string[];
5
6
  export declare function getKeyList(filter: IkasProductFilter): string[];
6
7
  export declare function getDisplayedValues(filter: IkasProductFilter): IkasApplicableProductFilterValue[];
7
- export declare function onFilterValueClick(filter: IkasProductFilter, filterValue: IkasApplicableProductFilterValue): void;
8
- export declare function onNumberRangeClick(filter: IkasProductFilter, option: IkasProductFilterNumberRangeListOption): void;
9
- export declare function onNumberRangeChange(filter: IkasProductFilter, numberRange: IkasFilterRangeValue | null): void;
8
+ export declare function handleFilterValueClick(filter: IkasProductFilter, filterValue: IkasApplicableProductFilterValue): void;
9
+ export declare function handleNumberRangeClick(filter: IkasProductFilter, option: IkasProductFilterNumberRangeListOption): void;
10
+ export declare function handleNumberRangeChange(filter: IkasProductFilter, numberRange: IkasFilterRangeValue | null): void;
10
11
  export declare function clear(filter: IkasProductFilter): void;
11
12
  export declare function toInput(filter: IkasProductFilter): IkasSearchInputFilterListInput;
12
13
  export declare function applyQueryParam(filter: IkasProductFilter, value: string): void;
@@ -1 +1 @@
1
- import{IkasProductFilterDisplayType as e,IkasProductFilterType as n,IkasProductFilterSortType as t}from"@ikas/storefront-models";import i from"lodash/sortBy";import r from"lodash/cloneDeep";function o(n){return[e.NUMBER_RANGE_LIST,e.NUMBER_RANGE].includes(n.displayType)}function u(e){return e.type===n.STOCK_STATUS}function l(e){var n;return e.numberRange?[E(e.numberRange)]:e.numberRangeListOptions?e.numberRangeListOptions.filter((function(e){return e.isSelected})).map((function(e){return E(e)})):(null===(n=e.values)||void 0===n?void 0:n.filter((function(e){return e.isSelected})).map((function(e){return e.id})))||[]}function s(e){var n;return e.numberRange?[E(e.numberRange)]:e.numberRangeListOptions?e.numberRangeListOptions.filter((function(e){return e.isSelected})).map((function(e){return E(e)})):(null===(n=e.values)||void 0===n?void 0:n.filter((function(e){return e.isSelected})).map((function(e){return e.key})))||[]}function c(e){var n,r,o,u=(null===(n=e.settings)||void 0===n?void 0:n.sortType)||t.ALPHABETICAL_ASC,l=[t.ALPHABETICAL_DESC,t.PRODUCT_COUNT_DESC].includes(u),s=[t.ALPHABETICAL_ASC,t.ALPHABETICAL_DESC].includes(u),c=u===t.CUSTOM_SORT,a=null===(r=e.values)||void 0===r?void 0:r.filter((function(e){return 0!==e.resultCount||e.isSelected}));if(a=i(a,s?"name":"resultCount"),l&&(a=null==a?void 0:a.reverse()),c){var d=(null===(o=e.settings)||void 0===o?void 0:o.customSortedValues)||[];a=a.sort((function(e,n){return d.indexOf(e.id)-d.indexOf(n.id)}))}return a}function a(e,n){var t;if(o(e))throw new Error("onFilterValueClick 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 d(n,t){var i;if(n.displayType!==e.NUMBER_RANGE_LIST)throw new Error("onNumberRangeClick can only be used with NUMBER_RANGE filters!");t.isSelected=!t.isSelected,!n.isMultiSelect&&t.isSelected&&(null===(i=n.numberRangeListOptions)||void 0===i||i.forEach((function(e){e.key!==t.key&&(e.isSelected=!1)})))}function f(n,t){var i;if(n.displayType!==e.NUMBER_RANGE)throw new Error("onNumberRangeChange can only be used with NUMBER_RANGE filters!");if(t){var o=r(t);o.from<n.numberRangeLimit.from&&(o.from=n.numberRange.from),o.to&&(null===(i=n.numberRangeLimit)||void 0===i?void 0:i.to)&&o.to>n.numberRangeLimit.to&&(o.to=n.numberRangeLimit.to),n.numberRange=o}else n.numberRange=null}function m(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 R(e){var n;return{id:e.key,type:e.type,valueList:l(e),useAndFilter:null===(n=e.settings)||void 0===n?void 0:n.useAndFilter}}function v(n,t){var i,r,o=t.split(",");n.displayType===e.NUMBER_RANGE?n.numberRange=p(t):n.displayType===e.NUMBER_RANGE_LIST?null===(i=n.numberRangeListOptions)||void 0===i||i.forEach((function(e){o.includes(e.key)&&(e.isSelected=!0)})):null===(r=n.values)||void 0===r||r.forEach((function(e){o.includes(e.key)&&0!==e.resultCount&&(e.isSelected=!0)}))}function E(e){return"".concat(e.from,":").concat(e.to||"")}function p(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{v as applyQueryParam,m as clear,c as getDisplayedValues,s as getKeyList,l as getValueList,o as isCustomValueFilter,u as isStockFilter,a as onFilterValueClick,f as onNumberRangeChange,d as onNumberRangeClick,p as parseRangeStr,E as rangeToId,R as toInput};
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};
@@ -0,0 +1,2 @@
1
+ import { IkasProductImage } from "@ikas/storefront-models";
2
+ export declare function initProductImage(productImage: IkasProductImage): void;
@@ -0,0 +1 @@
1
+ function i(i){i.image=i.imageId?{id:i.imageId,isVideo:i.isVideo||!1}:null}export{i as initProductImage};
@@ -1,9 +1,18 @@
1
- import { IkasDisplayedVariantType, IkasProduct, IkasProductOptionSet, IkasProductVariant, IkasVariantValue } from "@ikas/storefront-models";
1
+ import { IkasDisplayedVariantType, IkasProduct, IkasProductAttributeMap, IkasProductVariant, IkasVariantValue } from "@ikas/storefront-models";
2
+ declare type SelectVariantValueCallbackType = (product: IkasProduct, variantValue: IkasVariantValue, disableRoute?: boolean) => void;
3
+ export declare function initProduct(product: IkasProduct, locale: string | null): void;
4
+ export declare function selectVariantValue(product: IkasProduct, variantValue: IkasVariantValue, disableRoute?: boolean): void;
5
+ export declare function getSelectedVariant(product: IkasProduct): IkasProductVariant;
2
6
  export declare function hasVariant(product: IkasProduct): boolean;
3
- export declare function hasStock(product: IkasProduct): boolean;
7
+ export declare function hasProductStock(product: IkasProduct): boolean;
8
+ export declare function hasValidProductOptionValues(product: IkasProduct): boolean;
4
9
  export declare function getMainVariantValue(selectedVariantValues: IkasVariantValue[]): IkasVariantValue | undefined;
5
10
  export declare function getMainVariantType(product: IkasProduct): import("@ikas/storefront-models").IkasVariantType | undefined;
6
- export declare function getSelectedVariantHref(product: IkasProduct, selectedVariantValues: IkasVariantValue[]): string;
11
+ export declare function getDisplayedVariantTypes(product: IkasProduct): IkasDisplayedVariantType[];
12
+ export declare function getSelectedVariantHref(product: IkasProduct): string;
7
13
  export declare function getProductHref(product: IkasProduct): string;
8
- export declare function getDisplayedVariantTypes(product: IkasProduct, selectedVariantValues: IkasVariantValue[]): IkasDisplayedVariantType[];
9
- export declare function isAddToCartEnabled(selectedVariant: IkasProductVariant, productOptionSet?: IkasProductOptionSet): boolean;
14
+ export declare function isAddToCartEnabled(product: IkasProduct): boolean;
15
+ export declare function getGroupedAttributeValues(product: IkasProduct): IkasProductAttributeMap[];
16
+ export declare function getVariantUnitPriceText(product: IkasProduct, variant: IkasProductVariant): string | undefined;
17
+ export declare function _setSelectVariantValueCallback(callback: SelectVariantValueCallbackType): void;
18
+ export {};
@@ -1 +1 @@
1
- import{__spreadArray as n}from'./../../ext/tslib/tslib.es6.js';import{getIkasVariantTypeSlug as t}from"../variant-type/index.js";import{getIkasVariantValueSlug as r}from"../variant-type/variant-value/index.js";import{hasValidValues as i}from"./option-set/index.js";import{hasStock as a}from"./variant/index.js";function e(n){return!!n.variantTypes.length}function u(n){return n.variants.some((function(n){return n.stock>0||n.sellIfOutOfStock}))}function o(n){return n.length?n[0]:void 0}function s(n){if(e(n))return n.variantTypes[0].variantType}function c(n,i){var a=n.metaData;if(!(null==a?void 0:a.slug))return"";var e=n.variantTypes.map((function(n){var a=n.variantType,e=a.values.find((function(n){return i.some((function(t){return t.id===n.id}))}));if(e)return"".concat(t(a),"=").concat(r(e))})).filter((function(n){return!!n})).join("&");return e?"/".concat(a.slug,"?").concat(e):"/".concat(a.slug)}function f(n){var t=n.metaData;return(null==t?void 0:t.slug)?"/".concat(t.slug):""}function v(t,r){var i=t.variantTypes.map((function(i,e){var u=i.variantType,o=[],s=e>0?t.variantTypes.slice(0,e):null,c=[];return s&&(c=r.filter((function(n){return s.some((function(t){return t.variantType.id===n.variantTypeId}))}))),u.values.forEach((function(i){var e=n(n([],c,!0),[i],!1),u=t.variants.find((function(n){return n.isActive&&e.every((function(t){return n.variantValues.some((function(n){return n.id===t.id}))}))})),s=t.variants.find((function(n){return n.isActive&&a(n)&&e.every((function(t){return n.variantValues.some((function(n){return n.id===t.id}))}))})),f=r.some((function(n){return n.id===i.id}));u&&o.push({variant:u,variantValue:i,hasStock:!!s,isSelected:f})})),{variantType:u,displayedVariantValues:o}}));return 1===i.length&&(i[0].displayedVariantValues=i[0].displayedVariantValues.filter((function(n){return n.variant.isActive}))),i}function l(n,t){return(!t||i(t))&&(a(n)||n.sellIfOutOfStock)}export{v as getDisplayedVariantTypes,s as getMainVariantType,o as getMainVariantValue,f as getProductHref,c as getSelectedVariantHref,u as hasStock,e as hasVariant,l as isAddToCartEnabled};
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};
@@ -1,4 +1,7 @@
1
- import { IkasProductOptionSet } from "@ikas/storefront-models";
2
- export declare function getDisplayedOptions(optionSet: IkasProductOptionSet): import("@ikas/storefront-models").IkasProductOption[];
1
+ import { IkasProductOption, IkasProductOptionSet } from "@ikas/storefront-models";
2
+ export declare function initProductOptionSet(optionSet: IkasProductOptionSet, locale: string | null): void;
3
+ export declare function getDisplayedOptions(optionSet: IkasProductOptionSet): IkasProductOption[];
3
4
  export declare function initOptionValues(optionSet: IkasProductOptionSet): void;
5
+ export declare function initProductOptionSetValues(optionSet: IkasProductOptionSet): void;
6
+ export declare function initSetValues(option: IkasProductOption): void;
4
7
  export declare function hasValidValues(optionSet: IkasProductOptionSet): boolean;
@@ -1 +1 @@
1
- import o from"lodash/sortBy";import{initValues as r,hasValidValues as n}from"./option/index.js";function t(r){return o(r.options.filter((function(o){return!o.requiredOptionId})),"order")}function i(o){o.options.forEach((function(o){return r(o)}))}function e(o){return t(o).every(n)}export{t as getDisplayedOptions,e as hasValidValues,i as initOptionValues};
1
+ import{IkasProductOptionType as n}from"@ikas/storefront-models";import o from"lodash/sortBy";import{initProductOption as t,initValues as i,hasValidValues as r}from"./option/index.js";function e(o,i){o.options.forEach((function(n){n.productOptionSetId=o.id,n.childOptions=[],t(n)})),function(n){n.options.forEach((function(o){var t=n.options.filter((function(n){return n.requiredOptionId===o.id}));t.length&&(o.childOptions=t)}))}(o),o.translations&&i&&(!function(o,t,i){var r;if(t&&t.some((function(n){return n.locale===i}))){var e=t.find((function(n){return n.locale===i}));null===(r=null==e?void 0:e.options)||void 0===r||r.forEach((function(t){var i,r=o.options.find((function(n){return n.id===t.id}));r&&(r.name=t.name||r.name,r.optionalText=t.optionalText||r.optionalText,r.type===n.CHOICE&&(null===(i=t.values)||void 0===i||i.forEach((function(n){var o,t=null===(o=r.selectSettings)||void 0===o?void 0:o.values.find((function(o){return o.id===n.id}));t&&(t.value=n.value||t.value)}))))}))}}(o,o.translations,i),delete o.translations),f(o)}function u(n){return o(n.options.filter((function(n){return!n.requiredOptionId})),"order")}function a(n){n.options.forEach((function(n){return i(n)}))}function f(n){n.options.forEach((function(n){return l(n)}))}function l(n){var o;n.values=[],null===(o=n.childOptions)||void 0===o||o.forEach((function(n){return l(n)}))}function c(n){return u(n).every(r)}export{u as getDisplayedOptions,c as hasValidValues,a as initOptionValues,e as initProductOptionSet,f as initProductOptionSetValues,l as initSetValues};
@@ -1,5 +1,6 @@
1
1
  import { IkasProductOption } from "@ikas/storefront-models";
2
+ export declare function initProductOption(option: IkasProductOption): void;
3
+ export declare function setValues(option: IkasProductOption, newValues: string[]): void;
2
4
  export declare function getDisplayedChildOptions(option: IkasProductOption): IkasProductOption[];
3
5
  export declare function hasValidValues(option: IkasProductOption): boolean;
4
- export declare function setValues(option: IkasProductOption, values: string[]): void;
5
6
  export declare function initValues(option: IkasProductOption): void;
@@ -1 +1 @@
1
- import{IkasProductOptionType as e}from"@ikas/storefront-models";import t from"lodash/sortBy";function n(n){return t(n.childOptions.filter((function(t){var a;return(null===(a=t.requiredOptionValueIds)||void 0===a?void 0:a.length)?t.requiredOptionValueIds.some((function(e){return n.values.includes(e)})):n.type===e.CHECKBOX?!!n.values.length&&"true"===n.values[0]:!!n.values.length})),"order")}function a(t){if(!t.values.length&&!t.isOptional)return!1;var i=!1;switch(t.type){case e.TEXT:case e.TEXT_AREA:i=function(e){var t=e.values.length?e.values[0]:null;if(!t)return!!e.isOptional;return!!e.textSettings&&(null===e.textSettings.min||t.length>=e.textSettings.min)&&(null===e.textSettings.max||t.length<=e.textSettings.max)}(t);break;case e.CHECKBOX:case e.COLOR_PICKER:i=!0;break;case e.CHOICE:i=function(e){if(!e.values.length)return!!e.isOptional;return!!e.selectSettings&&(null===e.selectSettings.minSelect||e.values.length>=e.selectSettings.minSelect)&&(null===e.selectSettings.maxSelect||e.values.length<=e.selectSettings.maxSelect)}(t);break;case e.DATE_PICKER:i=function(e){if(!e.values.length)return!!e.isOptional;if(e.dateSettings){var t=null,n=null;null!==e.dateSettings.minRelativeNextDate&&(t=new Date,t=e.dateSettings.minRelativeNextDate<0?new Date(t.setDate(t.getDate()-Math.abs(e.dateSettings.minRelativeNextDate))):new Date(t.setDate(t.getDate()+Math.abs(e.dateSettings.minRelativeNextDate))),t=new Date(t.setHours(23,59,0))),null!==e.dateSettings.maxRelativeNextDate&&(n=new Date,n=e.dateSettings.maxRelativeNextDate<0?new Date(n.setDate(n.getDate()-Math.abs(e.dateSettings.maxRelativeNextDate))):new Date(n.setDate(n.getDate()+Math.abs(e.dateSettings.maxRelativeNextDate))),n=new Date(n.setHours(23,59,59)));var a=new Date(new Date(e.values[0]).setHours(23,59,59));return(!t||a.getTime()>=t.getTime())&&(!n||a.getTime()<=n.getTime())}return!0}(t);break;case e.FILE:i=function(e){if(!e.values.length)return!!e.isOptional;return!!e.fileSettings&&(null===e.fileSettings.minQuantity||e.values.length>=e.fileSettings.minQuantity)&&(null===e.fileSettings.maxQuantity||e.values.length<=e.fileSettings.maxQuantity)}(t)}return i&&n(t).every((function(e){return a(e)}))}function i(e,t){e.values=t,t.length||e.childOptions.forEach((function(e){return e.values=[]}))}function l(e){e.isOptional||(e.values=[],e.childOptions&&e.childOptions.forEach((function(e){return l(e)})))}export{n as getDisplayedChildOptions,a as hasValidValues,l as initValues,i as setValues};
1
+ import{IkasProductOptionType as e}from"@ikas/storefront-models";import t from"lodash/sortBy";function n(e){var n;u(e),e.selectSettings&&((n=e.selectSettings).values=t(n.values||[],"order"),n.values.forEach((function(e){e.thumbnailImage={id:e.thumbnailImageId||"",isVideo:!1}})))}function a(e,t){e.values=t,t.length||e.childOptions.forEach((function(e){return e.values=[]}))}function i(n){return t(n.childOptions.filter((function(t){var a;return(null===(a=t.requiredOptionValueIds)||void 0===a?void 0:a.length)?t.requiredOptionValueIds.some((function(e){return n.values.includes(e)})):n.type===e.CHECKBOX?!!n.values.length&&"true"===n.values[0]:!!n.values.length})),"order")}function l(t){if(!t.values.length&&!t.isOptional)return!1;var n=!1;switch(t.type){case e.TEXT:case e.TEXT_AREA:n=function(e){var t=e.values.length?e.values[0]:null;if(!t)return!!e.isOptional;return!!e.textSettings&&(null===e.textSettings.min||t.length>=e.textSettings.min)&&(null===e.textSettings.max||t.length<=e.textSettings.max)}(t);break;case e.CHECKBOX:case e.COLOR_PICKER:n=!0;break;case e.CHOICE:n=function(e){if(!e.values.length)return!!e.isOptional;return!!e.selectSettings&&(null===e.selectSettings.minSelect||e.values.length>=e.selectSettings.minSelect)&&(null===e.selectSettings.maxSelect||e.values.length<=e.selectSettings.maxSelect)}(t);break;case e.DATE_PICKER:n=function(e){if(!e.values.length)return!!e.isOptional;if(e.dateSettings){var t=null,n=null;null!==e.dateSettings.minRelativeNextDate&&(t=new Date,t=e.dateSettings.minRelativeNextDate<0?new Date(t.setDate(t.getDate()-Math.abs(e.dateSettings.minRelativeNextDate))):new Date(t.setDate(t.getDate()+Math.abs(e.dateSettings.minRelativeNextDate))),t=new Date(t.setHours(23,59,0))),null!==e.dateSettings.maxRelativeNextDate&&(n=new Date,n=e.dateSettings.maxRelativeNextDate<0?new Date(n.setDate(n.getDate()-Math.abs(e.dateSettings.maxRelativeNextDate))):new Date(n.setDate(n.getDate()+Math.abs(e.dateSettings.maxRelativeNextDate))),n=new Date(n.setHours(23,59,59)));var a=new Date(new Date(e.values[0]).setHours(23,59,59));return(!t||a.getTime()>=t.getTime())&&(!n||a.getTime()<=n.getTime())}return!0}(t);break;case e.FILE:n=function(e){if(!e.values.length)return!!e.isOptional;return!!e.fileSettings&&(null===e.fileSettings.minQuantity||e.values.length>=e.fileSettings.minQuantity)&&(null===e.fileSettings.maxQuantity||e.values.length<=e.fileSettings.maxQuantity)}(t)}return n&&i(t).every((function(e){return l(e)}))}function s(e){e.isOptional||(e.values=[],e.childOptions&&e.childOptions.forEach((function(e){return s(e)})))}function u(e){e.isOptional||(e.values=[],e.childOptions&&e.childOptions.forEach((function(e){return u(e)})))}export{i as getDisplayedChildOptions,l as hasValidValues,n as initProductOption,s as initValues,a as setValues};
@@ -0,0 +1,2 @@
1
+ import { IkasProductStockLocation } from "@ikas/storefront-models";
2
+ export declare function getFullAddressText(productStockLocation: IkasProductStockLocation): string;
@@ -0,0 +1 @@
1
+ function s(s){if(!s.stockLocation.address)return"";var o=[];return s.stockLocation.address.address&&o.push(s.stockLocation.address.address),s.stockLocation.address.postalCode&&o.push(s.stockLocation.address.postalCode),s.stockLocation.address.district&&s.stockLocation.address.district.name&&o.push(s.stockLocation.address.district.name),s.stockLocation.address.city&&s.stockLocation.address.city.name&&o.push(s.stockLocation.address.city.name),s.stockLocation.address.state&&s.stockLocation.address.state.name&&"Default"!==s.stockLocation.address.state.name&&o.push(s.stockLocation.address.state.name),s.stockLocation.address.country&&s.stockLocation.address.country.name&&o.push(s.stockLocation.address.country.name),o.join(", ")}export{s as getFullAddressText};
@@ -1,3 +1,5 @@
1
- import { IkasProductVariant } from "@ikas/storefront-models";
1
+ import { IkasProductAttributeMap, IkasProductVariant } from "@ikas/storefront-models";
2
+ export declare function initProductVariant(variant: IkasProductVariant): void;
2
3
  export declare function getMainImage(variant: IkasProductVariant): import("@ikas/storefront-models").IkasProductImage | undefined;
3
- export declare function hasStock(variant: IkasProductVariant): boolean;
4
+ export declare function hasVariantStock(variant: IkasProductVariant): boolean;
5
+ export declare function getGroupedAttributeValues(variant: IkasProductVariant): IkasProductAttributeMap[];
@@ -1 +1 @@
1
- function t(t){var n;return(null===(n=t.images)||void 0===n?void 0:n.length)?t.images[0]:void 0}function n(t){return t.stock>0||t.sellIfOutOfStock}export{t as getMainImage,n as hasStock};
1
+ import{initProductAttributeValue as t}from"../attribute-value/index.js";import{initProductImage as r}from"../image/index.js";import i from"lodash/sortBy";import o from"lodash/groupBy";function u(o){var u;null===(u=o.images)||void 0===u||u.forEach(r),o.images=i(o.images,"order"),o.attributes.forEach(t)}function e(t){var r;return(null===(r=t.images)||void 0===r?void 0:r.length)?t.images[0]:void 0}function n(t){return t.stock>0||t.sellIfOutOfStock}function a(t){var r,i=o(t.attributes,"productAttributeId");return(null===(r=t.attributes)||void 0===r?void 0:r.map((function(t){var r=t.productAttributeId;if(r){var o=i[r];return(null==o?void 0:o.length)&&o[0].productAttribute?{attribute:o[0].productAttribute,values:o}:void 0}})).filter((function(t){return!!t})))||[]}export{a as getGroupedAttributeValues,e as getMainImage,n as hasVariantStock,u as initProductVariant};
@@ -1,5 +1,9 @@
1
1
  import { IkasProductPrice } from "@ikas/storefront-models";
2
2
  export declare function getFinalPrice(price: IkasProductPrice): number;
3
+ export declare function getFormattedFinalPrice(price: IkasProductPrice): string;
4
+ export declare function getFormattedBuyPrice(price: IkasProductPrice): string;
5
+ export declare function getFormattedDiscountPrice(price: IkasProductPrice): string;
6
+ export declare function getFormattedSellPrice(price: IkasProductPrice): string;
3
7
  export declare function hasDiscount(price: IkasProductPrice): boolean;
4
8
  export declare function getDiscountAmount(price: IkasProductPrice): number;
5
9
  export declare function getDiscountPercentage(price: IkasProductPrice): string | 0;
@@ -1 +1 @@
1
- function n(n){return null!==n.discountPrice?n.discountPrice:n.sellPrice}function e(n){return null!==n.discountPrice}function i(n){return e(n)?n.sellPrice-n.discountPrice:0}function r(i){return e(i)?(100-100*n(i)/i.sellPrice).toFixed(0):0}export{i as getDiscountAmount,r as getDiscountPercentage,n as getFinalPrice,e as hasDiscount};
1
+ import{formatCurrency as r}from"../../../../utils/currency.js";function c(r){return null!==r.discountPrice?r.discountPrice:r.sellPrice}function n(n){return r(c(n),n.currency||"",n.currencySymbol||"")}function u(c){return r(c.buyPrice||0,c.currency||"",c.currencySymbol||"")}function e(c){return r(c.discountPrice||0,c.currency||"",c.currencySymbol||"")}function i(c){return r(c.sellPrice||0,c.currency||"",c.currencySymbol||"")}function t(r){return null!==r.discountPrice}function o(r){return t(r)?r.sellPrice-r.discountPrice:0}function l(r){return t(r)?(100-100*c(r)/r.sellPrice).toFixed(0):0}export{o as getDiscountAmount,l as getDiscountPercentage,c as getFinalPrice,u as getFormattedBuyPrice,e as getFormattedDiscountPrice,n as getFormattedFinalPrice,i as getFormattedSellPrice,t as hasDiscount};
@@ -0,0 +1,2 @@
1
+ import { IkasProductVariantType } from "@ikas/storefront-models";
2
+ export declare function initProductVariantType(variantType: IkasProductVariantType): void;
@@ -0,0 +1 @@
1
+ function a(a){var n=[];a.variantValueIds.forEach((function(r){var i=a.variantType.values.find((function(a){return a.id===r}));i&&n.push(i)})),a.variantType.values=n}export{a as initProductVariantType};
@@ -1,2 +1,3 @@
1
1
  import { IkasRaffle } from "@ikas/storefront-models";
2
+ export declare function initRaffle(raffle: IkasRaffle, locale: string | null): void;
2
3
  export declare function isRaffleAvailable(raffle: IkasRaffle): boolean | 0 | null | undefined;
@@ -1 +1 @@
1
- function t(t){var a;if(!t.status)return!1;var e=Date.now();return(null===(a=t.dateRange)||void 0===a?void 0:a.start)&&e>t.dateRange.start&&t.dateRange.end&&e<t.dateRange.end}export{t as isRaffleAvailable};
1
+ import{initProduct as t}from"../product/index.js";function n(n,a){var e;null===(e=n.products)||void 0===e||e.map((function(n){return t(n,a)}))}function a(t){var n;if(!t.status)return!1;var a=Date.now();return(null===(n=t.dateRange)||void 0===n?void 0:n.start)&&a>t.dateRange.start&&t.dateRange.end&&a<t.dateRange.end}export{n as initRaffle,a as isRaffleAvailable};
@@ -0,0 +1,2 @@
1
+ import { IkasState } from "@ikas/storefront-models";
2
+ export declare function initState(state: IkasState, locale: string | null): void;
@@ -0,0 +1 @@
1
+ function n(n,o){n.locationTranslations&&o&&(!function(n,o){n.name=n.locationTranslations&&n.locationTranslations[o]||n.name}(n,o),delete n.locationTranslations)}export{n as initState};
@@ -1,3 +1,4 @@
1
1
  import { IkasVariantType } from "@ikas/storefront-models";
2
+ export declare function initVariantType(variantType: IkasVariantType, locale: string | null): void;
2
3
  export declare function isColorSelection(variantType: IkasVariantType): boolean;
3
- export declare function getIkasVariantTypeSlug(variantType: IkasVariantType): string;
4
+ export declare function getVariantTypeSlug(variantType: IkasVariantType): string;
@@ -1 +1 @@
1
- import{IkasVariantSelectionType as r}from"@ikas/storefront-models";import{stringToSlug as e}from"../../utils/helper.js";function o(e){return e.selectionType===r.COLOR}function t(r){return e(r.name)}export{t as getIkasVariantTypeSlug,o as isColorSelection};
1
+ import{IkasVariantSelectionType as n}from"@ikas/storefront-models";import{stringToSlug as e}from"../../utils/helper.js";import{initVariantValue as o}from"./variant-value/index.js";function i(n,e){n.values.forEach((function(e){e.variantTypeId=n.id,o(e)})),n.translations&&e&&(!function(n,e,o){if(e&&e.some((function(n){return n.locale===o}))){var i=e.find((function(n){return n.locale===o}));(null==i?void 0:i.name)&&(n.name=i.name),(null==i?void 0:i.values)&&n.values.forEach((function(n){var e,o=null===(e=i.values)||void 0===e?void 0:e.find((function(e){return e.id===n.id}));o&&o.name&&(n.name=o.name)}))}}(n,n.translations,e),delete n.translations)}function t(e){return e.selectionType===n.COLOR}function a(n){return e(n.name)}export{a as getVariantTypeSlug,i as initVariantType,t as isColorSelection};
@@ -1,3 +1,3 @@
1
- import { IkasImage, IkasVariantValue } from "@ikas/storefront-models";
2
- export declare function getIkasVariantValueSlug(variantValue: IkasVariantValue): string;
3
- export declare function getThumbnailImage(variantValue: IkasVariantValue): IkasImage | undefined;
1
+ import { IkasVariantValue } from "@ikas/storefront-models";
2
+ export declare function initVariantValue(variantValue: IkasVariantValue): void;
3
+ export declare function getVariantValueSlug(variantValue: IkasVariantValue): string;
@@ -1 +1 @@
1
- import{stringToSlug as i}from"../../../utils/helper.js";function e(e){return i(e.name)}function n(i){if(i.thumbnailImageId)return{id:i.thumbnailImageId,isVideo:!1}}export{e as getIkasVariantValueSlug,n as getThumbnailImage};
1
+ import{stringToSlug as i}from"../../../utils/helper.js";function n(i){i.thumbnailImage=i.thumbnailImageId?{id:i.thumbnailImageId,isVideo:!1}:null}function e(n){return i(n.name)}export{e as getVariantValueSlug,n as initVariantValue};
package/build/index.d.ts CHANGED
@@ -1,54 +1,41 @@
1
- import * as IkasBlogCategoryFunctions from "./functions/blog/category";
2
- export { IkasBlogCategoryFunctions };
3
- import * as IkasBlogFunctions from "./functions/blog";
4
- export { IkasBlogFunctions };
5
- import * as IkasBrandFunctions from "./functions/brand";
6
- export { IkasBrandFunctions };
7
- import * as IkasCategoryPathItemFunctions from "./functions/category/path-item";
8
- export { IkasCategoryPathItemFunctions };
9
- import * as IkasCategoryFunctions from "./functions/category";
10
- export { IkasCategoryFunctions };
11
- import * as IkasCheckoutFunctions from "./functions/checkout";
12
- export { IkasCheckoutFunctions };
13
- import * as IkasCustomerAddressFunctions from "./functions/customer/address";
14
- export { IkasCustomerAddressFunctions };
15
- import * as IkasCustomerAttributeFunctions from "./functions/customer/attribute";
16
- export { IkasCustomerAttributeFunctions };
17
- import * as IkasCustomerFunctions from "./functions/customer";
18
- export { IkasCustomerFunctions };
19
- import * as IkasFilterCategoryFunctions from "./functions/filter-category";
20
- export { IkasFilterCategoryFunctions };
21
- import * as IkasImageFunctions from "./functions/image";
22
- export { IkasImageFunctions };
23
- import * as IkasOrderAddressFunctions from "./functions/order/address";
24
- export { IkasOrderAddressFunctions };
25
- import * as IkasOrderLineItemVariantValueFunctions from "./functions/order/line-item/variant/value";
26
- export { IkasOrderLineItemVariantValueFunctions };
27
- import * as IkasOrderLineItemVariantFunctions from "./functions/order/line-item/variant";
28
- export { IkasOrderLineItemVariantFunctions };
29
- import * as IkasOrderLineItemFunctions from "./functions/order/line-item";
30
- export { IkasOrderLineItemFunctions };
31
- import * as IkasOrderFunctions from "./functions/order";
32
- export { IkasOrderFunctions };
33
- import * as IkasPaymentGatewayFunctions from "./functions/payment-gateway";
34
- export { IkasPaymentGatewayFunctions };
35
- import * as IkasProductAttributeValueFunctions from "./functions/product/attribute-value";
36
- export { IkasProductAttributeValueFunctions };
37
- import * as IkasProductFilterFunctions from "./functions/product/filter";
38
- export { IkasProductFilterFunctions };
39
- import * as IkasProductOptionFunctions from "./functions/product/option-set/option";
40
- export { IkasProductOptionFunctions };
41
- import * as IkasProductOptionSetFunctions from "./functions/product/option-set";
42
- export { IkasProductOptionSetFunctions };
43
- import * as IkasProductPriceFunctions from "./functions/product/variant/price";
44
- export { IkasProductPriceFunctions };
45
- import * as IkasProductVariantFunctions from "./functions/product/variant";
46
- export { IkasProductVariantFunctions };
47
- import * as IkasProductFunctions from "./functions/product";
48
- export { IkasProductFunctions };
49
- import * as IkasRaffleFunctions from "./functions/raffle";
50
- export { IkasRaffleFunctions };
51
- import * as IkasVariantValueFunctions from "./functions/variant-type/variant-value";
52
- export { IkasVariantValueFunctions };
53
- import * as IkasVariantTypeFunctions from "./functions/variant-type";
54
- export { IkasVariantTypeFunctions };
1
+ export * as IkasBaseModelFunctions from "./functions/base";
2
+ export * as IkasBlogCategoryFunctions from "./functions/blog/category";
3
+ export * as IkasBlogFunctions from "./functions/blog";
4
+ export * as IkasBrandFunctions from "./functions/brand";
5
+ export * as IkasCategoryPathItemFunctions from "./functions/category/path-item";
6
+ export * as IkasCategoryFunctions from "./functions/category";
7
+ export * as IkasCheckoutFunctions from "./functions/checkout";
8
+ export * as IkasCountryFunctions from "./functions/country";
9
+ export * as IkasCustomerAddressFunctions from "./functions/customer/address";
10
+ export * as IkasCustomerAttributeFunctions from "./functions/customer/attribute";
11
+ export * as IkasCustomerReviewFunctions from "./functions/customer/review";
12
+ export * as IkasCustomerFunctions from "./functions/customer";
13
+ export * as IkasProductFilterCategoryFunctions from "./functions/filter-category";
14
+ export * as IkasHtmlMetaDataFunctions from "./functions/html-meta-data";
15
+ export * as IkasImageFunctions from "./functions/image";
16
+ export * as IkasMerchantSettingsFunctions from "./functions/merchant-settings";
17
+ export * as IkasOrderAddressFunctions from "./functions/order/address";
18
+ export * as IkasOrderLineItemVariantValueFunctions from "./functions/order/line-item/variant/value";
19
+ export * as IkasOrderLineItemVariantFunctions from "./functions/order/line-item/variant";
20
+ export * as IkasOrderLineItemFunctions from "./functions/order/line-item";
21
+ export * as IkasOrderPackageFunctions from "./functions/order/package";
22
+ export * as IkasOrderTransactionFunctions from "./functions/order/transaction";
23
+ export * as IkasOrderFunctions from "./functions/order";
24
+ export * as IkasPaymentGatewayFunctions from "./functions/payment-gateway";
25
+ export * as IkasProductAttributeFunctions from "./functions/product/attribute";
26
+ export * as IkasProductAttributeValueFunctions from "./functions/product/attribute-value";
27
+ export * as IkasProductFilterFunctions from "./functions/product/filter";
28
+ export * as IkasProductImageFunctions from "./functions/product/image";
29
+ export * as IkasProductOptionFunctions from "./functions/product/option-set/option";
30
+ export * as IkasProductOptionSetFunctions from "./functions/product/option-set";
31
+ export * as IkasProductStockLocationFunctions from "./functions/product/stock-location";
32
+ export * as IkasProductPriceFunctions from "./functions/product/variant/price";
33
+ export * as IkasProductVariantFunctions from "./functions/product/variant";
34
+ export * as IkasProductVariantTypeFunctions from "./functions/product/variant-type";
35
+ export * as IkasProductFunctions from "./functions/product";
36
+ export * as IkasRaffleFunctions from "./functions/raffle";
37
+ export * as IkasStateFunctions from "./functions/state";
38
+ export * as IkasVariantValueFunctions from "./functions/variant-type/variant-value";
39
+ export * as IkasVariantTypeFunctions from "./functions/variant-type";
40
+ export { formatCurrency } from "./utils/currency";
41
+ export { formatDate } from "./utils/helper";
package/build/index.js CHANGED
@@ -1 +1 @@
1
- import*as t from"./functions/blog/category/index.js";export{t as IkasBlogCategoryFunctions};import*as o from"./functions/blog/index.js";export{o as IkasBlogFunctions};import*as s from"./functions/brand/index.js";export{s as IkasBrandFunctions};import*as n from"./functions/category/path-item/index.js";export{n as IkasCategoryPathItemFunctions};import*as r from"./functions/category/index.js";export{r as IkasCategoryFunctions};import*as i from"./functions/checkout/index.js";export{i as IkasCheckoutFunctions};import*as a from"./functions/customer/address/index.js";export{a as IkasCustomerAddressFunctions};import*as e from"./functions/customer/attribute/index.js";export{e as IkasCustomerAttributeFunctions};import*as u from"./functions/customer/index.js";export{u as IkasCustomerFunctions};import*as c from"./functions/filter-category/index.js";export{c as IkasFilterCategoryFunctions};import*as m from"./functions/image/index.js";export{m as IkasImageFunctions};import*as p from"./functions/order/address/index.js";export{p as IkasOrderAddressFunctions};import*as d from"./functions/order/line-item/variant/value/index.js";export{d as IkasOrderLineItemVariantValueFunctions};import*as f from"./functions/order/line-item/variant/index.js";export{f as IkasOrderLineItemVariantFunctions};import*as x from"./functions/order/line-item/index.js";export{x as IkasOrderLineItemFunctions};import*as I from"./functions/order/index.js";export{I as IkasOrderFunctions};import*as k from"./functions/payment-gateway/index.js";export{k as IkasPaymentGatewayFunctions};import*as F from"./functions/product/attribute-value/index.js";export{F as IkasProductAttributeValueFunctions};import*as j from"./functions/product/filter/index.js";export{j as IkasProductFilterFunctions};import*as l from"./functions/product/option-set/option/index.js";export{l as IkasProductOptionFunctions};import*as g from"./functions/product/option-set/index.js";export{g as IkasProductOptionSetFunctions};import*as y from"./functions/product/variant/price/index.js";export{y as IkasProductPriceFunctions};import*as v from"./functions/product/variant/index.js";export{v as IkasProductVariantFunctions};import*as P from"./functions/product/index.js";export{P as IkasProductFunctions};import*as C from"./functions/raffle/index.js";export{C as IkasRaffleFunctions};import*as V from"./functions/variant-type/variant-value/index.js";export{V as IkasVariantValueFunctions};import*as b from"./functions/variant-type/index.js";export{b as IkasVariantTypeFunctions};
1
+ import*as t from"./functions/base/index.js";export{t as IkasBaseModelFunctions};import*as o from"./functions/blog/category/index.js";export{o as IkasBlogCategoryFunctions};import*as s from"./functions/blog/index.js";export{s as IkasBlogFunctions};import*as n from"./functions/brand/index.js";export{n as IkasBrandFunctions};import*as r from"./functions/category/path-item/index.js";export{r as IkasCategoryPathItemFunctions};import*as i from"./functions/category/index.js";export{i as IkasCategoryFunctions};import*as a from"./functions/checkout/index.js";export{a as IkasCheckoutFunctions};import*as e from"./functions/country/index.js";export{e as IkasCountryFunctions};import*as u from"./functions/customer/address/index.js";export{u as IkasCustomerAddressFunctions};import*as c from"./functions/customer/attribute/index.js";export{c as IkasCustomerAttributeFunctions};import*as m from"./functions/customer/review/index.js";export{m as IkasCustomerReviewFunctions};import*as p from"./functions/customer/index.js";export{p as IkasCustomerFunctions};import*as d from"./functions/filter-category/index.js";export{d as IkasProductFilterCategoryFunctions};import*as f from"./functions/html-meta-data/index.js";export{f as IkasHtmlMetaDataFunctions};import*as x from"./functions/image/index.js";export{x as IkasImageFunctions};import*as k from"./functions/merchant-settings/index.js";export{k as IkasMerchantSettingsFunctions};import*as I from"./functions/order/address/index.js";export{I as IkasOrderAddressFunctions};import*as j from"./functions/order/line-item/variant/value/index.js";export{j as IkasOrderLineItemVariantValueFunctions};import*as F from"./functions/order/line-item/variant/index.js";export{F as IkasOrderLineItemVariantFunctions};import*as l from"./functions/order/line-item/index.js";export{l as IkasOrderLineItemFunctions};import*as g from"./functions/order/package/index.js";export{g as IkasOrderPackageFunctions};import*as y from"./functions/order/transaction/index.js";export{y as IkasOrderTransactionFunctions};import*as P from"./functions/order/index.js";export{P as IkasOrderFunctions};import*as v from"./functions/payment-gateway/index.js";export{v as IkasPaymentGatewayFunctions};import*as C from"./functions/product/attribute/index.js";export{C as IkasProductAttributeFunctions};import*as b from"./functions/product/attribute-value/index.js";export{b as IkasProductAttributeValueFunctions};import*as O from"./functions/product/filter/index.js";export{O as IkasProductFilterFunctions};import*as V from"./functions/product/image/index.js";export{V as IkasProductImageFunctions};import*as h from"./functions/product/option-set/option/index.js";export{h as IkasProductOptionFunctions};import*as A from"./functions/product/option-set/index.js";export{A as IkasProductOptionSetFunctions};import*as w from"./functions/product/stock-location/index.js";export{w as IkasProductStockLocationFunctions};import*as B from"./functions/product/variant/price/index.js";export{B as IkasProductPriceFunctions};import*as L from"./functions/product/variant/index.js";export{L as IkasProductVariantFunctions};import*as S from"./functions/product/variant-type/index.js";export{S as IkasProductVariantTypeFunctions};import*as M from"./functions/product/index.js";export{M as IkasProductFunctions};import*as T from"./functions/raffle/index.js";export{T as IkasRaffleFunctions};import*as D from"./functions/state/index.js";export{D as IkasStateFunctions};import*as R from"./functions/variant-type/variant-value/index.js";export{R as IkasVariantValueFunctions};import*as G from"./functions/variant-type/index.js";export{G as IkasVariantTypeFunctions};export{formatCurrency}from"./utils/currency.js";export{formatDate}from"./utils/helper.js";
@@ -0,0 +1,7 @@
1
+ /**
2
+ *
3
+ * @param price Price to format
4
+ * @param currencyCode Currency code
5
+ * @param currencySymbol Symbol for the currency
6
+ */
7
+ export declare const formatCurrency: (price: number, currencyCode: string, currencySymbol: string | null) => string;
@@ -0,0 +1 @@
1
+ import{IkasStorefrontConfig as r}from"@ikas/storefront-config";var n=function(n,o,t){var e,c,a,l,i,u,d,v=null===(c=null===(e=r.getMerchantSettings())||void 0===e?void 0:e.currencyFormats)||void 0===c?void 0:c.find((function(r){return r.currencyCode===o})),m=(null==v?void 0:v.symbol)||t||"",s=(null==v?void 0:v.decimalSeparator)||".",f=(null==v?void 0:v.thousandSeparator)||",",p=(null==v?void 0:v.symbolPosition)||"LEFT";try{var y=(l=f,i=s,u="\\d(?=(\\d{"+(3||3)+"})+"+((a=2)>0?"\\D":"$")+")",d=n.toFixed(Math.max(0,~~a)),(i?d.replace(".",i):d).replace(new RegExp(u,"g"),"$&"+(l||",")));return(null==v?void 0:v.omitZeroDecimal)&&(y=function(r){var n=r.split(s);return"00"===n[n.length-1]?n[0]:r}(y)),function(r){return"LEFT"===p?"".concat(m," ").concat(r):"".concat(r," ").concat(m)}(y)}catch(o){return console.error(o),new Intl.NumberFormat(r.getCurrentLocale(),{style:"currency",currency:t||"TRY"}).format(n)}};export{n as formatCurrency};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ikas/storefront-model-functions",
3
- "version": "5.0.0-beta.2",
3
+ "version": "5.0.0-beta.21",
4
4
  "description": "Functions for ikas storefront models.",
5
5
  "author": "ikas",
6
6
  "license": "ISC",
@@ -16,8 +16,8 @@
16
16
  "build": "rm -rf build && rollup -c"
17
17
  },
18
18
  "devDependencies": {
19
- "@ikas/storefront-config": "^5.0.0-beta.2",
20
- "@ikas/storefront-models": "^5.0.0-beta.2",
19
+ "@ikas/storefront-config": "^5.0.0-beta.21",
20
+ "@ikas/storefront-models": "^5.0.0-beta.21",
21
21
  "@rollup/plugin-node-resolve": "^13.3.0",
22
22
  "@rollup/plugin-commonjs": "^22.0.0",
23
23
  "rollup-plugin-rename-node-modules": "^1.2.0",
@@ -33,8 +33,8 @@
33
33
  "lodash": "^4.17.21"
34
34
  },
35
35
  "peerDependencies": {
36
- "@ikas/storefront-config": "^5.0.0-beta.2",
37
- "@ikas/storefront-models": "^5.0.0-beta.2",
36
+ "@ikas/storefront-config": "^5.0.0-beta.21",
37
+ "@ikas/storefront-models": "^5.0.0-beta.21",
38
38
  "lodash": "^4.17.21"
39
39
  }
40
40
  }