@licklist/design 0.44.486-dev.42 → 0.44.486-dev.44

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"useCategoryVerification.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/order-process/components/utils/useCategoryVerification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kEAAkE,CAAC;AAInG,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAGD,eAAO,MAAM,uBAAuB,iBAIxB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,sBACd,eAAe,EAAE,KACpC,aAAa,GAAG,IAkEpB,CAAC"}
1
+ {"version":3,"file":"useCategoryVerification.d.ts","sourceRoot":"","sources":["../../../../../src/iframe/order-process/components/utils/useCategoryVerification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kEAAkE,CAAC;AAInG,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAGD,eAAO,MAAM,uBAAuB,iBAIxB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,sBACd,eAAe,EAAE,KACpC,aAAa,GAAG,IA+DpB,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@licklist/core/dist/Config"),r=require("react-i18next"),t=require("react-intl");exports.useCategoryVerification=function(){var n=r.useTranslation("Validation").t,i=t.useIntl().formatNumber;return function(r,t){var u,a=Object.values(r).filter((function(e){return(null==e?void 0:e.quantity)>0})),o=t.reduce((function(e,r){var t=r.products.filter((function(e){return a.map((function(e){return e.id})).includes(null==e?void 0:e.id)}));return t.length?e+t.reduce((function(e,r){return e+((null==r?void 0:r.minSpend)||0)}),0):0}),0),c=a.reduce((function(e,r){return e+r.price*r.quantity}),0);if(t.forEach((function(e){var r=e.minSubItems,t=e.maxSubItems,i=e.id,o=e.name;if(r||t){var c=a.filter((function(e){return(null==e?void 0:e.productsCategoryId)===i})).length;if(r&&c<r){var d=n("Validation:fieldMinNumber",{min:r,attribute:"number of products in the ".concat(o," category")});u={id:i,message:d}}else if(t&&c>t){d=n("Validation:fieldMaxNumber",{max:t,attribute:"number of products in the ".concat(o," category")});u={id:i,message:d}}}})),c<o&&!u){var d=n("Design:minimumSpendSumValidation",{minSpend:i(o,{style:"currency",currency:e.Currency.GBP})});u={message:d}}return u}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@licklist/core/dist/Config"),r=require("react-i18next"),n=require("react-intl");exports.useCategoryVerification=function(){var t=r.useTranslation("Validation").t,i=n.useIntl().formatNumber;return function(r,n){var u,a=Object.values(r).filter((function(e){return(null==e?void 0:e.quantity)>0})),o=n.reduce((function(e,r){var n=r.products.filter((function(e){return a.map((function(e){return e.id})).includes(null==e?void 0:e.id)}));return e+((null==n?void 0:n.reduce((function(e,r){return e+((null==r?void 0:r.minSpend)||0)}),0))||0)}),0),c=a.reduce((function(e,r){return e+r.price*r.quantity}),0);if(n.forEach((function(e){var r=e.minSubItems,n=e.maxSubItems,i=e.id,o=e.name;if(r||n){var c=a.filter((function(e){return(null==e?void 0:e.productsCategoryId)===i})).length;if(r&&c<r){var d=t("Validation:fieldMinNumber",{min:r,attribute:"number of products in the ".concat(o," category")});u={id:i,message:d}}else if(n&&c>n){d=t("Validation:fieldMaxNumber",{max:n,attribute:"number of products in the ".concat(o," category")});u={id:i,message:d}}}})),c<o&&!u){var d=t("Design:minimumSpendSumValidation",{minSpend:i(o,{style:"currency",currency:e.Currency.GBP})});u={message:d}}return u}};
@@ -1 +1 @@
1
- {"version":3,"file":"DateAndRecurrenceInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateAndRecurrenceInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAiB7G,MAAM,WAAW,4BAA4B;IAC3C,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,eAAO,MAAM,sBAAsB,+BAEhC,2BAA2B,gBAoN7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,CAAC"}
1
+ {"version":3,"file":"DateAndRecurrenceInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateAndRecurrenceInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAiB7G,MAAM,WAAW,4BAA4B;IAC3C,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,eAAO,MAAM,sBAAsB,+BAEhC,2BAA2B,gBAmN7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),t=require("react"),n=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,i=require("react-i18next"),u=require("react-bootstrap"),a=require("../../static/Icon.js"),o=require("react-hook-form"),c=require("@react-aria/utils"),l=require("react-use");require("../../static/index.js");var d=require("@dnd-kit/core"),s=require("@dnd-kit/modifiers"),m=require("@dnd-kit/sortable"),f=require("../../modals/confirmation/ConfirmModal.js"),v=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),p=require("./ProductSetRecurrenceControl.js"),g={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,n={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,n)}};exports.DateAndRecurrenceInput=function(e){var x,E,b=e.isEventEditProductSet,h=o.useFormContext(),q=h.control,y=h.register,S=h.formState.errors,C=h.getValues,R=h.setValue,_=h.clearErrors,D=o.useFieldArray({name:"menuRecurrences",control:q,keyName:"_id"}),k=D.fields,I=D.append,N=D.update,w=D.move,P=r.__read(t.useState(!1),2),T=P[0],j=P[1],A=r.__read(t.useState({index:null,values:null}),2),O=A[0],F=A[1],M=function(){return F({index:null,values:null})},V=t.useRef();l.useClickAway(V,(function(e){var r,t,n;f.CONFIRM_MODAL_ACTIONS.includes(null===(n=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===n?void 0:n.value)||(j(!1),M())}));var W=c.useId(),L=i.useTranslation("Design").t,B=function(){M(),j((function(e){return!e}))};return t.useEffect((function(){k.length&&_("menuRecurrences")}),[k,_]),n.createElement(u.Form.Group,null,n.createElement(u.Form.Label,null,L(b?"whenOverridesAvailable":"productSetAvailable")),n.createElement(u.OverlayTrigger,{show:T,overlay:n.createElement(u.Popover,{id:W,className:"rounded"},n.createElement(u.Popover.Content,{className:"shadow-lg rounded",ref:V},n.createElement(v.RecurringDatePickerInput,{defaultValues:O.values,onChange:function(e){var r,t,n={rrule:e.rrule,startDate:e.startDate,endDate:e.endDate,startTime:e.startTime,endTime:e.endTime};(null===(r=O.values)||void 0===r?void 0:r.id)&&(n.id=null===(t=O.values)||void 0===t?void 0:t.id),null!==O.index?N(O.index,n):I(n),j((function(){return!1})),M()},onDelete:function(){var e=O.index;j(!1),M(),setTimeout((function(){var r=C().menuRecurrences;R("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)},isProductSet:!0}))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[g]}},n.createElement("div",{className:"product-set-recurrences"},n.createElement(d.DndContext,{onDragEnd:function(e){var r=e.over,t=e.active;if(r.id!==t.id){var n=k.findIndex((function(e){return String(e._id)===t.id})),i=k.findIndex((function(e){return String(e._id)===r.id}));w(n,i)}},modifiers:[s.restrictToVerticalAxis]},n.createElement(m.SortableContext,{items:null!==(x=null==k?void 0:k.map((function(e){return String(e._id)})))&&void 0!==x?x:[],strategy:m.verticalListSortingStrategy},k.map((function(e,r){return n.createElement(p.ProductSetRecurrenceControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){M(),setTimeout((function(){F({index:r,values:e}),j((function(){return!0}))}),100)}(e,r)}})})))),(!b||(null==k?void 0:k.length)<1)&&n.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:B,onKeyDown:B},n.createElement(a.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),L("addDates")),n.createElement(u.Form.Control,r.__assign({type:"hidden"},y("menuRecurrences",{required:{value:!0,message:L("Validation:fieldMinNumber",{attribute:L("dates"),min:1})}}))),n.createElement("div",{className:"manual-form-error"},null===(E=S.menuRecurrences)||void 0===E?void 0:E.message))))},exports.sameWidthPopperModifier=g;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),t=require("react"),n=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,i=require("react-i18next"),u=require("react-bootstrap"),a=require("../../static/Icon.js"),o=require("react-hook-form"),c=require("@react-aria/utils"),l=require("react-use");require("../../static/index.js");var d=require("@dnd-kit/core"),s=require("@dnd-kit/modifiers"),m=require("@dnd-kit/sortable"),f=require("../../modals/confirmation/ConfirmModal.js"),v=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),p=require("./ProductSetRecurrenceControl.js"),g={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,n={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,n)}};exports.DateAndRecurrenceInput=function(e){var x,E,b=e.isEventEditProductSet,h=o.useFormContext(),q=h.control,y=h.register,C=h.formState.errors,R=h.getValues,S=h.setValue,_=h.clearErrors,D=o.useFieldArray({name:"menuRecurrences",control:q,keyName:"_id"}),k=D.fields,I=D.append,N=D.update,w=D.move,T=r.__read(t.useState(!1),2),j=T[0],P=T[1],A=r.__read(t.useState({index:null,values:null}),2),O=A[0],F=A[1],M=function(){return F({index:null,values:null})},V=t.useRef();l.useClickAway(V,(function(e){var r,t,n;f.CONFIRM_MODAL_ACTIONS.includes(null===(n=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===n?void 0:n.value)||(P(!1),M())}));var W=c.useId(),L=i.useTranslation("Design").t,B=function(){M(),P((function(e){return!e}))};return t.useEffect((function(){k.length&&_("menuRecurrences")}),[k,_]),n.createElement(u.Form.Group,null,n.createElement(u.Form.Label,null,L(b?"whenOverridesAvailable":"productSetAvailable")),n.createElement(u.OverlayTrigger,{show:j,overlay:n.createElement(u.Popover,{id:W,className:"rounded"},n.createElement(u.Popover.Content,{className:"shadow-lg rounded",ref:V},n.createElement(v.RecurringDatePickerInput,{defaultValues:O.values,onChange:function(e){var r,t,n={rrule:e.rrule,startDate:e.startDate,endDate:e.endDate,startTime:e.startTime,endTime:e.endTime};(null===(r=O.values)||void 0===r?void 0:r.id)&&(n.id=null===(t=O.values)||void 0===t?void 0:t.id),null!==O.index?N(O.index,n):I(n),P((function(){return!1})),M()},onDelete:function(){var e=O.index;P(!1),M(),setTimeout((function(){var r=R().menuRecurrences;S("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)}}))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[g]}},n.createElement("div",{className:"product-set-recurrences"},n.createElement(d.DndContext,{onDragEnd:function(e){var r=e.over,t=e.active;if(r.id!==t.id){var n=k.findIndex((function(e){return String(e._id)===t.id})),i=k.findIndex((function(e){return String(e._id)===r.id}));w(n,i)}},modifiers:[s.restrictToVerticalAxis]},n.createElement(m.SortableContext,{items:null!==(x=null==k?void 0:k.map((function(e){return String(e._id)})))&&void 0!==x?x:[],strategy:m.verticalListSortingStrategy},k.map((function(e,r){return n.createElement(p.ProductSetRecurrenceControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){M(),setTimeout((function(){F({index:r,values:e}),P((function(){return!0}))}),100)}(e,r)}})})))),(!b||(null==k?void 0:k.length)<1)&&n.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:B,onKeyDown:B},n.createElement(a.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),L("addDates")),n.createElement(u.Form.Control,r.__assign({type:"hidden"},y("menuRecurrences",{required:{value:!0,message:L("Validation:fieldMinNumber",{attribute:L("dates"),min:1})}}))),n.createElement("div",{className:"manual-form-error"},null===(E=C.menuRecurrences)||void 0===E?void 0:E.message))))},exports.sameWidthPopperModifier=g;
@@ -5,12 +5,11 @@ interface RecurrenceIntervalAndFrequencyInputProps {
5
5
  minDate?: string;
6
6
  startDateLabel?: string;
7
7
  startTimeLabel?: string;
8
- isProductSet?: boolean;
9
8
  endDateLabel?: string;
10
9
  endTimeLabel?: string;
11
10
  startTimeRules?: Pick<RegisterOptions, "max" | "min" | "validate" | "required" | "pattern">;
12
11
  endTimeRules?: Pick<RegisterOptions, "max" | "min" | "validate" | "required" | "pattern">;
13
12
  }
14
- declare function RecurrenceIntervalAndFrequencyInput({ disabled, minDate, startDateLabel, startTimeLabel, endDateLabel, endTimeLabel, startTimeRules, endTimeRules, isProductSet, }: RecurrenceIntervalAndFrequencyInputProps): JSX.Element;
13
+ declare function RecurrenceIntervalAndFrequencyInput({ disabled, minDate, startDateLabel, startTimeLabel, endDateLabel, endTimeLabel, startTimeRules, endTimeRules, }: RecurrenceIntervalAndFrequencyInputProps): JSX.Element;
15
14
  export default RecurrenceIntervalAndFrequencyInput;
16
15
  //# sourceMappingURL=RecurrenceIntervalAndFrequencyInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecurrenceIntervalAndFrequencyInput.d.ts","sourceRoot":"","sources":["../../src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAC;AAIlE,UAAU,wCAAwC;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,IAAI,CACnB,eAAe,EACf,KAAK,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CACpD,CAAC;IACF,YAAY,CAAC,EAAE,IAAI,CACjB,eAAe,EACf,KAAK,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CACpD,CAAC;CACH;AAED,iBAAS,mCAAmC,CAAC,EAC3C,QAAgB,EAChB,OAAO,EACP,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,YAAY,GACb,EAAE,wCAAwC,eA2K1C;AAED,eAAe,mCAAmC,CAAC"}
1
+ {"version":3,"file":"RecurrenceIntervalAndFrequencyInput.d.ts","sourceRoot":"","sources":["../../src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAC;AAIlE,UAAU,wCAAwC;IAChD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,IAAI,CACnB,eAAe,EACf,KAAK,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CACpD,CAAC;IACF,YAAY,CAAC,EAAE,IAAI,CACjB,eAAe,EACf,KAAK,GAAG,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,SAAS,CACpD,CAAC;CACH;AAED,iBAAS,mCAAmC,CAAC,EAC3C,QAAgB,EAChB,OAAO,EACP,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,YAAY,GACb,EAAE,wCAAwC,eAmJ1C;AAED,eAAe,mCAAmC,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),a=require("react"),l=(e=a)&&"object"==typeof e&&"default"in e?e.default:e,r=require("@licklist/core/dist/Config"),n=require("react-i18next"),i=require("react-bootstrap"),o=require("react-hook-form"),m=require("luxon");exports.default=function(e){var s,u,d,c,f=e.disabled,D=void 0!==f&&f,v=e.minDate,E=e.startDateLabel,F=e.startTimeLabel,b=e.endDateLabel,p=e.endTimeLabel,g=e.startTimeRules,T=e.endTimeRules,h=e.isProductSet,C=n.useTranslation(["Design","Notification","App"]).t,_=o.useFormContext(),k=_.getValues,y=_.setValue,x=_.formState.errors,q=_.register,L=_.trigger,S=k("startDate"),V=k("endDate"),I=k("startTime"),R=k("endTime"),A=t.__read(a.useState(!V),2),G=A[0],N=A[1],O=h&&G;return a.useEffect((function(){S&&V&&L("endDate")}),[S]),a.useEffect((function(){I&&R&&L("endTime")}),[I]),l.createElement(l.Fragment,null,l.createElement(i.Row,null,l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=E?E:C("Design:fromDate")),l.createElement(i.Form.Control,t.__assign({type:"date"},q("startDate",{required:!0}),{defaultValue:S,className:S&&"date-input-with-value",disabled:D,min:v,isInvalid:Boolean(x.startDate)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(s=x.startDate)||void 0===s?void 0:s.message))),l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=b?b:C("Design:toDate")),l.createElement(i.Form.Control,t.__assign({type:"date"},q("endDate",{required:!O,validate:function(e){if(!S||!e)return!0;var t=m.DateTime.fromFormat(S,r.DATE_FORMAT);return m.DateTime.fromFormat(e,r.DATE_FORMAT).diff(t,["days"]).days>=0||"".concat(C("Validation:fieldLaterDate",{attribute:C("Design:endDateSmall"),min:C("Design:startDateSmall")}))}}),{defaultValue:V,className:V&&"date-input-with-value",disabled:D||O,min:S||void 0,isInvalid:Boolean(x.endDate)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(u=x.endDate)||void 0===u?void 0:u.message)),h&&l.createElement(i.Form.Group,{className:"custom-checkbox"},l.createElement(i.Form.Check,{custom:!0,type:"checkbox"},l.createElement(i.Form.Check.Input,{type:"checkbox",className:"checkbox-input",checked:G,onChange:function(){y("endDate",""),N((function(e){return!e}))}}),l.createElement(i.Form.Check.Label,null,C("Design:infiniteProductSet")))))),l.createElement(i.Row,null,l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=F?F:C("Design:availableFrom")),l.createElement(i.Form.Control,t.__assign({type:"time"},q("startTime",t.__assign({required:!1},g)),{placeholder:"hh:mm",defaultValue:I,disabled:D,isInvalid:Boolean(x.startTime)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(d=x.startTime)||void 0===d?void 0:d.message))),l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=p?p:C("Design:availableTo")),l.createElement(i.Form.Control,t.__assign({type:"time"},q("endTime",t.__assign({required:!1,validate:function(e){var t;if(!I||!e)return!0;var a=m.DateTime.fromISO(I),l=m.DateTime.fromISO(e);return(null===(t=null==l?void 0:l.diff(a,["minutes"]))||void 0===t?void 0:t.minutes)>=0||"".concat(C("Validation:fieldLaterDate",{attribute:C("Design:endTimeSmall"),min:C("Design:startTimeSmall")}))}},T)),{placeholder:"hh:mm",defaultValue:R,disabled:D,isInvalid:Boolean(x.endTime)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(c=x.endTime)||void 0===c?void 0:c.message)))))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),a=require("react"),l=(e=a)&&"object"==typeof e&&"default"in e?e.default:e,r=require("@licklist/core/dist/Config"),n=require("react-i18next"),i=require("react-bootstrap"),o=require("react-hook-form"),m=require("luxon");exports.default=function(e){var s,d,u,c,f=e.disabled,v=void 0!==f&&f,D=e.minDate,E=e.startDateLabel,F=e.startTimeLabel,b=e.endDateLabel,g=e.endTimeLabel,T=e.startTimeRules,p=e.endTimeRules,_=n.useTranslation(["Design","Notification","App"]).t,C=o.useFormContext(),y=C.getValues,q=C.formState.errors,L=C.register,h=C.trigger,x=y("startDate"),S=y("endDate"),V=y("startTime"),k=y("endTime");return a.useEffect((function(){x&&S&&h("endDate")}),[x]),a.useEffect((function(){V&&k&&h("endTime")}),[V]),l.createElement(l.Fragment,null,l.createElement(i.Row,null,l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=E?E:_("Design:fromDate")),l.createElement(i.Form.Control,t.__assign({type:"date"},L("startDate",{required:!0}),{defaultValue:x,className:x&&"date-input-with-value",disabled:v,min:D,isInvalid:Boolean(q.startDate)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(s=q.startDate)||void 0===s?void 0:s.message))),l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=b?b:_("Design:toDate")),l.createElement(i.Form.Control,t.__assign({type:"date"},L("endDate",{required:!0,validate:function(e){if(!x||!e)return!0;var t=m.DateTime.fromFormat(x,r.DATE_FORMAT);return m.DateTime.fromFormat(e,r.DATE_FORMAT).diff(t,["days"]).days>=0||"".concat(_("Validation:fieldLaterDate",{attribute:_("Design:endDateSmall"),min:_("Design:startDateSmall")}))}}),{defaultValue:S,className:S&&"date-input-with-value",disabled:v,min:x||void 0,isInvalid:Boolean(q.endDate)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(d=q.endDate)||void 0===d?void 0:d.message)))),l.createElement(i.Row,null,l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=F?F:_("Design:availableFrom")),l.createElement(i.Form.Control,t.__assign({type:"time"},L("startTime",t.__assign({required:!1},T)),{placeholder:"hh:mm",defaultValue:V,disabled:v,isInvalid:Boolean(q.startTime)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(u=q.startTime)||void 0===u?void 0:u.message))),l.createElement(i.Col,{xs:12,sm:6},l.createElement(i.Form.Group,null,l.createElement(i.Form.Label,null,null!=g?g:_("Design:availableTo")),l.createElement(i.Form.Control,t.__assign({type:"time"},L("endTime",t.__assign({required:!1,validate:function(e){var t;if(!V||!e)return!0;var a=m.DateTime.fromISO(V),l=m.DateTime.fromISO(e);return(null===(t=null==l?void 0:l.diff(a,["minutes"]))||void 0===t?void 0:t.minutes)>=0||"".concat(_("Validation:fieldLaterDate",{attribute:_("Design:endTimeSmall"),min:_("Design:startTimeSmall")}))}},p)),{placeholder:"hh:mm",defaultValue:k,disabled:v,isInvalid:Boolean(q.endTime)})),l.createElement(i.Form.Control.Feedback,{type:"invalid"},null===(c=q.endTime)||void 0===c?void 0:c.message)))))};
@@ -9,7 +9,6 @@ export interface RecurringDatePickerInputProps {
9
9
  initialFrequency?: Frequency;
10
10
  setInitialStartDateAfterSelect?: boolean;
11
11
  minDate?: string;
12
- isProductSet?: boolean;
13
12
  }
14
13
  export interface RecurringDatePickerInputValues {
15
14
  rrule?: string;
@@ -24,5 +23,5 @@ export interface RecurringDatePickerInputValues {
24
23
  count?: number;
25
24
  withOutEndDate?: boolean;
26
25
  }
27
- export declare function RecurringDatePickerInput({ disabled, onChange, onDelete, defaultValues, initialFrequency, setInitialStartDateAfterSelect, children, minDate, isProductSet, }: PropsWithChildren<RecurringDatePickerInputProps>): JSX.Element;
26
+ export declare function RecurringDatePickerInput({ disabled, onChange, onDelete, defaultValues, initialFrequency, setInitialStartDateAfterSelect, children, minDate, }: PropsWithChildren<RecurringDatePickerInputProps>): JSX.Element;
28
27
  //# sourceMappingURL=RecurringDatePickerInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RecurringDatePickerInput.d.ts","sourceRoot":"","sources":["../../src/recurring-date-picker-input/RecurringDatePickerInput.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAsB,iBAAiB,EAAE,MAAM,OAAO,CAAC;AACrE,OAAc,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAelD,OAAO,EAAyB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIpE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACxD,QAAQ,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,IAAI,CAAC;IAC1D,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,8BAA8B,CAAC,EAAE,OAAO,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,kBAAkB,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CAAC,EACvC,QAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,gBAAkC,EAClC,8BAAsC,EACtC,QAAQ,EACR,OAAO,EACP,YAAY,GACb,EAAE,iBAAiB,CAAC,6BAA6B,CAAC,eA2LlD"}
1
+ {"version":3,"file":"RecurringDatePickerInput.d.ts","sourceRoot":"","sources":["../../src/recurring-date-picker-input/RecurringDatePickerInput.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAsB,iBAAiB,EAAE,MAAM,OAAO,CAAC;AACrE,OAAc,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAelD,OAAO,EAAyB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIpE,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACxD,QAAQ,EAAE,CAAC,KAAK,EAAE,8BAA8B,KAAK,IAAI,CAAC;IAC1D,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,8BAA8B,CAAC,EAAE,OAAO,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,kBAAkB,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,wBAAwB,CAAC,EACvC,QAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,gBAAkC,EAClC,8BAAsC,EACtC,QAAQ,EACR,OAAO,GACR,EAAE,iBAAiB,CAAC,6BAA6B,CAAC,eA0LlD"}
@@ -1 +1 @@
1
- "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),n=require("react"),r=e(n),a=require("react-i18next"),i=e(require("react-bootstrap/Button")),l=require("react-bootstrap"),u=require("react-hook-form"),o=require("luxon"),d=require("../modals/confirmation/ConfirmModal.js");require("../modals/dialog/Dialog.js"),require("../modals/dialog/DialogContext.js");var s=require("../product-set/elements/DeleteFieldButton.js"),c=require("rrule"),m=e(c),f=require("react-intl"),v=require("@licklist/core/dist/Config/Date"),D=require("@licklist/plugins/dist/hooks/Value/usePreviousValue"),y=require("./RecurrenceIntervalAndFrequencyInput.js"),T=require("./utils.js"),p=require("./RecurrenceWeekdaysInput.js");var q=function(e){var n=e.rrule,r=e.startDate,a=e.endDate,i=e.startTime,l=e.endTime,u=e.initialFrequency,o=void 0===u?c.Frequency.DAILY:u;return t.__assign({startDate:r,endDate:a,startTime:i,endTime:l,interval:1,freq:o},n&&T.parseAndValidateRRule({rrule:n,date:r}))},g=function(e){var r=e.startDate,a=e.endDate,i=e.startTime,l=e.endTime,u=e.byWeekDay,d=void 0===u?[]:u,s=k(r,i||"00:00:00"),c=k(a,l||"23:59:59"),m=f.useIntl(),v=m.formatList,D=m.formatNumber;return n.useMemo((function(){if(s instanceof o.DateTime&&c instanceof o.DateTime&&s.isValid&&c.isValid){var e=o.Interval.fromDateTimes(s.set({second:0}),c.set({second:0})).toDuration(["days","hours","minutes"]);if(e.isValid){var n=function(e,t){return D(e,{style:"unit",unit:t,unitDisplay:"long"})},r=o.Interval.fromDateTimes(s.minus({second:1}),c.plus({second:1})).splitBy({days:1});if(!(d.length?r.reduce((function(e,t){return d.some((function(e){return e.weekday+1===t.start.weekday}))?e+1:e}),0):1))return n(0,"minute");var a=[[e.days,"day"],[e.hours,"hour"],[e.minutes,"minute"]].filter((function(e){return t.__read(e,1)[0]}));return a.length||a.push([0,"minute"]),v(a.map((function(e){return n.apply(void 0,t.__spreadArray([],t.__read(e),!1))})),{style:"long",type:"unit"})}}}),[s,c,d,v,D])},k=function(e,t){var n=o.DateTime.fromFormat("".concat(e," ").concat(t),v.DATE_TIME_FORMAT);if(n.isValid)return n;var r=o.DateTime.fromFormat("".concat(e," ").concat(t),v.DATE_TIME_FULL_FORMAT);return r.isValid?r:""};exports.RecurringDatePickerInput=function(e){var f,T,_,b,F,E,w=e.disabled,h=void 0!==w&&w,I=e.onChange,A=e.onDelete,V=e.defaultValues,x=e.initialFrequency,L=void 0===x?c.Frequency.DAILY:x,S=e.setInitialStartDateAfterSelect,j=void 0!==S&&S,M=e.children,R=e.minDate,P=e.isProductSet,N=a.useTranslation(["Design"]).t,C=u.useForm({defaultValues:q({rrule:null!==(f=null==V?void 0:V.rrule)&&void 0!==f?f:"",startDate:null!==(T=null==V?void 0:V.startDate)&&void 0!==T?T:"",endDate:null!==(_=null==V?void 0:V.endDate)&&void 0!==_?_:"",startTime:null!==(b=null==V?void 0:V.startTime)&&void 0!==b?b:"",endTime:null!==(F=null==V?void 0:V.endTime)&&void 0!==F?F:"",initialFrequency:null!==(E=null==V?void 0:V.freq)&&void 0!==E?E:L}),mode:"onChange"}),W=C.watch,O=C.setValue,B=C.handleSubmit,Y=W("startDate"),U=W("endDate"),Q=W("startTime"),J=W("endTime"),K=W("byweekday"),z=D.usePreviousValue(Y),G=g({startDate:Y,endDate:U,startTime:Q,endTime:J,byWeekDay:K}),H=function(e){var n,r=k(U,J||"23:59:59"),a=Array.isArray(e.byweekday)?e.byweekday.map((function(e){return e instanceof c.Weekday?e:new c.Weekday(null==e?void 0:e.weekday)})):e.byweekday,i=(null==e?void 0:e.endTime)?o.DateTime.fromISO(null==e?void 0:e.endTime).toFormat(v.TIME_FULL_FORMAT):"",l=null!==(n=null==e?void 0:e.endDate)&&void 0!==n?n:"",u=m.optionsToString({until:r instanceof o.DateTime&&r.isValid?null==r?void 0:r.toJSDate():null,byweekday:a,count:e.count,freq:(null==a?void 0:a.length)?c.Frequency.WEEKLY:c.Frequency.DAILY,interval:e.interval}).replace("RRULE:","");I(t.__assign(t.__assign({},e),{endDate:l,endTime:i,rrule:u}))};return n.useEffect((function(){var e,t;if(j&&(!z||Y)&&!Y&&K&&K.length&&!Number.isNaN(null===(e=K[0])||void 0===e?void 0:e.weekday)){var n=(null===(t=K[0])||void 0===t?void 0:t.weekday)+1,r=o.DateTime.local(),a=o.DateTime.local().set({weekday:n});a>=r||n===r.weekday?O("startDate",a.toSQLDate()):O("startDate",a.plus({week:1}).toSQLDate())}}),[K,j]),r.createElement(u.FormProvider,t.__assign({},C),r.createElement(l.Form,{noValidate:!0,onSubmit:function(e){return e.preventDefault(),e.stopPropagation(),B(H)(e)}},r.createElement(p.default,{date:Y,disabled:h}),r.createElement(y.default,{disabled:h,minDate:R,isProductSet:P}),M,r.createElement("div",{className:"d-inline-flex align-items-center w-100"},r.createElement(i,{type:"submit"},N("Design:apply")),r.createElement("div",{className:"d-flex flex-grow-1 text-muted mx-3 flex-column"},r.createElement("div",null,G&&"lasts ".concat(G))),V&&r.createElement("div",{className:"d-flex justify-content-end delete-btn"},r.createElement(d.ConfirmModal,null,(function(e){return r.createElement(s.DeleteFieldButton,{onDelete:function(){return e(A)}})}))))))};
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),n=require("react"),r=e(n),a=require("react-i18next"),i=e(require("react-bootstrap/Button")),l=require("react-bootstrap"),u=require("react-hook-form"),o=require("luxon"),d=require("../modals/confirmation/ConfirmModal.js");require("../modals/dialog/Dialog.js"),require("../modals/dialog/DialogContext.js");var s=require("../product-set/elements/DeleteFieldButton.js"),c=require("rrule"),m=e(c),f=require("react-intl"),v=require("@licklist/core/dist/Config/Date"),D=require("@licklist/plugins/dist/hooks/Value/usePreviousValue"),y=require("./RecurrenceIntervalAndFrequencyInput.js"),T=require("./utils.js"),p=require("./RecurrenceWeekdaysInput.js");var q=function(e){var n=e.rrule,r=e.startDate,a=e.endDate,i=e.startTime,l=e.endTime,u=e.initialFrequency,o=void 0===u?c.Frequency.DAILY:u;return t.__assign({startDate:r,endDate:a,startTime:i,endTime:l,interval:1,freq:o},n&&T.parseAndValidateRRule({rrule:n,date:r}))},g=function(e){var r=e.startDate,a=e.endDate,i=e.startTime,l=e.endTime,u=e.byWeekDay,d=void 0===u?[]:u,s=k(r,i||"00:00:00"),c=k(a,l||"23:59:59"),m=f.useIntl(),v=m.formatList,D=m.formatNumber;return n.useMemo((function(){if(s instanceof o.DateTime&&c instanceof o.DateTime&&s.isValid&&c.isValid){var e=o.Interval.fromDateTimes(s.set({second:0}),c.set({second:0})).toDuration(["days","hours","minutes"]);if(e.isValid){var n=function(e,t){return D(e,{style:"unit",unit:t,unitDisplay:"long"})},r=o.Interval.fromDateTimes(s.minus({second:1}),c.plus({second:1})).splitBy({days:1});if(!(d.length?r.reduce((function(e,t){return d.some((function(e){return e.weekday+1===t.start.weekday}))?e+1:e}),0):1))return n(0,"minute");var a=[[e.days,"day"],[e.hours,"hour"],[e.minutes,"minute"]].filter((function(e){return t.__read(e,1)[0]}));return a.length||a.push([0,"minute"]),v(a.map((function(e){return n.apply(void 0,t.__spreadArray([],t.__read(e),!1))})),{style:"long",type:"unit"})}}}),[s,c,d,v,D])},k=function(e,t){var n=o.DateTime.fromFormat("".concat(e," ").concat(t),v.DATE_TIME_FORMAT);if(n.isValid)return n;var r=o.DateTime.fromFormat("".concat(e," ").concat(t),v.DATE_TIME_FULL_FORMAT);return r.isValid?r:""};exports.RecurringDatePickerInput=function(e){var f,T,_,b,F,E,w=e.disabled,h=void 0!==w&&w,I=e.onChange,A=e.onDelete,V=e.defaultValues,x=e.initialFrequency,L=void 0===x?c.Frequency.DAILY:x,j=e.setInitialStartDateAfterSelect,M=void 0!==j&&j,R=e.children,S=e.minDate,N=a.useTranslation(["Design"]).t,C=u.useForm({defaultValues:q({rrule:null!==(f=null==V?void 0:V.rrule)&&void 0!==f?f:"",startDate:null!==(T=null==V?void 0:V.startDate)&&void 0!==T?T:"",endDate:null!==(_=null==V?void 0:V.endDate)&&void 0!==_?_:"",startTime:null!==(b=null==V?void 0:V.startTime)&&void 0!==b?b:"",endTime:null!==(F=null==V?void 0:V.endTime)&&void 0!==F?F:"",initialFrequency:null!==(E=null==V?void 0:V.freq)&&void 0!==E?E:L}),mode:"onChange"}),P=C.watch,W=C.setValue,O=C.handleSubmit,B=P("startDate"),Y=P("endDate"),U=P("startTime"),Q=P("endTime"),J=P("byweekday"),K=D.usePreviousValue(B),z=g({startDate:B,endDate:Y,startTime:U,endTime:Q,byWeekDay:J}),G=function(e){var n,r=k(Y,Q||"23:59:59"),a=Array.isArray(e.byweekday)?e.byweekday.map((function(e){return e instanceof c.Weekday?e:new c.Weekday(null==e?void 0:e.weekday)})):e.byweekday,i=(null==e?void 0:e.endTime)?o.DateTime.fromISO(null==e?void 0:e.endTime).toFormat(v.TIME_FULL_FORMAT):"",l=null!==(n=null==e?void 0:e.endDate)&&void 0!==n?n:"",u=m.optionsToString({until:r instanceof o.DateTime&&r.isValid?null==r?void 0:r.toJSDate():null,byweekday:a,count:e.count,freq:(null==a?void 0:a.length)?c.Frequency.WEEKLY:c.Frequency.DAILY,interval:e.interval}).replace("RRULE:","");I(t.__assign(t.__assign({},e),{endDate:l,endTime:i,rrule:u}))};return n.useEffect((function(){var e,t;if(M&&(!K||B)&&!B&&J&&J.length&&!Number.isNaN(null===(e=J[0])||void 0===e?void 0:e.weekday)){var n=(null===(t=J[0])||void 0===t?void 0:t.weekday)+1,r=o.DateTime.local(),a=o.DateTime.local().set({weekday:n});a>=r||n===r.weekday?W("startDate",a.toSQLDate()):W("startDate",a.plus({week:1}).toSQLDate())}}),[J,M]),r.createElement(u.FormProvider,t.__assign({},C),r.createElement(l.Form,{noValidate:!0,onSubmit:function(e){return e.preventDefault(),e.stopPropagation(),O(G)(e)}},r.createElement(p.default,{date:B,disabled:h}),r.createElement(y.default,{disabled:h,minDate:S}),R,r.createElement("div",{className:"d-inline-flex align-items-center w-100"},r.createElement(i,{type:"submit"},N("Design:apply")),r.createElement("div",{className:"d-flex flex-grow-1 text-muted mx-3 flex-column"},r.createElement("div",null,z&&"lasts ".concat(z))),V&&r.createElement("div",{className:"d-flex justify-content-end delete-btn"},r.createElement(d.ConfirmModal,null,(function(e){return r.createElement(s.DeleteFieldButton,{onDelete:function(){return e(A)}})}))))))};
@@ -1 +1 @@
1
- {"version":3,"file":"CouponFormControl.d.ts","sourceRoot":"","sources":["../../../../src/sales/coupon/control/CouponFormControl.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAC;AAC7F,OAAO,EAOL,eAAe,EACf,UAAU,EACX,MAAM,yDAAyD,CAAC;AAYjE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,UAAU,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,kCAG3B,eAAe,gBA4WjB,CAAC"}
1
+ {"version":3,"file":"CouponFormControl.d.ts","sourceRoot":"","sources":["../../../../src/sales/coupon/control/CouponFormControl.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAC;AAC7F,OAAO,EAOL,eAAe,EACf,UAAU,EACX,MAAM,yDAAyD,CAAC;AAajE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,UAAU,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,CAAC,EAAE,YAAY,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,kCAG3B,eAAe,gBAgXjB,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),l=require("react"),n=(e=l)&&"object"==typeof e&&"default"in e?e.default:e,r=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),i=require("luxon"),m=require("@licklist/core/dist/DataMapper/Product/CouponDataMapper");exports.CouponFormControl=function(e){var u,s,d,c,E,p,g,F,v,C=e.isLoading,_=void 0!==C&&C,b=e.productGroups,f=a.useFormContext(),D=f.register,y=f.setValue,T=f.getValues,P=f.formState.errors,x=f.watch,O=r.useTranslation(["Design","Notification","App"]).t,G=t.__read(l.useState([]),2),N=G[0],R=G[1],k=x("startFrom"),L=x("validTill"),A=l.useRef(null),h=l.useRef(null),w=((u={})[m.COUPON_TYPE_FIXED]=O("Design:fixed"),u[m.COUPON_TYPE_FIXED_PER_PERSON]=O("Design:fixedPerPerson"),u[m.COUPON_TYPE_PERCENTAGE]=O("Design:percentage"),u[m.COUPON_TYPE_PERCENTAGE_PER_PERSON]=O("Design:percentagePerPerson"),u),q=((s={})[m.COUPON_TOTAL_TYPE_GROSS]=O("Design:grossTotal"),s[m.COUPON_TOTAL_TYPE_TOTAL]=O("Design:depositTotal"),s);return l.useEffect((function(){R(T("productGroupIds"))}),[T]),l.useEffect((function(){y("productGroupIds",N)}),[T,y,N]),n.createElement(o.Row,null,n.createElement(o.Col,{md:5},n.createElement("h2",{className:"mb-5"},O("Design:coupon")),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:name")),n.createElement(o.Form.Control,t.__assign({isInvalid:void 0!==P.name},D("name",{required:O("Validation:fieldRequired",{attribute:O("Design:name")})}),{disabled:_})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(d=null==P?void 0:P.name)||void 0===d?void 0:d.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:couponCode")),n.createElement(o.Form.Control,t.__assign({isInvalid:void 0!==P.code},D("code",{required:O("Validation:fieldRequired",{attribute:O("Design:code")})}),{disabled:_})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(c=null==P?void 0:P.code)||void 0===c?void 0:c.message)))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:discountType")),n.createElement(o.Form.Control,t.__assign({},D("discountType",{required:!0}),{as:"select",defaultValue:null!==(E=T("discountType"))&&void 0!==E?E:1,disabled:_}),Object.keys(w).map((function(e){return n.createElement("option",{value:e,key:e},w[e])}))))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:discount")),n.createElement(o.Form.Control,t.__assign({type:"number",isInvalid:void 0!==P.discount},D("discount",{required:O("Validation:fieldRequired",{attribute:O("Design:discount")})}),{disabled:_})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(p=null==P?void 0:P.discount)||void 0===p?void 0:p.message)))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:applyOn")),n.createElement(o.Form.Control,t.__assign({},D("totalType",{required:!0}),{as:"select",defaultValue:null!==(g=T("totalType"))&&void 0!==g?g:1,disabled:_}),Object.keys(q).map((function(e){return n.createElement("option",{value:e,key:e},q[e])}))))))),n.createElement(o.Col,{md:{span:5,offset:1}},n.createElement("h2",{className:"mb-5"},O("Design:limitations")),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:startFrom")),n.createElement(o.Form.Control,t.__assign({type:"date"},D("startFrom"),{value:k,isInvalid:void 0!==P.startFrom,onChange:function(e){var t=i.DateTime.fromSQL(e.target.value).toISODate();y("startFrom",t)},className:k&&"date-input-with-value",ref:A,onClick:function(){var e;return null===(e=null==A?void 0:A.current)||void 0===e?void 0:e.showPicker()},disabled:_})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(F=null==P?void 0:P.startFrom)||void 0===F?void 0:F.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:validTill")),n.createElement(o.Form.Control,t.__assign({type:"date"},D("validTill"),{value:L,onChange:function(e){var t=i.DateTime.fromSQL(e.target.value).toISODate();y("validTill",t)},ref:h,className:L&&"date-input-with-value",onClick:function(){var e;return null===(e=null==h?void 0:h.current)||void 0===e?void 0:e.showPicker()},disabled:_}))))),b&&(null==b?void 0:b.length)>0&&n.createElement(o.Row,null,n.createElement(o.Col,{md:12},n.createElement("h5",{className:"mt-4"},O("Design:productGroups")),n.createElement(o.Form.Group,{className:"d-flex flex-wrap justify-content-between mt-4 mb-5"},null==b?void 0:b.map((function(e){var l,r,a=null!==(r=null===(l=T("productGroupIds"))||void 0===l?void 0:l.includes(String(e.id)))&&void 0!==r&&r;return n.createElement(o.Form.Check,{key:e.id,label:e.name,defaultChecked:a,disabled:_,onChange:function(l){l.target.checked?R((function(l){return Array.from(new Set(t.__spreadArray(t.__spreadArray([],t.__read(l),!1),[String(e.id)],!1)))})):R((function(t){return t.filter((function(t){return String(e.id)!==t}))}))}})})),n.createElement(o.Form.Control,t.__assign({},D("productGroupIds"),{hidden:!0,value:N,disabled:_}))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:totalCoupons")),n.createElement(o.Form.Control,t.__assign({},D("totalCoupons"),{type:"number",isInvalid:void 0!==P.totalCoupons,disabled:_})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(v=null==P?void 0:P.totalCoupons)||void 0===v?void 0:v.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:usesPerUser")),n.createElement(o.Form.Control,t.__assign({type:"number"},D("usesPerUser"),{disabled:_}))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:useAgain")),n.createElement(o.Form.Control,t.__assign({type:"number"},D("useAgain"),{disabled:_})),n.createElement(o.Form.Text,{className:"text-muted"},O("Design:useAgainExplanation")))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:usesPerUserDay")),n.createElement(o.Form.Control,t.__assign({type:"number"},D("usesPerUserDay"),{disabled:_})),n.createElement(o.Form.Text,{className:"text-muted"},O("Design:usesPerUserDayExplanation"))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:minAmount")),n.createElement(o.Form.Control,t.__assign({type:"number"},D("minAmount"),{disabled:_})),n.createElement(o.Form.Text,{className:"text-muted"},O("Design:minAmountExplanation")))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,O("Design:maxAmount")),n.createElement(o.Form.Control,t.__assign({type:"number"},D("maxAmount"),{disabled:_})),n.createElement(o.Form.Text,{className:"text-muted"},O("Design:maxAmountExplanation")))))))};
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("tslib"),l=require("react"),n=e(l),r=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),i=require("luxon"),m=require("@licklist/core/dist/DataMapper/Product/CouponDataMapper"),u=e(require("@licklist/plugins/dist/validation/Rules/couponCodeRules"));exports.CouponFormControl=function(e){var s,d,c,E,p,g,v,F,C,_=e.isLoading,b=void 0!==_&&_,f=e.productGroups,D=a.useFormContext(),y=D.register,T=D.setValue,P=D.getValues,x=D.formState.errors,O=D.watch,G=r.useTranslation(["Design","Notification","App"]).t,R=t.__read(l.useState([]),2),N=R[0],k=R[1],L=O("startFrom"),A=O("validTill"),h=l.useRef(null),w=l.useRef(null),q=((s={})[m.COUPON_TYPE_FIXED]=G("Design:fixed"),s[m.COUPON_TYPE_FIXED_PER_PERSON]=G("Design:fixedPerPerson"),s[m.COUPON_TYPE_PERCENTAGE]=G("Design:percentage"),s[m.COUPON_TYPE_PERCENTAGE_PER_PERSON]=G("Design:percentagePerPerson"),s),S=((d={})[m.COUPON_TOTAL_TYPE_GROSS]=G("Design:grossTotal"),d[m.COUPON_TOTAL_TYPE_TOTAL]=G("Design:depositTotal"),d);return l.useEffect((function(){k(P("productGroupIds"))}),[P]),l.useEffect((function(){T("productGroupIds",N)}),[P,T,N]),n.createElement(o.Row,null,n.createElement(o.Col,{md:5},n.createElement("h2",{className:"mb-5"},G("Design:coupon")),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:name")),n.createElement(o.Form.Control,t.__assign({isInvalid:void 0!==x.name},y("name",{required:G("Validation:fieldRequired",{attribute:G("Design:name")})}),{disabled:b})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(c=null==x?void 0:x.name)||void 0===c?void 0:c.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:couponCode")),n.createElement(o.Form.Control,t.__assign({isInvalid:void 0!==x.code},y("code",{required:G("Validation:fieldRequired",{attribute:G("Design:code")}),pattern:{message:"".concat(G("Validation:fieldCouponCode")),value:u}}),{disabled:b})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(E=null==x?void 0:x.code)||void 0===E?void 0:E.message)))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:discountType")),n.createElement(o.Form.Control,t.__assign({},y("discountType",{required:!0}),{as:"select",defaultValue:null!==(p=P("discountType"))&&void 0!==p?p:1,disabled:b}),Object.keys(q).map((function(e){return n.createElement("option",{value:e,key:e},q[e])}))))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:discount")),n.createElement(o.Form.Control,t.__assign({type:"number",isInvalid:void 0!==x.discount},y("discount",{required:G("Validation:fieldRequired",{attribute:G("Design:discount")})}),{disabled:b})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(g=null==x?void 0:x.discount)||void 0===g?void 0:g.message)))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:applyOn")),n.createElement(o.Form.Control,t.__assign({},y("totalType",{required:!0}),{as:"select",defaultValue:null!==(v=P("totalType"))&&void 0!==v?v:1,disabled:b}),Object.keys(S).map((function(e){return n.createElement("option",{value:e,key:e},S[e])}))))))),n.createElement(o.Col,{md:{span:5,offset:1}},n.createElement("h2",{className:"mb-5"},G("Design:limitations")),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:startFrom")),n.createElement(o.Form.Control,t.__assign({type:"date"},y("startFrom"),{value:L,isInvalid:void 0!==x.startFrom,onChange:function(e){var t=i.DateTime.fromSQL(e.target.value).toISODate();T("startFrom",t)},className:L&&"date-input-with-value",ref:h,onClick:function(){var e;return null===(e=null==h?void 0:h.current)||void 0===e?void 0:e.showPicker()},disabled:b})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(F=null==x?void 0:x.startFrom)||void 0===F?void 0:F.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:validTill")),n.createElement(o.Form.Control,t.__assign({type:"date"},y("validTill"),{value:A,onChange:function(e){var t=i.DateTime.fromSQL(e.target.value).toISODate();T("validTill",t)},ref:w,className:A&&"date-input-with-value",onClick:function(){var e;return null===(e=null==w?void 0:w.current)||void 0===e?void 0:e.showPicker()},disabled:b}))))),f&&(null==f?void 0:f.length)>0&&n.createElement(o.Row,null,n.createElement(o.Col,{md:12},n.createElement("h5",{className:"mt-4"},G("Design:productGroups")),n.createElement(o.Form.Group,{className:"d-flex flex-wrap justify-content-between mt-4 mb-5"},null==f?void 0:f.map((function(e){var l,r,a=null!==(r=null===(l=P("productGroupIds"))||void 0===l?void 0:l.includes(String(e.id)))&&void 0!==r&&r;return n.createElement(o.Form.Check,{key:e.id,label:e.name,defaultChecked:a,disabled:b,onChange:function(l){l.target.checked?k((function(l){return Array.from(new Set(t.__spreadArray(t.__spreadArray([],t.__read(l),!1),[String(e.id)],!1)))})):k((function(t){return t.filter((function(t){return String(e.id)!==t}))}))}})})),n.createElement(o.Form.Control,t.__assign({},y("productGroupIds"),{hidden:!0,value:N,disabled:b}))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:totalCoupons")),n.createElement(o.Form.Control,t.__assign({},y("totalCoupons"),{type:"number",isInvalid:void 0!==x.totalCoupons,disabled:b})),n.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(C=null==x?void 0:x.totalCoupons)||void 0===C?void 0:C.message))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:usesPerUser")),n.createElement(o.Form.Control,t.__assign({type:"number"},y("usesPerUser"),{disabled:b}))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:useAgain")),n.createElement(o.Form.Control,t.__assign({type:"number"},y("useAgain"),{disabled:b})),n.createElement(o.Form.Text,{className:"text-muted"},G("Design:useAgainExplanation")))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:usesPerUserDay")),n.createElement(o.Form.Control,t.__assign({type:"number"},y("usesPerUserDay"),{disabled:b})),n.createElement(o.Form.Text,{className:"text-muted"},G("Design:usesPerUserDayExplanation"))))),n.createElement(o.Row,null,n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:minAmount")),n.createElement(o.Form.Control,t.__assign({type:"number"},y("minAmount"),{disabled:b})),n.createElement(o.Form.Text,{className:"text-muted"},G("Design:minAmountExplanation")))),n.createElement(o.Col,{md:6},n.createElement(o.Form.Group,null,n.createElement(o.Form.Label,null,G("Design:maxAmount")),n.createElement(o.Form.Control,t.__assign({type:"number"},y("maxAmount"),{disabled:b})),n.createElement(o.Form.Text,{className:"text-muted"},G("Design:maxAmountExplanation")))))))};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.44.486-dev.42",
3
+ "version": "0.44.486-dev.44",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/artelogicsoft/licklist_design.git"
@@ -27,14 +27,11 @@ export const useCategoryVerification = () => {
27
27
  productArray.map((el) => el.id).includes(product?.id)
28
28
  );
