@bikdotai/bik-component-library 0.0.753 → 0.0.754-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
2
+ import { QueryBuilderNodeProps } from "../../../Types/QueryBuilderNodeProps.type";
3
3
  declare const EventsTrigger: React.FC<QueryBuilderNodeProps>;
4
4
  export default EventsTrigger;
@@ -1,2 +1,2 @@
1
- import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
1
+ import { QueryBuilderAPIData } from "../../../Types/QueryBuilderAPI.type";
2
2
  export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
2
+ import { QueryBuilderNodeProps } from "../../../Types/QueryBuilderNodeProps.type";
3
3
  declare const IGTrigger: React.FC<QueryBuilderNodeProps>;
4
4
  export default IGTrigger;
@@ -1,2 +1,2 @@
1
- import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
1
+ import { QueryBuilderAPIData } from "../../../Types/QueryBuilderAPI.type";
2
2
  export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { DropdownOption } from "../../../dropdown/type";
3
- import { QueryBuilderProperty } from "../../types/QueryBuilder.type";
4
- import { QueryBuilderNodeProps } from "../../types/QueryBuilderNodeProps.type";
3
+ import { QueryBuilderProperty } from "../../Types/QueryBuilder.type";
4
+ import { QueryBuilderNodeProps } from "../../Types/QueryBuilderNodeProps.type";
5
5
  declare const BaseTriggerQueryBuilderNode: React.FC<QueryBuilderNodeProps & {
6
6
  cacheKey: string;
7
7
  propertyAddBtnText: string;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("@bikdotai/bik-models/growth/models/bik-store"),t=require("react"),o=require("./type.js");require("../dropdown/DropdownPopover/index.js");var n=require("../dropdown/Dropdown.js");require("../dropdown/ChipDropdown.js"),require("../zeroState/ZeroState.js");var l=require("../TypographyStyle.js"),r=require("../../constants/Theme.js");require("../dropdown/OpenedDropdown/components/description/Description.styled.js"),require("../checkBox/CheckBox.styled.js"),require("../list-item/ListItem.js"),require("../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js"),require("../dropdown/OpenedDropdown/components/menu/MenuItem.js"),require("../dropdown/OpenedDropdown/components/menu/MenuList.styled.js"),require("../button/Button.js"),require("../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js"),require("../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js"),require("../icon-button/IconButton.js"),require("../input/Input.js"),require("../dropdown/MenuItem/MenuItem.js");var a=require("../modals/styledModal.js"),d=require("../product-picker/ProductPickerModal.js"),c=require("../tag/Tag.js"),s=require("../tooltips/Tooltip.js"),u=require("../../assets/icons/gift_icon.svg.js"),p=require("../../assets/icons/percentage_icon.svg.js"),C=require("../../assets/icons/shipping_icon.svg.js"),T=require("../../assets/icons/triangle_error.svg.js"),S=require("../../assets/icons/warning.svg.js"),P=require("../product-picker-v2/modal.js");require("../product-picker-v2/type.js");var E=require("../variable-picker-v3/model.js"),O=require("../variable-picker-v3/VariablePicker.js"),I=require("./DiscountModal.styled.js"),_=require("./DiscountUtils.js"),v=require("./DynamicCoupon/DynamicCoupon.js"),b=require("./StaticCoupon/StaticCoupon.js");exports.DiscountModal=y=>{var D,N,m,U,A,h,f,g,V,R,j;const F=[{id:"0",label:"Amount",value:"amount",icon:i=>e.jsx("span",Object.assign({style:{fontSize:20,color:i,lineHeight:.9}},{children:y.currency||""}))},{id:"1",label:"Percentage",value:"percentage",icon:i=>e.jsx(p.default,{width:24,height:24,color:i})},{id:"2",label:"Buy X get Y",value:o.DISCOUNT_TYPES.BUY_X_GET_Y,icon:i=>e.jsx(u.default,{width:24,height:24,color:i})},{id:"3",label:"Free Shipping",value:o.DISCOUNT_TYPES.FREE_SHIPPING,icon:i=>e.jsx(C.default,{width:24,height:24,color:i})}],[x,k]=t.useState(),[L,q]=t.useState(),[Y,M]=t.useState(),[w,G]=t.useState(null!==(D=y.data)&&void 0!==D?D:"string"==typeof y.hideOption?{isStaticCoupon:"dynamic"===y.hideOption}:{isStaticCoupon:!0}),[B,X]=t.useState(!0),[Q,H]=t.useState(),[z,K]=t.useState((null===(N=y.data)||void 0===N?void 0:N.minAmount)?o.MIN_PURCHASE_REQUIREMENT.AMOUNT:(null===(m=y.data)||void 0===m?void 0:m.minQuantity)?o.MIN_PURCHASE_REQUIREMENT.QUANTITY:o.MIN_PURCHASE_REQUIREMENT.NA),[$,Z]=t.useState(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER),[J,W]=t.useState(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),[ee,ie]=t.useState(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),[te,oe]=t.useState(void 0),[ne,le]=t.useState(void 0),[re,ae]=t.useState(void 0),[de,ce]=t.useState(void 0),[se,ue]=t.useState(void 0),[pe,Ce]=t.useState(void 0),[Te,Se]=t.useState(0),[Pe,Ee]=t.useState(""),[Oe,Ie]=t.useState(F[0]),[_e,ve]=t.useState(!1),[be,ye]=t.useState(o.initialStaticCouponErrorState),[De,Ne]=t.useState(o.initialDynamicCouponErrorState),[me,Ue]=t.useState(y.getDetailedDescription?o.COUPON_EXPIRATION.FIXED_EXPIRATION:o.COUPON_EXPIRATION.DYNAMIC_EXPIRATION),Ae=[{value:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER,label:"Amount off on order",selected:Q===o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER},{value:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS,label:"Amount off on products",selected:Q===o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS},{value:o.DISCOUNT_TYPES.BUY_X_GET_Y,label:"Buy X Get Y FREE",selected:Q===o.DISCOUNT_TYPES.BUY_X_GET_Y},{value:o.DISCOUNT_TYPES.FREE_SHIPPING,label:"Free shipping",selected:Q===o.DISCOUNT_TYPES.FREE_SHIPPING}];t.useEffect((()=>{y.makeExpiryMandatory&&ve(!0)}),[y.makeExpiryMandatory]),t.useEffect((()=>{var e,i,t,n,l,r,a,d;let c;const{tempCouponData:s,discountType:u}=he();H(u);const p=(e,i)=>{Ie(s.valueType===o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT?F[e]:F[i])},C=(e,i)=>{Object.keys(e||{}).length&&i(e)};switch(((null==s?void 0:s.expireAfter)||(null==s?void 0:s.expireAt))&&(ve(!0),(null==s?void 0:s.expireAt)&&Ue(o.COUPON_EXPIRATION.FIXED_EXPIRATION),(null==s?void 0:s.expireAfter)&&Ue(o.COUPON_EXPIRATION.DYNAMIC_EXPIRATION)),u){case o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:p(0,1),Z(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER);break;case o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:p(0,1),(null===(e=s.entitledCollectionIds)||void 0===e?void 0:e.length)?Z(o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS):(null===(i=s.entitledProductIds)||void 0===i?void 0:i.length)||(null===(t=s.productVariableConf)||void 0===t?void 0:t.entitledProductVariable)?(Z(o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(n=s.productVariableConf)||void 0===n?void 0:n.entitledProductVariable,ce)):Z(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER);break;case o.DISCOUNT_TYPES.BUY_X_GET_Y:Ie(F[2]),(null===(l=s.entitledCollectionIds)||void 0===l?void 0:l.length)?ie(o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS):(ie(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(r=s.productVariableConf)||void 0===r?void 0:r.entitledProductVariable,ce)),(null===(a=s.prerequisiteCollectionIds)||void 0===a?void 0:a.length)?W(o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS):(W(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(d=s.productVariableConf)||void 0===d?void 0:d.prerequisiteProductVariable,ue));break;case o.DISCOUNT_TYPES.FREE_SHIPPING:Ie(F[3])}G(Object.assign({},s)),y.hideProbability||(c=Ve()),X(_.validateDiscountData(s,z,u,y.hideProbability||!1,c,!!s.isStaticCoupon,y.getDetailedDescription||!1)),y.hideProbability||Ve()}),[]),t.useEffect((()=>{let e;y.hideProbability||(e=Ve()),X(_.validateDiscountData(w,z,Q,y.hideProbability||!1,e,!!w.isStaticCoupon,y.getDetailedDescription||!1))}),[w,Te,Q,z]),t.useEffect((()=>{var e,i,t,o,n,l,r;if(!y.newPickerConf&&((null===(e=y.products)||void 0===e?void 0:e.length)||(null===(i=y.collection)||void 0===i?void 0:i.length))){if(y.products&&(null===(t=y.products)||void 0===t?void 0:t.length)){if(null===(o=y.data)||void 0===o?void 0:o.entitledProductIds){const e=y.products.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.entitledProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));le(e)}if(null===(n=y.data)||void 0===n?void 0:n.prerequisiteProductIds){const e=y.products.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.prerequisiteProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));oe(e)}}if(y.collection&&y.collection.length){if(null===(l=y.data)||void 0===l?void 0:l.entitledCollectionIds){const e=y.collection.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.entitledCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ce(e)}if(null===(r=y.data)||void 0===r?void 0:r.prerequisiteCollectionIds){const e=y.collection.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.prerequisiteCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));ae(e)}}}}),[y.products,y.collection]),t.useEffect((()=>{var e,i,t,o,n,l,r,a;(null===(i=null===(e=y.data)||void 0===e?void 0:e.productsConf)||void 0===i?void 0:i.entitledProducts)&&le(y.data.productsConf.entitledProducts),(null===(o=null===(t=y.data)||void 0===t?void 0:t.productsConf)||void 0===o?void 0:o.prerequisiteProducts)&&oe(y.data.productsConf.prerequisiteProducts),(null===(l=null===(n=y.data)||void 0===n?void 0:n.collectionsConf)||void 0===l?void 0:l.entitledCollections)&&Ce(y.data.collectionsConf.entitledCollections),(null===(a=null===(r=y.data)||void 0===r?void 0:r.collectionsConf)||void 0===a?void 0:a.prerequisiteCollections)&&ae(y.data.collectionsConf.prerequisiteCollections)}),[null===(U=y.data)||void 0===U?void 0:U.productsConf,null===(A=y.data)||void 0===A?void 0:A.collectionsConf]),t.useEffect((()=>{if(!ne)return;if(y.newPickerConf){const e=[];return Object.values(ne).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void G(Object.assign(Object.assign({},w),{entitledProductIds:e}))}const e=ne.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{entitledProductIds:e}))}),[ne]),t.useEffect((()=>{if(!te)return;if(y.newPickerConf){const e=[];return Object.values(te).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void G(Object.assign(Object.assign({},w),{prerequisiteProductIds:e}))}const e=te.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{prerequisiteProductIds:e}))}),[te]),t.useEffect((()=>{if(!pe)return;if(y.newPickerConf){(null==pe?void 0:pe.isCustom)&&delete pe.isCustom;const e=Object.keys(pe).map((e=>parseInt(e)));return void G(Object.assign(Object.assign({},w),{entitledCollectionIds:e}))}const e=pe.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{entitledCollectionIds:e}))}),[pe]),t.useEffect((()=>{if(!re)return;if(y.newPickerConf){(null==re?void 0:re.isCustom)&&delete re.isCustom;const e=Object.keys(re).map((e=>parseInt(e)));return void G(Object.assign(Object.assign({},w),{prerequisiteCollectionIds:e}))}const e=re.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{prerequisiteCollectionIds:e}))}),[re]);const he=()=>{var e,i,t,n;let l,r=w;return w.isStaticCoupon?w.isStaticCoupon&&y.getDetailedDescription&&(w.targetType===o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE?l=o.DISCOUNT_TYPES.FREE_SHIPPING:w.targetType===o.DISCOUNT_TARGET_TYPES.LINE_ITEM?l=w.targetSelection===o.DISCOUNT_TARGET_SELECTION.ENTITLED?(null===(t=w.prerequisiteProductIds)||void 0===t?void 0:t.length)||(null===(n=w.prerequisiteCollectionIds)||void 0===n?void 0:n.length)||w.prerequisiteQuantity||w.entitledQuantity?o.DISCOUNT_TYPES.BUY_X_GET_Y:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:(r=Object.assign(Object.assign({},r),{targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),l=o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER)):w.targetType===o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE?l=o.DISCOUNT_TYPES.FREE_SHIPPING:w.targetType===o.DISCOUNT_TARGET_TYPES.LINE_ITEM?l=w.targetSelection===o.DISCOUNT_TARGET_SELECTION.ENTITLED?(null===(e=w.prerequisiteProductIds)||void 0===e?void 0:e.length)||(null===(i=w.prerequisiteCollectionIds)||void 0===i?void 0:i.length)||w.prerequisiteQuantity||w.entitledQuantity?o.DISCOUNT_TYPES.BUY_X_GET_Y:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:(r=Object.assign(Object.assign({},r),{targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),l=o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER),{discountType:l,tempCouponData:r}},fe=()=>{ye(o.initialStaticCouponErrorState),Ne(o.initialDynamicCouponErrorState)},ge=e=>{var i;const t={invalidDiscountCode:"Please add Discount Code",invalidCouponTitle:"Please add Discount Coupon Title",invalidCouponDescription:"Please add Coupon Description",inValidProbability:e.inValidProbability&&(null!==(i=w.probability)&&void 0!==i?i:-1)>1?"Probability should not exceed 1":w.isStaticCoupon?"Please add Probability":"Probability should be greater than 0",inValidDiscountAmount:"Please add Discount Amount",inValidMinimumAmount:"Specify minimum amount required",inValidMinimumQuantity:"Specify minimum items required",inValidCouponExpiry:"Please add Coupon Expiry",inValidProductSelection:"Please specify the products",inValidProductVariableSelection:"Please specify the product variables",inValidCollectionSelection:"Please specify the collections",inValidBuyXValue:"Please specify buy product quantity",inValidGetYValue:"Please specify get product quantity",inValidBuyXProductSelection:"Please specify the products",inValidBuyXCollectionSelection:"Please specify the collections",inValidGetYProductSelection:"Please specify the products",inValidGetYCollectionSelection:"Please specify the collections",inValidBuyXProductVariableSelection:"Please specify the product variables",inValidGetYProductVariableSelection:"Please specify the product variables"};let o="";Object.keys(e).forEach((i=>{e[i]&&(o=t[i])}));const n=Object.values(e).filter(Boolean).length;return n>0&&(Ee(n>1?"Please add discount details":o),!0)},Ve=()=>{if(!y.quadrant||!y.probability)return;const e=[...y.probability];let i=[];e.length>=y.quadrant&&e.splice(y.quadrant-1,1),i=e;const t=i.reduce(((e,i)=>e+i),0)+(w.probability||0);return Se(parseFloat(t.toFixed(4))),parseFloat(t.toFixed(4))},Re=e=>{var i,t,n,l,r,a,d,c,s,u,p,C,T,S,P,E;const O=e.value;H(O),oe([]),le([]),ae([]),Ce([]),O===o.DISCOUNT_TYPES.FREE_SHIPPING?G({value:100,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,targetType:o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE,valueType:o.DISCOUNT_VALUE_TYPES.PERCENTAGE,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(i=w.expireAt)&&void 0!==i?i:void 0,expireAfter:null!==(t=w.expireAfter)&&void 0!==t?t:void 0,probability:w.probability,minQuantity:null!==(n=w.minQuantity)&&void 0!==n?n:void 0,minAmount:null!==(l=w.minAmount)&&void 0!==l?l:void 0}):O===o.DISCOUNT_TYPES.BUY_X_GET_Y?G({value:100,targetSelection:o.DISCOUNT_TARGET_SELECTION.ENTITLED,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:o.DISCOUNT_VALUE_TYPES.PERCENTAGE,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(r=w.expireAt)&&void 0!==r?r:void 0,expireAfter:null!==(a=w.expireAfter)&&void 0!==a?a:void 0,probability:w.probability,minQuantity:void 0,minAmount:void 0}):O===o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER?G({targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:null!==(d=w.valueType)&&void 0!==d?d:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(c=w.expireAt)&&void 0!==c?c:void 0,expireAfter:null!==(s=w.expireAfter)&&void 0!==s?s:void 0,probability:w.probability,value:w.value,minQuantity:null!==(u=w.minQuantity)&&void 0!==u?u:void 0,minAmount:null!==(p=w.minAmount)&&void 0!==p?p:void 0}):O===o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS&&G({targetSelection:o.DISCOUNT_TARGET_SELECTION.ENTITLED,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:null!==(C=w.valueType)&&void 0!==C?C:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(T=w.expireAt)&&void 0!==T?T:void 0,expireAfter:null!==(S=w.expireAfter)&&void 0!==S?S:void 0,probability:w.probability,value:w.value,minQuantity:null!==(P=w.minQuantity)&&void 0!==P?P:void 0,minAmount:null!==(E=w.minAmount)&&void 0!==E?E:void 0})},je=i=>i&&e.jsx(c.Tag,{theme:"light",tagText:i,type:"negative",LeadingIcon:S.default});return e.jsxs(a.StyledModal,Object.assign({width:(Y||x)&&y.newPickerConf?"25px":"640px",open:y.isOpen,hideCrossButton:!!L,headingTitle:x?"Select Products":y.title,headingSubtitle:x?void 0:y.subTitle,footerLeftCustomElement:Pe?je(Pe):y.errorMsg?je(y.errorMsg):!y.quadrant||y.hideProbability?e.jsx(e.Fragment,{}):Te<=1?e.jsx(c.Tag,{theme:"light",tagText:`Current probability sum: ${Te}`,type:"white"}):e.jsx(s.Tooltip,Object.assign({body:"Probability sum should not exceed 1",placement:"top"},{children:e.jsx("div",{children:e.jsx(c.Tag,{style:{cursor:"pointer"},theme:"light",tagText:`Current probability sum: ${Te}`,type:"negative",LeadingIcon:T.default})})})),headerRightCustomElement:y.allowStaticCoupon||x?void 0:e.jsx(n.Dropdown,{options:Ae,width:"200px",placement:"bottom-start",size:"small",onSelect:e=>{Re(e)}}),onClose:y.onClose,footerContainerStyle:{borderTop:`1px solid ${r.DEFAULT_THEME.colorsV2.stroke.primary}`},primaryButton:x?{buttonType:"primary",onClick:()=>{k(void 0)},buttonText:"Add"}:Y?{buttonType:"primary",onClick:()=>{M(void 0)},buttonText:"Add"}:{buttonType:"primary",buttonText:"Create discount code",isLoading:null!==(h=y.loading)&&void 0!==h&&h,onClick:()=>{var e,i,t,n,l,r,a,d,c,s;if(fe(),w.isStaticCoupon&&!y.getDetailedDescription){const{isStaticCoupon:e,couponCode:i,title:t,description:o,quadrant:n,probability:l}=w,r={invalidDiscountCode:!i,invalidCouponTitle:!t,invalidCouponDescription:!o,inValidProbability:!y.hideProbability&&(null!=l?l:-1)<0||(null!=l?l:0)>1||Number.isNaN(null!=l?l:0)};if(ge(r))return void ye(r);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked({quadrant:n,couponCode:i,description:o,isStaticCoupon:e,probability:l,title:w.title})}else if(w.isStaticCoupon&&y.getDetailedDescription){const{isStaticCoupon:r,couponCode:a,title:d,quadrant:c,probability:s}=w,u={invalidDiscountCode:!a,invalidCouponTitle:!d,invalidCouponDescription:!1,inValidProbability:!y.hideProbability&&(null!=s?s:-1)<0||(null!=s?s:0)>1||Number.isNaN(null!=s?s:0)};if(ge(u))return void ye(u);const p={invalidCouponTitle:!w.title,inValidProbability:!y.hideProbability&&(null!==(e=w.probability)&&void 0!==e?e:-1)<=0||(null!==(i=w.probability)&&void 0!==i?i:-1)>1||Number.isNaN(null!==(t=w.probability)&&void 0!==t?t:-1),inValidDiscountAmount:!w.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(Q!==o.DISCOUNT_TYPES.BUY_X_GET_Y&&z!==o.MIN_PURCHASE_REQUIREMENT.NA){const{minAmount:e,minQuantity:i}=w;p.inValidMinimumAmount=z===o.MIN_PURCHASE_REQUIREMENT.AMOUNT&&!e,p.inValidMinimumQuantity=z===o.MIN_PURCHASE_REQUIREMENT.QUANTITY&&!i}if(_e&&(p.inValidCouponExpiry=!w.expireAt&&!w.expireAfter),Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER&&Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS||($!==o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(p.inValidProductSelection=!0,p.inValidProductVariableSelection=!0),$===o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(p.inValidCollectionSelection=!0)),Q===o.DISCOUNT_TYPES.BUY_X_GET_Y&&(w.prerequisiteQuantity||(p.inValidBuyXValue=!0),w.entitledQuantity||(p.inValidGetYValue=!0),J!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!te||Object.keys(te).length||se||(p.inValidBuyXProductSelection=!0,p.inValidBuyXProductVariableSelection=!0),J===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&re&&!Object.keys(re).length&&(p.inValidBuyXCollectionSelection=!0),ee!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(p.inValidGetYProductSelection=!0,p.inValidGetYProductVariableSelection=!0),ee===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(p.inValidGetYCollectionSelection=!0)),ge(p))return void Ne(p);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked(Object.assign(Object.assign({},w),{couponCode:a,isStaticCoupon:r,quadrant:c,description:_.descriptionBuilder(w,y.currency,null!==(n=y.products)&&void 0!==n?n:[],null!==(l=y.collection)&&void 0!==l?l:[]),productsConf:{entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[]},collectionsConf:{entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[]},productVariableConf:{entitledProductVariable:null!=de?de:{},prerequisiteProductVariable:null!=se?se:{}}}))}else{const e={invalidCouponTitle:!w.title,inValidProbability:!y.hideProbability&&(null!==(r=w.probability)&&void 0!==r?r:-1)<=0||(null!==(a=w.probability)&&void 0!==a?a:-1)>1||Number.isNaN(null!==(d=w.probability)&&void 0!==d?d:-1),inValidDiscountAmount:!w.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(Q!==o.DISCOUNT_TYPES.BUY_X_GET_Y&&z!==o.MIN_PURCHASE_REQUIREMENT.NA){const{minAmount:i,minQuantity:t}=w;e.inValidMinimumAmount=z===o.MIN_PURCHASE_REQUIREMENT.AMOUNT&&!i,e.inValidMinimumQuantity=z===o.MIN_PURCHASE_REQUIREMENT.QUANTITY&&!t}if(_e&&(e.inValidCouponExpiry=!w.expireAt&&!w.expireAfter),Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER&&Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS||($!==o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(e.inValidProductSelection=!0,e.inValidProductVariableSelection=!0),$===o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(e.inValidCollectionSelection=!0)),Q===o.DISCOUNT_TYPES.BUY_X_GET_Y&&(w.prerequisiteQuantity||(e.inValidBuyXValue=!0),w.entitledQuantity||(e.inValidGetYValue=!0),J!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!te||Object.keys(te).length||se||(e.inValidBuyXProductSelection=!0,e.inValidBuyXProductVariableSelection=!0),J===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&re&&!Object.keys(re).length&&(e.inValidBuyXCollectionSelection=!0),ee!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(e.inValidGetYProductSelection=!0,e.inValidGetYProductVariableSelection=!0),ee===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(e.inValidGetYCollectionSelection=!0)),ge(e))return void Ne(e);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked(Object.assign(Object.assign({},w),{isStaticCoupon:w.isStaticCoupon,description:_.descriptionBuilder(w,y.currency,null!==(c=y.products)&&void 0!==c?c:[],null!==(s=y.collection)&&void 0!==s?s:[]),productsConf:{entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[]},collectionsConf:{entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[]},productVariableConf:{entitledProductVariable:null!=de?de:{},prerequisiteProductVariable:null!=se?se:{}}}))}}},secondaryButton:x?{buttonType:"tertiaryGray",onClick:()=>{k(void 0)},buttonText:"Back"}:Y?{buttonType:"tertiaryGray",onClick:()=>{M(void 0)},buttonText:"Back"}:{buttonType:"tertiaryGray",onClick:y.onClose,buttonText:"Cancel"}},{children:[!x&&!Y&&e.jsxs(I.StyledDiscountDialogueContainer,{children:[y.allowStaticCoupon&&!x&&!y.hideOption&&e.jsxs(I.CouponTypeContainerStyled,Object.assign({selectedDiv:w.isStaticCoupon?1:2},{children:["static"===y.hideOption?e.jsx(e.Fragment,{}):e.jsxs("div",Object.assign({className:"coupon-type__container",onClick:()=>{w.isStaticCoupon||(G({isStaticCoupon:!0,quadrant:w.quadrant}),Ee(""),fe())}},{children:[e.jsx(l.TitleSmall,Object.assign({style:{marginBottom:"4px",color:w.isStaticCoupon?r.DEFAULT_THEME.colorsV2.content.brand:void 0}},{children:"Static Code"})),e.jsx(l.BodyCaption,Object.assign({style:w.isStaticCoupon?{color:r.DEFAULT_THEME.colorsV2.content.brand}:{}},{children:"A uniform code provided manually, used for providing the same discount to all customers."}))]})),"dynamic"===y.hideOption?e.jsx(e.Fragment,{}):e.jsxs("div",Object.assign({className:"coupon-type__container",onClick:()=>{var i;w.isStaticCoupon&&(H(o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER),G({isStaticCoupon:!1,quadrant:w.quadrant,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),Ee(""),fe(),Ie({id:"0",label:"Amount",value:"amount",icon:i=>e.jsx("span",Object.assign({style:{fontSize:20,color:i}},{children:y.currency||""}))}),ve(null!==(i=y.makeExpiryMandatory)&&void 0!==i&&i),K(o.MIN_PURCHASE_REQUIREMENT.NA))}},{children:[e.jsx(l.TitleSmall,Object.assign({style:{marginBottom:"4px",color:w.isStaticCoupon?void 0:r.DEFAULT_THEME.colorsV2.content.brand}},{children:"Dynamic Code"})),e.jsx(l.BodyCaption,Object.assign({style:w.isStaticCoupon?{}:{color:r.DEFAULT_THEME.colorsV2.content.brand}},{children:"Code will be unique for all customers, with the first 5 letters of the customer's name, followed by 10 random characters."}))]}))]})),!y.getDetailedDescription&&e.jsx(l.TitleRegular,Object.assign({style:{marginTop:"24px"}},{children:"Coupon Details"}))," ",w.isStaticCoupon&&!x&&!y.getDetailedDescription&&e.jsx(b.default,{discountData:w,setDiscountData:G,hideProbability:y.hideProbability||!1,discountAdminUrl:y.discountAdminUrl,staticDiscountValidationError:be,currency:y.currency}),w.isStaticCoupon&&!x&&y.getDetailedDescription&&e.jsx(b.default,{discountData:w,setDiscountData:G,hideProbability:y.hideProbability||!1,discountAdminUrl:y.discountAdminUrl,staticDiscountValidationError:be,currency:y.currency,getDetailedDescription:!0,selectedCouponType:Q,setSelectedCouponType:H,selectedMinimumRequirement:z,setSelectedMinimumRequirement:K,discountCouponAppliesTo:$,offerAppliesToBuy:J,offerAppliesToGet:ee,setDiscountCouponAppliesTo:Z,setOfferAppliesToBuy:W,setOfferAppliesToGet:ie,hideExpiration:y.hideExpiration||!1,onChangeCouponType:Re,entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[],setEntitledProducts:le,setPrerequisiteProducts:oe,entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[],setEntitledCollections:Ce,setPrerequisiteCollections:ae,setIsProductPickerOpen:k,setIsProductVariablePickerOpen:q,setIsCollectionPickerOpen:M,productPickerOpen:x,productVariablePickerOpen:L,collectionPickerOpen:Y,useNewPicker:!!y.newPickerConf,selectedDiscountDetails:Oe,setSelectedDiscountDetails:Ie,isProductVariableSupported:y.isProductVariableSupported,entitledProductVariable:de,setEntitledProductVariable:ce,preRequisiteProductVariable:se,setPreRequisiteProductVariable:ue,productVariableList:y.productVariableList,isAddExpirationChecked:_e,setIsAddExpirationChecked:ve,dynamicDiscountValidationError:De,setDynamicDiscountValidationError:Ne,setValidationErrorMessage:Ee,resetValidationErrors:fe,discountDetailsOptions:F,selectedExpiration:me,setSelectedExpiration:Ue,makeExpiryMandatory:!!y.makeExpiryMandatory}),!w.isStaticCoupon&&!x&&!Y&&e.jsx(v.default,{currency:y.currency,entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[],setEntitledProducts:le,setPrerequisiteProducts:oe,discountData:w,productPickerOpen:x,productVariablePickerOpen:L,setIsProductPickerOpen:k,setIsProductVariablePickerOpen:q,setDiscountData:G,selectedCouponType:Q,setSelectedCouponType:H,selectedMinimumRequirement:z,setSelectedMinimumRequirement:K,discountCouponAppliesTo:$,offerAppliesToBuy:J,offerAppliesToGet:ee,setDiscountCouponAppliesTo:Z,setOfferAppliesToBuy:W,setOfferAppliesToGet:ie,hideProbability:y.hideProbability||!1,hideExpiration:y.hideExpiration||!1,allowStaticCoupon:y.allowStaticCoupon,onChangeCouponType:Re,collectionPickerOpen:Y,entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[],setIsCollectionPickerOpen:M,setEntitledCollections:Ce,setPrerequisiteCollections:ae,useNewPicker:!!y.newPickerConf,setSelectedDiscountDetails:Ie,selectedDiscountDetails:Oe,isProductVariableSupported:y.isProductVariableSupported,entitledProductVariable:de,setEntitledProductVariable:ce,preRequisiteProductVariable:se,setPreRequisiteProductVariable:ue,productVariableList:y.productVariableList,isAddExpirationChecked:_e,setIsAddExpirationChecked:ve,dynamicDiscountValidationError:De,setDynamicDiscountValidationError:Ne,setValidationErrorMessage:Ee,resetValidationErrors:fe,discountDetailsOptions:F,selectedExpiration:me,setSelectedExpiration:Ue,makeExpiryMandatory:!!y.makeExpiryMandatory})]}),!!x&&e.jsxs(e.Fragment,{children:[!y.newPickerConf&&e.jsx("div",Object.assign({style:{padding:"12px 0"}},{children:e.jsx(d.ProductPickerContent,{show:!0,onSave:()=>{},products:null!==(f=y.products)&&void 0!==f?f:[],title:"Select Products",onClose:()=>{k(void 0)},selectedProducts:null!==(g=x===v.DISCOUNT_PRODUCTS.ENTITLED?ne:te)&&void 0!==g?g:[],setSelectedProducts:x===v.DISCOUNT_PRODUCTS.ENTITLED?le:oe,onSearchKeyChange:y.onProductSearch})})),y.newPickerConf&&e.jsx(P.ProductPickerModal,{visible:!0,onClose:()=>k(void 0),collectionFetcher:(e,i,t)=>{var o;return(null===(o=y.newPickerConf)||void 0===o?void 0:o.fetchCollections)?y.newPickerConf.fetchCollections(e,i,!1,t):null},productFetcher:(e,i,t,o,n)=>{var l;return(null===(l=y.newPickerConf)||void 0===l?void 0:l.fetchProducts)?y.newPickerConf.fetchProducts(e,i,o,n,!1,t):null},selectedItems:x===v.DISCOUNT_PRODUCTS.ENTITLED?ne:te,onAdd:e=>{x===v.DISCOUNT_PRODUCTS.ENTITLED?le(e):oe(e),k(void 0)},zIndex:200,storeId:y.newPickerConf.storeId,appType:y.newPickerConf.appType||i.ApplicationType.BIK,searchInCollectionFetcher:(e,i,t,o)=>{var n;return(null===(n=y.newPickerConf)||void 0===n?void 0:n.searchInCollection)?y.newPickerConf.searchInCollection(e,i,t,!1,o):null},customCollectionRestriction:!1,searchFetcher:(e,i,t)=>{var o;return(null===(o=y.newPickerConf)||void 0===o?void 0:o.searchProducts)?y.newPickerConf.searchProducts(e,i,!1,t):null},hideCollectionCheckbox:!0,hideVariantCheckbox:!0,selectProductsFromCustomCollection:!0,hideSelectionCount:!0})]}),!!Y&&e.jsx("div",Object.assign({style:{padding:"12px 0"}},{children:e.jsxs(e.Fragment,{children:[y.newPickerConf&&e.jsx(P.ProductPickerModal,{visible:!0,onClose:()=>M(void 0),collectionFetcher:y.newPickerConf.fetchCollections,productFetcher:y.newPickerConf.fetchProducts,selectedItems:Y===v.DISCOUNT_PRODUCTS.ENTITLED?pe:re,onAdd:e=>{Object.values(e).forEach((e=>{e.products&&delete e.products})),Y===v.DISCOUNT_PRODUCTS.ENTITLED?Ce(e):ae(e),M(void 0)},customCollectionRestriction:!1,zIndex:200,storeId:y.newPickerConf.storeId,appType:y.newPickerConf.appType||i.ApplicationType.BIK,searchInCollectionFetcher:y.newPickerConf.searchInCollection,searchFetcher:y.newPickerConf.searchProducts,hideProductCheckbox:!0,hideVariantCheckbox:!0,title:"Select Collections",hideGlobalSearch:!0,hideSelectionCount:!0}),!y.newPickerConf&&e.jsx(d.ProductPickerContent,{show:!0,onSave:()=>{},products:null!==(V=y.collection)&&void 0!==V?V:[],title:"Select Products",onClose:()=>{M(void 0)},selectedProducts:null!==(R=Y===v.DISCOUNT_PRODUCTS.ENTITLED?pe:re)&&void 0!==R?R:[],setSelectedProducts:Y===v.DISCOUNT_PRODUCTS.ENTITLED?Ce:ae,onSearchKeyChange:y.onCollectionSearch,searchPlaceholder:"Search collections..."})]})})),L&&e.jsx(I.VariablePickerContainer,{children:e.jsx("div",Object.assign({style:{width:"50%",height:"100%",marginLeft:"50%"}},{children:e.jsx(O.VariablePicker,{type:E.PickerType.EMBEDDED,data:null!==(j=y.productVariableList)&&void 0!==j?j:[],showHeader:!0,onSelect:e=>{if(L===v.DISCOUNT_PRODUCTS.ENTITLED){const{displayName:i,actualValue:t,isAvailable:o}=e;ce({displayName:i,actualValue:t,isAvailable:o}),q(void 0)}if(L===v.DISCOUNT_PRODUCTS.PREREQUISITE){const{displayName:i,actualValue:t,isAvailable:o}=e;ue({displayName:i,actualValue:t,isAvailable:o}),q(void 0)}},onClose:()=>{q(void 0)}})}))})]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("@bikdotai/bik-models/growth/models/bik-store"),t=require("react"),o=require("./type.js");require("../dropdown/DropdownPopover/index.js");var n=require("../dropdown/Dropdown.js");require("../dropdown/ChipDropdown.js"),require("../zeroState/ZeroState.js");var l=require("../TypographyStyle.js"),r=require("../../constants/Theme.js");require("../dropdown/OpenedDropdown/components/description/Description.styled.js"),require("../checkBox/CheckBox.styled.js"),require("../list-item/ListItem.js"),require("../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js"),require("../dropdown/OpenedDropdown/components/menu/MenuItem.js"),require("../dropdown/OpenedDropdown/components/menu/MenuList.styled.js"),require("../button/Button.js"),require("../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js"),require("../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js"),require("../icon-button/IconButton.js"),require("../input/Input.js"),require("../dropdown/MenuItem/MenuItem.js");var a=require("../modals/styledModal.js"),d=require("../product-picker/ProductPickerModal.js"),c=require("../tag/Tag.js"),s=require("../tooltips/Tooltip.js"),u=require("../../assets/icons/gift_icon.svg.js"),p=require("../../assets/icons/percentage_icon.svg.js"),C=require("../../assets/icons/shipping_icon.svg.js"),T=require("../../assets/icons/triangle_error.svg.js"),S=require("../../assets/icons/warning.svg.js"),P=require("../product-picker-v2/modal.js");require("../product-picker-v2/type.js");var E=require("../variable-picker-v3/model.js"),O=require("../variable-picker-v3/VariablePicker.js"),I=require("./DiscountModal.styled.js"),_=require("./DiscountUtils.js"),v=require("./DynamicCoupon/DynamicCoupon.js"),b=require("./StaticCoupon/StaticCoupon.js");exports.DiscountModal=y=>{var D,N,m,U,A,h,f,g,V,R,j;const F=[{id:"0",label:"Amount",value:"amount",icon:i=>e.jsx("span",Object.assign({style:{fontSize:20,color:i,lineHeight:.9}},{children:y.currency||""}))},{id:"1",label:"Percentage",value:"percentage",icon:i=>e.jsx(p.default,{width:24,height:24,color:i})},{id:"2",label:"Buy X get Y",value:o.DISCOUNT_TYPES.BUY_X_GET_Y,icon:i=>e.jsx(u.default,{width:24,height:24,color:i})},{id:"3",label:"Free Shipping",value:o.DISCOUNT_TYPES.FREE_SHIPPING,icon:i=>e.jsx(C.default,{width:24,height:24,color:i})}],[x,k]=t.useState(),[L,q]=t.useState(),[Y,M]=t.useState(),[w,G]=t.useState(null!==(D=y.data)&&void 0!==D?D:"string"==typeof y.hideOption?{isStaticCoupon:"dynamic"===y.hideOption}:{isStaticCoupon:!0}),[B,X]=t.useState(!0),[Q,H]=t.useState(),[z,K]=t.useState((null===(N=y.data)||void 0===N?void 0:N.minAmount)?o.MIN_PURCHASE_REQUIREMENT.AMOUNT:(null===(m=y.data)||void 0===m?void 0:m.minQuantity)?o.MIN_PURCHASE_REQUIREMENT.QUANTITY:o.MIN_PURCHASE_REQUIREMENT.NA),[$,Z]=t.useState(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER),[J,W]=t.useState(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),[ee,ie]=t.useState(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),[te,oe]=t.useState(void 0),[ne,le]=t.useState(void 0),[re,ae]=t.useState(void 0),[de,ce]=t.useState(void 0),[se,ue]=t.useState(void 0),[pe,Ce]=t.useState(void 0),[Te,Se]=t.useState(0),[Pe,Ee]=t.useState(""),[Oe,Ie]=t.useState(F[0]),[_e,ve]=t.useState(!1),[be,ye]=t.useState(o.initialStaticCouponErrorState),[De,Ne]=t.useState(o.initialDynamicCouponErrorState),[me,Ue]=t.useState(y.getDetailedDescription?o.COUPON_EXPIRATION.FIXED_EXPIRATION:o.COUPON_EXPIRATION.DYNAMIC_EXPIRATION),Ae=[{value:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER,label:"Amount off on order",selected:Q===o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER},{value:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS,label:"Amount off on products",selected:Q===o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS},{value:o.DISCOUNT_TYPES.BUY_X_GET_Y,label:"Buy X Get Y FREE",selected:Q===o.DISCOUNT_TYPES.BUY_X_GET_Y},{value:o.DISCOUNT_TYPES.FREE_SHIPPING,label:"Free shipping",selected:Q===o.DISCOUNT_TYPES.FREE_SHIPPING}];t.useEffect((()=>{y.makeExpiryMandatory&&ve(!0)}),[y.makeExpiryMandatory]),t.useEffect((()=>{var e,i,t,n,l,r,a,d;let c;const{tempCouponData:s,discountType:u}=he();H(u);const p=(e,i)=>{Ie(s.valueType===o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT?F[e]:F[i])},C=(e,i)=>{Object.keys(e||{}).length&&i(e)};switch(((null==s?void 0:s.expireAfter)||(null==s?void 0:s.expireAt))&&(ve(!0),(null==s?void 0:s.expireAt)&&Ue(o.COUPON_EXPIRATION.FIXED_EXPIRATION),(null==s?void 0:s.expireAfter)&&Ue(o.COUPON_EXPIRATION.DYNAMIC_EXPIRATION)),u){case o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:p(0,1),Z(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER);break;case o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:p(0,1),(null===(e=s.entitledCollectionIds)||void 0===e?void 0:e.length)?Z(o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS):(null===(i=s.entitledProductIds)||void 0===i?void 0:i.length)||(null===(t=s.productVariableConf)||void 0===t?void 0:t.entitledProductVariable)?(Z(o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(n=s.productVariableConf)||void 0===n?void 0:n.entitledProductVariable,ce)):Z(o.DISCOUNT_APPLIES_TO.ENTIRE_ORDER);break;case o.DISCOUNT_TYPES.BUY_X_GET_Y:Ie(F[2]),(null===(l=s.entitledCollectionIds)||void 0===l?void 0:l.length)?ie(o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS):(ie(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(r=s.productVariableConf)||void 0===r?void 0:r.entitledProductVariable,ce)),(null===(a=s.prerequisiteCollectionIds)||void 0===a?void 0:a.length)?W(o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS):(W(o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS),C(null===(d=s.productVariableConf)||void 0===d?void 0:d.prerequisiteProductVariable,ue));break;case o.DISCOUNT_TYPES.FREE_SHIPPING:Ie(F[3])}G(Object.assign({},s)),y.hideProbability||(c=Ve()),X(_.validateDiscountData(s,z,u,y.hideProbability||!1,c,!!s.isStaticCoupon,y.getDetailedDescription||!1)),y.hideProbability||Ve()}),[]),t.useEffect((()=>{let e;y.hideProbability||(e=Ve()),X(_.validateDiscountData(w,z,Q,y.hideProbability||!1,e,!!w.isStaticCoupon,y.getDetailedDescription||!1))}),[w,Te,Q,z]),t.useEffect((()=>{var e,i,t,o,n,l,r;if(!y.newPickerConf&&((null===(e=y.products)||void 0===e?void 0:e.length)||(null===(i=y.collection)||void 0===i?void 0:i.length))){if(y.products&&(null===(t=y.products)||void 0===t?void 0:t.length)){if(null===(o=y.data)||void 0===o?void 0:o.entitledProductIds){const e=y.products.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.entitledProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));le(e)}if(null===(n=y.data)||void 0===n?void 0:n.prerequisiteProductIds){const e=y.products.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.prerequisiteProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));oe(e)}}if(y.collection&&y.collection.length){if(null===(l=y.data)||void 0===l?void 0:l.entitledCollectionIds){const e=y.collection.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.entitledCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ce(e)}if(null===(r=y.data)||void 0===r?void 0:r.prerequisiteCollectionIds){const e=y.collection.filter((e=>{var i,t;return null===(t=null===(i=y.data)||void 0===i?void 0:i.prerequisiteCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));ae(e)}}}}),[y.products,y.collection]),t.useEffect((()=>{var e,i,t,o,n,l,r,a;(null===(i=null===(e=y.data)||void 0===e?void 0:e.productsConf)||void 0===i?void 0:i.entitledProducts)&&le(y.data.productsConf.entitledProducts),(null===(o=null===(t=y.data)||void 0===t?void 0:t.productsConf)||void 0===o?void 0:o.prerequisiteProducts)&&oe(y.data.productsConf.prerequisiteProducts),(null===(l=null===(n=y.data)||void 0===n?void 0:n.collectionsConf)||void 0===l?void 0:l.entitledCollections)&&Ce(y.data.collectionsConf.entitledCollections),(null===(a=null===(r=y.data)||void 0===r?void 0:r.collectionsConf)||void 0===a?void 0:a.prerequisiteCollections)&&ae(y.data.collectionsConf.prerequisiteCollections)}),[null===(U=y.data)||void 0===U?void 0:U.productsConf,null===(A=y.data)||void 0===A?void 0:A.collectionsConf]),t.useEffect((()=>{if(!ne)return;if(y.newPickerConf){const e=[];return Object.values(ne).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void G(Object.assign(Object.assign({},w),{entitledProductIds:e}))}const e=ne.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{entitledProductIds:e}))}),[ne]),t.useEffect((()=>{if(!te)return;if(y.newPickerConf){const e=[];return Object.values(te).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void G(Object.assign(Object.assign({},w),{prerequisiteProductIds:e}))}const e=te.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{prerequisiteProductIds:e}))}),[te]),t.useEffect((()=>{if(!pe)return;if(y.newPickerConf){(null==pe?void 0:pe.isCustom)&&delete pe.isCustom;const e=Object.keys(pe).map((e=>parseInt(e)));return void G(Object.assign(Object.assign({},w),{entitledCollectionIds:e}))}const e=pe.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{entitledCollectionIds:e}))}),[pe]),t.useEffect((()=>{if(!re)return;if(y.newPickerConf){(null==re?void 0:re.isCustom)&&delete re.isCustom;const e=Object.keys(re).map((e=>parseInt(e)));return void G(Object.assign(Object.assign({},w),{prerequisiteCollectionIds:e}))}const e=re.map((e=>parseInt(e.id)));G(Object.assign(Object.assign({},w),{prerequisiteCollectionIds:e}))}),[re]);const he=()=>{var e,i,t,n;let l,r=w;return w.isStaticCoupon?w.isStaticCoupon&&y.getDetailedDescription&&(w.targetType===o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE?l=o.DISCOUNT_TYPES.FREE_SHIPPING:w.targetType===o.DISCOUNT_TARGET_TYPES.LINE_ITEM?l=w.targetSelection===o.DISCOUNT_TARGET_SELECTION.ENTITLED?(null===(t=w.prerequisiteProductIds)||void 0===t?void 0:t.length)||(null===(n=w.prerequisiteCollectionIds)||void 0===n?void 0:n.length)||w.prerequisiteQuantity||w.entitledQuantity?o.DISCOUNT_TYPES.BUY_X_GET_Y:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:(r=Object.assign(Object.assign({},r),{targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),l=o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER)):w.targetType===o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE?l=o.DISCOUNT_TYPES.FREE_SHIPPING:w.targetType===o.DISCOUNT_TARGET_TYPES.LINE_ITEM?l=w.targetSelection===o.DISCOUNT_TARGET_SELECTION.ENTITLED?(null===(e=w.prerequisiteProductIds)||void 0===e?void 0:e.length)||(null===(i=w.prerequisiteCollectionIds)||void 0===i?void 0:i.length)||w.prerequisiteQuantity||w.entitledQuantity?o.DISCOUNT_TYPES.BUY_X_GET_Y:o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS:o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER:(r=Object.assign(Object.assign({},r),{targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),l=o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER),{discountType:l,tempCouponData:r}},fe=()=>{ye(o.initialStaticCouponErrorState),Ne(o.initialDynamicCouponErrorState)},ge=e=>{var i;const t={invalidDiscountCode:"Please add Discount Code",invalidCouponTitle:"Please add Discount Coupon Title",invalidCouponDescription:"Please add Coupon Description",inValidProbability:e.inValidProbability&&(null!==(i=w.probability)&&void 0!==i?i:-1)>1?"Probability should not exceed 1":w.isStaticCoupon?"Please add Probability":"Probability should be greater than 0",inValidDiscountAmount:"Please add Discount Amount",inValidMinimumAmount:"Specify minimum amount required",inValidMinimumQuantity:"Specify minimum items required",inValidCouponExpiry:"Please add Coupon Expiry",inValidProductSelection:"Please specify the products",inValidProductVariableSelection:"Please specify the product variables",inValidCollectionSelection:"Please specify the collections",inValidBuyXValue:"Please specify buy product quantity",inValidGetYValue:"Please specify get product quantity",inValidBuyXProductSelection:"Please specify the products",inValidBuyXCollectionSelection:"Please specify the collections",inValidGetYProductSelection:"Please specify the products",inValidGetYCollectionSelection:"Please specify the collections",inValidBuyXProductVariableSelection:"Please specify the product variables",inValidGetYProductVariableSelection:"Please specify the product variables"};let o="";Object.keys(e).forEach((i=>{e[i]&&(o=t[i])}));const n=Object.values(e).filter(Boolean).length;return n>0&&(Ee(n>1?"Please add discount details":o),!0)},Ve=()=>{if(!y.quadrant||!y.probability)return;const e=[...y.probability];let i=[];e.length>=y.quadrant&&e.splice(y.quadrant-1,1),i=e;const t=i.reduce(((e,i)=>e+i),0)+(w.probability||0);return Se(parseFloat(t.toFixed(4))),parseFloat(t.toFixed(4))},Re=e=>{var i,t,n,l,r,a,d,c,s,u,p,C,T,S,P,E;const O=e.value;H(O),oe([]),le([]),ae([]),Ce([]),O===o.DISCOUNT_TYPES.FREE_SHIPPING?G({value:100,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,targetType:o.DISCOUNT_TARGET_TYPES.SHIPPING_LINE,valueType:o.DISCOUNT_VALUE_TYPES.PERCENTAGE,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(i=w.expireAt)&&void 0!==i?i:void 0,expireAfter:null!==(t=w.expireAfter)&&void 0!==t?t:void 0,probability:w.probability,minQuantity:null!==(n=w.minQuantity)&&void 0!==n?n:void 0,minAmount:null!==(l=w.minAmount)&&void 0!==l?l:void 0}):O===o.DISCOUNT_TYPES.BUY_X_GET_Y?G({value:100,targetSelection:o.DISCOUNT_TARGET_SELECTION.ENTITLED,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:o.DISCOUNT_VALUE_TYPES.PERCENTAGE,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(r=w.expireAt)&&void 0!==r?r:void 0,expireAfter:null!==(a=w.expireAfter)&&void 0!==a?a:void 0,probability:w.probability,minQuantity:void 0,minAmount:void 0}):O===o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER?G({targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:null!==(d=w.valueType)&&void 0!==d?d:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(c=w.expireAt)&&void 0!==c?c:void 0,expireAfter:null!==(s=w.expireAfter)&&void 0!==s?s:void 0,probability:w.probability,value:w.value,minQuantity:null!==(u=w.minQuantity)&&void 0!==u?u:void 0,minAmount:null!==(p=w.minAmount)&&void 0!==p?p:void 0}):O===o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS&&G({targetSelection:o.DISCOUNT_TARGET_SELECTION.ENTITLED,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,valueType:null!==(C=w.valueType)&&void 0!==C?C:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT,quadrant:w.quadrant,isStaticCoupon:!!y.getDetailedDescription,title:w.title,couponCode:y.getDetailedDescription?w.couponCode:void 0,expireAt:null!==(T=w.expireAt)&&void 0!==T?T:void 0,expireAfter:null!==(S=w.expireAfter)&&void 0!==S?S:void 0,probability:w.probability,value:w.value,minQuantity:null!==(P=w.minQuantity)&&void 0!==P?P:void 0,minAmount:null!==(E=w.minAmount)&&void 0!==E?E:void 0})},je=i=>i&&e.jsx(c.Tag,{theme:"light",tagText:i,type:"negative",LeadingIcon:S.default});return e.jsxs(a.StyledModal,Object.assign({width:(Y||x)&&y.newPickerConf?"25px":"640px",open:y.isOpen,hideCrossButton:!!L,headingTitle:x?"Select Products":y.title,headingSubtitle:x?void 0:y.subTitle,footerLeftCustomElement:Pe?je(Pe):y.errorMsg?je(y.errorMsg):!y.quadrant||y.hideProbability?e.jsx(e.Fragment,{}):Te<=1?e.jsx(c.Tag,{theme:"light",tagText:`Current probability sum: ${Te}`,type:"white"}):e.jsx(s.Tooltip,Object.assign({body:"Probability sum should not exceed 1",placement:"top"},{children:e.jsx("div",{children:e.jsx(c.Tag,{style:{cursor:"pointer"},theme:"light",tagText:`Current probability sum: ${Te}`,type:"negative",LeadingIcon:T.default})})})),headerRightCustomElement:y.allowStaticCoupon||x?void 0:e.jsx(n.Dropdown,{options:Ae,width:"200px",placement:"bottom-start",size:"small",onSelect:e=>{Re(e)}}),onClose:y.onClose,footerContainerStyle:{borderTop:`1px solid ${r.DEFAULT_THEME.colorsV2.stroke.primary}`},primaryButton:x?{buttonType:"primary",onClick:()=>{k(void 0)},buttonText:"Add"}:Y?{buttonType:"primary",onClick:()=>{M(void 0)},buttonText:"Add"}:{buttonType:"primary",buttonText:"Create discount code",isLoading:null!==(h=y.loading)&&void 0!==h&&h,onClick:()=>{var e,i,t,n,l,r,a,d,c,s;if(fe(),w.isStaticCoupon&&!y.getDetailedDescription){const{isStaticCoupon:e,couponCode:i,title:t,description:o,quadrant:n,probability:l}=w,r={invalidDiscountCode:!i,invalidCouponTitle:!t,invalidCouponDescription:!o,inValidProbability:!y.hideProbability&&(null!=l?l:-1)<0||(null!=l?l:0)>1||Number.isNaN(null!=l?l:0)};if(ge(r))return void ye(r);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked({quadrant:n,couponCode:i,description:o,isStaticCoupon:e,probability:l,title:w.title})}else if(w.isStaticCoupon&&y.getDetailedDescription){const{isStaticCoupon:r,couponCode:a,title:d,quadrant:c,probability:s}=w,u={invalidDiscountCode:!a,invalidCouponTitle:!d,invalidCouponDescription:!1,inValidProbability:!y.hideProbability&&(null!=s?s:-1)<0||(null!=s?s:0)>1||Number.isNaN(null!=s?s:0)};if(ge(u))return void ye(u);const p={invalidCouponTitle:!w.title,inValidProbability:!y.hideProbability&&(null!==(e=w.probability)&&void 0!==e?e:-1)<=0||(null!==(i=w.probability)&&void 0!==i?i:-1)>1||Number.isNaN(null!==(t=w.probability)&&void 0!==t?t:-1),inValidDiscountAmount:!w.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(Q!==o.DISCOUNT_TYPES.BUY_X_GET_Y&&z!==o.MIN_PURCHASE_REQUIREMENT.NA){const{minAmount:e,minQuantity:i}=w;p.inValidMinimumAmount=z===o.MIN_PURCHASE_REQUIREMENT.AMOUNT&&!e,p.inValidMinimumQuantity=z===o.MIN_PURCHASE_REQUIREMENT.QUANTITY&&!i}if(_e&&(p.inValidCouponExpiry=!w.expireAt&&!w.expireAfter),Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER&&Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS||($!==o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(p.inValidProductSelection=!0,p.inValidProductVariableSelection=!0),$===o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(p.inValidCollectionSelection=!0)),Q===o.DISCOUNT_TYPES.BUY_X_GET_Y&&(w.prerequisiteQuantity||(p.inValidBuyXValue=!0),w.entitledQuantity||(p.inValidGetYValue=!0),J!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!te||Object.keys(te).length||se||(p.inValidBuyXProductSelection=!0,p.inValidBuyXProductVariableSelection=!0),J===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&re&&!Object.keys(re).length&&(p.inValidBuyXCollectionSelection=!0),ee!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(p.inValidGetYProductSelection=!0,p.inValidGetYProductVariableSelection=!0),ee===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(p.inValidGetYCollectionSelection=!0)),ge(p))return void Ne(p);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked(Object.assign(Object.assign({},w),{couponCode:a,isStaticCoupon:r,quadrant:c,description:_.descriptionBuilder(w,y.currency,null!==(n=y.products)&&void 0!==n?n:[],null!==(l=y.collection)&&void 0!==l?l:[]),productsConf:{entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[]},collectionsConf:{entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[]},productVariableConf:{entitledProductVariable:null!=de?de:{},prerequisiteProductVariable:null!=se?se:{}}}))}else{const e={invalidCouponTitle:!w.title,inValidProbability:!y.hideProbability&&(null!==(r=w.probability)&&void 0!==r?r:-1)<=0||(null!==(a=w.probability)&&void 0!==a?a:-1)>1||Number.isNaN(null!==(d=w.probability)&&void 0!==d?d:-1),inValidDiscountAmount:!w.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(Q!==o.DISCOUNT_TYPES.BUY_X_GET_Y&&z!==o.MIN_PURCHASE_REQUIREMENT.NA){const{minAmount:i,minQuantity:t}=w;e.inValidMinimumAmount=z===o.MIN_PURCHASE_REQUIREMENT.AMOUNT&&!i,e.inValidMinimumQuantity=z===o.MIN_PURCHASE_REQUIREMENT.QUANTITY&&!t}if(_e&&(e.inValidCouponExpiry=!w.expireAt&&!w.expireAfter),Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER&&Q!==o.DISCOUNT_TYPES.AMOUNT_OFF_PRODUCTS||($!==o.DISCOUNT_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(e.inValidProductSelection=!0,e.inValidProductVariableSelection=!0),$===o.DISCOUNT_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(e.inValidCollectionSelection=!0)),Q===o.DISCOUNT_TYPES.BUY_X_GET_Y&&(w.prerequisiteQuantity||(e.inValidBuyXValue=!0),w.entitledQuantity||(e.inValidGetYValue=!0),J!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!te||Object.keys(te).length||se||(e.inValidBuyXProductSelection=!0,e.inValidBuyXProductVariableSelection=!0),J===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&re&&!Object.keys(re).length&&(e.inValidBuyXCollectionSelection=!0),ee!==o.OFFER_APPLIES_TO.SPECIFIC_PRODUCTS||!ne||Object.keys(ne).length||de||(e.inValidGetYProductSelection=!0,e.inValidGetYProductVariableSelection=!0),ee===o.OFFER_APPLIES_TO.SPECIFIC_COLLECTIONS&&pe&&!Object.keys(pe).length&&(e.inValidGetYCollectionSelection=!0)),ge(e))return void Ne(e);if(B||Te>1)return void Ee(!y.hideProbability&&Te>1?"Probability sum should not exceed 1":"Invalid coupon details");y.onSaveClicked(Object.assign(Object.assign({},w),{isStaticCoupon:w.isStaticCoupon,description:_.descriptionBuilder(w,y.currency,null!==(c=y.products)&&void 0!==c?c:[],null!==(s=y.collection)&&void 0!==s?s:[]),productsConf:{entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[]},collectionsConf:{entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[]},productVariableConf:{entitledProductVariable:null!=de?de:{},prerequisiteProductVariable:null!=se?se:{}}}))}}},secondaryButton:x?{buttonType:"tertiaryGray",onClick:()=>{k(void 0)},buttonText:"Back"}:Y?{buttonType:"tertiaryGray",onClick:()=>{M(void 0)},buttonText:"Back"}:{buttonType:"tertiaryGray",onClick:y.onClose,buttonText:"Cancel"}},{children:[!x&&!Y&&e.jsxs(I.StyledDiscountDialogueContainer,{children:[y.allowStaticCoupon&&!x&&!y.hideOption&&e.jsxs(I.CouponTypeContainerStyled,Object.assign({selectedDiv:w.isStaticCoupon?1:2},{children:["static"===y.hideOption?e.jsx(e.Fragment,{}):e.jsxs("div",Object.assign({className:"coupon-type__container",onClick:()=>{w.isStaticCoupon||(G({isStaticCoupon:!0,quadrant:w.quadrant}),Ee(""),fe())}},{children:[e.jsx(l.TitleSmall,Object.assign({style:{marginBottom:"4px",color:w.isStaticCoupon?r.DEFAULT_THEME.colorsV2.content.brand:void 0}},{children:"Static Code"})),e.jsx(l.BodyCaption,Object.assign({style:w.isStaticCoupon?{color:r.DEFAULT_THEME.colorsV2.content.brand}:{}},{children:"A uniform code provided manually, used for providing the same discount to all customers."}))]})),"dynamic"===y.hideOption?e.jsx(e.Fragment,{}):e.jsxs("div",Object.assign({className:"coupon-type__container",onClick:()=>{var i;w.isStaticCoupon&&(H(o.DISCOUNT_TYPES.AMOUNT_OFF_ORDER),G({isStaticCoupon:!1,quadrant:w.quadrant,targetType:o.DISCOUNT_TARGET_TYPES.LINE_ITEM,targetSelection:o.DISCOUNT_TARGET_SELECTION.ALL,valueType:o.DISCOUNT_VALUE_TYPES.FIXED_AMOUNT}),Ee(""),fe(),Ie({id:"0",label:"Amount",value:"amount",icon:i=>e.jsx("span",Object.assign({style:{fontSize:20,color:i}},{children:y.currency||""}))}),ve(null!==(i=y.makeExpiryMandatory)&&void 0!==i&&i),K(o.MIN_PURCHASE_REQUIREMENT.NA))}},{children:[e.jsx(l.TitleSmall,Object.assign({style:{marginBottom:"4px",color:w.isStaticCoupon?void 0:r.DEFAULT_THEME.colorsV2.content.brand}},{children:"Dynamic Code"})),e.jsx(l.BodyCaption,Object.assign({style:w.isStaticCoupon?{}:{color:r.DEFAULT_THEME.colorsV2.content.brand}},{children:"Code will be unique for all customers, with the first 5 letters of the customer's name, followed by 10 random characters."}))]}))]})),!y.getDetailedDescription&&e.jsx(l.TitleRegular,Object.assign({style:{marginTop:"24px"}},{children:"Coupon Details"}))," ",w.isStaticCoupon&&!x&&!y.getDetailedDescription&&e.jsx(b.default,{discountData:w,setDiscountData:G,hideProbability:y.hideProbability||!1,discountAdminUrl:y.discountAdminUrl,staticDiscountValidationError:be,currency:y.currency}),w.isStaticCoupon&&!x&&y.getDetailedDescription&&e.jsx(b.default,{discountData:w,setDiscountData:G,hideProbability:y.hideProbability||!1,discountAdminUrl:y.discountAdminUrl,staticDiscountValidationError:be,currency:y.currency,getDetailedDescription:!0,selectedCouponType:Q,setSelectedCouponType:H,selectedMinimumRequirement:z,setSelectedMinimumRequirement:K,discountCouponAppliesTo:$,offerAppliesToBuy:J,offerAppliesToGet:ee,setDiscountCouponAppliesTo:Z,setOfferAppliesToBuy:W,setOfferAppliesToGet:ie,hideExpiration:y.hideExpiration||!1,onChangeCouponType:Re,entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[],setEntitledProducts:le,setPrerequisiteProducts:oe,entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[],setEntitledCollections:Ce,setPrerequisiteCollections:ae,setIsProductPickerOpen:k,setIsProductVariablePickerOpen:q,setIsCollectionPickerOpen:M,productPickerOpen:x,productVariablePickerOpen:L,collectionPickerOpen:Y,useNewPicker:!!y.newPickerConf,selectedDiscountDetails:Oe,setSelectedDiscountDetails:Ie,isProductVariableSupported:y.isProductVariableSupported,entitledProductVariable:de,setEntitledProductVariable:ce,preRequisiteProductVariable:se,setPreRequisiteProductVariable:ue,productVariableList:y.productVariableList,isAddExpirationChecked:_e,setIsAddExpirationChecked:ve,dynamicDiscountValidationError:De,setDynamicDiscountValidationError:Ne,setValidationErrorMessage:Ee,resetValidationErrors:fe,discountDetailsOptions:F,selectedExpiration:me,setSelectedExpiration:Ue,makeExpiryMandatory:!!y.makeExpiryMandatory}),!w.isStaticCoupon&&!x&&!Y&&e.jsx(v.default,{currency:y.currency,entitledProducts:null!=ne?ne:[],prerequisiteProducts:null!=te?te:[],setEntitledProducts:le,setPrerequisiteProducts:oe,discountData:w,productPickerOpen:x,productVariablePickerOpen:L,setIsProductPickerOpen:k,setIsProductVariablePickerOpen:q,setDiscountData:G,selectedCouponType:Q,setSelectedCouponType:H,selectedMinimumRequirement:z,setSelectedMinimumRequirement:K,discountCouponAppliesTo:$,offerAppliesToBuy:J,offerAppliesToGet:ee,setDiscountCouponAppliesTo:Z,setOfferAppliesToBuy:W,setOfferAppliesToGet:ie,hideProbability:y.hideProbability||!1,hideExpiration:y.hideExpiration||!1,allowStaticCoupon:y.allowStaticCoupon,onChangeCouponType:Re,collectionPickerOpen:Y,entitledCollections:null!=pe?pe:[],prerequisiteCollections:null!=re?re:[],setIsCollectionPickerOpen:M,setEntitledCollections:Ce,setPrerequisiteCollections:ae,useNewPicker:!!y.newPickerConf,setSelectedDiscountDetails:Ie,selectedDiscountDetails:Oe,isProductVariableSupported:y.isProductVariableSupported,entitledProductVariable:de,setEntitledProductVariable:ce,preRequisiteProductVariable:se,setPreRequisiteProductVariable:ue,productVariableList:y.productVariableList,isAddExpirationChecked:_e,setIsAddExpirationChecked:ve,dynamicDiscountValidationError:De,setDynamicDiscountValidationError:Ne,setValidationErrorMessage:Ee,resetValidationErrors:fe,discountDetailsOptions:F,selectedExpiration:me,setSelectedExpiration:Ue,makeExpiryMandatory:!!y.makeExpiryMandatory})]}),!!x&&e.jsxs(e.Fragment,{children:[!y.newPickerConf&&e.jsx("div",Object.assign({style:{padding:"12px 0"}},{children:e.jsx(d.ProductPickerContent,{show:!0,onSave:()=>{},products:null!==(f=y.products)&&void 0!==f?f:[],title:"Select Products",onClose:()=>{k(void 0)},selectedProducts:null!==(g=x===v.DISCOUNT_PRODUCTS.ENTITLED?ne:te)&&void 0!==g?g:[],setSelectedProducts:x===v.DISCOUNT_PRODUCTS.ENTITLED?le:oe,onSearchKeyChange:y.onProductSearch})})),y.newPickerConf&&e.jsx(P.ProductPickerModal,{visible:!0,onClose:()=>k(void 0),collectionFetcher:(e,i,t)=>{var o;return(null===(o=y.newPickerConf)||void 0===o?void 0:o.fetchCollections)?y.newPickerConf.fetchCollections(e,i,!1,t):null},productFetcher:(e,i,t,o,n)=>{var l;return(null===(l=y.newPickerConf)||void 0===l?void 0:l.fetchProducts)?y.newPickerConf.fetchProducts(e,i,o,n,!1,t):null},selectedItems:x===v.DISCOUNT_PRODUCTS.ENTITLED?ne:te,onAdd:e=>{x===v.DISCOUNT_PRODUCTS.ENTITLED?le(e):oe(e),k(void 0)},zIndex:200,storeId:y.newPickerConf.storeId,appType:y.newPickerConf.appType||i.ApplicationType.BIK,searchInCollectionFetcher:(e,i,t,o)=>{var n;return(null===(n=y.newPickerConf)||void 0===n?void 0:n.searchInCollection)?y.newPickerConf.searchInCollection(e,i,t,!1,o):null},customCollectionRestriction:!1,searchFetcher:(e,i,t)=>{var o;return(null===(o=y.newPickerConf)||void 0===o?void 0:o.searchProducts)?y.newPickerConf.searchProducts(e,i,!1,t):null},hideCollectionCheckbox:!0,hideVariantCheckbox:!0,selectProductsFromCustomCollection:!0,hideSelectionCount:!0})]}),!!Y&&e.jsx("div",Object.assign({style:{padding:"12px 0"}},{children:e.jsxs(e.Fragment,{children:[y.newPickerConf&&e.jsx(P.ProductPickerModal,{visible:!0,onClose:()=>M(void 0),collectionFetcher:y.newPickerConf.fetchCollections,productFetcher:y.newPickerConf.fetchProducts,selectedItems:Y===v.DISCOUNT_PRODUCTS.ENTITLED?pe:re,onAdd:e=>{Object.values(e).forEach((e=>{e.products&&delete e.products})),Y===v.DISCOUNT_PRODUCTS.ENTITLED?Ce(e):ae(e),M(void 0)},customCollectionRestriction:!1,zIndex:200,storeId:y.newPickerConf.storeId,appType:y.newPickerConf.appType||i.ApplicationType.BIK,searchInCollectionFetcher:y.newPickerConf.searchInCollection,searchFetcher:y.newPickerConf.searchProducts,hideProductCheckbox:!0,hideVariantCheckbox:!0,title:"Select Collections",hideGlobalSearch:!0,hideSelectionCount:!0,pickerType:"COLLECTION"}),!y.newPickerConf&&e.jsx(d.ProductPickerContent,{show:!0,onSave:()=>{},products:null!==(V=y.collection)&&void 0!==V?V:[],title:"Select Products",onClose:()=>{M(void 0)},selectedProducts:null!==(R=Y===v.DISCOUNT_PRODUCTS.ENTITLED?pe:re)&&void 0!==R?R:[],setSelectedProducts:Y===v.DISCOUNT_PRODUCTS.ENTITLED?Ce:ae,onSearchKeyChange:y.onCollectionSearch,searchPlaceholder:"Search collections..."})]})})),L&&e.jsx(I.VariablePickerContainer,{children:e.jsx("div",Object.assign({style:{width:"50%",height:"100%",marginLeft:"50%"}},{children:e.jsx(O.VariablePicker,{type:E.PickerType.EMBEDDED,data:null!==(j=y.productVariableList)&&void 0!==j?j:[],showHeader:!0,onSelect:e=>{if(L===v.DISCOUNT_PRODUCTS.ENTITLED){const{displayName:i,actualValue:t,isAvailable:o}=e;ce({displayName:i,actualValue:t,isAvailable:o}),q(void 0)}if(L===v.DISCOUNT_PRODUCTS.PREREQUISITE){const{displayName:i,actualValue:t,isAvailable:o}=e;ue({displayName:i,actualValue:t,isAvailable:o}),q(void 0)}},onClose:()=>{q(void 0)}})}))})]}))};
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
2
+ import { QueryBuilderNodeProps } from "../../../Types/QueryBuilderNodeProps.type";
3
3
  declare const EventsTrigger: React.FC<QueryBuilderNodeProps>;
4
4
  export default EventsTrigger;
@@ -1,2 +1,2 @@
1
- import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
1
+ import { QueryBuilderAPIData } from "../../../Types/QueryBuilderAPI.type";
2
2
  export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
- import { QueryBuilderNodeProps } from "../../../types/QueryBuilderNodeProps.type";
2
+ import { QueryBuilderNodeProps } from "../../../Types/QueryBuilderNodeProps.type";
3
3
  declare const IGTrigger: React.FC<QueryBuilderNodeProps>;
4
4
  export default IGTrigger;
@@ -1,2 +1,2 @@
1
- import { QueryBuilderAPIData } from "../../../types/QueryBuilderAPI.type";
1
+ import { QueryBuilderAPIData } from "../../../Types/QueryBuilderAPI.type";
2
2
  export declare const useIGTriggerNameCacheSelector: () => QueryBuilderAPIData[];
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { DropdownOption } from "../../../dropdown/type";
3
- import { QueryBuilderProperty } from "../../types/QueryBuilder.type";
4
- import { QueryBuilderNodeProps } from "../../types/QueryBuilderNodeProps.type";
3
+ import { QueryBuilderProperty } from "../../Types/QueryBuilder.type";
4
+ import { QueryBuilderNodeProps } from "../../Types/QueryBuilderNodeProps.type";
5
5
  declare const BaseTriggerQueryBuilderNode: React.FC<QueryBuilderNodeProps & {
6
6
  cacheKey: string;
7
7
  propertyAddBtnText: string;
@@ -1 +1 @@
1
- import{jsx as e,jsxs as i,Fragment as t}from"react/jsx-runtime";import{ApplicationType as o}from"@bikdotai/bik-models/growth/models/bik-store";import{useState as n,useEffect as l}from"react";import{DISCOUNT_TYPES as r,MIN_PURCHASE_REQUIREMENT as d,DISCOUNT_APPLIES_TO as a,OFFER_APPLIES_TO as c,initialStaticCouponErrorState as s,initialDynamicCouponErrorState as u,COUPON_EXPIRATION as p,DISCOUNT_TARGET_TYPES as C,DISCOUNT_TARGET_SELECTION as b,DISCOUNT_VALUE_TYPES as v}from"./type.js";import"../dropdown/DropdownPopover/index.js";import{Dropdown as y}from"../dropdown/Dropdown.js";import"../dropdown/ChipDropdown.js";import"../zeroState/ZeroState.js";import{TitleSmall as P,BodyCaption as m,TitleRegular as I}from"../TypographyStyle.js";import{DEFAULT_THEME as S}from"../../constants/Theme.js";import"../dropdown/OpenedDropdown/components/description/Description.styled.js";import"../checkBox/CheckBox.styled.js";import"../list-item/ListItem.js";import"../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js";import"../dropdown/OpenedDropdown/components/menu/MenuItem.js";import"../dropdown/OpenedDropdown/components/menu/MenuList.styled.js";import"../button/Button.js";import"../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js";import"../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js";import"../icon-button/IconButton.js";import"../input/Input.js";import"../dropdown/MenuItem/MenuItem.js";import{StyledModal as h}from"../modals/styledModal.js";import{ProductPickerContent as O}from"../product-picker/ProductPickerModal.js";import{Tag as E}from"../tag/Tag.js";import{Tooltip as T}from"../tooltips/Tooltip.js";import f from"../../assets/icons/gift_icon.svg.js";import g from"../../assets/icons/percentage_icon.svg.js";import V from"../../assets/icons/shipping_icon.svg.js";import D from"../../assets/icons/triangle_error.svg.js";import _ from"../../assets/icons/warning.svg.js";import{ProductPickerModal as A}from"../product-picker-v2/modal.js";import"../product-picker-v2/type.js";import{PickerType as N}from"../variable-picker-v3/model.js";import{VariablePicker as k}from"../variable-picker-v3/VariablePicker.js";import{StyledDiscountDialogueContainer as j,CouponTypeContainerStyled as F,VariablePickerContainer as x}from"./DiscountModal.styled.js";import{validateDiscountData as R,descriptionBuilder as M}from"./DiscountUtils.js";import w,{DISCOUNT_PRODUCTS as q}from"./DynamicCoupon/DynamicCoupon.js";import U from"./StaticCoupon/StaticCoupon.js";const L=L=>{var B,G,Y,X,Q,H,z,K,$,Z,J;const W=[{id:"0",label:"Amount",value:"amount",icon:i=>e("span",Object.assign({style:{fontSize:20,color:i,lineHeight:.9}},{children:L.currency||""}))},{id:"1",label:"Percentage",value:"percentage",icon:i=>e(g,{width:24,height:24,color:i})},{id:"2",label:"Buy X get Y",value:r.BUY_X_GET_Y,icon:i=>e(f,{width:24,height:24,color:i})},{id:"3",label:"Free Shipping",value:r.FREE_SHIPPING,icon:i=>e(V,{width:24,height:24,color:i})}],[ee,ie]=n(),[te,oe]=n(),[ne,le]=n(),[re,de]=n(null!==(B=L.data)&&void 0!==B?B:"string"==typeof L.hideOption?{isStaticCoupon:"dynamic"===L.hideOption}:{isStaticCoupon:!0}),[ae,ce]=n(!0),[se,ue]=n(),[pe,Ce]=n((null===(G=L.data)||void 0===G?void 0:G.minAmount)?d.AMOUNT:(null===(Y=L.data)||void 0===Y?void 0:Y.minQuantity)?d.QUANTITY:d.NA),[be,ve]=n(a.ENTIRE_ORDER),[ye,Pe]=n(c.SPECIFIC_PRODUCTS),[me,Ie]=n(c.SPECIFIC_PRODUCTS),[Se,he]=n(void 0),[Oe,Ee]=n(void 0),[Te,fe]=n(void 0),[ge,Ve]=n(void 0),[De,_e]=n(void 0),[Ae,Ne]=n(void 0),[ke,je]=n(0),[Fe,xe]=n(""),[Re,Me]=n(W[0]),[we,qe]=n(!1),[Ue,Le]=n(s),[Be,Ge]=n(u),[Ye,Xe]=n(L.getDetailedDescription?p.FIXED_EXPIRATION:p.DYNAMIC_EXPIRATION),Qe=[{value:r.AMOUNT_OFF_ORDER,label:"Amount off on order",selected:se===r.AMOUNT_OFF_ORDER},{value:r.AMOUNT_OFF_PRODUCTS,label:"Amount off on products",selected:se===r.AMOUNT_OFF_PRODUCTS},{value:r.BUY_X_GET_Y,label:"Buy X Get Y FREE",selected:se===r.BUY_X_GET_Y},{value:r.FREE_SHIPPING,label:"Free shipping",selected:se===r.FREE_SHIPPING}];l((()=>{L.makeExpiryMandatory&&qe(!0)}),[L.makeExpiryMandatory]),l((()=>{var e,i,t,o,n,l,d,s;let u;const{tempCouponData:C,discountType:b}=He();ue(b);const y=(e,i)=>{Me(C.valueType===v.FIXED_AMOUNT?W[e]:W[i])},P=(e,i)=>{Object.keys(e||{}).length&&i(e)};switch(((null==C?void 0:C.expireAfter)||(null==C?void 0:C.expireAt))&&(qe(!0),(null==C?void 0:C.expireAt)&&Xe(p.FIXED_EXPIRATION),(null==C?void 0:C.expireAfter)&&Xe(p.DYNAMIC_EXPIRATION)),b){case r.AMOUNT_OFF_ORDER:y(0,1),ve(a.ENTIRE_ORDER);break;case r.AMOUNT_OFF_PRODUCTS:y(0,1),(null===(e=C.entitledCollectionIds)||void 0===e?void 0:e.length)?ve(a.SPECIFIC_COLLECTIONS):(null===(i=C.entitledProductIds)||void 0===i?void 0:i.length)||(null===(t=C.productVariableConf)||void 0===t?void 0:t.entitledProductVariable)?(ve(a.SPECIFIC_PRODUCTS),P(null===(o=C.productVariableConf)||void 0===o?void 0:o.entitledProductVariable,Ve)):ve(a.ENTIRE_ORDER);break;case r.BUY_X_GET_Y:Me(W[2]),(null===(n=C.entitledCollectionIds)||void 0===n?void 0:n.length)?Ie(c.SPECIFIC_COLLECTIONS):(Ie(c.SPECIFIC_PRODUCTS),P(null===(l=C.productVariableConf)||void 0===l?void 0:l.entitledProductVariable,Ve)),(null===(d=C.prerequisiteCollectionIds)||void 0===d?void 0:d.length)?Pe(c.SPECIFIC_COLLECTIONS):(Pe(c.SPECIFIC_PRODUCTS),P(null===(s=C.productVariableConf)||void 0===s?void 0:s.prerequisiteProductVariable,_e));break;case r.FREE_SHIPPING:Me(W[3])}de(Object.assign({},C)),L.hideProbability||(u=$e()),ce(R(C,pe,b,L.hideProbability||!1,u,!!C.isStaticCoupon,L.getDetailedDescription||!1)),L.hideProbability||$e()}),[]),l((()=>{let e;L.hideProbability||(e=$e()),ce(R(re,pe,se,L.hideProbability||!1,e,!!re.isStaticCoupon,L.getDetailedDescription||!1))}),[re,ke,se,pe]),l((()=>{var e,i,t,o,n,l,r;if(!L.newPickerConf&&((null===(e=L.products)||void 0===e?void 0:e.length)||(null===(i=L.collection)||void 0===i?void 0:i.length))){if(L.products&&(null===(t=L.products)||void 0===t?void 0:t.length)){if(null===(o=L.data)||void 0===o?void 0:o.entitledProductIds){const e=L.products.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.entitledProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ee(e)}if(null===(n=L.data)||void 0===n?void 0:n.prerequisiteProductIds){const e=L.products.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.prerequisiteProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));he(e)}}if(L.collection&&L.collection.length){if(null===(l=L.data)||void 0===l?void 0:l.entitledCollectionIds){const e=L.collection.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.entitledCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ne(e)}if(null===(r=L.data)||void 0===r?void 0:r.prerequisiteCollectionIds){const e=L.collection.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.prerequisiteCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));fe(e)}}}}),[L.products,L.collection]),l((()=>{var e,i,t,o,n,l,r,d;(null===(i=null===(e=L.data)||void 0===e?void 0:e.productsConf)||void 0===i?void 0:i.entitledProducts)&&Ee(L.data.productsConf.entitledProducts),(null===(o=null===(t=L.data)||void 0===t?void 0:t.productsConf)||void 0===o?void 0:o.prerequisiteProducts)&&he(L.data.productsConf.prerequisiteProducts),(null===(l=null===(n=L.data)||void 0===n?void 0:n.collectionsConf)||void 0===l?void 0:l.entitledCollections)&&Ne(L.data.collectionsConf.entitledCollections),(null===(d=null===(r=L.data)||void 0===r?void 0:r.collectionsConf)||void 0===d?void 0:d.prerequisiteCollections)&&fe(L.data.collectionsConf.prerequisiteCollections)}),[null===(X=L.data)||void 0===X?void 0:X.productsConf,null===(Q=L.data)||void 0===Q?void 0:Q.collectionsConf]),l((()=>{if(!Oe)return;if(L.newPickerConf){const e=[];return Object.values(Oe).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void de(Object.assign(Object.assign({},re),{entitledProductIds:e}))}const e=Oe.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{entitledProductIds:e}))}),[Oe]),l((()=>{if(!Se)return;if(L.newPickerConf){const e=[];return Object.values(Se).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void de(Object.assign(Object.assign({},re),{prerequisiteProductIds:e}))}const e=Se.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{prerequisiteProductIds:e}))}),[Se]),l((()=>{if(!Ae)return;if(L.newPickerConf){(null==Ae?void 0:Ae.isCustom)&&delete Ae.isCustom;const e=Object.keys(Ae).map((e=>parseInt(e)));return void de(Object.assign(Object.assign({},re),{entitledCollectionIds:e}))}const e=Ae.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{entitledCollectionIds:e}))}),[Ae]),l((()=>{if(!Te)return;if(L.newPickerConf){(null==Te?void 0:Te.isCustom)&&delete Te.isCustom;const e=Object.keys(Te).map((e=>parseInt(e)));return void de(Object.assign(Object.assign({},re),{prerequisiteCollectionIds:e}))}const e=Te.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{prerequisiteCollectionIds:e}))}),[Te]);const He=()=>{var e,i,t,o;let n,l=re;return re.isStaticCoupon?re.isStaticCoupon&&L.getDetailedDescription&&(re.targetType===C.SHIPPING_LINE?n=r.FREE_SHIPPING:re.targetType===C.LINE_ITEM?n=re.targetSelection===b.ENTITLED?(null===(t=re.prerequisiteProductIds)||void 0===t?void 0:t.length)||(null===(o=re.prerequisiteCollectionIds)||void 0===o?void 0:o.length)||re.prerequisiteQuantity||re.entitledQuantity?r.BUY_X_GET_Y:r.AMOUNT_OFF_PRODUCTS:r.AMOUNT_OFF_ORDER:(l=Object.assign(Object.assign({},l),{targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),n=r.AMOUNT_OFF_ORDER)):re.targetType===C.SHIPPING_LINE?n=r.FREE_SHIPPING:re.targetType===C.LINE_ITEM?n=re.targetSelection===b.ENTITLED?(null===(e=re.prerequisiteProductIds)||void 0===e?void 0:e.length)||(null===(i=re.prerequisiteCollectionIds)||void 0===i?void 0:i.length)||re.prerequisiteQuantity||re.entitledQuantity?r.BUY_X_GET_Y:r.AMOUNT_OFF_PRODUCTS:r.AMOUNT_OFF_ORDER:(l=Object.assign(Object.assign({},l),{targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),n=r.AMOUNT_OFF_ORDER),{discountType:n,tempCouponData:l}},ze=()=>{Le(s),Ge(u)},Ke=e=>{var i;const t={invalidDiscountCode:"Please add Discount Code",invalidCouponTitle:"Please add Discount Coupon Title",invalidCouponDescription:"Please add Coupon Description",inValidProbability:e.inValidProbability&&(null!==(i=re.probability)&&void 0!==i?i:-1)>1?"Probability should not exceed 1":re.isStaticCoupon?"Please add Probability":"Probability should be greater than 0",inValidDiscountAmount:"Please add Discount Amount",inValidMinimumAmount:"Specify minimum amount required",inValidMinimumQuantity:"Specify minimum items required",inValidCouponExpiry:"Please add Coupon Expiry",inValidProductSelection:"Please specify the products",inValidProductVariableSelection:"Please specify the product variables",inValidCollectionSelection:"Please specify the collections",inValidBuyXValue:"Please specify buy product quantity",inValidGetYValue:"Please specify get product quantity",inValidBuyXProductSelection:"Please specify the products",inValidBuyXCollectionSelection:"Please specify the collections",inValidGetYProductSelection:"Please specify the products",inValidGetYCollectionSelection:"Please specify the collections",inValidBuyXProductVariableSelection:"Please specify the product variables",inValidGetYProductVariableSelection:"Please specify the product variables"};let o="";Object.keys(e).forEach((i=>{e[i]&&(o=t[i])}));const n=Object.values(e).filter(Boolean).length;return n>0&&(xe(n>1?"Please add discount details":o),!0)},$e=()=>{if(!L.quadrant||!L.probability)return;const e=[...L.probability];let i=[];e.length>=L.quadrant&&e.splice(L.quadrant-1,1),i=e;const t=i.reduce(((e,i)=>e+i),0)+(re.probability||0);return je(parseFloat(t.toFixed(4))),parseFloat(t.toFixed(4))},Ze=e=>{var i,t,o,n,l,d,a,c,s,u,p,y,P,m,I,S;const h=e.value;ue(h),he([]),Ee([]),fe([]),Ne([]),h===r.FREE_SHIPPING?de({value:100,targetSelection:b.ALL,targetType:C.SHIPPING_LINE,valueType:v.PERCENTAGE,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(i=re.expireAt)&&void 0!==i?i:void 0,expireAfter:null!==(t=re.expireAfter)&&void 0!==t?t:void 0,probability:re.probability,minQuantity:null!==(o=re.minQuantity)&&void 0!==o?o:void 0,minAmount:null!==(n=re.minAmount)&&void 0!==n?n:void 0}):h===r.BUY_X_GET_Y?de({value:100,targetSelection:b.ENTITLED,targetType:C.LINE_ITEM,valueType:v.PERCENTAGE,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(l=re.expireAt)&&void 0!==l?l:void 0,expireAfter:null!==(d=re.expireAfter)&&void 0!==d?d:void 0,probability:re.probability,minQuantity:void 0,minAmount:void 0}):h===r.AMOUNT_OFF_ORDER?de({targetSelection:b.ALL,targetType:C.LINE_ITEM,valueType:null!==(a=re.valueType)&&void 0!==a?a:v.FIXED_AMOUNT,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(c=re.expireAt)&&void 0!==c?c:void 0,expireAfter:null!==(s=re.expireAfter)&&void 0!==s?s:void 0,probability:re.probability,value:re.value,minQuantity:null!==(u=re.minQuantity)&&void 0!==u?u:void 0,minAmount:null!==(p=re.minAmount)&&void 0!==p?p:void 0}):h===r.AMOUNT_OFF_PRODUCTS&&de({targetSelection:b.ENTITLED,targetType:C.LINE_ITEM,valueType:null!==(y=re.valueType)&&void 0!==y?y:v.FIXED_AMOUNT,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(P=re.expireAt)&&void 0!==P?P:void 0,expireAfter:null!==(m=re.expireAfter)&&void 0!==m?m:void 0,probability:re.probability,value:re.value,minQuantity:null!==(I=re.minQuantity)&&void 0!==I?I:void 0,minAmount:null!==(S=re.minAmount)&&void 0!==S?S:void 0})},Je=i=>i&&e(E,{theme:"light",tagText:i,type:"negative",LeadingIcon:_});return i(h,Object.assign({width:(ne||ee)&&L.newPickerConf?"25px":"640px",open:L.isOpen,hideCrossButton:!!te,headingTitle:ee?"Select Products":L.title,headingSubtitle:ee?void 0:L.subTitle,footerLeftCustomElement:Fe?Je(Fe):L.errorMsg?Je(L.errorMsg):!L.quadrant||L.hideProbability?e(t,{}):ke<=1?e(E,{theme:"light",tagText:`Current probability sum: ${ke}`,type:"white"}):e(T,Object.assign({body:"Probability sum should not exceed 1",placement:"top"},{children:e("div",{children:e(E,{style:{cursor:"pointer"},theme:"light",tagText:`Current probability sum: ${ke}`,type:"negative",LeadingIcon:D})})})),headerRightCustomElement:L.allowStaticCoupon||ee?void 0:e(y,{options:Qe,width:"200px",placement:"bottom-start",size:"small",onSelect:e=>{Ze(e)}}),onClose:L.onClose,footerContainerStyle:{borderTop:`1px solid ${S.colorsV2.stroke.primary}`},primaryButton:ee?{buttonType:"primary",onClick:()=>{ie(void 0)},buttonText:"Add"}:ne?{buttonType:"primary",onClick:()=>{le(void 0)},buttonText:"Add"}:{buttonType:"primary",buttonText:"Create discount code",isLoading:null!==(H=L.loading)&&void 0!==H&&H,onClick:()=>{var e,i,t,o,n,l,s,u,p,C;if(ze(),re.isStaticCoupon&&!L.getDetailedDescription){const{isStaticCoupon:e,couponCode:i,title:t,description:o,quadrant:n,probability:l}=re,r={invalidDiscountCode:!i,invalidCouponTitle:!t,invalidCouponDescription:!o,inValidProbability:!L.hideProbability&&(null!=l?l:-1)<0||(null!=l?l:0)>1||Number.isNaN(null!=l?l:0)};if(Ke(r))return void Le(r);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked({quadrant:n,couponCode:i,description:o,isStaticCoupon:e,probability:l,title:re.title})}else if(re.isStaticCoupon&&L.getDetailedDescription){const{isStaticCoupon:l,couponCode:s,title:u,quadrant:p,probability:C}=re,b={invalidDiscountCode:!s,invalidCouponTitle:!u,invalidCouponDescription:!1,inValidProbability:!L.hideProbability&&(null!=C?C:-1)<0||(null!=C?C:0)>1||Number.isNaN(null!=C?C:0)};if(Ke(b))return void Le(b);const v={invalidCouponTitle:!re.title,inValidProbability:!L.hideProbability&&(null!==(e=re.probability)&&void 0!==e?e:-1)<=0||(null!==(i=re.probability)&&void 0!==i?i:-1)>1||Number.isNaN(null!==(t=re.probability)&&void 0!==t?t:-1),inValidDiscountAmount:!re.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(se!==r.BUY_X_GET_Y&&pe!==d.NA){const{minAmount:e,minQuantity:i}=re;v.inValidMinimumAmount=pe===d.AMOUNT&&!e,v.inValidMinimumQuantity=pe===d.QUANTITY&&!i}if(we&&(v.inValidCouponExpiry=!re.expireAt&&!re.expireAfter),se!==r.AMOUNT_OFF_ORDER&&se!==r.AMOUNT_OFF_PRODUCTS||(be!==a.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||ge||(v.inValidProductSelection=!0,v.inValidProductVariableSelection=!0),be===a.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(v.inValidCollectionSelection=!0)),se===r.BUY_X_GET_Y&&(re.prerequisiteQuantity||(v.inValidBuyXValue=!0),re.entitledQuantity||(v.inValidGetYValue=!0),ye!==c.SPECIFIC_PRODUCTS||!Se||Object.keys(Se).length||De||(v.inValidBuyXProductSelection=!0,v.inValidBuyXProductVariableSelection=!0),ye===c.SPECIFIC_COLLECTIONS&&Te&&!Object.keys(Te).length&&(v.inValidBuyXCollectionSelection=!0),me!==c.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||ge||(v.inValidGetYProductSelection=!0,v.inValidGetYProductVariableSelection=!0),me===c.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(v.inValidGetYCollectionSelection=!0)),Ke(v))return void Ge(v);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked(Object.assign(Object.assign({},re),{couponCode:s,isStaticCoupon:l,quadrant:p,description:M(re,L.currency,null!==(o=L.products)&&void 0!==o?o:[],null!==(n=L.collection)&&void 0!==n?n:[]),productsConf:{entitledProducts:null!=Oe?Oe:[],prerequisiteProducts:null!=Se?Se:[]},collectionsConf:{entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[]},productVariableConf:{entitledProductVariable:null!=ge?ge:{},prerequisiteProductVariable:null!=De?De:{}}}))}else{const e={invalidCouponTitle:!re.title,inValidProbability:!L.hideProbability&&(null!==(l=re.probability)&&void 0!==l?l:-1)<=0||(null!==(s=re.probability)&&void 0!==s?s:-1)>1||Number.isNaN(null!==(u=re.probability)&&void 0!==u?u:-1),inValidDiscountAmount:!re.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(se!==r.BUY_X_GET_Y&&pe!==d.NA){const{minAmount:i,minQuantity:t}=re;e.inValidMinimumAmount=pe===d.AMOUNT&&!i,e.inValidMinimumQuantity=pe===d.QUANTITY&&!t}if(we&&(e.inValidCouponExpiry=!re.expireAt&&!re.expireAfter),se!==r.AMOUNT_OFF_ORDER&&se!==r.AMOUNT_OFF_PRODUCTS||(be!==a.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||ge||(e.inValidProductSelection=!0,e.inValidProductVariableSelection=!0),be===a.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(e.inValidCollectionSelection=!0)),se===r.BUY_X_GET_Y&&(re.prerequisiteQuantity||(e.inValidBuyXValue=!0),re.entitledQuantity||(e.inValidGetYValue=!0),ye!==c.SPECIFIC_PRODUCTS||!Se||Object.keys(Se).length||De||(e.inValidBuyXProductSelection=!0,e.inValidBuyXProductVariableSelection=!0),ye===c.SPECIFIC_COLLECTIONS&&Te&&!Object.keys(Te).length&&(e.inValidBuyXCollectionSelection=!0),me!==c.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||ge||(e.inValidGetYProductSelection=!0,e.inValidGetYProductVariableSelection=!0),me===c.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(e.inValidGetYCollectionSelection=!0)),Ke(e))return void Ge(e);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked(Object.assign(Object.assign({},re),{isStaticCoupon:re.isStaticCoupon,description:M(re,L.currency,null!==(p=L.products)&&void 0!==p?p:[],null!==(C=L.collection)&&void 0!==C?C:[]),productsConf:{entitledProducts:null!=Oe?Oe:[],prerequisiteProducts:null!=Se?Se:[]},collectionsConf:{entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[]},productVariableConf:{entitledProductVariable:null!=ge?ge:{},prerequisiteProductVariable:null!=De?De:{}}}))}}},secondaryButton:ee?{buttonType:"tertiaryGray",onClick:()=>{ie(void 0)},buttonText:"Back"}:ne?{buttonType:"tertiaryGray",onClick:()=>{le(void 0)},buttonText:"Back"}:{buttonType:"tertiaryGray",onClick:L.onClose,buttonText:"Cancel"}},{children:[!ee&&!ne&&i(j,{children:[L.allowStaticCoupon&&!ee&&!L.hideOption&&i(F,Object.assign({selectedDiv:re.isStaticCoupon?1:2},{children:["static"===L.hideOption?e(t,{}):i("div",Object.assign({className:"coupon-type__container",onClick:()=>{re.isStaticCoupon||(de({isStaticCoupon:!0,quadrant:re.quadrant}),xe(""),ze())}},{children:[e(P,Object.assign({style:{marginBottom:"4px",color:re.isStaticCoupon?S.colorsV2.content.brand:void 0}},{children:"Static Code"})),e(m,Object.assign({style:re.isStaticCoupon?{color:S.colorsV2.content.brand}:{}},{children:"A uniform code provided manually, used for providing the same discount to all customers."}))]})),"dynamic"===L.hideOption?e(t,{}):i("div",Object.assign({className:"coupon-type__container",onClick:()=>{var i;re.isStaticCoupon&&(ue(r.AMOUNT_OFF_ORDER),de({isStaticCoupon:!1,quadrant:re.quadrant,targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),xe(""),ze(),Me({id:"0",label:"Amount",value:"amount",icon:i=>e("span",Object.assign({style:{fontSize:20,color:i}},{children:L.currency||""}))}),qe(null!==(i=L.makeExpiryMandatory)&&void 0!==i&&i),Ce(d.NA))}},{children:[e(P,Object.assign({style:{marginBottom:"4px",color:re.isStaticCoupon?void 0:S.colorsV2.content.brand}},{children:"Dynamic Code"})),e(m,Object.assign({style:re.isStaticCoupon?{}:{color:S.colorsV2.content.brand}},{children:"Code will be unique for all customers, with the first 5 letters of the customer's name, followed by 10 random characters."}))]}))]})),!L.getDetailedDescription&&e(I,Object.assign({style:{marginTop:"24px"}},{children:"Coupon Details"}))," ",re.isStaticCoupon&&!ee&&!L.getDetailedDescription&&e(U,{discountData:re,setDiscountData:de,hideProbability:L.hideProbability||!1,discountAdminUrl:L.discountAdminUrl,staticDiscountValidationError:Ue,currency:L.currency}),re.isStaticCoupon&&!ee&&L.getDetailedDescription&&e(U,{discountData:re,setDiscountData:de,hideProbability:L.hideProbability||!1,discountAdminUrl:L.discountAdminUrl,staticDiscountValidationError:Ue,currency:L.currency,getDetailedDescription:!0,selectedCouponType:se,setSelectedCouponType:ue,selectedMinimumRequirement:pe,setSelectedMinimumRequirement:Ce,discountCouponAppliesTo:be,offerAppliesToBuy:ye,offerAppliesToGet:me,setDiscountCouponAppliesTo:ve,setOfferAppliesToBuy:Pe,setOfferAppliesToGet:Ie,hideExpiration:L.hideExpiration||!1,onChangeCouponType:Ze,entitledProducts:null!=Oe?Oe:[],prerequisiteProducts:null!=Se?Se:[],setEntitledProducts:Ee,setPrerequisiteProducts:he,entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[],setEntitledCollections:Ne,setPrerequisiteCollections:fe,setIsProductPickerOpen:ie,setIsProductVariablePickerOpen:oe,setIsCollectionPickerOpen:le,productPickerOpen:ee,productVariablePickerOpen:te,collectionPickerOpen:ne,useNewPicker:!!L.newPickerConf,selectedDiscountDetails:Re,setSelectedDiscountDetails:Me,isProductVariableSupported:L.isProductVariableSupported,entitledProductVariable:ge,setEntitledProductVariable:Ve,preRequisiteProductVariable:De,setPreRequisiteProductVariable:_e,productVariableList:L.productVariableList,isAddExpirationChecked:we,setIsAddExpirationChecked:qe,dynamicDiscountValidationError:Be,setDynamicDiscountValidationError:Ge,setValidationErrorMessage:xe,resetValidationErrors:ze,discountDetailsOptions:W,selectedExpiration:Ye,setSelectedExpiration:Xe,makeExpiryMandatory:!!L.makeExpiryMandatory}),!re.isStaticCoupon&&!ee&&!ne&&e(w,{currency:L.currency,entitledProducts:null!=Oe?Oe:[],prerequisiteProducts:null!=Se?Se:[],setEntitledProducts:Ee,setPrerequisiteProducts:he,discountData:re,productPickerOpen:ee,productVariablePickerOpen:te,setIsProductPickerOpen:ie,setIsProductVariablePickerOpen:oe,setDiscountData:de,selectedCouponType:se,setSelectedCouponType:ue,selectedMinimumRequirement:pe,setSelectedMinimumRequirement:Ce,discountCouponAppliesTo:be,offerAppliesToBuy:ye,offerAppliesToGet:me,setDiscountCouponAppliesTo:ve,setOfferAppliesToBuy:Pe,setOfferAppliesToGet:Ie,hideProbability:L.hideProbability||!1,hideExpiration:L.hideExpiration||!1,allowStaticCoupon:L.allowStaticCoupon,onChangeCouponType:Ze,collectionPickerOpen:ne,entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[],setIsCollectionPickerOpen:le,setEntitledCollections:Ne,setPrerequisiteCollections:fe,useNewPicker:!!L.newPickerConf,setSelectedDiscountDetails:Me,selectedDiscountDetails:Re,isProductVariableSupported:L.isProductVariableSupported,entitledProductVariable:ge,setEntitledProductVariable:Ve,preRequisiteProductVariable:De,setPreRequisiteProductVariable:_e,productVariableList:L.productVariableList,isAddExpirationChecked:we,setIsAddExpirationChecked:qe,dynamicDiscountValidationError:Be,setDynamicDiscountValidationError:Ge,setValidationErrorMessage:xe,resetValidationErrors:ze,discountDetailsOptions:W,selectedExpiration:Ye,setSelectedExpiration:Xe,makeExpiryMandatory:!!L.makeExpiryMandatory})]}),!!ee&&i(t,{children:[!L.newPickerConf&&e("div",Object.assign({style:{padding:"12px 0"}},{children:e(O,{show:!0,onSave:()=>{},products:null!==(z=L.products)&&void 0!==z?z:[],title:"Select Products",onClose:()=>{ie(void 0)},selectedProducts:null!==(K=ee===q.ENTITLED?Oe:Se)&&void 0!==K?K:[],setSelectedProducts:ee===q.ENTITLED?Ee:he,onSearchKeyChange:L.onProductSearch})})),L.newPickerConf&&e(A,{visible:!0,onClose:()=>ie(void 0),collectionFetcher:(e,i,t)=>{var o;return(null===(o=L.newPickerConf)||void 0===o?void 0:o.fetchCollections)?L.newPickerConf.fetchCollections(e,i,!1,t):null},productFetcher:(e,i,t,o,n)=>{var l;return(null===(l=L.newPickerConf)||void 0===l?void 0:l.fetchProducts)?L.newPickerConf.fetchProducts(e,i,o,n,!1,t):null},selectedItems:ee===q.ENTITLED?Oe:Se,onAdd:e=>{ee===q.ENTITLED?Ee(e):he(e),ie(void 0)},zIndex:200,storeId:L.newPickerConf.storeId,appType:L.newPickerConf.appType||o.BIK,searchInCollectionFetcher:(e,i,t,o)=>{var n;return(null===(n=L.newPickerConf)||void 0===n?void 0:n.searchInCollection)?L.newPickerConf.searchInCollection(e,i,t,!1,o):null},customCollectionRestriction:!1,searchFetcher:(e,i,t)=>{var o;return(null===(o=L.newPickerConf)||void 0===o?void 0:o.searchProducts)?L.newPickerConf.searchProducts(e,i,!1,t):null},hideCollectionCheckbox:!0,hideVariantCheckbox:!0,selectProductsFromCustomCollection:!0,hideSelectionCount:!0})]}),!!ne&&e("div",Object.assign({style:{padding:"12px 0"}},{children:i(t,{children:[L.newPickerConf&&e(A,{visible:!0,onClose:()=>le(void 0),collectionFetcher:L.newPickerConf.fetchCollections,productFetcher:L.newPickerConf.fetchProducts,selectedItems:ne===q.ENTITLED?Ae:Te,onAdd:e=>{Object.values(e).forEach((e=>{e.products&&delete e.products})),ne===q.ENTITLED?Ne(e):fe(e),le(void 0)},customCollectionRestriction:!1,zIndex:200,storeId:L.newPickerConf.storeId,appType:L.newPickerConf.appType||o.BIK,searchInCollectionFetcher:L.newPickerConf.searchInCollection,searchFetcher:L.newPickerConf.searchProducts,hideProductCheckbox:!0,hideVariantCheckbox:!0,title:"Select Collections",hideGlobalSearch:!0,hideSelectionCount:!0}),!L.newPickerConf&&e(O,{show:!0,onSave:()=>{},products:null!==($=L.collection)&&void 0!==$?$:[],title:"Select Products",onClose:()=>{le(void 0)},selectedProducts:null!==(Z=ne===q.ENTITLED?Ae:Te)&&void 0!==Z?Z:[],setSelectedProducts:ne===q.ENTITLED?Ne:fe,onSearchKeyChange:L.onCollectionSearch,searchPlaceholder:"Search collections..."})]})})),te&&e(x,{children:e("div",Object.assign({style:{width:"50%",height:"100%",marginLeft:"50%"}},{children:e(k,{type:N.EMBEDDED,data:null!==(J=L.productVariableList)&&void 0!==J?J:[],showHeader:!0,onSelect:e=>{if(te===q.ENTITLED){const{displayName:i,actualValue:t,isAvailable:o}=e;Ve({displayName:i,actualValue:t,isAvailable:o}),oe(void 0)}if(te===q.PREREQUISITE){const{displayName:i,actualValue:t,isAvailable:o}=e;_e({displayName:i,actualValue:t,isAvailable:o}),oe(void 0)}},onClose:()=>{oe(void 0)}})}))})]}))};export{L as DiscountModal};
1
+ import{jsx as e,jsxs as i,Fragment as t}from"react/jsx-runtime";import{ApplicationType as o}from"@bikdotai/bik-models/growth/models/bik-store";import{useState as n,useEffect as l}from"react";import{DISCOUNT_TYPES as r,MIN_PURCHASE_REQUIREMENT as d,DISCOUNT_APPLIES_TO as a,OFFER_APPLIES_TO as c,initialStaticCouponErrorState as s,initialDynamicCouponErrorState as u,COUPON_EXPIRATION as p,DISCOUNT_TARGET_TYPES as C,DISCOUNT_TARGET_SELECTION as b,DISCOUNT_VALUE_TYPES as v}from"./type.js";import"../dropdown/DropdownPopover/index.js";import{Dropdown as y}from"../dropdown/Dropdown.js";import"../dropdown/ChipDropdown.js";import"../zeroState/ZeroState.js";import{TitleSmall as P,BodyCaption as m,TitleRegular as I}from"../TypographyStyle.js";import{DEFAULT_THEME as O}from"../../constants/Theme.js";import"../dropdown/OpenedDropdown/components/description/Description.styled.js";import"../checkBox/CheckBox.styled.js";import"../list-item/ListItem.js";import"../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js";import"../dropdown/OpenedDropdown/components/menu/MenuItem.js";import"../dropdown/OpenedDropdown/components/menu/MenuList.styled.js";import"../button/Button.js";import"../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js";import"../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js";import"../icon-button/IconButton.js";import"../input/Input.js";import"../dropdown/MenuItem/MenuItem.js";import{StyledModal as S}from"../modals/styledModal.js";import{ProductPickerContent as h}from"../product-picker/ProductPickerModal.js";import{Tag as E}from"../tag/Tag.js";import{Tooltip as T}from"../tooltips/Tooltip.js";import f from"../../assets/icons/gift_icon.svg.js";import g from"../../assets/icons/percentage_icon.svg.js";import V from"../../assets/icons/shipping_icon.svg.js";import D from"../../assets/icons/triangle_error.svg.js";import _ from"../../assets/icons/warning.svg.js";import{ProductPickerModal as A}from"../product-picker-v2/modal.js";import"../product-picker-v2/type.js";import{PickerType as N}from"../variable-picker-v3/model.js";import{VariablePicker as k}from"../variable-picker-v3/VariablePicker.js";import{StyledDiscountDialogueContainer as j,CouponTypeContainerStyled as F,VariablePickerContainer as x}from"./DiscountModal.styled.js";import{validateDiscountData as R,descriptionBuilder as M}from"./DiscountUtils.js";import w,{DISCOUNT_PRODUCTS as q}from"./DynamicCoupon/DynamicCoupon.js";import U from"./StaticCoupon/StaticCoupon.js";const L=L=>{var B,G,Y,X,Q,H,z,K,$,Z,J;const W=[{id:"0",label:"Amount",value:"amount",icon:i=>e("span",Object.assign({style:{fontSize:20,color:i,lineHeight:.9}},{children:L.currency||""}))},{id:"1",label:"Percentage",value:"percentage",icon:i=>e(g,{width:24,height:24,color:i})},{id:"2",label:"Buy X get Y",value:r.BUY_X_GET_Y,icon:i=>e(f,{width:24,height:24,color:i})},{id:"3",label:"Free Shipping",value:r.FREE_SHIPPING,icon:i=>e(V,{width:24,height:24,color:i})}],[ee,ie]=n(),[te,oe]=n(),[ne,le]=n(),[re,de]=n(null!==(B=L.data)&&void 0!==B?B:"string"==typeof L.hideOption?{isStaticCoupon:"dynamic"===L.hideOption}:{isStaticCoupon:!0}),[ae,ce]=n(!0),[se,ue]=n(),[pe,Ce]=n((null===(G=L.data)||void 0===G?void 0:G.minAmount)?d.AMOUNT:(null===(Y=L.data)||void 0===Y?void 0:Y.minQuantity)?d.QUANTITY:d.NA),[be,ve]=n(a.ENTIRE_ORDER),[ye,Pe]=n(c.SPECIFIC_PRODUCTS),[me,Ie]=n(c.SPECIFIC_PRODUCTS),[Oe,Se]=n(void 0),[he,Ee]=n(void 0),[Te,fe]=n(void 0),[ge,Ve]=n(void 0),[De,_e]=n(void 0),[Ae,Ne]=n(void 0),[ke,je]=n(0),[Fe,xe]=n(""),[Re,Me]=n(W[0]),[we,qe]=n(!1),[Ue,Le]=n(s),[Be,Ge]=n(u),[Ye,Xe]=n(L.getDetailedDescription?p.FIXED_EXPIRATION:p.DYNAMIC_EXPIRATION),Qe=[{value:r.AMOUNT_OFF_ORDER,label:"Amount off on order",selected:se===r.AMOUNT_OFF_ORDER},{value:r.AMOUNT_OFF_PRODUCTS,label:"Amount off on products",selected:se===r.AMOUNT_OFF_PRODUCTS},{value:r.BUY_X_GET_Y,label:"Buy X Get Y FREE",selected:se===r.BUY_X_GET_Y},{value:r.FREE_SHIPPING,label:"Free shipping",selected:se===r.FREE_SHIPPING}];l((()=>{L.makeExpiryMandatory&&qe(!0)}),[L.makeExpiryMandatory]),l((()=>{var e,i,t,o,n,l,d,s;let u;const{tempCouponData:C,discountType:b}=He();ue(b);const y=(e,i)=>{Me(C.valueType===v.FIXED_AMOUNT?W[e]:W[i])},P=(e,i)=>{Object.keys(e||{}).length&&i(e)};switch(((null==C?void 0:C.expireAfter)||(null==C?void 0:C.expireAt))&&(qe(!0),(null==C?void 0:C.expireAt)&&Xe(p.FIXED_EXPIRATION),(null==C?void 0:C.expireAfter)&&Xe(p.DYNAMIC_EXPIRATION)),b){case r.AMOUNT_OFF_ORDER:y(0,1),ve(a.ENTIRE_ORDER);break;case r.AMOUNT_OFF_PRODUCTS:y(0,1),(null===(e=C.entitledCollectionIds)||void 0===e?void 0:e.length)?ve(a.SPECIFIC_COLLECTIONS):(null===(i=C.entitledProductIds)||void 0===i?void 0:i.length)||(null===(t=C.productVariableConf)||void 0===t?void 0:t.entitledProductVariable)?(ve(a.SPECIFIC_PRODUCTS),P(null===(o=C.productVariableConf)||void 0===o?void 0:o.entitledProductVariable,Ve)):ve(a.ENTIRE_ORDER);break;case r.BUY_X_GET_Y:Me(W[2]),(null===(n=C.entitledCollectionIds)||void 0===n?void 0:n.length)?Ie(c.SPECIFIC_COLLECTIONS):(Ie(c.SPECIFIC_PRODUCTS),P(null===(l=C.productVariableConf)||void 0===l?void 0:l.entitledProductVariable,Ve)),(null===(d=C.prerequisiteCollectionIds)||void 0===d?void 0:d.length)?Pe(c.SPECIFIC_COLLECTIONS):(Pe(c.SPECIFIC_PRODUCTS),P(null===(s=C.productVariableConf)||void 0===s?void 0:s.prerequisiteProductVariable,_e));break;case r.FREE_SHIPPING:Me(W[3])}de(Object.assign({},C)),L.hideProbability||(u=$e()),ce(R(C,pe,b,L.hideProbability||!1,u,!!C.isStaticCoupon,L.getDetailedDescription||!1)),L.hideProbability||$e()}),[]),l((()=>{let e;L.hideProbability||(e=$e()),ce(R(re,pe,se,L.hideProbability||!1,e,!!re.isStaticCoupon,L.getDetailedDescription||!1))}),[re,ke,se,pe]),l((()=>{var e,i,t,o,n,l,r;if(!L.newPickerConf&&((null===(e=L.products)||void 0===e?void 0:e.length)||(null===(i=L.collection)||void 0===i?void 0:i.length))){if(L.products&&(null===(t=L.products)||void 0===t?void 0:t.length)){if(null===(o=L.data)||void 0===o?void 0:o.entitledProductIds){const e=L.products.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.entitledProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ee(e)}if(null===(n=L.data)||void 0===n?void 0:n.prerequisiteProductIds){const e=L.products.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.prerequisiteProductIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Se(e)}}if(L.collection&&L.collection.length){if(null===(l=L.data)||void 0===l?void 0:l.entitledCollectionIds){const e=L.collection.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.entitledCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));Ne(e)}if(null===(r=L.data)||void 0===r?void 0:r.prerequisiteCollectionIds){const e=L.collection.filter((e=>{var i,t;return null===(t=null===(i=L.data)||void 0===i?void 0:i.prerequisiteCollectionIds)||void 0===t?void 0:t.includes(parseInt(e.id))}));fe(e)}}}}),[L.products,L.collection]),l((()=>{var e,i,t,o,n,l,r,d;(null===(i=null===(e=L.data)||void 0===e?void 0:e.productsConf)||void 0===i?void 0:i.entitledProducts)&&Ee(L.data.productsConf.entitledProducts),(null===(o=null===(t=L.data)||void 0===t?void 0:t.productsConf)||void 0===o?void 0:o.prerequisiteProducts)&&Se(L.data.productsConf.prerequisiteProducts),(null===(l=null===(n=L.data)||void 0===n?void 0:n.collectionsConf)||void 0===l?void 0:l.entitledCollections)&&Ne(L.data.collectionsConf.entitledCollections),(null===(d=null===(r=L.data)||void 0===r?void 0:r.collectionsConf)||void 0===d?void 0:d.prerequisiteCollections)&&fe(L.data.collectionsConf.prerequisiteCollections)}),[null===(X=L.data)||void 0===X?void 0:X.productsConf,null===(Q=L.data)||void 0===Q?void 0:Q.collectionsConf]),l((()=>{if(!he)return;if(L.newPickerConf){const e=[];return Object.values(he).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void de(Object.assign(Object.assign({},re),{entitledProductIds:e}))}const e=he.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{entitledProductIds:e}))}),[he]),l((()=>{if(!Oe)return;if(L.newPickerConf){const e=[];return Object.values(Oe).forEach((i=>{i.products&&Object.keys(i.products).forEach((i=>{e.push(parseInt(i))}))})),void de(Object.assign(Object.assign({},re),{prerequisiteProductIds:e}))}const e=Oe.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{prerequisiteProductIds:e}))}),[Oe]),l((()=>{if(!Ae)return;if(L.newPickerConf){(null==Ae?void 0:Ae.isCustom)&&delete Ae.isCustom;const e=Object.keys(Ae).map((e=>parseInt(e)));return void de(Object.assign(Object.assign({},re),{entitledCollectionIds:e}))}const e=Ae.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{entitledCollectionIds:e}))}),[Ae]),l((()=>{if(!Te)return;if(L.newPickerConf){(null==Te?void 0:Te.isCustom)&&delete Te.isCustom;const e=Object.keys(Te).map((e=>parseInt(e)));return void de(Object.assign(Object.assign({},re),{prerequisiteCollectionIds:e}))}const e=Te.map((e=>parseInt(e.id)));de(Object.assign(Object.assign({},re),{prerequisiteCollectionIds:e}))}),[Te]);const He=()=>{var e,i,t,o;let n,l=re;return re.isStaticCoupon?re.isStaticCoupon&&L.getDetailedDescription&&(re.targetType===C.SHIPPING_LINE?n=r.FREE_SHIPPING:re.targetType===C.LINE_ITEM?n=re.targetSelection===b.ENTITLED?(null===(t=re.prerequisiteProductIds)||void 0===t?void 0:t.length)||(null===(o=re.prerequisiteCollectionIds)||void 0===o?void 0:o.length)||re.prerequisiteQuantity||re.entitledQuantity?r.BUY_X_GET_Y:r.AMOUNT_OFF_PRODUCTS:r.AMOUNT_OFF_ORDER:(l=Object.assign(Object.assign({},l),{targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),n=r.AMOUNT_OFF_ORDER)):re.targetType===C.SHIPPING_LINE?n=r.FREE_SHIPPING:re.targetType===C.LINE_ITEM?n=re.targetSelection===b.ENTITLED?(null===(e=re.prerequisiteProductIds)||void 0===e?void 0:e.length)||(null===(i=re.prerequisiteCollectionIds)||void 0===i?void 0:i.length)||re.prerequisiteQuantity||re.entitledQuantity?r.BUY_X_GET_Y:r.AMOUNT_OFF_PRODUCTS:r.AMOUNT_OFF_ORDER:(l=Object.assign(Object.assign({},l),{targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),n=r.AMOUNT_OFF_ORDER),{discountType:n,tempCouponData:l}},ze=()=>{Le(s),Ge(u)},Ke=e=>{var i;const t={invalidDiscountCode:"Please add Discount Code",invalidCouponTitle:"Please add Discount Coupon Title",invalidCouponDescription:"Please add Coupon Description",inValidProbability:e.inValidProbability&&(null!==(i=re.probability)&&void 0!==i?i:-1)>1?"Probability should not exceed 1":re.isStaticCoupon?"Please add Probability":"Probability should be greater than 0",inValidDiscountAmount:"Please add Discount Amount",inValidMinimumAmount:"Specify minimum amount required",inValidMinimumQuantity:"Specify minimum items required",inValidCouponExpiry:"Please add Coupon Expiry",inValidProductSelection:"Please specify the products",inValidProductVariableSelection:"Please specify the product variables",inValidCollectionSelection:"Please specify the collections",inValidBuyXValue:"Please specify buy product quantity",inValidGetYValue:"Please specify get product quantity",inValidBuyXProductSelection:"Please specify the products",inValidBuyXCollectionSelection:"Please specify the collections",inValidGetYProductSelection:"Please specify the products",inValidGetYCollectionSelection:"Please specify the collections",inValidBuyXProductVariableSelection:"Please specify the product variables",inValidGetYProductVariableSelection:"Please specify the product variables"};let o="";Object.keys(e).forEach((i=>{e[i]&&(o=t[i])}));const n=Object.values(e).filter(Boolean).length;return n>0&&(xe(n>1?"Please add discount details":o),!0)},$e=()=>{if(!L.quadrant||!L.probability)return;const e=[...L.probability];let i=[];e.length>=L.quadrant&&e.splice(L.quadrant-1,1),i=e;const t=i.reduce(((e,i)=>e+i),0)+(re.probability||0);return je(parseFloat(t.toFixed(4))),parseFloat(t.toFixed(4))},Ze=e=>{var i,t,o,n,l,d,a,c,s,u,p,y,P,m,I,O;const S=e.value;ue(S),Se([]),Ee([]),fe([]),Ne([]),S===r.FREE_SHIPPING?de({value:100,targetSelection:b.ALL,targetType:C.SHIPPING_LINE,valueType:v.PERCENTAGE,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(i=re.expireAt)&&void 0!==i?i:void 0,expireAfter:null!==(t=re.expireAfter)&&void 0!==t?t:void 0,probability:re.probability,minQuantity:null!==(o=re.minQuantity)&&void 0!==o?o:void 0,minAmount:null!==(n=re.minAmount)&&void 0!==n?n:void 0}):S===r.BUY_X_GET_Y?de({value:100,targetSelection:b.ENTITLED,targetType:C.LINE_ITEM,valueType:v.PERCENTAGE,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(l=re.expireAt)&&void 0!==l?l:void 0,expireAfter:null!==(d=re.expireAfter)&&void 0!==d?d:void 0,probability:re.probability,minQuantity:void 0,minAmount:void 0}):S===r.AMOUNT_OFF_ORDER?de({targetSelection:b.ALL,targetType:C.LINE_ITEM,valueType:null!==(a=re.valueType)&&void 0!==a?a:v.FIXED_AMOUNT,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(c=re.expireAt)&&void 0!==c?c:void 0,expireAfter:null!==(s=re.expireAfter)&&void 0!==s?s:void 0,probability:re.probability,value:re.value,minQuantity:null!==(u=re.minQuantity)&&void 0!==u?u:void 0,minAmount:null!==(p=re.minAmount)&&void 0!==p?p:void 0}):S===r.AMOUNT_OFF_PRODUCTS&&de({targetSelection:b.ENTITLED,targetType:C.LINE_ITEM,valueType:null!==(y=re.valueType)&&void 0!==y?y:v.FIXED_AMOUNT,quadrant:re.quadrant,isStaticCoupon:!!L.getDetailedDescription,title:re.title,couponCode:L.getDetailedDescription?re.couponCode:void 0,expireAt:null!==(P=re.expireAt)&&void 0!==P?P:void 0,expireAfter:null!==(m=re.expireAfter)&&void 0!==m?m:void 0,probability:re.probability,value:re.value,minQuantity:null!==(I=re.minQuantity)&&void 0!==I?I:void 0,minAmount:null!==(O=re.minAmount)&&void 0!==O?O:void 0})},Je=i=>i&&e(E,{theme:"light",tagText:i,type:"negative",LeadingIcon:_});return i(S,Object.assign({width:(ne||ee)&&L.newPickerConf?"25px":"640px",open:L.isOpen,hideCrossButton:!!te,headingTitle:ee?"Select Products":L.title,headingSubtitle:ee?void 0:L.subTitle,footerLeftCustomElement:Fe?Je(Fe):L.errorMsg?Je(L.errorMsg):!L.quadrant||L.hideProbability?e(t,{}):ke<=1?e(E,{theme:"light",tagText:`Current probability sum: ${ke}`,type:"white"}):e(T,Object.assign({body:"Probability sum should not exceed 1",placement:"top"},{children:e("div",{children:e(E,{style:{cursor:"pointer"},theme:"light",tagText:`Current probability sum: ${ke}`,type:"negative",LeadingIcon:D})})})),headerRightCustomElement:L.allowStaticCoupon||ee?void 0:e(y,{options:Qe,width:"200px",placement:"bottom-start",size:"small",onSelect:e=>{Ze(e)}}),onClose:L.onClose,footerContainerStyle:{borderTop:`1px solid ${O.colorsV2.stroke.primary}`},primaryButton:ee?{buttonType:"primary",onClick:()=>{ie(void 0)},buttonText:"Add"}:ne?{buttonType:"primary",onClick:()=>{le(void 0)},buttonText:"Add"}:{buttonType:"primary",buttonText:"Create discount code",isLoading:null!==(H=L.loading)&&void 0!==H&&H,onClick:()=>{var e,i,t,o,n,l,s,u,p,C;if(ze(),re.isStaticCoupon&&!L.getDetailedDescription){const{isStaticCoupon:e,couponCode:i,title:t,description:o,quadrant:n,probability:l}=re,r={invalidDiscountCode:!i,invalidCouponTitle:!t,invalidCouponDescription:!o,inValidProbability:!L.hideProbability&&(null!=l?l:-1)<0||(null!=l?l:0)>1||Number.isNaN(null!=l?l:0)};if(Ke(r))return void Le(r);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked({quadrant:n,couponCode:i,description:o,isStaticCoupon:e,probability:l,title:re.title})}else if(re.isStaticCoupon&&L.getDetailedDescription){const{isStaticCoupon:l,couponCode:s,title:u,quadrant:p,probability:C}=re,b={invalidDiscountCode:!s,invalidCouponTitle:!u,invalidCouponDescription:!1,inValidProbability:!L.hideProbability&&(null!=C?C:-1)<0||(null!=C?C:0)>1||Number.isNaN(null!=C?C:0)};if(Ke(b))return void Le(b);const v={invalidCouponTitle:!re.title,inValidProbability:!L.hideProbability&&(null!==(e=re.probability)&&void 0!==e?e:-1)<=0||(null!==(i=re.probability)&&void 0!==i?i:-1)>1||Number.isNaN(null!==(t=re.probability)&&void 0!==t?t:-1),inValidDiscountAmount:!re.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(se!==r.BUY_X_GET_Y&&pe!==d.NA){const{minAmount:e,minQuantity:i}=re;v.inValidMinimumAmount=pe===d.AMOUNT&&!e,v.inValidMinimumQuantity=pe===d.QUANTITY&&!i}if(we&&(v.inValidCouponExpiry=!re.expireAt&&!re.expireAfter),se!==r.AMOUNT_OFF_ORDER&&se!==r.AMOUNT_OFF_PRODUCTS||(be!==a.SPECIFIC_PRODUCTS||!he||Object.keys(he).length||ge||(v.inValidProductSelection=!0,v.inValidProductVariableSelection=!0),be===a.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(v.inValidCollectionSelection=!0)),se===r.BUY_X_GET_Y&&(re.prerequisiteQuantity||(v.inValidBuyXValue=!0),re.entitledQuantity||(v.inValidGetYValue=!0),ye!==c.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||De||(v.inValidBuyXProductSelection=!0,v.inValidBuyXProductVariableSelection=!0),ye===c.SPECIFIC_COLLECTIONS&&Te&&!Object.keys(Te).length&&(v.inValidBuyXCollectionSelection=!0),me!==c.SPECIFIC_PRODUCTS||!he||Object.keys(he).length||ge||(v.inValidGetYProductSelection=!0,v.inValidGetYProductVariableSelection=!0),me===c.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(v.inValidGetYCollectionSelection=!0)),Ke(v))return void Ge(v);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked(Object.assign(Object.assign({},re),{couponCode:s,isStaticCoupon:l,quadrant:p,description:M(re,L.currency,null!==(o=L.products)&&void 0!==o?o:[],null!==(n=L.collection)&&void 0!==n?n:[]),productsConf:{entitledProducts:null!=he?he:[],prerequisiteProducts:null!=Oe?Oe:[]},collectionsConf:{entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[]},productVariableConf:{entitledProductVariable:null!=ge?ge:{},prerequisiteProductVariable:null!=De?De:{}}}))}else{const e={invalidCouponTitle:!re.title,inValidProbability:!L.hideProbability&&(null!==(l=re.probability)&&void 0!==l?l:-1)<=0||(null!==(s=re.probability)&&void 0!==s?s:-1)>1||Number.isNaN(null!==(u=re.probability)&&void 0!==u?u:-1),inValidDiscountAmount:!re.value,inValidMinimumQuantity:!1,inValidMinimumAmount:!1,inValidCouponExpiry:!1,inValidProductSelection:!1,inValidProductVariableSelection:!1,inValidCollectionSelection:!1,inValidBuyXValue:!1,inValidGetYValue:!1,inValidBuyXProductSelection:!1,inValidGetYProductSelection:!1,inValidBuyXCollectionSelection:!1,inValidGetYCollectionSelection:!1,inValidBuyXProductVariableSelection:!1,inValidGetYProductVariableSelection:!1};if(se!==r.BUY_X_GET_Y&&pe!==d.NA){const{minAmount:i,minQuantity:t}=re;e.inValidMinimumAmount=pe===d.AMOUNT&&!i,e.inValidMinimumQuantity=pe===d.QUANTITY&&!t}if(we&&(e.inValidCouponExpiry=!re.expireAt&&!re.expireAfter),se!==r.AMOUNT_OFF_ORDER&&se!==r.AMOUNT_OFF_PRODUCTS||(be!==a.SPECIFIC_PRODUCTS||!he||Object.keys(he).length||ge||(e.inValidProductSelection=!0,e.inValidProductVariableSelection=!0),be===a.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(e.inValidCollectionSelection=!0)),se===r.BUY_X_GET_Y&&(re.prerequisiteQuantity||(e.inValidBuyXValue=!0),re.entitledQuantity||(e.inValidGetYValue=!0),ye!==c.SPECIFIC_PRODUCTS||!Oe||Object.keys(Oe).length||De||(e.inValidBuyXProductSelection=!0,e.inValidBuyXProductVariableSelection=!0),ye===c.SPECIFIC_COLLECTIONS&&Te&&!Object.keys(Te).length&&(e.inValidBuyXCollectionSelection=!0),me!==c.SPECIFIC_PRODUCTS||!he||Object.keys(he).length||ge||(e.inValidGetYProductSelection=!0,e.inValidGetYProductVariableSelection=!0),me===c.SPECIFIC_COLLECTIONS&&Ae&&!Object.keys(Ae).length&&(e.inValidGetYCollectionSelection=!0)),Ke(e))return void Ge(e);if(ae||ke>1)return void xe(!L.hideProbability&&ke>1?"Probability sum should not exceed 1":"Invalid coupon details");L.onSaveClicked(Object.assign(Object.assign({},re),{isStaticCoupon:re.isStaticCoupon,description:M(re,L.currency,null!==(p=L.products)&&void 0!==p?p:[],null!==(C=L.collection)&&void 0!==C?C:[]),productsConf:{entitledProducts:null!=he?he:[],prerequisiteProducts:null!=Oe?Oe:[]},collectionsConf:{entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[]},productVariableConf:{entitledProductVariable:null!=ge?ge:{},prerequisiteProductVariable:null!=De?De:{}}}))}}},secondaryButton:ee?{buttonType:"tertiaryGray",onClick:()=>{ie(void 0)},buttonText:"Back"}:ne?{buttonType:"tertiaryGray",onClick:()=>{le(void 0)},buttonText:"Back"}:{buttonType:"tertiaryGray",onClick:L.onClose,buttonText:"Cancel"}},{children:[!ee&&!ne&&i(j,{children:[L.allowStaticCoupon&&!ee&&!L.hideOption&&i(F,Object.assign({selectedDiv:re.isStaticCoupon?1:2},{children:["static"===L.hideOption?e(t,{}):i("div",Object.assign({className:"coupon-type__container",onClick:()=>{re.isStaticCoupon||(de({isStaticCoupon:!0,quadrant:re.quadrant}),xe(""),ze())}},{children:[e(P,Object.assign({style:{marginBottom:"4px",color:re.isStaticCoupon?O.colorsV2.content.brand:void 0}},{children:"Static Code"})),e(m,Object.assign({style:re.isStaticCoupon?{color:O.colorsV2.content.brand}:{}},{children:"A uniform code provided manually, used for providing the same discount to all customers."}))]})),"dynamic"===L.hideOption?e(t,{}):i("div",Object.assign({className:"coupon-type__container",onClick:()=>{var i;re.isStaticCoupon&&(ue(r.AMOUNT_OFF_ORDER),de({isStaticCoupon:!1,quadrant:re.quadrant,targetType:C.LINE_ITEM,targetSelection:b.ALL,valueType:v.FIXED_AMOUNT}),xe(""),ze(),Me({id:"0",label:"Amount",value:"amount",icon:i=>e("span",Object.assign({style:{fontSize:20,color:i}},{children:L.currency||""}))}),qe(null!==(i=L.makeExpiryMandatory)&&void 0!==i&&i),Ce(d.NA))}},{children:[e(P,Object.assign({style:{marginBottom:"4px",color:re.isStaticCoupon?void 0:O.colorsV2.content.brand}},{children:"Dynamic Code"})),e(m,Object.assign({style:re.isStaticCoupon?{}:{color:O.colorsV2.content.brand}},{children:"Code will be unique for all customers, with the first 5 letters of the customer's name, followed by 10 random characters."}))]}))]})),!L.getDetailedDescription&&e(I,Object.assign({style:{marginTop:"24px"}},{children:"Coupon Details"}))," ",re.isStaticCoupon&&!ee&&!L.getDetailedDescription&&e(U,{discountData:re,setDiscountData:de,hideProbability:L.hideProbability||!1,discountAdminUrl:L.discountAdminUrl,staticDiscountValidationError:Ue,currency:L.currency}),re.isStaticCoupon&&!ee&&L.getDetailedDescription&&e(U,{discountData:re,setDiscountData:de,hideProbability:L.hideProbability||!1,discountAdminUrl:L.discountAdminUrl,staticDiscountValidationError:Ue,currency:L.currency,getDetailedDescription:!0,selectedCouponType:se,setSelectedCouponType:ue,selectedMinimumRequirement:pe,setSelectedMinimumRequirement:Ce,discountCouponAppliesTo:be,offerAppliesToBuy:ye,offerAppliesToGet:me,setDiscountCouponAppliesTo:ve,setOfferAppliesToBuy:Pe,setOfferAppliesToGet:Ie,hideExpiration:L.hideExpiration||!1,onChangeCouponType:Ze,entitledProducts:null!=he?he:[],prerequisiteProducts:null!=Oe?Oe:[],setEntitledProducts:Ee,setPrerequisiteProducts:Se,entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[],setEntitledCollections:Ne,setPrerequisiteCollections:fe,setIsProductPickerOpen:ie,setIsProductVariablePickerOpen:oe,setIsCollectionPickerOpen:le,productPickerOpen:ee,productVariablePickerOpen:te,collectionPickerOpen:ne,useNewPicker:!!L.newPickerConf,selectedDiscountDetails:Re,setSelectedDiscountDetails:Me,isProductVariableSupported:L.isProductVariableSupported,entitledProductVariable:ge,setEntitledProductVariable:Ve,preRequisiteProductVariable:De,setPreRequisiteProductVariable:_e,productVariableList:L.productVariableList,isAddExpirationChecked:we,setIsAddExpirationChecked:qe,dynamicDiscountValidationError:Be,setDynamicDiscountValidationError:Ge,setValidationErrorMessage:xe,resetValidationErrors:ze,discountDetailsOptions:W,selectedExpiration:Ye,setSelectedExpiration:Xe,makeExpiryMandatory:!!L.makeExpiryMandatory}),!re.isStaticCoupon&&!ee&&!ne&&e(w,{currency:L.currency,entitledProducts:null!=he?he:[],prerequisiteProducts:null!=Oe?Oe:[],setEntitledProducts:Ee,setPrerequisiteProducts:Se,discountData:re,productPickerOpen:ee,productVariablePickerOpen:te,setIsProductPickerOpen:ie,setIsProductVariablePickerOpen:oe,setDiscountData:de,selectedCouponType:se,setSelectedCouponType:ue,selectedMinimumRequirement:pe,setSelectedMinimumRequirement:Ce,discountCouponAppliesTo:be,offerAppliesToBuy:ye,offerAppliesToGet:me,setDiscountCouponAppliesTo:ve,setOfferAppliesToBuy:Pe,setOfferAppliesToGet:Ie,hideProbability:L.hideProbability||!1,hideExpiration:L.hideExpiration||!1,allowStaticCoupon:L.allowStaticCoupon,onChangeCouponType:Ze,collectionPickerOpen:ne,entitledCollections:null!=Ae?Ae:[],prerequisiteCollections:null!=Te?Te:[],setIsCollectionPickerOpen:le,setEntitledCollections:Ne,setPrerequisiteCollections:fe,useNewPicker:!!L.newPickerConf,setSelectedDiscountDetails:Me,selectedDiscountDetails:Re,isProductVariableSupported:L.isProductVariableSupported,entitledProductVariable:ge,setEntitledProductVariable:Ve,preRequisiteProductVariable:De,setPreRequisiteProductVariable:_e,productVariableList:L.productVariableList,isAddExpirationChecked:we,setIsAddExpirationChecked:qe,dynamicDiscountValidationError:Be,setDynamicDiscountValidationError:Ge,setValidationErrorMessage:xe,resetValidationErrors:ze,discountDetailsOptions:W,selectedExpiration:Ye,setSelectedExpiration:Xe,makeExpiryMandatory:!!L.makeExpiryMandatory})]}),!!ee&&i(t,{children:[!L.newPickerConf&&e("div",Object.assign({style:{padding:"12px 0"}},{children:e(h,{show:!0,onSave:()=>{},products:null!==(z=L.products)&&void 0!==z?z:[],title:"Select Products",onClose:()=>{ie(void 0)},selectedProducts:null!==(K=ee===q.ENTITLED?he:Oe)&&void 0!==K?K:[],setSelectedProducts:ee===q.ENTITLED?Ee:Se,onSearchKeyChange:L.onProductSearch})})),L.newPickerConf&&e(A,{visible:!0,onClose:()=>ie(void 0),collectionFetcher:(e,i,t)=>{var o;return(null===(o=L.newPickerConf)||void 0===o?void 0:o.fetchCollections)?L.newPickerConf.fetchCollections(e,i,!1,t):null},productFetcher:(e,i,t,o,n)=>{var l;return(null===(l=L.newPickerConf)||void 0===l?void 0:l.fetchProducts)?L.newPickerConf.fetchProducts(e,i,o,n,!1,t):null},selectedItems:ee===q.ENTITLED?he:Oe,onAdd:e=>{ee===q.ENTITLED?Ee(e):Se(e),ie(void 0)},zIndex:200,storeId:L.newPickerConf.storeId,appType:L.newPickerConf.appType||o.BIK,searchInCollectionFetcher:(e,i,t,o)=>{var n;return(null===(n=L.newPickerConf)||void 0===n?void 0:n.searchInCollection)?L.newPickerConf.searchInCollection(e,i,t,!1,o):null},customCollectionRestriction:!1,searchFetcher:(e,i,t)=>{var o;return(null===(o=L.newPickerConf)||void 0===o?void 0:o.searchProducts)?L.newPickerConf.searchProducts(e,i,!1,t):null},hideCollectionCheckbox:!0,hideVariantCheckbox:!0,selectProductsFromCustomCollection:!0,hideSelectionCount:!0})]}),!!ne&&e("div",Object.assign({style:{padding:"12px 0"}},{children:i(t,{children:[L.newPickerConf&&e(A,{visible:!0,onClose:()=>le(void 0),collectionFetcher:L.newPickerConf.fetchCollections,productFetcher:L.newPickerConf.fetchProducts,selectedItems:ne===q.ENTITLED?Ae:Te,onAdd:e=>{Object.values(e).forEach((e=>{e.products&&delete e.products})),ne===q.ENTITLED?Ne(e):fe(e),le(void 0)},customCollectionRestriction:!1,zIndex:200,storeId:L.newPickerConf.storeId,appType:L.newPickerConf.appType||o.BIK,searchInCollectionFetcher:L.newPickerConf.searchInCollection,searchFetcher:L.newPickerConf.searchProducts,hideProductCheckbox:!0,hideVariantCheckbox:!0,title:"Select Collections",hideGlobalSearch:!0,hideSelectionCount:!0,pickerType:"COLLECTION"}),!L.newPickerConf&&e(h,{show:!0,onSave:()=>{},products:null!==($=L.collection)&&void 0!==$?$:[],title:"Select Products",onClose:()=>{le(void 0)},selectedProducts:null!==(Z=ne===q.ENTITLED?Ae:Te)&&void 0!==Z?Z:[],setSelectedProducts:ne===q.ENTITLED?Ne:fe,onSearchKeyChange:L.onCollectionSearch,searchPlaceholder:"Search collections..."})]})})),te&&e(x,{children:e("div",Object.assign({style:{width:"50%",height:"100%",marginLeft:"50%"}},{children:e(k,{type:N.EMBEDDED,data:null!==(J=L.productVariableList)&&void 0!==J?J:[],showHeader:!0,onSelect:e=>{if(te===q.ENTITLED){const{displayName:i,actualValue:t,isAvailable:o}=e;Ve({displayName:i,actualValue:t,isAvailable:o}),oe(void 0)}if(te===q.PREREQUISITE){const{displayName:i,actualValue:t,isAvailable:o}=e;_e({displayName:i,actualValue:t,isAvailable:o}),oe(void 0)}},onClose:()=>{oe(void 0)}})}))})]}))};export{L as DiscountModal};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bikdotai/bik-component-library",
3
- "version": "0.0.753",
3
+ "version": "0.0.754-beta.1",
4
4
  "description": "Bik Component Library",
5
5
  "repository": {
6
6
  "type": "git",