29
29
 
30
- if (!selectedProducts.length) {
31
- return 0;
32
- }
33
-
34
- const productMinSpendsSum = selectedProducts.reduce(
35
- (sum, product) => sum + (product?.minSpend || 0),
36
- 0
37
- );
30
+ const productMinSpendsSum =
31
+ selectedProducts?.reduce(
32
+ (sum, product) => sum + (product?.minSpend || 0),
33
+ 0
34
+ ) || 0;
38
35
 
39
36
  return acc + productMinSpendsSum;
40
37
  }, 0);
@@ -176,7 +176,6 @@ export const DateAndRecurrenceInput = ({
176
176
  defaultValues={editState.values}
177
177
  onChange={handleRecurringDateChange}
178
178
  onDelete={handleDelete}
179
- isProductSet
180
179
  />
181
180
  </Popover.Content>
182
181
  </Popover>
@@ -1,4 +1,4 @@
1
- import React, { useEffect, useState } from "react";
1
+ import React, { useEffect } from "react";
2
2
  import { DateTime } from "luxon";
3
3
  import { Col, Form, Row } from "react-bootstrap";
4
4
  import { useTranslation } from "react-i18next";
@@ -11,7 +11,6 @@ interface RecurrenceIntervalAndFrequencyInputProps {
11
11
  minDate?: string;
12
12
  startDateLabel?: string;
13
13
  startTimeLabel?: string;
14
- isProductSet?: boolean;
15
14
  endDateLabel?: string;
16
15
  endTimeLabel?: string;
17
16
  startTimeRules?: Pick<
@@ -33,13 +32,11 @@ function RecurrenceIntervalAndFrequencyInput({
33
32
  endTimeLabel,
34
33
  startTimeRules,
35
34
  endTimeRules,
36
- isProductSet,
37
35
  }: RecurrenceIntervalAndFrequencyInputProps) {
38
36
  const { t } = useTranslation(["Design", "Notification", "App"]);
39
37
 
40
38
  const {
41
39
  getValues,
42
- setValue,
43
40
  formState: { errors },
44
41
  register,
45
42
  trigger,
@@ -50,14 +47,6 @@ function RecurrenceIntervalAndFrequencyInput({
50
47
  const startTime = getValues("startTime");
51
48
  const endTime = getValues("endTime");
52
49
 
53
- const [withOutEndDate, setWithOutEndDate] = useState<boolean>(!endDate);
54
- const isProductSetWithoutEndDate = isProductSet && withOutEndDate;
55
-
56
- const handleWithoutEndDate = () => {
57
- setValue("endDate", "");
58
- setWithOutEndDate((prevWithOutEndDateValue) => !prevWithOutEndDateValue);
59
- };
60
-
61
50
  useEffect(() => {
62
51
  if (!startDate || !endDate) {
63
52
  return;
@@ -101,7 +90,7 @@ function RecurrenceIntervalAndFrequencyInput({
101
90
  <Form.Control
102
91
  type="date"
103
92
  {...register("endDate", {
104
- required: !isProductSetWithoutEndDate,
93
+ required: true,
105
94
  validate: (date) => {
106
95
  if (!startDate || !date) {
107
96
  return true;
@@ -122,7 +111,7 @@ function RecurrenceIntervalAndFrequencyInput({
122
111
  })}
123
112
  defaultValue={endDate}
124
113
  className={endDate && "date-input-with-value"}
125
- disabled={disabled || isProductSetWithoutEndDate}
114
+ disabled={disabled}
126
115
  min={startDate || undefined}
127
116
  isInvalid={Boolean(errors.endDate)}
128
117
  />
@@ -130,21 +119,6 @@ function RecurrenceIntervalAndFrequencyInput({
130
119
  {errors.endDate?.message}
131
120
  </Form.Control.Feedback>
132
121
  </Form.Group>
133
- {isProductSet && (
134
- <Form.Group className="custom-checkbox">
135
- <Form.Check custom type="checkbox">
136
- <Form.Check.Input
137
- type="checkbox"
138
- className="checkbox-input"
139
- checked={withOutEndDate}
140
- onChange={handleWithoutEndDate}
141
- />
142
- <Form.Check.Label>
143
- {t("Design:infiniteProductSet")}
144
- </Form.Check.Label>
145
- </Form.Check>
146
- </Form.Group>
147
- )}
148
122
  </Col>
149
123
  </Row>
150
124
 
@@ -26,7 +26,6 @@ export interface RecurringDatePickerInputProps {
26
26
  initialFrequency?: Frequency;
27
27
  setInitialStartDateAfterSelect?: boolean;
28
28
  minDate?: string;
29
- isProductSet?: boolean;
30
29
  }
31
30
 
32
31
  export interface RecurringDatePickerInputValues {
@@ -52,7 +51,6 @@ export function RecurringDatePickerInput({
52
51
  setInitialStartDateAfterSelect = false,
53
52
  children,
54
53
  minDate,
55
- isProductSet,
56
54
  }: PropsWithChildren<RecurringDatePickerInputProps>) {
57
55
  const { t } = useTranslation(["Design"]);
58
56
 
@@ -190,7 +188,6 @@ export function RecurringDatePickerInput({
190
188
  <RecurrenceIntervalAndFrequencyInput
191
189
  disabled={disabled}
192
190
  minDate={minDate}
193
- isProductSet={isProductSet}
194
191
  />
195
192
 
196
193
  {children}
@@ -14,6 +14,7 @@ import { DateTime } from "luxon";
14
14
  import { Col, Form, Row } from "react-bootstrap";
15
15
  import { useFormContext } from "react-hook-form";
16
16
  import { useTranslation } from "react-i18next";
17
+ import couponCodeRules from "@licklist/plugins/dist/validation/Rules/couponCodeRules";
17
18
  /* TODO: Show Recurrent date, when reccurent date bugs are fixed */
18
19
  // import { Frequency } from "rrule";
19
20
  // import { RecurrenceInput } from "../../../recurrence-input";
@@ -132,6 +133,10 @@ export const CouponFormControl = ({
132
133
  required: t("Validation:fieldRequired", {
133
134
  attribute: t("Design:code"),
134
135
  }) as string,
136
+ pattern: {
137
+ message: `${t("Validation:fieldCouponCode")}`,
138
+ value: couponCodeRules,
139
+ },
135
140
  })}
136
141
  disabled={isLoading}
137
142
  />