@licklist/design 0.63.0-dev.0 → 0.63.0-dev.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.
Files changed (34) hide show
  1. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts.map +1 -1
  2. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.js +1 -1
  3. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.d.ts.map +1 -1
  4. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -1
  5. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  6. package/dist/product-set/control/ProductSetControl.js +1 -1
  7. package/dist/product-set/form/ProductCategoriesControl.d.ts +2 -1
  8. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  9. package/dist/product-set/form/ProductCategoriesControl.js +1 -1
  10. package/dist/product-set/form/ProductsControl.d.ts +2 -1
  11. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  12. package/dist/product-set/form/ProductsControl.js +1 -1
  13. package/dist/product-set/form/StepsControl.d.ts +2 -1
  14. package/dist/product-set/form/StepsControl.d.ts.map +1 -1
  15. package/dist/product-set/form/StepsControl.js +1 -1
  16. package/dist/product-set/product/ProductControl.d.ts +1 -0
  17. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  18. package/dist/product-set/product/ProductControl.js +1 -1
  19. package/dist/product-set/step/StepControl.d.ts +2 -1
  20. package/dist/product-set/step/StepControl.d.ts.map +1 -1
  21. package/dist/product-set/step/StepControl.js +1 -1
  22. package/dist/sortable-tree/SortableTreeItem.d.ts +1 -2
  23. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  24. package/dist/sortable-tree/SortableTreeItem.js +1 -1
  25. package/package.json +2 -2
  26. package/src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx +8 -1
  27. package/src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx +1 -0
  28. package/src/product-set/control/ProductSetControl.tsx +7 -3
  29. package/src/product-set/form/ProductCategoriesControl.tsx +8 -4
  30. package/src/product-set/form/ProductsControl.tsx +87 -77
  31. package/src/product-set/form/StepsControl.tsx +11 -6
  32. package/src/product-set/product/ProductControl.tsx +2 -2
  33. package/src/product-set/step/StepControl.tsx +4 -3
  34. package/src/sortable-tree/SortableTreeItem.tsx +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"SelectEventProductSet.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGrE,UAAU,0BAA2B,SAAQ,iBAAiB;IAC5D,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,qBAAqB,kHAO/B,0BAA0B,gBA0L5B,CAAC"}
1
+ {"version":3,"file":"SelectEventProductSet.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AACvF,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAGrE,UAAU,0BAA2B,SAAQ,iBAAiB;IAC5D,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAChD,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,qBAAqB,kHAO/B,0BAA0B,gBAiM5B,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),n=require("react"),r=(e=n)&&"object"==typeof e&&"default"in e?e.default:e,o=require("react-i18next"),a=require("react-bootstrap"),c=require("react-hook-form"),u=require("@react-aria/utils"),l=require("../../../../modals/confirmation/ConfirmModal.js"),d=require("./component/EditEventProductSet.js");exports.SelectEventProductSet=function(e){var i=e.productSets,s=e.createProductSet,m=e.setEditProductSetId,v=e.showEditProductSet,f=e.setShowEditProductSet,S=e.workHours,E=o.useTranslation(["Design"]).t,p=c.useFormContext(),b=p.control,g=p.watch,P=p.trigger,C=p.formState.errors,h=p.getValues,w=p.setValue,I=u.useId(),k=g("productSetId"),x=g("editedProductSet"),N=n.useCallback((function(){m(String(k)),f(!0)}),[k]),q=function(){f(!1),x&&w("editedProductSet",void 0)},F=function(){return t.__awaiter(void 0,void 0,void 0,(function(){var e;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,P()];case 1:return t.sent()?(e=h(),[4,s(e)]):[2];case 2:return t.sent(),[2]}}))}))};return r.createElement(r.Fragment,null,r.createElement("div",{className:"d-flex mt-5 mb-5 align-items-end"},r.createElement(a.Form.Group,{controlId:I,className:"d-flex flex-column w-100 choose-product-set-container "},r.createElement(a.Form.Label,null,E("Design:selectProductSet")),r.createElement(c.Controller,{control:b,name:"productSetId",render:function(e){var t,n=e.field,o=String(n.value);return r.createElement(r.Fragment,null,r.createElement("div",{className:"d-flex align-items-center flex-row w-100"},r.createElement(l.ConfirmModal,null,(function(e){return r.createElement(a.Form.Control,{as:"select",onChange:function(t){return function(e,t){x?t((function(){w("productSetId",e),w("editedProductSet",void 0)})):(v&&f(!1),w("productSetId",e))}(Number(t.target.value),e)},isInvalid:Boolean(C.productSetId),value:o},r.createElement("option",{value:"",hidden:!0},E("Design:chooseProductSet")),null==i?void 0:i.map((function(e){var t=x&&(null==x?void 0:x.id)===(null==e?void 0:e.id);return r.createElement("option",{key:e.id,value:e.id},t||(null==e?void 0:e.parentMenuId)?"[".concat(E("edited"),"] ").concat(t?null==x?void 0:x.name:e.name):e.name)})))})),r.createElement("div",{className:"buttons-container"},!v&&!x&&r.createElement(a.Button,{variant:"",className:"btn product-set-button mr-4",onClick:F},E("addNewProductSet")),!v&&k&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ",onClick:N},E("editProductSet")),v&&r.createElement(a.Button,{variant:"",className:"btn product-set-button",onClick:q},E("cancelAndRevert")),!v&&x&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ml-4 text-danger",onClick:q},E("undoChanges")))),r.createElement(a.Form.Control.Feedback,{type:"invalid"},null===(t=null==C?void 0:C.productSetId)||void 0===t?void 0:t.message))}}))),v&&k&&r.createElement(d.EditEventProductSet,{onSubmit:function(e){f(!1),w("editedProductSet",e)},defaultValues:k===(null==x?void 0:x.id)&&x,workHours:S}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),n=require("react"),r=(e=n)&&"object"==typeof e&&"default"in e?e.default:e,o=require("react-i18next"),a=require("react-bootstrap"),u=require("react-hook-form"),c=require("@react-aria/utils"),d=require("../../../../modals/confirmation/ConfirmModal.js"),l=require("./component/EditEventProductSet.js");exports.SelectEventProductSet=function(e){var i,s=e.productSets,m=e.createProductSet,v=e.setEditProductSetId,f=e.showEditProductSet,S=e.setShowEditProductSet,E=e.workHours,p=o.useTranslation(["Design"]).t,b=u.useFormContext(),g=b.control,P=b.watch,C=b.trigger,I=b.formState.errors,h=b.getValues,w=b.setValue,k=c.useId(),x=P("productSetId"),N=P("editedProductSet"),q=null===(i=s.find((function(e){return e.id===x})))||void 0===i?void 0:i.parentMenuId,F=n.useCallback((function(){v(String(x)),S(!0)}),[x]),_=function(){S(!1),N&&w("editedProductSet",void 0)},B=function(){return t.__awaiter(void 0,void 0,void 0,(function(){var e;return t.__generator(this,(function(t){switch(t.label){case 0:return[4,C()];case 1:return t.sent()?(e=h(),[4,m(e)]):[2];case 2:return t.sent(),[2]}}))}))},M=!f&&x&&!q;return r.createElement(r.Fragment,null,r.createElement("div",{className:"d-flex mt-5 mb-5 align-items-end"},r.createElement(a.Form.Group,{controlId:k,className:"d-flex flex-column w-100 choose-product-set-container "},r.createElement(a.Form.Label,null,p("Design:selectProductSet")),r.createElement(u.Controller,{control:g,name:"productSetId",render:function(e){var t,n=e.field,o=String(n.value);return r.createElement(r.Fragment,null,r.createElement("div",{className:"d-flex align-items-center flex-row w-100"},r.createElement(d.ConfirmModal,null,(function(e){return r.createElement(a.Form.Control,{as:"select",onChange:function(t){return function(e,t){N?t((function(){w("productSetId",e),w("editedProductSet",void 0)})):(f&&S(!1),w("productSetId",e))}(Number(t.target.value),e)},isInvalid:Boolean(I.productSetId),value:o},r.createElement("option",{value:"",hidden:!0},p("Design:chooseProductSet")),null==s?void 0:s.map((function(e){var t=N&&(null==N?void 0:N.id)===(null==e?void 0:e.id);return r.createElement("option",{key:e.id,value:e.id},t||(null==e?void 0:e.parentMenuId)?"[".concat(p("edited"),"] ").concat(t?null==N?void 0:N.name:e.name):e.name)})))})),r.createElement("div",{className:"buttons-container"},!f&&!N&&r.createElement(a.Button,{variant:"",className:"btn product-set-button mr-4",onClick:B},p("addNewProductSet")),M&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ",onClick:F},p("editProductSet")),f&&r.createElement(a.Button,{variant:"",className:"btn product-set-button",onClick:_},p("cancelAndRevert")),!f&&N&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ml-4 text-danger",onClick:_},p("undoChanges")))),r.createElement(a.Form.Control.Feedback,{type:"invalid"},null===(t=null==I?void 0:I.productSetId)||void 0===t?void 0:t.message))}}))),f&&x&&r.createElement(l.EditEventProductSet,{onSubmit:function(e){S(!1),w("editedProductSet",e)},defaultValues:x===(null==N?void 0:N.id)&&N,workHours:E}))};
@@ -1 +1 @@
1
- {"version":3,"file":"EditEventProductSet.d.ts","sourceRoot":"","sources":["../../../../../../src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAKtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,UAAU,wBAAwB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC;IACnE,aAAa,CAAC,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IACxD,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,mBAAmB,4CAI7B,wBAAwB,gBAiH1B,CAAC"}
1
+ {"version":3,"file":"EditEventProductSet.d.ts","sourceRoot":"","sources":["../../../../../../src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAKtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG1D,eAAO,MAAM,WAAW,IAAI,CAAC;AAE7B,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,UAAU,wBAAwB;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAC;IACnE,aAAa,CAAC,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IACxD,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,mBAAmB,4CAI7B,wBAAwB,gBAkH1B,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),o=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,u=require("react-router-dom"),s=require("../../../../../static/loader/BlockLoader.js"),i=require("react-i18next"),a=require("react-bootstrap"),n=require("react-hook-form"),d=require("lodash");require("../../../../../product-set/elements/DeleteFieldButton.js");var c=require("@licklist/plugins/dist/context/event/EventEditProductSetContext");require("../../../../../product-set/card/ProductSetCard.js");var l=require("../../../../../product-set/form/context.js");require("../../../../../product-set/step/StepControl.js"),require("../../../../../product-set/product-category/ProductCategoryControl.js"),require("../../../../../product-set/product/booking-management/ProductBookingManagementControl.js"),require("../../../../../product-set/product/deposit/ProductDepositControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityConstantControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityRechargingControl.js"),require("../../../../../product-set/product/ProductControl.js");var p=require("../../../../../product-set/utils/index.js"),m=require("../../../../../product-set/control/ProductSetControl.js");require("../../../../../product-set/deposit-paid/ProductSetDepositPaidControl.js"),require("../../../../../product-set/form/ProductSetForm.js"),require("../../../../../product-set/popover/ProductSetPopover.js"),require("../../../../../product-set/tabs/ProductSetTab.js"),require("../../../../../product-set/tabs/ProductSetTabs.js");var v=require("../../../utils/getDefaultProductSet.js");exports.DEFAULT_FEE=5,exports.EditEventProductSet=function(e){var q=e.onSubmit,P=e.defaultValues,S=e.workHours,g=u.useParams().companyId,f=c.useEventEditProductSetContext(),E=f.companies,j=f.isLoading,C=f.settings,b=f.smsTemplates,T=f.systemSettings,y=f.productGroupsData,x=f.productSetData,D=f.venueMapSets,k=f.emailTemplates,F=f.fieldSetsData,h=i.useTranslation("Design").t,M=r.useMemo((function(){return P||(x?v.getDefaultValues(x,!0):void 0)}),[x,P]),w=n.useForm({defaultValues:P,mode:"onChange"}),N=w.reset,L=w.handleSubmit,B=(0,w.watch)();r.useEffect((function(){M&&!d.isEqual(M,B)&&N(M)}),[M]);var _=String((null==T?void 0:T.feeInPercent)||5),H=null==E?void 0:E.find((function(e){return String(null==e?void 0:e.id)===g})),Q=r.useMemo((function(){return y?y.map((function(e){var t=e.id,r=e.name;return{id:Number(t),value:r}})):[]}),[y]);return j?o.createElement(s.BlockLoader,null):o.createElement(l.ProductSetContextProvider,{productGroupList:Q,providerHasMap:null==C?void 0:C.providerHasMap,venueMapSets:D},o.createElement("div",{className:"edit-product-set-warning"},h("editProductSetWarning",{attribute:null==x?void 0:x.name})),o.createElement("div",{className:"product-set-border"}),o.createElement(n.FormProvider,t.__assign({},w),o.createElement(a.Form,{className:"mt-6"},o.createElement(m.ProductSetControl,{smsTemplates:p.getFilteredTemplates(b,null==B?void 0:B.smsTemplates),emailTemplates:p.getFilteredTemplates(k,null==B?void 0:B.emailTemplates),showEmailTemplate:!!k,showSmsTemplate:!!b,fieldSets:F,isLoading:j,companyName:null==H?void 0:H.title,fee:_,isEventEditProductSet:!0,workHours:S}),o.createElement(a.Button,{disabled:j,className:"save-event mt-4",onClick:L(q)},h("update")),o.createElement("div",{className:"edit-product-set-warning mt-4"},h("recurrentOverridesWarining")))))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("tslib"),r=require("react"),o=(e=r)&&"object"==typeof e&&"default"in e?e.default:e,u=require("react-router-dom"),s=require("../../../../../static/loader/BlockLoader.js"),i=require("react-i18next"),a=require("react-bootstrap"),d=require("react-hook-form"),n=require("lodash");require("../../../../../product-set/elements/DeleteFieldButton.js");var c=require("@licklist/plugins/dist/context/event/EventEditProductSetContext");require("../../../../../product-set/card/ProductSetCard.js");var l=require("../../../../../product-set/form/context.js");require("../../../../../product-set/step/StepControl.js"),require("../../../../../product-set/product-category/ProductCategoryControl.js"),require("../../../../../product-set/product/booking-management/ProductBookingManagementControl.js"),require("../../../../../product-set/product/deposit/ProductDepositControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityConstantControl.js"),require("../../../../../product-set/product/quantity/ProductQuantityRechargingControl.js"),require("../../../../../product-set/product/ProductControl.js");var p=require("../../../../../product-set/utils/index.js"),m=require("../../../../../product-set/control/ProductSetControl.js");require("../../../../../product-set/deposit-paid/ProductSetDepositPaidControl.js"),require("../../../../../product-set/form/ProductSetForm.js"),require("../../../../../product-set/popover/ProductSetPopover.js"),require("../../../../../product-set/tabs/ProductSetTab.js"),require("../../../../../product-set/tabs/ProductSetTabs.js");var v=require("../../../utils/getDefaultProductSet.js");exports.DEFAULT_FEE=5,exports.EditEventProductSet=function(e){var q=e.onSubmit,P=e.defaultValues,S=e.workHours,g=u.useParams().companyId,f=c.useEventEditProductSetContext(),E=f.companies,j=f.isLoading,C=f.settings,b=f.smsTemplates,T=f.systemSettings,y=f.productGroupsData,x=f.productSetData,D=f.venueMapSets,k=f.emailTemplates,F=f.fieldSetsData,h=i.useTranslation("Design").t,M=r.useMemo((function(){return P||(x?v.getDefaultValues(x,!0):void 0)}),[x,P]),w=d.useForm({defaultValues:P,mode:"onChange"}),N=w.reset,L=w.handleSubmit,B=(0,w.watch)();r.useEffect((function(){M&&!n.isEqual(M,B)&&N(M)}),[M]);var _=String((null==T?void 0:T.feeInPercent)||5),H=null==E?void 0:E.find((function(e){return String(null==e?void 0:e.id)===g})),O=r.useMemo((function(){return y?y.map((function(e){var t=e.id,r=e.name;return{id:Number(t),value:r}})):[]}),[y]);return j?o.createElement(s.BlockLoader,null):o.createElement(l.ProductSetContextProvider,{productGroupList:O,providerHasMap:null==C?void 0:C.providerHasMap,venueMapSets:D},o.createElement("div",{className:"edit-product-set-warning"},h("editProductSetWarning",{attribute:null==x?void 0:x.name})),o.createElement("div",{className:"product-set-border"}),o.createElement(d.FormProvider,t.__assign({},w),o.createElement(a.Form,{className:"mt-6"},o.createElement(m.ProductSetControl,{smsTemplates:p.getFilteredTemplates(b,null==B?void 0:B.smsTemplates),emailTemplates:p.getFilteredTemplates(k,null==B?void 0:B.emailTemplates),showEmailTemplate:!!k,showSmsTemplate:!!b,fieldSets:F,isLoading:j,companyName:null==H?void 0:H.title,fee:_,isEventEditProductSet:!0,isOverrides:!0,workHours:S}),o.createElement(a.Button,{disabled:j,className:"save-event mt-4",onClick:L(q)},h("update")),o.createElement("div",{className:"edit-product-set-warning mt-4"},h("recurrentOverridesWarining")))))};
@@ -1 +1 @@
1
- {"version":3,"file":"ProductSetControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/ProductSetControl.tsx"],"names":[],"mappings":";AAKA,OAAO,EAOL,mBAAmB,EACnB,cAAc,EAEd,gBAAgB,EACjB,MAAM,6DAA6D,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,yDAAyD,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAE7G,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAgBhC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,aAAa,GAAG,WAAW,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,mBAAmB,CAAC;IACrC,aAAa,CAAC,EAAE,UAAU,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAClC,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,EACT,GAAU,EACV,SAAc,EACd,cAAmB,EACnB,YAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,4BAAoC,EACpC,WAAmB,GACpB,EAAE,sBAAsB,eAgTxB"}
1
+ {"version":3,"file":"ProductSetControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/ProductSetControl.tsx"],"names":[],"mappings":";AAKA,OAAO,EAOL,mBAAmB,EACnB,cAAc,EAEd,gBAAgB,EACjB,MAAM,6DAA6D,CAAC;AAErE,OAAO,EAAE,QAAQ,EAAE,MAAM,yDAAyD,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,qEAAqE,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,mEAAmE,CAAC;AAGhG,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAE7G,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAgBhC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,aAAa,GAAG,WAAW,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,mBAAmB,CAAC;IACrC,aAAa,CAAC,EAAE,UAAU,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,MAAM,WAAW,uBAAuB;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;IACjC,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,YAAY,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAClC,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,WAAW,EACX,SAAS,EACT,GAAU,EACV,SAAc,EACd,cAAmB,EACnB,YAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,4BAAoC,EACpC,WAAmB,GACpB,EAAE,sBAAsB,eAoTxB"}
@@ -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"),r=e(require("react")),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),l=e(require("@licklist/plugins/dist/services/Form/HookFormService")),i=require("@react-aria/utils"),s=e(require("clsx")),m=require("../../static/WarningMessage.js");require("../../static/index.js");var d,c,u=require("@licklist/core/dist/DataMapper/Product/ProductSetDataMapper"),p=require("@licklist/plugins/dist/validation/Rules/urlRule"),E=(e(p),require("./DateAndRecurrenceInput.js")),g=require("./TutorialGifCard.js"),v=require("../form/StepsControl.js"),P=require("../../typeahead/Typeahead.js"),T=require("./DateInput.js"),O=((d={})[u.OPERATIONAL_COST_PROVIDER]="operationalCostProvider",d[u.OPERATIONAL_COST_CUSTOMER]="operationalCostCustomer",d),_=((c={})[u.RELY_ON_PEOPLE_PRODUCT_CAPACITY_QUANTITY]="peopleProductCapacityQuantity",c[u.RELY_ON_PEOPLE_PRODUCT_QUANTITY]="peopleProductQuantity",c[u.RELY_ON_PEOPLE_QUANTITY]="peopleQuantity",c);exports.ProductSetControl=function(e){var d,c=e.companyName,C=e.isLoading,F=e.fee,f=void 0===F?"5%":F,I=e.fieldSets,y=void 0===I?[]:I,L=e.emailTemplates,b=void 0===L?[]:L,N=e.smsTemplates,k=void 0===N?[]:N,A=e.isEventEditProductSet,S=e.isCreateAction,h=e.showEmailTemplate,D=e.showSmsTemplate,R=e.workHours,Y=e.providerHasBookingManagement,q=void 0!==Y&&Y,U=e.isOverrides,M=void 0!==U&&U,j=a.useTranslation(["Design","Validation","Notification"]).t,x=o.useFormContext(),V=x.register,w=x.control,G=x.formState.errors,H=x.watch,Q=x.setError,B=x.clearErrors,W=H("steps"),z=i.useId(),J=i.useId(),K=i.useId(),X=D&&!M,Z=h&&!M;return r.createElement(n.Row,{className:"product-set-form ".concat(A&&"event-edit-product-set")},r.createElement(n.Col,{md:6,sm:12,className:"pr-5"},r.createElement(n.Form.Group,{controlId:z},r.createElement(n.Form.Label,null,j("Design:name"),"*"),r.createElement(n.Form.Control,t.__assign({},V("name",{required:j("Validation:fieldRequired",{attribute:j("name")}),maxLength:255,validate:function(){var e;return W.length?(null===(e=G.steps)||void 0===e?void 0:e.type)===l.manualErrorType&&B("steps"):Q("steps",{type:l.manualErrorType,message:j("Validation:fieldMinNumber",{attribute:j("steps"),min:1})}),!0}}),{placeholder:j("Design:placeholderProductSetName"),isInvalid:Boolean(G.name)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},null===(d=G.name)||void 0===d?void 0:d.message)),M?r.createElement(T.DateInput,{workHours:R,isLoading:C,providerHasBookingManagement:q}):r.createElement(r.Fragment,null,S&&r.createElement(E.DateAndRecurrenceInput,{isEventEditProductSet:A,workHours:R,isLoading:C,providerHasBookingManagement:q})),r.createElement("div",{className:"divider"}),r.createElement(g.default,{isOverrides:M}),r.createElement(v.StepsControl,{isLoading:C,isOverrides:M})),r.createElement(n.Col,{md:6,sm:12},r.createElement("div",{className:"second-column"},r.createElement(n.Form.Group,null,r.createElement(n.Form.Label,{className:"mb-0"},j("Design:operationalCost")),r.createElement("div",{className:"d-flex"},r.createElement("span",{className:"booking-fee-text"},j("bookingFeePaid",{fee:f}))),r.createElement(n.Form.Control,t.__assign({},V("operationalCost",{required:!0}),{as:"select",defaultValue:u.OPERATIONAL_COST_PROVIDER,disabled:M,isInvalid:l.isInvalid("operationalCost",G)}),Object.keys(u.OPERATIONAL_COST_TYPES).map((function(e){return r.createElement("option",{value:u.OPERATIONAL_COST_TYPES[e],key:u.OPERATIONAL_COST_TYPES[e]},j(O[u.OPERATIONAL_COST_TYPES[e]],{companyName:c}))}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("operationalCost",G))),r.createElement(n.Form.Group,{controlId:K},r.createElement(n.Form.Label,null,j("peopleQuantityType")),r.createElement(n.Form.Control,t.__assign({},V("relyOnPeopleType"),{as:"select",defaultValue:null,disabled:M,isInvalid:l.isInvalid("relyOnPeopleType",G)}),r.createElement("option",{value:""},j("notRequired")," "),Object.keys(u.RELY_ON_PEOPLE_TYPES).map((function(e){return r.createElement("option",{value:u.RELY_ON_PEOPLE_TYPES[e],key:u.RELY_ON_PEOPLE_TYPES[e]},j(_[u.RELY_ON_PEOPLE_TYPES[e]]))}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("relyOnPeopleType",G))),r.createElement(n.Form.Group,{controlId:J},r.createElement(n.Form.Label,null,j("Design:termsAndConditions")),r.createElement(n.Form.Control,t.__assign({},V("termsAndConditions"),{as:"textarea",rows:2,disabled:C||M,isInvalid:l.isInvalid("termsAndConditions",G)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("termsAndConditions",G))),r.createElement(n.Form.Group,null,r.createElement(n.Form.Label,{className:"mt-4"},j("Design:emailTemplate")),r.createElement(r.Fragment,null,Z?r.createElement(P.Typeahead,{name:"emailTemplates",options:b,isMultipleChoise:!0,placeholder:j("Design:choose"),noOptionsMessage:j("Design:noActiveTemplates",{notification:j("Design:email")})}):r.createElement(m.default,{message:j("Design:noActiveTemplates",{notification:j("Design:email")})})),r.createElement(n.Form.Label,{className:s(b.length>0?"mt-4":"mt-1")},j("Design:smsTemplate")),X?r.createElement(P.Typeahead,{name:"smsTemplates",options:k,isMultipleChoise:!0,placeholder:j("Design:choose"),noOptionsMessage:j("Design:noActiveTemplates",{notification:j("Design:sms")})}):r.createElement(m.default,{message:j("Design:noActiveTemplates",{notification:j("Design:sms")})})),r.createElement(n.Form.Group,null,r.createElement(o.Controller,{control:w,name:"fieldSetId",render:function(e){var t=e.field,a=Number(t.value);return r.createElement(r.Fragment,null,r.createElement(n.Form.Label,null,j("Design:customFields")),r.createElement(n.Form.Control,{onChange:t.onChange,value:a,as:"select",disabled:M,isInvalid:l.isInvalid("fieldSetId",G)},r.createElement("option",{value:""},j("Design:choose")),null==y?void 0:y.map((function(e){return r.createElement("option",{value:e.id,key:e.id},e.name)}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("fieldSetId",G)))}})),r.createElement(n.Form.Group,{controlId:"thankYouPageUrlId"},r.createElement(n.Form.Label,null,j("thankYouPageUrl")),r.createElement(n.Form.Control,t.__assign({},V("thankYouPageUrl",{validate:function(e){return!e||(!!p.ruleForUrlWithProtocol.test(e)||j("Validation:fieldValidWebURL",{attribute:j("thankYouPageUrl")}))}}),{disabled:M,isInvalid:l.isInvalid("thankYouPageUrl",G)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("thankYouPageUrl",G))))))};
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"),r=e(require("react")),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),l=e(require("@licklist/plugins/dist/services/Form/HookFormService")),i=require("@react-aria/utils"),s=e(require("clsx")),m=require("../../static/WarningMessage.js");require("../../static/index.js");var d,c,u=require("@licklist/core/dist/DataMapper/Product/ProductSetDataMapper"),E=require("@licklist/plugins/dist/validation/Rules/urlRule"),p=(e(E),require("./DateAndRecurrenceInput.js")),g=require("./TutorialGifCard.js"),v=require("../form/StepsControl.js"),P=require("../../typeahead/Typeahead.js"),T=require("./DateInput.js"),O=((d={})[u.OPERATIONAL_COST_PROVIDER]="operationalCostProvider",d[u.OPERATIONAL_COST_CUSTOMER]="operationalCostCustomer",d),_=((c={})[u.RELY_ON_PEOPLE_PRODUCT_CAPACITY_QUANTITY]="peopleProductCapacityQuantity",c[u.RELY_ON_PEOPLE_PRODUCT_QUANTITY]="peopleProductQuantity",c[u.RELY_ON_PEOPLE_QUANTITY]="peopleQuantity",c);exports.ProductSetControl=function(e){var d,c=e.companyName,C=e.isLoading,F=e.fee,f=void 0===F?"5%":F,I=e.fieldSets,y=void 0===I?[]:I,L=e.emailTemplates,b=void 0===L?[]:L,N=e.smsTemplates,S=void 0===N?[]:N,k=e.isEventEditProductSet,A=e.isCreateAction,h=e.showEmailTemplate,D=e.showSmsTemplate,R=e.workHours,Y=e.providerHasBookingManagement,q=void 0!==Y&&Y,U=e.isOverrides,M=void 0!==U&&U,j=a.useTranslation(["Design","Validation","Notification"]).t,x=o.useFormContext(),V=x.register,w=x.control,G=x.formState.errors,H=x.watch,Q=x.setError,B=x.clearErrors,W=H("steps"),z=i.useId(),J=i.useId(),K=i.useId(),X=D&&!M,Z=h&&!M,$=!k&&M;return r.createElement(n.Row,{className:"product-set-form ".concat(k&&"event-edit-product-set")},r.createElement(n.Col,{md:6,sm:12,className:"pr-5"},r.createElement(n.Form.Group,{controlId:z},r.createElement(n.Form.Label,null,j("Design:name"),"*"),r.createElement(n.Form.Control,t.__assign({},V("name",{required:j("Validation:fieldRequired",{attribute:j("name")}),maxLength:255,validate:function(){var e;return W.length?(null===(e=G.steps)||void 0===e?void 0:e.type)===l.manualErrorType&&B("steps"):Q("steps",{type:l.manualErrorType,message:j("Validation:fieldMinNumber",{attribute:j("steps"),min:1})}),!0}}),{placeholder:j("Design:placeholderProductSetName"),isInvalid:Boolean(G.name)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},null===(d=G.name)||void 0===d?void 0:d.message)),$?r.createElement(T.DateInput,{workHours:R,isLoading:C,providerHasBookingManagement:q}):r.createElement(r.Fragment,null,A&&r.createElement(p.DateAndRecurrenceInput,{isEventEditProductSet:k,workHours:R,isLoading:C,providerHasBookingManagement:q})),r.createElement("div",{className:"divider"}),r.createElement(g.default,{isOverrides:M}),r.createElement(v.StepsControl,{isLoading:C,isEventEditProductSet:k,isOverrides:M})),r.createElement(n.Col,{md:6,sm:12},r.createElement("div",{className:"second-column"},r.createElement(n.Form.Group,null,r.createElement(n.Form.Label,{className:"mb-0"},j("Design:operationalCost")),r.createElement("div",{className:"d-flex"},r.createElement("span",{className:"booking-fee-text"},j("bookingFeePaid",{fee:f}))),r.createElement(n.Form.Control,t.__assign({},V("operationalCost",{required:!0}),{as:"select",defaultValue:u.OPERATIONAL_COST_PROVIDER,disabled:M,isInvalid:l.isInvalid("operationalCost",G)}),Object.keys(u.OPERATIONAL_COST_TYPES).map((function(e){return r.createElement("option",{value:u.OPERATIONAL_COST_TYPES[e],key:u.OPERATIONAL_COST_TYPES[e]},j(O[u.OPERATIONAL_COST_TYPES[e]],{companyName:c}))}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("operationalCost",G))),r.createElement(n.Form.Group,{controlId:K},r.createElement(n.Form.Label,null,j("peopleQuantityType")),r.createElement(n.Form.Control,t.__assign({},V("relyOnPeopleType"),{as:"select",defaultValue:null,disabled:M,isInvalid:l.isInvalid("relyOnPeopleType",G)}),r.createElement("option",{value:""},j("notRequired")," "),Object.keys(u.RELY_ON_PEOPLE_TYPES).map((function(e){return r.createElement("option",{value:u.RELY_ON_PEOPLE_TYPES[e],key:u.RELY_ON_PEOPLE_TYPES[e]},j(_[u.RELY_ON_PEOPLE_TYPES[e]]))}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("relyOnPeopleType",G))),r.createElement(n.Form.Group,{controlId:J},r.createElement(n.Form.Label,null,j("Design:termsAndConditions")),r.createElement(n.Form.Control,t.__assign({},V("termsAndConditions"),{as:"textarea",rows:2,disabled:C||M,isInvalid:l.isInvalid("termsAndConditions",G)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("termsAndConditions",G))),r.createElement(n.Form.Group,null,r.createElement(n.Form.Label,{className:"mt-4"},j("Design:emailTemplate")),r.createElement(r.Fragment,null,Z?r.createElement(P.Typeahead,{name:"emailTemplates",options:b,isMultipleChoise:!0,placeholder:j("Design:choose"),noOptionsMessage:j("Design:noActiveTemplates",{notification:j("Design:email")})}):r.createElement(m.default,{message:j("Design:noActiveTemplates",{notification:j("Design:email")})})),r.createElement(n.Form.Label,{className:s(b.length>0?"mt-4":"mt-1")},j("Design:smsTemplate")),X?r.createElement(P.Typeahead,{name:"smsTemplates",options:S,isMultipleChoise:!0,placeholder:j("Design:choose"),noOptionsMessage:j("Design:noActiveTemplates",{notification:j("Design:sms")})}):r.createElement(m.default,{message:j("Design:noActiveTemplates",{notification:j("Design:sms")})})),r.createElement(n.Form.Group,null,r.createElement(o.Controller,{control:w,name:"fieldSetId",render:function(e){var t=e.field,a=Number(t.value);return r.createElement(r.Fragment,null,r.createElement(n.Form.Label,null,j("Design:customFields")),r.createElement(n.Form.Control,{onChange:t.onChange,value:a,as:"select",disabled:M,isInvalid:l.isInvalid("fieldSetId",G)},r.createElement("option",{value:""},j("Design:choose")),null==y?void 0:y.map((function(e){return r.createElement("option",{value:e.id,key:e.id},e.name)}))),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("fieldSetId",G)))}})),r.createElement(n.Form.Group,{controlId:"thankYouPageUrlId"},r.createElement(n.Form.Label,null,j("thankYouPageUrl")),r.createElement(n.Form.Control,t.__assign({},V("thankYouPageUrl",{validate:function(e){return!e||(!!E.ruleForUrlWithProtocol.test(e)||j("Validation:fieldValidWebURL",{attribute:j("thankYouPageUrl")}))}}),{disabled:M,isInvalid:l.isInvalid("thankYouPageUrl",G)})),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors("thankYouPageUrl",G))))))};
@@ -4,8 +4,9 @@ import { WithIsLoading } from "./ProductSetForm";
4
4
  interface ProductCategoriesControlProps extends WithIsLoading {
5
5
  stepIndex: number;
6
6
  isOverrides?: boolean;
7
+ isEventEditProductSet?: boolean;
7
8
  }
8
- export declare function ProductCategoriesControl({ isLoading, stepIndex, isOverrides, }: ProductCategoriesControlProps): JSX.Element;
9
+ export declare function ProductCategoriesControl({ isLoading, stepIndex, isOverrides, isEventEditProductSet, }: ProductCategoriesControlProps): JSX.Element;
9
10
  export declare const getBadgeConfig: (categoryType: CategoryType, label: string) => {
10
11
  label: string;
11
12
  className: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ProductCategoriesControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductCategoriesControl.tsx"],"names":[],"mappings":";AAYA,OAAO,EAKL,YAAY,EACb,MAAM,kEAAkE,CAAC;AAQ1E,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASvE,UAAU,6BAA8B,SAAQ,aAAa;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA2BD,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,SAAS,EACT,WAAW,GACZ,EAAE,6BAA6B,eA4S/B;AAED,eAAO,MAAM,cAAc,iBACX,YAAY,SACnB,MAAM;WACH,MAAM;eAAa,MAAM;CAcpC,CAAC"}
1
+ {"version":3,"file":"ProductCategoriesControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductCategoriesControl.tsx"],"names":[],"mappings":";AAYA,OAAO,EAKL,YAAY,EACb,MAAM,kEAAkE,CAAC;AAQ1E,OAAO,EAAwB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AASvE,UAAU,6BAA8B,SAAQ,aAAa;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AA2BD,wBAAgB,wBAAwB,CAAC,EACvC,SAAS,EACT,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,EAAE,6BAA6B,eA8S/B;AAED,eAAO,MAAM,cAAc,iBACX,YAAY,SACnB,MAAM;WACH,MAAM;eAAa,MAAM;CAcpC,CAAC"}
@@ -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"),r=require("react"),n=e(r),i=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),d=e(require("clsx")),s=require("@dnd-kit/core"),l=require("lodash"),c=require("../../sortable-tree/SortableTreeItem.js"),m=require("../../sortable-tree/SortableTree.js"),v=require("../hooks/useSortableTreeFunctions.js"),p=require("../item/CreateProductSetItem.js"),g=require("./context.js"),f=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),y=require("../product-category/ProductCategoryControl.js"),C=require("./ProductsControl.js"),b=require("./SelectCategoryModal.js"),E=require("./VenueMapSetModal.js"),_=require("../utils/index.js");var I=function(e,t){return e===f.CATEGORY_TYPE_GAME?{className:"game-badge",label:t}:e===f.CATEGORY_TYPE_FIXED_DURATION?{className:"fixed-duration-badge",label:t}:null};exports.ProductCategoriesControl=function(e){var S,q,T,x,N,P,h=e.isLoading,M=e.stepIndex,A=e.isOverrides,k=i.useTranslation("Design").t,j=r.useContext(g.ProductSetLoadingContext),O=j.providerHasMap,V=j.expandedProductCategories,D=j.setExpandedProductCategories,F=j.zones,R=a.useFormContext(),Y=t.__read(r.useState(!1),2),B=Y[0],L=Y[1],w=t.__read(r.useState(!1),2),G=w[0],H=w[1],U=t.__read(r.useState(!1),2),z=U[0],Q=U[1],K=R.control,W=R.formState.errors,X=R.clearErrors,J=R.watch,Z=R.trigger,$=R.getValues,ee=R.setValue,te=J("steps.".concat(M,".hasMap"))||!1,re="steps.".concat(M,".productCategories"),ne=a.useFieldArray({name:re,control:K,keyName:"_id"}),ie=ne.fields,oe=ne.append,ae=ne.remove,ue=t.__read(r.useState({}),2),de=ue[0],se=ue[1],le=v.useSortableTreeFunctions({fieldName:re,remove:ae,isOverrides:A}),ce=le.edit,me=le.saveValidField,ve=le.cancelChanges,pe=a.useWatch({control:K,name:re}),ge=null===(q=null===(S=null==W?void 0:W.steps)||void 0===S?void 0:S[M])||void 0===q?void 0:q.productCategories,fe=null===(x=null===(T=null==W?void 0:W.steps)||void 0===T?void 0:T[M])||void 0===x?void 0:x.venueMapSetId,ye=null===(P=null===(N=null==W?void 0:W.steps)||void 0===N?void 0:N[M])||void 0===P?void 0:P.pointProducts,Ce=Boolean(fe||ye),be=s.useSensor(s.MouseSensor,{activationConstraint:{distance:10}});return r.useEffect((function(){pe&&pe.length&&pe.forEach((function(e){var r,n,i=null===(r=e.products)||void 0===r?void 0:r.reduce((function(e,t){return e+Number(t.price)*Number(t.totalQuantity)}),0),o=null===(n=e.products)||void 0===n?void 0:n.reduce((function(e,t){return e+(t.isUnlimited?0:Number(t.totalQuantity))}),0);se((function(r){var n;return t.__assign(t.__assign({},r),((n={})[(null==e?void 0:e.id)||e.uniqueId]={price:i,quantity:o},n))}))}))}),[pe]),r.useEffect((function(){1===ie.length&&D((function(e){var r,n,i;return t.__assign(t.__assign({},e),((r={})[String((null===(n=ie[0])||void 0===n?void 0:n.id)||(null===(i=ie[0])||void 0===i?void 0:i.uniqueId))]=!0,r))}))}),[ie]),n.createElement(n.Fragment,null,n.createElement(m.SortableTree,{sensors:[be],items:ie.map((function(e){return String(e._id)})),onDragEnd:function(e){if(!A){var t=e.active,r=e.over;if(t&&r&&(null==t?void 0:t.id)&&(null==r?void 0:r.id)){var n=ie.findIndex((function(e){return e._id===t.id})),i=ie.findIndex((function(e){return e._id===r.id}));if(n!==i){var o=$(re);if(o){var a=_.sortArrayByIndex(_.moveArrayElements(o,n,i));ee(re,a)}}}}}},ie.map((function(e,r){var i=(null==e?void 0:e.id)?String(e.id):e.uniqueId,u=function(){!function(e){D((function(r){var n;return t.__assign(t.__assign({},r),((n={})[e]=!r[e],n))}))}(i)};return n.createElement(a.Controller,{key:"product-category-".concat(e._id),name:"".concat(re,".").concat(r,".name"),control:K,rules:{required:k("Validation:fieldRequired",{attribute:k("name")})},render:function(t){var a,d,s,l=t.field,v=l.value,p=l.onChange;return n.createElement(m.SortableTree.Item,{id:e._id,title:v,isExpanded:V[i],setIsExpanded:u,edit:function(){return ce(r)},cancelChanges:function(){return ve(r)},isInvalid:!!ge,badge:n.createElement(o.Badge,{className:"category-badge"},k("productCategory")),isIconInHeader:!1,subTitle:n.createElement("div",{className:"product-set-badges-container"},n.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-category-dot"}),n.createElement("span",null,null!==(s=null===(d=de[null!==(a=null==e?void 0:e.id)&&void 0!==a?a:e.uniqueId])||void 0===d?void 0:d.quantity)&&void 0!==s?s:"N/A"," ",k("products"))),treeLineIconColor:"#1A93AA",modalLabel:k("addNewCategory"),secondaryBadge:I(e.type,k(e.type)),modalClass:c.ProductSetModalClasses.category,isNewAdded:z,body:n.createElement(y.ProductCategoryControl,{isLoading:h,onCategoryNameChange:p,categoryName:v,stepIndex:M,productCategoryIndex:r,isOverride:A}),isOverride:A,onDelete:function(){return ae(r)},validate:function(){return Z("steps.".concat(M,".productCategories.").concat(r))},saveValidField:me,sortableItems:e.products?e.products.filter((function(e){return e.id})).map((function(e){var t=e.id;return String(t)})):[]},n.createElement(C.ProductsControl,{isLoading:h,quantityType:e.quantityType,hasTicket:null==e?void 0:e.hasTicket,stepIndex:M,zones:F,productCategoryIndex:r,categoryType:e.type,isOverrides:A}))}})}))),n.createElement(p.CreateProductSetItem,{title:k("addCategory"),isOverride:A,onClick:function(){A||L(!0)}}),n.createElement(b.SelectCategoryModal,{isVisible:B,onHide:function(){return L(!1)},onCategorySelect:function(e){A||(oe(function(e,t){return{id:null,uniqueId:l.uniqueId("product-category"),name:"",minSubItems:null,maxSubItems:null,quantityType:f.QUANTITY_TYPE_STANDARD,type:e,isTimeRelated:!1,collectUserInfo:!1,hasTicket:e===f.CATEGORY_TYPE_TICKETS,allowDeposits:!1,remainderExpireAfter:void 0,hasBookingManagement:!1,weight:0,isReusable:!1,hasSubEvents:!1,products:[],zoneId:null,sort:t}}(e,ie.length)),Q(!0),(null==ge?void 0:ge.type)===u.manualErrorType&&X(re))}}),O&&te&&n.createElement(n.Fragment,null,n.createElement(p.CreateProductSetItem,{title:k("editMap"),isOverride:A,onClick:function(){A||H(!0)},className:d("mt-3",Ce&&"mb-3",Ce&&"is-invalid")}),Ce&&n.createElement("div",{className:"manual-form-error"},fe&&k("Validation:fieldRequired",{attribute:k("Design:venueMapSet")}),ye&&k("Validation:fieldMinNumber",{attribute:k("pointProduct"),min:1})),n.createElement(E.VenueMapSetModal,{isVisible:G,setIsVisible:H,stepIndex:M})),n.createElement("div",{className:"manual-form-error"},ge&&ge.message))},exports.getBadgeConfig=I;
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"),r=require("react"),n=e(r),i=require("react-i18next"),o=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),d=e(require("clsx")),s=require("@dnd-kit/core"),l=require("lodash"),c=require("../../sortable-tree/SortableTreeItem.js"),m=require("../../sortable-tree/SortableTree.js"),v=require("../hooks/useSortableTreeFunctions.js"),p=require("../item/CreateProductSetItem.js"),g=require("./context.js"),f=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),y=require("../product-category/ProductCategoryControl.js"),C=require("./ProductsControl.js"),E=require("./SelectCategoryModal.js"),b=require("./VenueMapSetModal.js"),I=require("../utils/index.js");var S=function(e,t){return e===f.CATEGORY_TYPE_GAME?{className:"game-badge",label:t}:e===f.CATEGORY_TYPE_FIXED_DURATION?{className:"fixed-duration-badge",label:t}:null};exports.ProductCategoriesControl=function(e){var _,q,T,x,P,N,h=e.isLoading,M=e.stepIndex,A=e.isOverrides,k=e.isEventEditProductSet,j=i.useTranslation("Design").t,V=r.useContext(g.ProductSetLoadingContext),D=V.providerHasMap,F=V.expandedProductCategories,O=V.setExpandedProductCategories,R=V.zones,Y=a.useFormContext(),B=t.__read(r.useState(!1),2),L=B[0],w=B[1],G=t.__read(r.useState(!1),2),H=G[0],U=G[1],z=t.__read(r.useState(!1),2),Q=z[0],K=z[1],W=Y.control,X=Y.formState.errors,J=Y.clearErrors,Z=Y.watch,$=Y.trigger,ee=Y.getValues,te=Y.setValue,re=Z("steps.".concat(M,".hasMap"))||!1,ne="steps.".concat(M,".productCategories"),ie=a.useFieldArray({name:ne,control:W,keyName:"_id"}),oe=ie.fields,ae=ie.append,ue=ie.remove,de=t.__read(r.useState({}),2),se=de[0],le=de[1],ce=v.useSortableTreeFunctions({fieldName:ne,remove:ue,isOverrides:A}),me=ce.edit,ve=ce.saveValidField,pe=ce.cancelChanges,ge=a.useWatch({control:W,name:ne}),fe=null===(q=null===(_=null==X?void 0:X.steps)||void 0===_?void 0:_[M])||void 0===q?void 0:q.productCategories,ye=null===(x=null===(T=null==X?void 0:X.steps)||void 0===T?void 0:T[M])||void 0===x?void 0:x.venueMapSetId,Ce=null===(N=null===(P=null==X?void 0:X.steps)||void 0===P?void 0:P[M])||void 0===N?void 0:N.pointProducts,Ee=Boolean(ye||Ce),be=s.useSensor(s.MouseSensor,{activationConstraint:{distance:10}});return r.useEffect((function(){ge&&ge.length&&ge.forEach((function(e){var r,n,i=null===(r=e.products)||void 0===r?void 0:r.reduce((function(e,t){return e+Number(t.price)*Number(t.totalQuantity)}),0),o=null===(n=e.products)||void 0===n?void 0:n.reduce((function(e,t){return e+(t.isUnlimited?0:Number(t.totalQuantity))}),0);le((function(r){var n;return t.__assign(t.__assign({},r),((n={})[(null==e?void 0:e.id)||e.uniqueId]={price:i,quantity:o},n))}))}))}),[ge]),r.useEffect((function(){1===oe.length&&O((function(e){var r,n,i;return t.__assign(t.__assign({},e),((r={})[String((null===(n=oe[0])||void 0===n?void 0:n.id)||(null===(i=oe[0])||void 0===i?void 0:i.uniqueId))]=!0,r))}))}),[oe]),n.createElement(n.Fragment,null,n.createElement(m.SortableTree,{sensors:[be],items:oe.map((function(e){return String(e._id)})),onDragEnd:function(e){if(!A){var t=e.active,r=e.over;if(t&&r&&(null==t?void 0:t.id)&&(null==r?void 0:r.id)){var n=oe.findIndex((function(e){return e._id===t.id})),i=oe.findIndex((function(e){return e._id===r.id}));if(n!==i){var o=ee(ne);if(o){var a=I.sortArrayByIndex(I.moveArrayElements(o,n,i));te(ne,a)}}}}}},oe.map((function(e,r){var i=(null==e?void 0:e.id)?String(e.id):e.uniqueId,u=e.products.some((function(e){return k?!!e.id:!!e.originalProductId})),d=function(){!function(e){O((function(r){var n;return t.__assign(t.__assign({},r),((n={})[e]=!r[e],n))}))}(i)};return n.createElement(a.Controller,{key:"product-category-".concat(e._id),name:"".concat(ne,".").concat(r,".name"),control:W,rules:{required:j("Validation:fieldRequired",{attribute:j("name")})},render:function(t){var a,s,l,v=t.field,p=v.value,g=v.onChange;return n.createElement(m.SortableTree.Item,{id:e._id,title:p,isExpanded:F[i],setIsExpanded:d,edit:function(){return me(r)},cancelChanges:function(){return pe(r)},isInvalid:!!fe,badge:n.createElement(o.Badge,{className:"category-badge"},j("productCategory")),isIconInHeader:!1,subTitle:n.createElement("div",{className:"product-set-badges-container"},n.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-category-dot"}),n.createElement("span",null,null!==(l=null===(s=se[null!==(a=null==e?void 0:e.id)&&void 0!==a?a:e.uniqueId])||void 0===s?void 0:s.quantity)&&void 0!==l?l:"N/A"," ",j("products"))),treeLineIconColor:"#1A93AA",modalLabel:j("addNewCategory"),secondaryBadge:S(e.type,j(e.type)),modalClass:c.ProductSetModalClasses.category,isNewAdded:Q,body:n.createElement(y.ProductCategoryControl,{isLoading:h,onCategoryNameChange:g,categoryName:p,stepIndex:M,productCategoryIndex:r,isOverride:A&&u}),isOverride:A,onDelete:function(){return ue(r)},validate:function(){return $("steps.".concat(M,".productCategories.").concat(r))},saveValidField:ve,sortableItems:e.products?e.products.filter((function(e){return e.id})).map((function(e){var t=e.id;return String(t)})):[]},n.createElement(C.ProductsControl,{isLoading:h,quantityType:e.quantityType,hasTicket:null==e?void 0:e.hasTicket,stepIndex:M,zones:R,productCategoryIndex:r,categoryType:e.type,isOverrides:A,isEventEditProductSet:k}))}})}))),n.createElement(p.CreateProductSetItem,{title:j("addCategory"),onClick:function(){w(!0)}}),n.createElement(E.SelectCategoryModal,{isVisible:L,onHide:function(){return w(!1)},onCategorySelect:function(e){ae(function(e,t){return{id:null,uniqueId:l.uniqueId("product-category"),name:"",minSubItems:null,maxSubItems:null,quantityType:f.QUANTITY_TYPE_STANDARD,type:e,isTimeRelated:!1,collectUserInfo:!1,hasTicket:e===f.CATEGORY_TYPE_TICKETS,allowDeposits:!1,remainderExpireAfter:void 0,hasBookingManagement:!1,weight:0,isReusable:!1,hasSubEvents:!1,products:[],zoneId:null,sort:t}}(e,oe.length)),K(!0),(null==fe?void 0:fe.type)===u.manualErrorType&&J(ne)}}),D&&re&&n.createElement(n.Fragment,null,n.createElement(p.CreateProductSetItem,{title:j("editMap"),isOverride:A,onClick:function(){A||U(!0)},className:d("mt-3",Ee&&"mb-3",Ee&&"is-invalid")}),Ee&&n.createElement("div",{className:"manual-form-error"},ye&&j("Validation:fieldRequired",{attribute:j("Design:venueMapSet")}),Ce&&j("Validation:fieldMinNumber",{attribute:j("pointProduct"),min:1})),n.createElement(b.VenueMapSetModal,{isVisible:H,setIsVisible:U,stepIndex:M})),n.createElement("div",{className:"manual-form-error"},fe&&fe.message))},exports.getBadgeConfig=S;
@@ -11,7 +11,8 @@ interface ProductsControlProps extends WithIsLoading {
11
11
  categoryType: CategoryType;
12
12
  zones?: Zone[];
13
13
  isOverrides?: boolean;
14
+ isEventEditProductSet?: boolean;
14
15
  }
15
- export declare function ProductsControl({ isLoading, quantityType, stepIndex, productCategoryIndex, hasTicket, categoryType, zones, isOverrides, }: ProductsControlProps): JSX.Element;
16
+ export declare function ProductsControl({ isLoading, quantityType, stepIndex, productCategoryIndex, hasTicket, categoryType, zones, isOverrides, isEventEditProductSet, }: ProductsControlProps): JSX.Element;
16
17
  export {};
17
18
  //# sourceMappingURL=ProductsControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAC;AAChG,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAC;AAC9E,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAC;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAmCD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,KAAK,EACL,WAAW,GACZ,EAAE,oBAAoB,eA6NtB"}
1
+ {"version":3,"file":"ProductsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductsControl.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,YAAY,EAAE,MAAM,kEAAkE,CAAC;AAChG,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAC;AAC9E,OAAO,EAAkB,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,IAAI,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQjD,UAAU,oBAAqB,SAAQ,aAAa;IAClD,YAAY,EAAE,mBAAmB,CAAC,oBAAoB,CAAC,CAAC,cAAc,CAAC,CAAC;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAoCD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAoB,EACpB,SAAS,EACT,YAAY,EACZ,KAAK,EACL,WAAW,EACX,qBAAqB,GACtB,EAAE,oBAAoB,eAoOtB"}
@@ -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"),r=require("react"),o=e(r),n=require("react-i18next"),i=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),c=require("@dnd-kit/core"),d=require("lodash");require("../elements/DeleteFieldButton.js");var s=require("../../sortable-tree/SortableTreeItem.js"),l=require("../../sortable-tree/SortableTree.js");require("../card/ProductSetCard.js");var p=require("../hooks/useSortableTreeFunctions.js"),m=require("../item/CreateProductSetItem.js");require("../step/StepControl.js"),require("../product-category/ProductCategoryControl.js");var v=require("@licklist/core/dist/DataMapper/Product/ProductDataMapper"),g=require("@licklist/core/dist/Services");require("../product/booking-management/ProductBookingManagementControl.js"),require("../product/deposit/ProductDepositControl.js"),require("../product/quantity/ProductQuantityControl.js"),require("../product/quantity/ProductQuantityConstantControl.js"),require("../product/quantity/ProductQuantityRechargingControl.js");var f=require("../product/ProductControl.js"),q=require("./SubProductsControl.js"),y=require("./ProductCategoriesControl.js");require("../control/ProductSetControl.js"),require("../deposit-paid/ProductSetDepositPaidControl.js"),require("./ProductSetForm.js"),require("../popover/ProductSetPopover.js"),require("../tabs/ProductSetTab.js"),require("../tabs/ProductSetTabs.js");exports.ProductsControl=function(e){var C,P,b,S,_=e.isLoading,j=e.quantityType,T=e.stepIndex,h=e.productCategoryIndex,E=e.hasTicket,I=e.categoryType,k=e.zones,x=e.isOverrides,D=n.useTranslation("Design").t,N=a.useFormContext(),F=t.__read(r.useState(!1),2),A=F[0],O=F[1],M=N.control,Q=N.formState.errors,w=N.clearErrors,B=N.trigger,U=N.setValue,L=N.watch,R=N.getValues,V=L("steps.".concat(T,".productCategories.").concat(h,".zoneId")),z=null==k?void 0:k.find((function(e){return e.id===Number(V)})),W="steps.".concat(T,".productCategories.").concat(h,".products"),H="steps.".concat(T,".pointProducts"),G=a.useFieldArray({name:W,control:M,keyName:"_id"}),Y=G.fields,J=G.append,K=G.remove,X=G.move,Z=p.useSortableTreeFunctions({fieldName:W,remove:K,isOverrides:x}),$=Z.edit,ee=Z.saveValidField,te=Z.cancelChanges,re=L("steps.".concat(T,".productCategories.").concat(h,".allowDeposits")),oe=a.useWatch({control:M,name:t.__spreadArray([],t.__read(Y.map((function(e,t){return"".concat(W,".").concat(t,".price")}))),!1)}),ne=a.useWatch({control:M,name:t.__spreadArray([],t.__read(Y.map((function(e,t){return"".concat(W,".").concat(t,".totalQuantity")}))),!1)}),ie=a.useWatch({control:M,name:t.__spreadArray([],t.__read(Y.map((function(e,t){return"".concat(W,".").concat(t,".isUnlimited")}))),!1)}),ae=null===(S=null===(b=null===(P=null===(C=null==Q?void 0:Q.steps)||void 0===C?void 0:C[T])||void 0===P?void 0:P.productCategories)||void 0===b?void 0:b[h])||void 0===S?void 0:S.products,ue=1===Y.length,ce=c.useSensor(c.MouseSensor,{activationConstraint:{distance:10}});return o.createElement(o.Fragment,null,o.createElement(l.SortableTree,{items:Y.map((function(e){return String(e._id)})),onDragEnd:function(e){if(!x){var t=e.active,r=e.over;if(t&&r&&(null==t?void 0:t.id)&&(null==r?void 0:r.id)){var o=Y.findIndex((function(e){return e._id===t.id})),n=Y.findIndex((function(e){return e._id===r.id}));o!==n&&(X(o,n),Y.forEach((function(e,t){U("".concat(W,".").concat(t,".sort"),t)})))}}},sensors:[ce]},Y.map((function(e,t){return o.createElement(a.Controller,{key:e._id,control:M,name:"".concat(W,".").concat(t,".name"),rules:{required:D("Validation:fieldRequired",{attribute:D("name")})},render:function(r){var n=r.field,a=n.value,u=n.onChange;return o.createElement(l.SortableTree.Item,{key:"product-".concat(e._id),id:String(e._id),isExpanded:ue,isInvalid:!!ae,title:a,isOverride:x,badge:o.createElement(i.Badge,{className:"product-badge"},D("product")),isIconInHeader:!1,cancelChanges:function(){return te(t)},edit:function(){return $(t)},isProduct:!0,secondaryBadge:y.getBadgeConfig(I,D(I)),subTitle:o.createElement("div",{className:"product-set-badges-container"},o.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-product-dot"}),o.createElement("span",null,"£".concat(oe[t]," ").concat(D("each")," - ").concat(D("qty"),":").concat(ie[t]?D(" unlimited"):" ".concat(ne[t])," ").concat(ie[t]?"":" - ".concat(D("possibleRevenue")," £").concat(oe[t]*ne[t])," "))),modalLabel:D("addNewProduct"),modalClass:s.ProductSetModalClasses.product,isNewAdded:A,body:o.createElement(f.ProductControl,{isLoading:_,quantityType:j,allowDeposits:re,hasBookingManagement:!1,fieldNamePrefix:"".concat(W,".").concat(t),productName:a,onProductNameChange:u,hasTicket:E,categoryType:I,zoneDuration:null==z?void 0:z.defaultDuration,isOverrides:x}),onDelete:function(){return function(e){if(!x){var t=R("".concat(W,".").concat(e)),r=R(H);U(H,(null==r?void 0:r.filter((function(e){return e.productUuid!==t.uuid})))||[]),K(e)}}(t)},validate:function(){return B("".concat(W,".").concat(t))},saveValidField:ee},o.createElement(q.SubProductsControl,{isLoading:_,quantityType:j,stepIndex:T,productCategoryIndex:h,productIndex:t}))}})}))),o.createElement(m.CreateProductSetItem,{title:D("addProduct"),isOverride:x,onClick:function(){var e;x||(J((e=Y.length,{id:null,name:"",termsAndConditions:"",productGroupId:null,description:"",price:0,deposit:0,minQuantity:null,maxQuantity:null,totalQuantity:0,capacity:0,duration:0,isAvailable:!0,isSoldOut:!1,isRequired:!1,isUnlimited:!1,quantitySelector:1,hasSpecialNotes:!1,weight:0,type:v.DEFAULT_PRODUCT_TYPE,tierId:Number(d.uniqueId()),zoneId:null,subProducts:[],images:[],uuid:g.generateUuid(),subSlots:null,offset:null,pause:null,serviceTime:null,sort:e})),O(!0),(null==ae?void 0:ae.type)===u.manualErrorType&&w(W))}}),o.createElement("div",{className:"manual-form-error"},ae&&ae.message))};
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"),r=require("react"),o=e(r),n=require("react-i18next"),i=require("react-bootstrap"),a=require("react-hook-form"),u=e(require("@licklist/plugins/dist/services/Form/HookFormService")),c=require("@dnd-kit/core"),d=require("lodash");require("../elements/DeleteFieldButton.js");var s=require("../../sortable-tree/SortableTreeItem.js"),l=require("../../sortable-tree/SortableTree.js");require("../card/ProductSetCard.js");var p=require("../hooks/useSortableTreeFunctions.js"),m=require("../item/CreateProductSetItem.js");require("../step/StepControl.js"),require("../product-category/ProductCategoryControl.js");var v=require("@licklist/core/dist/DataMapper/Product/ProductDataMapper"),g=require("@licklist/core/dist/Services");require("../product/booking-management/ProductBookingManagementControl.js"),require("../product/deposit/ProductDepositControl.js"),require("../product/quantity/ProductQuantityControl.js"),require("../product/quantity/ProductQuantityConstantControl.js"),require("../product/quantity/ProductQuantityRechargingControl.js");var f=require("../product/ProductControl.js"),q=require("./SubProductsControl.js"),y=require("./ProductCategoriesControl.js");require("../control/ProductSetControl.js"),require("../deposit-paid/ProductSetDepositPaidControl.js"),require("./ProductSetForm.js"),require("../popover/ProductSetPopover.js"),require("../tabs/ProductSetTab.js"),require("../tabs/ProductSetTabs.js");exports.ProductsControl=function(e){var C,P,b,S,_=e.isLoading,j=e.quantityType,T=e.stepIndex,h=e.productCategoryIndex,E=e.hasTicket,I=e.categoryType,k=e.zones,x=e.isOverrides,D=e.isEventEditProductSet,N=n.useTranslation("Design").t,F=a.useFormContext(),A=t.__read(r.useState(!1),2),M=A[0],O=A[1],Q=F.control,w=F.formState.errors,B=F.clearErrors,U=F.trigger,L=F.setValue,R=F.watch,V=F.getValues,z=R("steps.".concat(T,".productCategories.").concat(h,".zoneId")),W=null==k?void 0:k.find((function(e){return e.id===Number(z)})),H="steps.".concat(T,".productCategories.").concat(h,".products"),G="steps.".concat(T,".pointProducts"),Y=a.useFieldArray({name:H,control:Q,keyName:"_id"}),J=Y.fields,K=Y.append,X=Y.remove,Z=Y.move,$=p.useSortableTreeFunctions({fieldName:H,remove:X,isOverrides:x}),ee=$.edit,te=$.saveValidField,re=$.cancelChanges,oe=R("steps.".concat(T,".productCategories.").concat(h,".allowDeposits")),ne=a.useWatch({control:Q,name:t.__spreadArray([],t.__read(J.map((function(e,t){return"".concat(H,".").concat(t,".price")}))),!1)}),ie=a.useWatch({control:Q,name:t.__spreadArray([],t.__read(J.map((function(e,t){return"".concat(H,".").concat(t,".totalQuantity")}))),!1)}),ae=a.useWatch({control:Q,name:t.__spreadArray([],t.__read(J.map((function(e,t){return"".concat(H,".").concat(t,".isUnlimited")}))),!1)}),ue=null===(S=null===(b=null===(P=null===(C=null==w?void 0:w.steps)||void 0===C?void 0:C[T])||void 0===P?void 0:P.productCategories)||void 0===b?void 0:b[h])||void 0===S?void 0:S.products,ce=1===J.length,de=c.useSensor(c.MouseSensor,{activationConstraint:{distance:10}});return o.createElement(o.Fragment,null,o.createElement(l.SortableTree,{items:J.map((function(e){return String(e._id)})),onDragEnd:function(e){if(!x){var t=e.active,r=e.over;if(t&&r&&(null==t?void 0:t.id)&&(null==r?void 0:r.id)){var o=J.findIndex((function(e){return e._id===t.id})),n=J.findIndex((function(e){return e._id===r.id}));o!==n&&(Z(o,n),J.forEach((function(e,t){L("".concat(H,".").concat(t,".sort"),t)})))}}},sensors:[de]},J.map((function(e,t){var r=D?!!e.id:x&&!!e.originalProductId;return o.createElement(a.Controller,{key:e._id,control:Q,name:"".concat(H,".").concat(t,".name"),rules:{required:N("Validation:fieldRequired",{attribute:N("name")})},render:function(n){var a=n.field,u=a.value,c=a.onChange;return o.createElement(l.SortableTree.Item,{key:"product-".concat(e._id),id:String(e._id),isExpanded:ce,isInvalid:!!ue,title:u,isOverride:x,badge:o.createElement(i.Badge,{className:"product-badge"},N("product")),isIconInHeader:!1,cancelChanges:function(){return re(t)},edit:function(){return ee(t)},secondaryBadge:y.getBadgeConfig(I,N(I)),subTitle:o.createElement("div",{className:"product-set-badges-container"},o.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-product-dot"}),o.createElement("span",null,"£".concat(ne[t]," ").concat(N("each")," - ").concat(N("qty"),":").concat(ae[t]?N(" unlimited"):" ".concat(ie[t])," ").concat(ae[t]?"":" - ".concat(N("possibleRevenue")," £").concat(ne[t]*ie[t])," "))),modalLabel:N("addNewProduct"),modalClass:s.ProductSetModalClasses.product,isNewAdded:M,body:o.createElement(f.ProductControl,{isLoading:_,quantityType:j,allowDeposits:oe,hasBookingManagement:!1,fieldNamePrefix:"".concat(H,".").concat(t),productName:u,onProductNameChange:c,hasTicket:E,categoryType:I,zoneDuration:null==W?void 0:W.defaultDuration,isOverrides:r}),onDelete:function(){return function(e){if(!x){var t=V("".concat(H,".").concat(e)),r=V(G);L(G,(null==r?void 0:r.filter((function(e){return e.productUuid!==t.uuid})))||[]),X(e)}}(t)},validate:function(){return U("".concat(H,".").concat(t))},saveValidField:te},o.createElement(q.SubProductsControl,{isLoading:_,quantityType:j,stepIndex:T,productCategoryIndex:h,productIndex:t}))}})}))),o.createElement(m.CreateProductSetItem,{title:N("addProduct"),onClick:function(){var e;K((e=J.length,{id:null,name:"",termsAndConditions:"",productGroupId:null,description:"",price:0,deposit:0,minQuantity:null,maxQuantity:null,totalQuantity:0,capacity:0,duration:0,isAvailable:!0,isSoldOut:!1,isRequired:!1,isUnlimited:!1,quantitySelector:1,hasSpecialNotes:!1,weight:0,originalProductId:null,type:v.DEFAULT_PRODUCT_TYPE,tierId:Number(d.uniqueId()),zoneId:null,subProducts:[],images:[],uuid:g.generateUuid(),subSlots:null,offset:null,pause:null,serviceTime:null,sort:e})),O(!0),(null==ue?void 0:ue.type)===u.manualErrorType&&B(H)}}),o.createElement("div",{className:"manual-form-error"},ue&&ue.message))};
@@ -2,7 +2,8 @@
2
2
  interface StepsControlProps {
3
3
  isLoading: boolean;
4
4
  isOverrides?: boolean;
5
+ isEventEditProductSet?: boolean;
5
6
  }
6
- export declare function StepsControl({ isLoading, isOverrides }: StepsControlProps): JSX.Element;
7
+ export declare function StepsControl({ isLoading, isOverrides, isEventEditProductSet, }: StepsControlProps): JSX.Element;
7
8
  export {};
8
9
  //# sourceMappingURL=StepsControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StepsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/StepsControl.tsx"],"names":[],"mappings":";AAkBA,UAAU,iBAAiB;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,iBAAiB,eA+IzE"}
1
+ {"version":3,"file":"StepsControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/StepsControl.tsx"],"names":[],"mappings":";AAkBA,UAAU,iBAAiB;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,WAAW,EACX,qBAAqB,GACtB,EAAE,iBAAiB,eA+InB"}
@@ -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"),r=require("react"),o=e(r),a=require("react-i18next"),s=require("react-hook-form"),n=e(require("@licklist/plugins/dist/services/Form/HookFormService")),i=require("../../sortable-tree/SortableTreeItem.js"),l=require("../../sortable-tree/SortableTree.js"),d=e(require("react-bootstrap/Badge")),u=require("../hooks/useSortableTreeFunctions.js"),c=require("../item/CreateProductSetItem.js"),m=require("../step/StepControl.js"),p=require("./ProductCategoriesControl.js");exports.StepsControl=function(e){var v=e.isLoading,g=e.isOverrides,f=s.useFormContext(),C=a.useTranslation("Design").t,b=t.__read(r.useState(!1),2),S=b[0],E=b[1],q=f.control,I=f.formState,h=I.errors,F=I.isSubmitting,N=f.clearErrors,j=f.getValues,y=f.setFocus,T=s.useFieldArray({name:"steps",control:q,keyName:"_id"}),k=T.fields,x=T.append,P=T.remove,_=u.useSortableTreeFunctions({fieldName:"steps",remove:P,isOverrides:g}),O=_.edit,L=_.saveValidField,M=_.cancelChanges;r.useEffect((function(){F&&E(!F)}),[F]);var V=1===k.length;return o.createElement(o.Fragment,null,k.map((function(e,t){var r="steps.".concat(t),a=j(r);return o.createElement(s.Controller,{key:"step-".concat(e._id),name:"".concat(r,".name"),control:q,rules:{required:C("Validation:fieldRequired",{attribute:C("name")})},render:function(s){var n,u,c,f=s.field,b=f.value,E=f.onChange;return o.createElement(l.SortableTree.Item,{id:e._id,title:b,badge:o.createElement(d,{className:"step-badge"},C("step")),isExpanded:V||!!(null===(n=h.steps)||void 0===n?void 0:n[t]),isInvalid:!!(null===(u=h.steps)||void 0===u?void 0:u[t]),isIconInHeader:!1,modalLabel:C("addNewStep"),modalClass:i.ProductSetModalClasses.step,isNewAdded:S,edit:function(){return!g&&O(t)},cancelChanges:function(){return M(t)},isOverride:g,subTitle:o.createElement("div",{className:"product-set-badges-container"},o.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-step-dot"}),o.createElement("span",null,null===(c=a.productCategories)||void 0===c?void 0:c.length," ",C("categories"))),treeLineIconColor:"#D52902",body:o.createElement(m.StepControl,{isLoading:v,stepIndex:t,stepName:b,onStepNameChange:E}),onDelete:function(){return P(t)},sortableItems:e.productCategories?e.productCategories.map((function(e){var t=e.id;return String(t)})):[],validate:function(){var e,o,a=null===(o=null===(e=h.steps)||void 0===e?void 0:e[t])||void 0===o?void 0:o.name;return a&&y("".concat(r,".name")),Promise.resolve(!a)},saveValidField:L},o.createElement(p.ProductCategoriesControl,{isLoading:v,stepIndex:t,isOverrides:g}))}})})),o.createElement(c.CreateProductSetItem,{title:C("addStep"),isOverride:g,onClick:function(){var e;g||(x({id:null,name:"".concat(C("step")," ").concat(k.length+1),productCategories:[],weight:0,hasMap:!1,venueMapSetId:null}),E(!0),(null===(e=h.steps)||void 0===e?void 0:e.type)===n.manualErrorType&&N("steps"))}}),o.createElement("div",{className:"manual-form-error"},h.steps&&h.steps.message))};
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"),r=require("react"),o=e(r),s=require("react-i18next"),a=require("react-hook-form"),i=e(require("@licklist/plugins/dist/services/Form/HookFormService")),n=require("../../sortable-tree/SortableTreeItem.js"),l=require("../../sortable-tree/SortableTree.js"),d=e(require("react-bootstrap/Badge")),u=require("../hooks/useSortableTreeFunctions.js"),c=require("../item/CreateProductSetItem.js"),m=require("../step/StepControl.js"),p=require("./ProductCategoriesControl.js");exports.StepsControl=function(e){var v=e.isLoading,g=e.isOverrides,f=e.isEventEditProductSet,C=a.useFormContext(),b=s.useTranslation("Design").t,S=t.__read(r.useState(!1),2),E=S[0],q=S[1],I=C.control,h=C.formState,F=h.errors,N=h.isSubmitting,P=C.clearErrors,j=C.getValues,y=C.setFocus,T=a.useFieldArray({name:"steps",control:I,keyName:"_id"}),k=T.fields,x=T.append,_=T.remove,O=u.useSortableTreeFunctions({fieldName:"steps",remove:_,isOverrides:g}),L=O.edit,M=O.saveValidField,V=O.cancelChanges;r.useEffect((function(){N&&q(!N)}),[N]);var w=1===k.length;return o.createElement(o.Fragment,null,k.map((function(e,t){var r="steps.".concat(t),s=j(r),i=!!e.id;return o.createElement(a.Controller,{key:"step-".concat(e._id),name:"".concat(r,".name"),control:I,rules:{required:b("Validation:fieldRequired",{attribute:b("name")})},render:function(a){var u,c,C,S=a.field,q=S.value,I=S.onChange;return o.createElement(l.SortableTree.Item,{id:e._id,title:q,badge:o.createElement(d,{className:"step-badge"},b("step")),isExpanded:w||!!(null===(u=F.steps)||void 0===u?void 0:u[t]),isInvalid:!!(null===(c=F.steps)||void 0===c?void 0:c[t]),isIconInHeader:!1,modalLabel:b("addNewStep"),modalClass:n.ProductSetModalClasses.step,isNewAdded:E,edit:function(){return L(t)},cancelChanges:function(){return V(t)},isOverride:i,subTitle:o.createElement("div",{className:"product-set-badges-container"},o.createElement("div",{className:"product-set-subtitle-dot product-set-subtitle-step-dot"}),o.createElement("span",null,null===(C=s.productCategories)||void 0===C?void 0:C.length," ",b("categories"))),treeLineIconColor:"#D52902",body:o.createElement(m.StepControl,{isLoading:v,stepIndex:t,stepName:q,onStepNameChange:I,isOverrides:i}),onDelete:function(){return _(t)},sortableItems:e.productCategories?e.productCategories.map((function(e){var t=e.id;return String(t)})):[],validate:function(){var e,o,s=null===(o=null===(e=F.steps)||void 0===e?void 0:e[t])||void 0===o?void 0:o.name;return s&&y("".concat(r,".name")),Promise.resolve(!s)},saveValidField:M},o.createElement(p.ProductCategoriesControl,{isLoading:v,stepIndex:t,isOverrides:g,isEventEditProductSet:f}))}})})),o.createElement(c.CreateProductSetItem,{title:b("addStep"),onClick:function(){var e;x({id:null,name:"".concat(b("step")," ").concat(k.length+1),productCategories:[],weight:0,hasMap:!1,venueMapSetId:null}),q(!0),(null===(e=F.steps)||void 0===e?void 0:e.type)===i.manualErrorType&&P("steps")}}),o.createElement("div",{className:"manual-form-error"},F.steps&&F.steps.message))};
@@ -18,6 +18,7 @@ export interface ProductControlValues extends FormValues, ProductDepositControlV
18
18
  totalQuantity: number;
19
19
  isAvailable: boolean;
20
20
  isSoldOut: boolean;
21
+ originalProductId: number | null;
21
22
  isUnlimited: boolean;
22
23
  isRequired: boolean;
23
24
  quantitySelector: number;
@@ -1 +1 @@
1
- {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EAMb,MAAM,kEAAkE,CAAC;AAC1E,OAAO,EACL,WAAW,EAEZ,MAAM,0DAA0D,CAAC;AAGlE,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAC;AAEtE,OAAc,EACZ,WAAW,EAKZ,MAAM,OAAO,CAAC;AAgBf,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAC;AAO9D,OAAO,EAEL,oCAAoC,EACpC,qCAAqC,EACtC,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAEL,2BAA2B,EAC5B,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAQ5C,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,2BAA2B,EAC3B,qCAAqC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,CACpC,SAAQ,gBAAgB,EACtB,mBAAmB,CAAC,CAAC,CAAC,EACtB,oCAAoC,CAAC,CAAC,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EACnD,SAAiB,EACjB,eAAe,EACf,aAAqB,EACrB,oBAA4B,EAC5B,QAAa,EACb,MAAM,EACN,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,WAAmB,GACpB,EAAE,mBAAmB,CAAC,CAAC,CAAC,eAqlBxB"}
1
+ {"version":3,"file":"ProductControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/product/ProductControl.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,YAAY,EAMb,MAAM,kEAAkE,CAAC;AAC1E,OAAO,EACL,WAAW,EAEZ,MAAM,0DAA0D,CAAC;AAGlE,OAAO,EACL,mBAAmB,EACnB,UAAU,EACX,MAAM,8DAA8D,CAAC;AAEtE,OAAc,EACZ,WAAW,EAKZ,MAAM,OAAO,CAAC;AAgBf,OAAO,EACL,KAAK,EAEN,MAAM,sDAAsD,CAAC;AAO9D,OAAO,EAEL,oCAAoC,EACpC,qCAAqC,EACtC,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAEL,2BAA2B,EAC5B,MAAM,iCAAiC,CAAC;AAQzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAQ5C,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,2BAA2B,EAC3B,qCAAqC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,CACpC,SAAQ,gBAAgB,EACtB,mBAAmB,CAAC,CAAC,CAAC,EACtB,oCAAoC,CAAC,CAAC,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,mBAAmB,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChE,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,UAAU,EAAE,EACnD,SAAiB,EACjB,eAAe,EACf,aAAqB,EACrB,oBAA4B,EAC5B,QAAa,EACb,MAAM,EACN,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,WAAmB,GACpB,EAAE,mBAAmB,CAAC,CAAC,CAAC,eAolBxB"}
@@ -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"),a=require("react"),n=e(a),r=require("react-i18next"),o=e(require("react-bootstrap/Row")),i=e(require("react-bootstrap/Col")),l=require("react-bootstrap"),c=require("../../static/Icon.js"),s=require("react-hook-form"),d=e(require("@licklist/plugins/dist/services/Form/HookFormService")),u=require("@react-aria/utils"),m=e(require("clsx")),p=require("../../static/switch/BooleanSwitch.js"),E=require("../../static/form-number-input/FormNumberInput.js");require("../../static/index.js");var g=require("../form/context.js"),f=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),C=require("@licklist/core/dist/DataMapper/Product/ProductDataMapper"),v=require("./booking-management/ProductBookingManagementControl.js"),b=require("./deposit/ProductDepositControl.js"),I=require("./quantity/ProductQuantityControl.js"),h=require("./quantity/ProductQuantityConstantControl.js"),F=require("./quantity/ProductQuantityRechargingControl.js"),P=e(require("react-bootstrap/Collapse")),N=require("@licklist/plugins/dist/hooks/Media/useImages"),q=require("@licklist/core/dist/DataMapper/Media/ImageDataMapper"),T=require("../../file-upload/FileUpload.js");require("../../snippet/snippet-template/context/snippetTemplate.js"),require("../../snippet/snippet-template/context/snippetTemplateLoading.js"),require("../../snippet/snippet-template/context/snippetTemplateView.js");var y=require("../../snippet/snippet-template/control/PropertyControl.js");require("../../snippet/snippet-template/form/SnippetTemplateForm.js");var _=require("../../tiptap-editor/TipTapEditor.js");require("../../snippet/snippet-template/settings/SettingButton.js"),require("../../snippet/snippet-template/preview/Preview.js"),require("../../snippet/snippet-template/SnippetTemplate.js");var x=require("./fixed-duration-fields/FixedDurationOptions.js"),k=require("./duration/ProductDurationControl.js"),S=require("./price/ProductPriceControl.js"),D=require("./constants.js");exports.ProductControl=function(e){var L=e.isLoading,j=void 0!==L&&L,A=e.fieldNamePrefix,G=e.allowDeposits,R=void 0!==G&&G,w=e.hasBookingManagement,M=void 0!==w&&w,O=e.zoneList,U=void 0===O?[]:O,B=e.onCopy,Y=e.onProductNameChange,V=e.productName,Q=e.hasTicket,H=e.categoryType,X=e.zoneDuration,z=e.isOverrides,W=void 0!==z&&z,Z=s.useFormContext(),J=Z.register,K=Z.control,$=Z.formState.errors,ee=Z.setValue,te=Z.getValues,ae=Z.watch,ne=Z.trigger,re=Z.clearErrors,oe=a.useContext(g.ProductSetLoadingContext),ie=oe.setLoading,le=oe.productGroupList,ce=r.useTranslation(["Design","Validation","ProductSet"]).t,se=t.__read(a.useState(!1),2),de=se[0],ue=se[1],me=t.__read(a.useState(null),2),pe=me[0],Ee=me[1],ge=Boolean(ae("".concat(A,".isUnlimited"))),fe=ae("".concat(A,".capacity")),Ce="0"===fe||!fe,ve=u.useId(),be=u.useId(),Ie=u.useId(),he=u.useId(),Fe=u.useId(),Pe=u.useId(),Ne=u.useId(),qe=u.useId(),Te=u.useId(),ye=u.useId(),_e=u.useId(),xe=u.useId(),ke=[{id:1,value:ce("quantitySelector")},{id:2,value:ce("stockControl")}],Se=a.useCallback((function(){return ue((function(e){return!e}))}),[]),De=s.useWatch({control:K,name:"".concat(A,".quantitySelector")}),Le=N.useImages(pe),je=Le.images,Ae=Le.handleImageRemove,Ge=Le.handleImageUploading,Re=Le.isLoading,we=a.useCallback((function(e){Ge(e,q.IMAGE_TYPE_IMAGE)}),[Ge]),Me=a.useCallback((function(e,t){Ae(String(e),t)}),[Ae]),Oe=function(e){return e.target.select()};a.useEffect((function(){ie(Re)}),[ie,Re]),a.useEffect((function(){var e=te("".concat(A,".images"));Ee(e)}),[te,Ee,A]),a.useEffect((function(){Array.isArray(je)&&ee("".concat(A,".images"),je)}),[je,A,ee]),a.useEffect((function(){Ce?(ee("".concat(A,".duration"),0),re("".concat(A,".duration"))):ne("".concat(A,".duration"))}),[Ce]);var Ue=null!=De?De:"1",Be=f.QUANTITY_TYPE_LIST_DTO[Ue];return n.createElement(n.Fragment,null,n.createElement(o,null,n.createElement(i,{lg:8,md:8},n.createElement(l.Form.Group,{controlId:be},n.createElement(l.Form.Label,null,ce("name")),n.createElement(l.Form.Control,t.__assign({},J("".concat(A,".name")),{value:V,onChange:Y,isInvalid:d.isInvalid("".concat(A,".name"),$),disabled:j||W,placeholder:ce("name")})),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".name"),$))),n.createElement(l.Form.Group,{controlId:he},n.createElement(l.Form.Label,null,ce("description")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange;return n.createElement(_.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:r,content:a,disabled:j||W})},rules:{maxLength:{value:D.MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH,message:ce("Validation:descriptionTooManyCharactersMessage",{max:D.MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH})}},control:K,name:"".concat(A,".description")})),n.createElement("div",{className:"invalid-feedback field-values-error d-block"},d.getErrors("".concat(A,".description"),$)),R?n.createElement(o,null,n.createElement(b.ProductDepositControl,{isLoading:j,fieldNamePrefix:A}),n.createElement(S.ProductPriceControl,{isLoading:j,fieldNamePrefix:"".concat(A,".price"),title:ce("totalPrice"),allowDeposits:R})):n.createElement(S.ProductPriceControl,{isLoading:j,fieldNamePrefix:"".concat(A,".price")}),n.createElement("div",null,n.createElement(I.ProductQuantityControl,{isLoading:j,fieldNamePrefix:A,isOverrides:W,onFocus:Oe}),Be===f.QUANTITY_TYPE_CONSTANT&&n.createElement(h.ProductQuantityConstantControl,{isLoading:j,fieldNamePrefix:A,onFocus:Oe,disabled:ge}),Be===f.QUANTITY_TYPE_RECHARGING&&n.createElement(F.ProductQuantityRechargingControl,{isLoading:j,fieldNamePrefix:A,onFocus:Oe,disabled:ge}),n.createElement(l.Form.Group,{controlId:_e,className:"custom-checkbox"},n.createElement(l.Form.Check,t.__assign({custom:!0,type:"checkbox"},J("".concat(A,".isUnlimited")),{name:"".concat(A,".isUnlimited"),disabled:j})),n.createElement(l.Form.Check.Label,null,ce("isUnlimited")))),n.createElement(l.Form.Group,{controlId:Te},n.createElement(l.Form.Label,null,ce("quantitySelectorType")),n.createElement(l.Form.Control,t.__assign({as:"select",defaultValue:Q?ke[0].id:void 0},J("".concat(A,".quantitySelector")),{isInvalid:d.isInvalid("".concat(A,".quantitySelector"),$),disabled:j||Q||W}),ke.map((function(e){return n.createElement("option",{value:e.id,key:e.id},e.value)}))),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".quantitySelector"),$))),n.createElement(y.PropertyControl,{item:"".concat(A,".color"),label:ce("ProductSet:selectColor"),isDisabled:W,isRequired:!1,defaultColors:C.PRODUCT_DEfAULT_COLORS}),n.createElement(l.Form.Group,{controlId:Ie},n.createElement(l.Form.Label,null,ce("productGroup")),n.createElement(l.Form.Control,t.__assign({as:"select"},J("".concat(A,".productGroupId")),{isInvalid:d.isInvalid("".concat(A,".productGroupId"),$),disabled:j,defaultValue:""}),n.createElement("option",{value:""},ce("Design:selectProductGroup")),le.map((function(e){return n.createElement("option",{value:e.id,key:e.id},e.value)}))),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".productGroupId"),$))))),H===f.CATEGORY_TYPE_FIXED_DURATION&&n.createElement(o,{className:"align-items-start duration-capacity-container"},n.createElement(k.ProductDurationControl,{fieldNamePrefix:A,disabled:Ce||W}),n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".capacity"),label:ce("capacity"),disabled:W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("capacity"),min:0})}}})),Ce&&n.createElement("div",{className:"duration-hint duration-capacity-container"},ce("Design:forDurationEditing"))),H===f.CATEGORY_TYPE_GAME&&n.createElement(n.Fragment,null,n.createElement(o,{className:"align-items-start duration-capacity-container"},n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".capacity"),label:ce("capacity"),onChange:function(e){X&&ee("".concat(A,".duration"),e*X)},disabled:W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("capacity"),min:1})}}})),n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".duration"),label:ce("durationMinutes"),disabled:Ce||W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("duration"),min:0})},validate:function(e){return!(!Ce&&(!e||e<1))||ce("Validation:fieldRequired",{attribute:ce("duration")})}}}))),Ce&&n.createElement("div",{className:"duration-hint pl-0"},ce("Design:forDurationEditing"))),n.createElement(o,{className:"mt-4"},n.createElement(i,{lg:8,md:8},n.createElement(l.Form.Group,{controlId:Fe},n.createElement(l.Form.Label,null,ce("productTermsConditions")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name,i=t.ref;return n.createElement(l.Form.Control,{ref:i,as:"textarea",rows:3,value:a,onChange:r,isInvalid:d.isInvalid("".concat(A,".termsAndConditions"),$),disabled:j||W,name:o})},control:K,name:"".concat(A,".termsAndConditions")}),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".termsAndConditions"),$)))),n.createElement(i,{lg:4,md:4,className:m("licklist-file-upload-wrapper",W&&"opacity-50")},n.createElement(T.FileUpload,{onFilesChange:we,allowedExtensions:["jpeg","jpg","png"],subTitle:".jpeg .jpg .png",enablePreview:!0,onFileRemove:Me,defaultFiles:je,isLoading:Re,disabled:W,withIcon:!0,title:ce("addImage")}))),n.createElement(i,{lg:12,md:12,xl:!0,className:"p-0"},n.createElement(l.Form.Group,{controlId:Pe,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isAvailable")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".isAvailable")})),n.createElement(l.Form.Group,{controlId:Ne,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isSoldOut")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j})},control:K,name:"".concat(A,".isSoldOut")})),n.createElement(l.Form.Group,{controlId:ve,className:"custom-checkbox"},n.createElement(l.Form.Check,{custom:!0,type:"checkbox",name:ve,disabled:j||W},n.createElement(l.Form.Check.Input,{checked:de,onChange:Se,type:"checkbox"}),n.createElement(l.Form.Check.Label,null,ce("showAdvancedOptions"))))),n.createElement(i,{lg:12,md:12,xl:!0,className:"p-0"},n.createElement(P,{in:de},n.createElement("div",null,n.createElement(l.Form.Group,{controlId:qe,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isRequired")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".isRequired")})),n.createElement(l.Form.Group,{controlId:ye,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("hasSpecialNotes")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".hasSpecialNotes")})),[f.CATEGORY_TYPE_GAME,f.CATEGORY_TYPE_FIXED_DURATION].includes(H)&&n.createElement(x.FixedDurationOptions,{fieldNamePrefix:A,isOverrides:W}),n.createElement(l.Form.Group,{controlId:xe,className:"advanced-switch-container"},n.createElement(S.ProductPriceControl,{title:ce("minSpend"),isRequired:!1,isMoreThanZero:!0,allowDeposits:!1,isLoading:j||W,fieldNamePrefix:"".concat(A,".minSpend")})))),n.createElement(o,null,n.createElement(i,{xs:12},M&&n.createElement(v.ProductBookingManagementControl,{isLoading:j,zoneList:U,fieldNamePrefix:A})))),n.createElement(o,null,n.createElement(i,{xs:!0},n.createElement("div",{className:"d-flex justify-content-end mt-4"},Boolean(B)&&n.createElement(l.Button,{onClick:B,variant:"link",className:"d-flex align-items-center"},n.createElement(c.default,{type:"clipboard",height:"1rem",className:"mr-2"})," ",ce("copy"))))))};
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"),a=require("react"),n=e(a),r=require("react-i18next"),o=e(require("react-bootstrap/Row")),i=e(require("react-bootstrap/Col")),l=require("react-bootstrap"),c=require("../../static/Icon.js"),s=require("react-hook-form"),d=e(require("@licklist/plugins/dist/services/Form/HookFormService")),u=require("@react-aria/utils"),m=e(require("clsx")),p=require("../../static/switch/BooleanSwitch.js"),E=require("../../static/form-number-input/FormNumberInput.js");require("../../static/index.js");var g=require("../form/context.js"),f=require("@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper"),C=require("@licklist/core/dist/DataMapper/Product/ProductDataMapper"),v=require("./booking-management/ProductBookingManagementControl.js"),b=require("./deposit/ProductDepositControl.js"),I=require("./quantity/ProductQuantityControl.js"),h=require("./quantity/ProductQuantityConstantControl.js"),F=require("./quantity/ProductQuantityRechargingControl.js"),P=e(require("react-bootstrap/Collapse")),N=require("@licklist/plugins/dist/hooks/Media/useImages"),q=require("@licklist/core/dist/DataMapper/Media/ImageDataMapper"),T=require("../../file-upload/FileUpload.js");require("../../snippet/snippet-template/context/snippetTemplate.js"),require("../../snippet/snippet-template/context/snippetTemplateLoading.js"),require("../../snippet/snippet-template/context/snippetTemplateView.js");var y=require("../../snippet/snippet-template/control/PropertyControl.js");require("../../snippet/snippet-template/form/SnippetTemplateForm.js");var _=require("../../tiptap-editor/TipTapEditor.js");require("../../snippet/snippet-template/settings/SettingButton.js"),require("../../snippet/snippet-template/preview/Preview.js"),require("../../snippet/snippet-template/SnippetTemplate.js");var x=require("./fixed-duration-fields/FixedDurationOptions.js"),k=require("./duration/ProductDurationControl.js"),S=require("./price/ProductPriceControl.js"),D=require("./constants.js");exports.ProductControl=function(e){var L=e.isLoading,j=void 0!==L&&L,A=e.fieldNamePrefix,G=e.allowDeposits,R=void 0!==G&&G,w=e.hasBookingManagement,M=void 0!==w&&w,O=e.zoneList,U=void 0===O?[]:O,B=e.onCopy,Y=e.onProductNameChange,V=e.productName,Q=e.hasTicket,H=e.categoryType,X=e.zoneDuration,z=e.isOverrides,W=void 0!==z&&z,Z=s.useFormContext(),J=Z.register,K=Z.control,$=Z.formState.errors,ee=Z.setValue,te=Z.getValues,ae=Z.watch,ne=Z.trigger,re=Z.clearErrors,oe=a.useContext(g.ProductSetLoadingContext),ie=oe.setLoading,le=oe.productGroupList,ce=r.useTranslation(["Design","Validation","ProductSet"]).t,se=t.__read(a.useState(!1),2),de=se[0],ue=se[1],me=t.__read(a.useState(null),2),pe=me[0],Ee=me[1],ge=Boolean(ae("".concat(A,".isUnlimited"))),fe=ae("".concat(A,".capacity")),Ce="0"===fe||!fe,ve=u.useId(),be=u.useId(),Ie=u.useId(),he=u.useId(),Fe=u.useId(),Pe=u.useId(),Ne=u.useId(),qe=u.useId(),Te=u.useId(),ye=u.useId(),_e=u.useId(),xe=u.useId(),ke=[{id:1,value:ce("quantitySelector")},{id:2,value:ce("stockControl")}],Se=a.useCallback((function(){return ue((function(e){return!e}))}),[]),De=s.useWatch({control:K,name:"".concat(A,".quantitySelector")}),Le=N.useImages(pe),je=Le.images,Ae=Le.handleImageRemove,Ge=Le.handleImageUploading,Re=Le.isLoading,we=a.useCallback((function(e){Ge(e,q.IMAGE_TYPE_IMAGE)}),[Ge]),Me=a.useCallback((function(e,t){Ae(String(e),t)}),[Ae]),Oe=function(e){return e.target.select()};a.useEffect((function(){ie(Re)}),[ie,Re]),a.useEffect((function(){var e=te("".concat(A,".images"));Ee(e)}),[te,Ee,A]),a.useEffect((function(){Array.isArray(je)&&ee("".concat(A,".images"),je)}),[je,A,ee]),a.useEffect((function(){Ce?(ee("".concat(A,".duration"),0),re("".concat(A,".duration"))):ne("".concat(A,".duration"))}),[Ce]);var Ue=null!=De?De:"1",Be=f.QUANTITY_TYPE_LIST_DTO[Ue];return n.createElement(n.Fragment,null,n.createElement(o,null,n.createElement(i,{lg:8,md:8},n.createElement(l.Form.Group,{controlId:be},n.createElement(l.Form.Label,null,ce("name")),n.createElement(l.Form.Control,t.__assign({},J("".concat(A,".name")),{value:V,onChange:Y,isInvalid:d.isInvalid("".concat(A,".name"),$),disabled:j||W,placeholder:ce("name")})),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".name"),$))),n.createElement(l.Form.Group,{controlId:he},n.createElement(l.Form.Label,null,ce("description")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange;return n.createElement(_.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:r,content:a,disabled:j||W})},rules:{maxLength:{value:D.MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH,message:ce("Validation:descriptionTooManyCharactersMessage",{max:D.MAX_PRODUCT_DESCRIPTION_CHARACTERS_LENGTH})}},control:K,name:"".concat(A,".description")})),n.createElement("div",{className:"invalid-feedback field-values-error d-block"},d.getErrors("".concat(A,".description"),$)),R?n.createElement(o,null,n.createElement(b.ProductDepositControl,{isLoading:j,fieldNamePrefix:A}),n.createElement(S.ProductPriceControl,{isLoading:j,fieldNamePrefix:"".concat(A,".price"),title:ce("totalPrice"),allowDeposits:R})):n.createElement(S.ProductPriceControl,{isLoading:j,fieldNamePrefix:"".concat(A,".price")}),n.createElement("div",null,n.createElement(I.ProductQuantityControl,{isLoading:j,fieldNamePrefix:A,isOverrides:W,onFocus:Oe}),Be===f.QUANTITY_TYPE_CONSTANT&&n.createElement(h.ProductQuantityConstantControl,{isLoading:j,fieldNamePrefix:A,onFocus:Oe,disabled:ge}),Be===f.QUANTITY_TYPE_RECHARGING&&n.createElement(F.ProductQuantityRechargingControl,{isLoading:j,fieldNamePrefix:A,onFocus:Oe,disabled:ge}),n.createElement(l.Form.Group,{controlId:_e,className:"custom-checkbox"},n.createElement(l.Form.Check,t.__assign({custom:!0,type:"checkbox"},J("".concat(A,".isUnlimited")),{name:"".concat(A,".isUnlimited"),disabled:j})),n.createElement(l.Form.Check.Label,null,ce("isUnlimited")))),n.createElement(l.Form.Group,{controlId:Te},n.createElement(l.Form.Label,null,ce("quantitySelectorType")),n.createElement(l.Form.Control,t.__assign({as:"select",defaultValue:Q?ke[0].id:void 0},J("".concat(A,".quantitySelector")),{isInvalid:d.isInvalid("".concat(A,".quantitySelector"),$),disabled:j||Q||W}),ke.map((function(e){return n.createElement("option",{value:e.id,key:e.id},e.value)}))),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".quantitySelector"),$))),n.createElement(y.PropertyControl,{item:"".concat(A,".color"),label:ce("ProductSet:selectColor"),isDisabled:W,isRequired:!1,defaultColors:C.PRODUCT_DEfAULT_COLORS}),n.createElement(l.Form.Group,{controlId:Ie},n.createElement(l.Form.Label,null,ce("productGroup")),n.createElement(l.Form.Control,t.__assign({as:"select"},J("".concat(A,".productGroupId")),{isInvalid:d.isInvalid("".concat(A,".productGroupId"),$),disabled:j||W,defaultValue:""}),n.createElement("option",{value:""},ce("Design:selectProductGroup")),le.map((function(e){return n.createElement("option",{value:e.id,key:e.id},e.value)}))),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".productGroupId"),$))))),H===f.CATEGORY_TYPE_FIXED_DURATION&&n.createElement(o,{className:"align-items-start duration-capacity-container"},n.createElement(k.ProductDurationControl,{fieldNamePrefix:A,disabled:Ce||W}),n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".capacity"),label:ce("capacity"),disabled:W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("capacity"),min:0})}}})),Ce&&n.createElement("div",{className:"duration-hint duration-capacity-container"},ce("Design:forDurationEditing"))),H===f.CATEGORY_TYPE_GAME&&n.createElement(n.Fragment,null,n.createElement(o,{className:"align-items-start duration-capacity-container"},n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".capacity"),label:ce("capacity"),onChange:function(e){X&&ee("".concat(A,".duration"),e*X)},disabled:W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("capacity"),min:1})}}})),n.createElement(i,{lg:4,md:4},n.createElement(E.FormNumberInput,{fieldName:"".concat(A,".duration"),label:ce("durationMinutes"),disabled:Ce||W,rules:{min:{value:0,message:ce("Validation:fieldMinNumber",{attribute:ce("duration"),min:0})},validate:function(e){return!(!Ce&&(!e||e<1))||ce("Validation:fieldRequired",{attribute:ce("duration")})}}}))),Ce&&n.createElement("div",{className:"duration-hint pl-0"},ce("Design:forDurationEditing"))),n.createElement(o,{className:"mt-4"},n.createElement(i,{lg:8,md:8},n.createElement(l.Form.Group,{controlId:Fe},n.createElement(l.Form.Label,null,ce("productTermsConditions")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name,i=t.ref;return n.createElement(l.Form.Control,{ref:i,as:"textarea",rows:3,value:a,onChange:r,isInvalid:d.isInvalid("".concat(A,".termsAndConditions"),$),disabled:j||W,name:o})},control:K,name:"".concat(A,".termsAndConditions")}),n.createElement(l.Form.Control.Feedback,{type:"invalid"},d.getErrors("".concat(A,".termsAndConditions"),$)))),n.createElement(i,{lg:4,md:4,className:m("licklist-file-upload-wrapper",W&&"opacity-50")},n.createElement(T.FileUpload,{onFilesChange:we,allowedExtensions:["jpeg","jpg","png"],subTitle:".jpeg .jpg .png",enablePreview:!0,onFileRemove:Me,defaultFiles:je,isLoading:Re,disabled:W,withIcon:!0,title:ce("addImage")}))),n.createElement(i,{lg:12,md:12,xl:!0,className:"p-0"},n.createElement(l.Form.Group,{controlId:Pe,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isAvailable")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".isAvailable")})),n.createElement(l.Form.Group,{controlId:Ne,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isSoldOut")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j})},control:K,name:"".concat(A,".isSoldOut")})),n.createElement(l.Form.Group,{controlId:ve,className:"custom-checkbox"},n.createElement(l.Form.Check,{custom:!0,type:"checkbox",name:ve,disabled:j||W},n.createElement(l.Form.Check.Input,{checked:de,onChange:Se,type:"checkbox"}),n.createElement(l.Form.Check.Label,null,ce("showAdvancedOptions"))))),n.createElement(i,{lg:12,md:12,xl:!0,className:"p-0"},n.createElement(P,{in:de},n.createElement("div",null,n.createElement(l.Form.Group,{controlId:qe,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("isRequired")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".isRequired")})),n.createElement(l.Form.Group,{controlId:ye,className:"advanced-switch-container"},n.createElement(l.Form.Label,null,ce("hasSpecialNotes")),n.createElement(s.Controller,{render:function(e){var t=e.field,a=t.value,r=t.onChange,o=t.name;return n.createElement(p.BooleanSwitch,{name:o,value:Boolean(a),onChange:r,disabled:j||W})},control:K,name:"".concat(A,".hasSpecialNotes")})),[f.CATEGORY_TYPE_GAME,f.CATEGORY_TYPE_FIXED_DURATION].includes(H)&&n.createElement(x.FixedDurationOptions,{fieldNamePrefix:A,isOverrides:W}),n.createElement(l.Form.Group,{controlId:xe,className:"advanced-switch-container"},n.createElement(S.ProductPriceControl,{title:ce("minSpend"),isRequired:!1,isMoreThanZero:!0,allowDeposits:!1,isLoading:j||W,fieldNamePrefix:"".concat(A,".minSpend")})))),n.createElement(o,null,n.createElement(i,{xs:12},M&&n.createElement(v.ProductBookingManagementControl,{isLoading:j,zoneList:U,fieldNamePrefix:A})))),n.createElement(o,null,n.createElement(i,{xs:!0},n.createElement("div",{className:"d-flex justify-content-end mt-4"},Boolean(B)&&n.createElement(l.Button,{onClick:B,variant:"link",className:"d-flex align-items-center"},n.createElement(c.default,{type:"clipboard",height:"1rem",className:"mr-2"})," ",ce("copy"))))))};
@@ -16,6 +16,7 @@ export interface StepControlProps extends IsDeletableEvent {
16
16
  stepIndex: number;
17
17
  stepName: string;
18
18
  onStepNameChange: (args: any) => void;
19
+ isOverrides?: boolean;
19
20
  }
20
- export declare function StepControl({ isLoading, stepIndex, stepName, onStepNameChange, }: StepControlProps): JSX.Element;
21
+ export declare function StepControl({ isLoading, stepIndex, stepName, onStepNameChange, isOverrides, }: StepControlProps): JSX.Element;
21
22
  //# sourceMappingURL=StepControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StepControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/step/StepControl.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAC;AAE1F,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAC;AAE7F,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI7D,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,IAAI,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,SAAS,EACT,QAAQ,EACR,gBAAgB,GACjB,EAAE,gBAAgB,eAqGlB"}
1
+ {"version":3,"file":"StepControl.d.ts","sourceRoot":"","sources":["../../../src/product-set/step/StepControl.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAC;AAE1F,OAAO,EAAE,YAAY,EAAE,MAAM,+DAA+D,CAAC;AAE7F,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAI7D,MAAM,WAAW,iBAAkB,SAAQ,UAAU;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,IAAI,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,SAAS,EACT,QAAQ,EACR,gBAAgB,EAChB,WAAmB,GACpB,EAAE,gBAAgB,eAoGlB"}
@@ -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("react"),r=e(t),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),l=e(require("@licklist/plugins/dist/services/Form/HookFormService")),i=require("@react-aria/utils"),s=require("../../static/switch/BooleanSwitch.js"),c=require("../form/context.js");exports.StepControl=function(e){var m,u,d=e.isLoading,p=e.stepIndex,v=e.stepName,f=e.onStepNameChange,E=t.useContext(c.ProductSetLoadingContext).providerHasMap,C=o.useFormContext(),g=C.control,h=C.formState.errors,F=C.clearErrors,b=C.watch,q=a.useTranslation("Design").t,x="steps.".concat(p,".name"),I="steps.".concat(p,".productCategories"),S=null===(u=null===(m=null==h?void 0:h.steps)||void 0===m?void 0:m[p])||void 0===u?void 0:u.productCategories,M=b("steps.".concat(p,".hasMap"))||!1,N=i.useId(),w=i.useId();return r.createElement(r.Fragment,null,r.createElement(n.Row,null,r.createElement(n.Col,{xs:!0,sm:6,md:!0,lg:!0},r.createElement(n.Form.Group,{controlId:N},r.createElement(n.Form.Label,null,q("name")),r.createElement(o.Controller,{render:function(e){var t=e.field,a=t.name,o=t.ref;return r.createElement(n.Form.Control,{ref:o,value:v,onChange:f,name:a,placeholder:q("name"),isInvalid:l.isInvalid(x,h),disabled:d})},control:g,name:x,rules:{required:q("Validation:fieldRequired",{attribute:q("name")}),validate:function(){return(null==S?void 0:S.type)===l.manualErrorType&&F(I),!0}}}),r.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors(x,h)),E&&r.createElement("div",{className:"mt-5 pt-5"},r.createElement("hr",null),r.createElement(n.Form.Group,{controlId:w,className:"d-flex mb-3 align-items-center"},r.createElement(n.Form.Label,{className:"mr-5 m-0"},q("hasAMap")),r.createElement("div",null,r.createElement(o.Controller,{render:function(e){var t=e.field,a=t.name,n=t.value,o=t.onChange;return r.createElement(s.BooleanSwitch,{name:a,value:Boolean(n),onChange:o,disabled:d})},control:g,name:"steps.".concat(p,".hasMap")}))),M&&r.createElement("p",{className:"mt-5 info"},q("toUseAMapPleaseAddProductsFirst")))))))};
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react"),t=e(r),a=require("react-i18next"),n=require("react-bootstrap"),o=require("react-hook-form"),l=e(require("@licklist/plugins/dist/services/Form/HookFormService")),i=require("@react-aria/utils"),s=require("../../static/switch/BooleanSwitch.js"),c=require("../form/context.js");exports.StepControl=function(e){var m,u,d=e.isLoading,p=e.stepIndex,v=e.stepName,f=e.onStepNameChange,E=e.isOverrides,C=void 0!==E&&E,g=r.useContext(c.ProductSetLoadingContext).providerHasMap,h=o.useFormContext(),F=h.control,b=h.formState.errors,q=h.clearErrors,x=h.watch,I=a.useTranslation("Design").t,S="steps.".concat(p,".name"),M="steps.".concat(p,".productCategories"),N=null===(u=null===(m=null==b?void 0:b.steps)||void 0===m?void 0:m[p])||void 0===u?void 0:u.productCategories,w=x("steps.".concat(p,".hasMap"))||!1,y=i.useId(),j=i.useId();return t.createElement(t.Fragment,null,t.createElement(n.Row,null,t.createElement(n.Col,{xs:!0,sm:6,md:!0,lg:!0},t.createElement(n.Form.Group,{controlId:y},t.createElement(n.Form.Label,null,I("name")),t.createElement(o.Controller,{render:function(e){var r=e.field,a=r.name,o=r.ref;return t.createElement(n.Form.Control,{ref:o,value:v,onChange:f,name:a,placeholder:I("name"),isInvalid:l.isInvalid(S,b),disabled:d||C})},control:F,name:S,rules:{required:I("Validation:fieldRequired",{attribute:I("name")}),validate:function(){return(null==N?void 0:N.type)===l.manualErrorType&&q(M),!0}}}),t.createElement(n.Form.Control.Feedback,{type:"invalid"},l.getErrors(S,b)),g&&t.createElement("div",{className:"mt-5 pt-5"},t.createElement("hr",null),t.createElement(n.Form.Group,{controlId:j,className:"d-flex mb-3 align-items-center"},t.createElement(n.Form.Label,{className:"mr-5 m-0"},I("hasAMap")),t.createElement("div",null,t.createElement(o.Controller,{render:function(e){var r=e.field,a=r.name,n=r.value,o=r.onChange;return t.createElement(s.BooleanSwitch,{name:a,value:Boolean(n),onChange:o,disabled:d||C})},control:F,name:"steps.".concat(p,".hasMap")}))),w&&t.createElement("p",{className:"mt-5 info"},I("toUseAMapPleaseAddProductsFirst")))))))};
@@ -33,7 +33,6 @@ export interface SortableTreeItemProps {
33
33
  };
34
34
  setIsExpanded?: () => void;
35
35
  isOverride?: boolean;
36
- isProduct?: boolean;
37
36
  }
38
- export declare function SortableTreeItem({ id, title, badge, subTitle, body, children, preItem, postItem, sortableItems, isExpanded, isInvalid, isIconInHeader, treeLineIconColor, modalLabel, modalClass, isNewAdded, onDelete, validate, cancelChanges, saveValidField, edit, secondaryBadge, setIsExpanded, isOverride, isProduct, }: SortableTreeItemProps): JSX.Element;
37
+ export declare function SortableTreeItem({ id, title, badge, subTitle, body, children, preItem, postItem, sortableItems, isExpanded, isInvalid, isIconInHeader, treeLineIconColor, modalLabel, modalClass, isNewAdded, onDelete, validate, cancelChanges, saveValidField, edit, secondaryBadge, setIsExpanded, isOverride, }: SortableTreeItemProps): JSX.Element;
39
38
  //# sourceMappingURL=SortableTreeItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SortableTreeItem.d.ts","sourceRoot":"","sources":["../../src/sortable-tree/SortableTreeItem.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAoC,MAAM,OAAO,CAAC;AAkB3E,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,0BAA0B,GACpC,OAAO,sBAAsB,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE;QACf,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,EAAE,EACF,KAAK,EACL,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,aAAa,EACb,UAAkB,EAClB,SAAiB,EACjB,cAAqB,EACrB,iBAAsB,EACtB,UAAe,EACf,UAAU,EACV,UAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,cAAc,EACd,IAAI,EACJ,cAAc,EACd,aAAa,EACb,UAAU,EACV,SAAiB,GAClB,EAAE,qBAAqB,eAiTvB"}
1
+ {"version":3,"file":"SortableTreeItem.d.ts","sourceRoot":"","sources":["../../src/sortable-tree/SortableTreeItem.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAoC,MAAM,OAAO,CAAC;AAkB3E,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,0BAA0B,GACpC,OAAO,sBAAsB,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAErE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,cAAc,CAAC,EAAE;QACf,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,EAAE,EACF,KAAK,EACL,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,aAAa,EACb,UAAkB,EAClB,SAAiB,EACjB,cAAqB,EACrB,iBAAsB,EACtB,UAAe,EACf,UAAU,EACV,UAAkB,EAClB,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,cAAc,EACd,IAAI,EACJ,cAAc,EACd,aAAa,EACb,UAAU,GACX,EAAE,qBAAqB,eAgTvB"}
@@ -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"),a=require("react"),n=e(a),r=require("react-i18next"),l=require("react-bootstrap"),s=require("../static/Icon.js"),o=e(require("clsx")),i=require("@dnd-kit/core"),c=require("@dnd-kit/sortable"),d=require("@dnd-kit/utilities"),m=require("../modals/confirmation/ConfirmModal.js");require("../modals/dialog/Dialog.js"),require("../modals/dialog/DialogContext.js");var u=require("../product-set/elements/DeleteFieldButton.js"),p={step:"edit-product-step",category:"edit-product-category",product:"edit-product"};exports.ProductSetModalClasses=p,exports.SortableTreeItem=function(e){var b=this,g=e.id,v=e.title,E=e.badge,f=e.subTitle,N=e.body,y=e.children,h=e.preItem,C=e.postItem,w=e.sortableItems,_=e.isExpanded,x=void 0!==_&&_,D=e.isInvalid,S=void 0!==D&&D,q=e.isIconInHeader,M=void 0===q||q,k=e.treeLineIconColor,I=void 0===k?"":k,B=e.modalLabel,j=void 0===B?"":B,P=e.modalClass,T=e.isNewAdded,X=void 0!==T&&T,Y=e.onDelete,A=e.validate,F=e.cancelChanges,L=e.saveValidField,R=e.edit,U=e.secondaryBadge,V=e.setIsExpanded,z=e.isOverride,H=e.isProduct,K=void 0!==H&&H,O=t.__read(a.useState(x),2),G=O[0],J=O[1],Q=t.__read(a.useState(X),2),W=Q[0],Z=Q[1],$=r.useTranslation("Design").t,ee=c.useSortable({id:g}),te=ee.attributes,ae=ee.listeners,ne=ee.setNodeRef,re=ee.transform,le=ee.transition,se=t.__read(a.useState({pageX:0,pageY:0}),2),oe=se[0],ie=se[1],ce=i.useDraggable({id:g,disabled:z}),de=ce.isDragging,me=ce.attributes,ue=ce.listeners,pe=ce.setNodeRef,be=ce.transform,ge=a.useCallback((function(e){var t=e.pageX-oe.pageX,a=e.pageY-oe.pageY;Math.sqrt(t*t+a*a)>5||(V?V():J((function(e){return!e})))}),[oe,V]),ve=Boolean(Y)&&!z,Ee=a.useCallback((function(e){ie({pageX:e.pageX,pageY:e.pageY})}),[]),fe=function(){return t.__awaiter(b,void 0,void 0,(function(){return t.__generator(this,(function(e){switch(e.label){case 0:return A||Z(!1),[4,null==A?void 0:A()];case 1:return e.sent()&&(L&&L(),Z(!1)),[2]}}))}))};return a.useEffect((function(){J(x)}),[x]),n.createElement("div",t.__assign({className:"sortable-tree-root",style:{transform:d.CSS.Translate.toString(re),transition:le}},me,ue,{ref:ne}),n.createElement("div",t.__assign({className:"sortable-tree-wrapper",ref:pe},me,ue,{onKeyDown:function(e){return e.stopPropagation()},onMouseDown:function(e){W&&e.stopPropagation()},onMouseUp:function(e){W&&e.stopPropagation()},role:"button",tabIndex:0,style:P===p.step?{transform:d.CSS.Translate.toString(be),opacity:de?.7:1}:null}),n.createElement("div",{className:"sortable-tree-line"},n.createElement(l.Button,{variant:"link",size:"sm",onMouseDown:Ee,onMouseUp:ge},G?n.createElement(s.default,{type:"minus",width:".7rem"}):n.createElement("div",{className:"expand-icon-container"},n.createElement("div",null),n.createElement("div",null),n.createElement("div",null))),G&&n.createElement("svg",{className:"sortable-tree-line-icon",version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",viewBox:"0 0 100 100",preserveAspectRatio:"none"},n.createElement("g",null,n.createElement("path",{className:o("sortable-tree-line-icon-path",I&&"sortable-tree-line-product-element"),style:{stroke:I},d:"M 50 0 V 100"})))),n.createElement("div",{className:"sortable-tree-item-wrapper"},n.createElement("div",{className:o("sortable-tree-item",S?"invalid":"")},n.createElement("div",{className:"sortable-tree-item-header"},M&&n.createElement(l.Button,t.__assign({variant:"link",className:"sortable-tree-item-handle"},te,ae),n.createElement(s.default,{type:"grip-vertical"})),n.createElement(l.Button,{className:"sortable-tree-item-toggle",variant:"link",onMouseDown:Ee,onMouseUp:ge},E&&n.createElement("span",{className:"sortable-tree-item-badge"},E),n.createElement("div",{className:o(j?"sortable-tree-product-set-title-container":"sortable-tree-title-container")},n.createElement("span",{className:o("sortable-tree-item-title",j&&"sortable-tree-product-set-element-title")},v),!G&&n.createElement("span",{className:"sortable-tree-item-subtitle"},f)),n.createElement("div",{className:"border-0 open-edit-right-modal-button",role:"button",tabIndex:0,onClick:function(e){return function(e){z&&!K||(e.stopPropagation(),R&&!W&&R(),Z(!0))}(e)},onKeyDown:function(e){return e.stopPropagation()}},n.createElement(s.default,{type:"ellipsis-h",color:"#0E8CE2",height:"1rem"})))),M?n.createElement(l.Collapse,{in:G},n.createElement("div",null,n.createElement("div",{className:"sortable-tree-item-body"},N))):n.createElement(l.Modal,{size:"lg",show:W,className:o("m-0 edit-product-set-element-modal edit-right-form-modal h-100",P),dialogClassName:"edit-event-dialog edit-step-dialog",onHide:fe},n.createElement("div",{className:"edit-step-modal-header"},n.createElement("button",{className:"p-0 cancel-add-step-btn border-0",type:"button",onClick:function(){F?(F(),Z(!1)):fe()}},n.createElement("span",null,$("Design:cancel"))),U&&n.createElement("div",{className:"secondary-badge ".concat(null==U?void 0:U.className)},null==U?void 0:U.label)),n.createElement(l.Modal.Body,{as:"form",noValidate:!0},n.createElement("div",{className:"top-label-container"},n.createElement("span",null,j)),N,n.createElement("div",{className:"d-flex product-set-element-control-btns justify-content-between"},n.createElement(l.Button,{className:"step-save-btn mt-4",type:"button",onClick:fe},$("saveAndAdd")),ve&&n.createElement("div",{className:"d-flex justify-content-end mt-4 delete-btn"},n.createElement(m.ConfirmModal,null,(function(e){return n.createElement(u.DeleteFieldButton,{onDelete:function(){return e(Y)}})}))))))),w&&n.createElement("div",{className:"sortable-tree-subitems"},h,n.createElement(i.DndContext,null,n.createElement(c.SortableContext,{items:w,strategy:c.verticalListSortingStrategy},n.createElement(l.Collapse,{in:G},n.createElement("div",{className:"ml-0"},y)))),C))))};
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"),a=require("react"),n=e(a),r=require("react-i18next"),l=require("react-bootstrap"),s=require("../static/Icon.js"),o=e(require("clsx")),i=require("@dnd-kit/core"),c=require("@dnd-kit/sortable"),d=require("@dnd-kit/utilities"),m=require("../modals/confirmation/ConfirmModal.js");require("../modals/dialog/Dialog.js"),require("../modals/dialog/DialogContext.js");var u=require("../product-set/elements/DeleteFieldButton.js"),p={step:"edit-product-step",category:"edit-product-category",product:"edit-product"};exports.ProductSetModalClasses=p,exports.SortableTreeItem=function(e){var b=this,g=e.id,v=e.title,E=e.badge,f=e.subTitle,N=e.body,y=e.children,h=e.preItem,C=e.postItem,w=e.sortableItems,_=e.isExpanded,x=void 0!==_&&_,D=e.isInvalid,S=void 0!==D&&D,q=e.isIconInHeader,M=void 0===q||q,k=e.treeLineIconColor,I=void 0===k?"":k,B=e.modalLabel,j=void 0===B?"":B,P=e.modalClass,T=e.isNewAdded,X=void 0!==T&&T,Y=e.onDelete,A=e.validate,F=e.cancelChanges,L=e.saveValidField,R=e.edit,U=e.secondaryBadge,V=e.setIsExpanded,z=e.isOverride,H=t.__read(a.useState(x),2),K=H[0],O=H[1],G=t.__read(a.useState(X),2),J=G[0],Q=G[1],W=r.useTranslation("Design").t,Z=c.useSortable({id:g}),$=Z.attributes,ee=Z.listeners,te=Z.setNodeRef,ae=Z.transform,ne=Z.transition,re=t.__read(a.useState({pageX:0,pageY:0}),2),le=re[0],se=re[1],oe=i.useDraggable({id:g,disabled:z}),ie=oe.isDragging,ce=oe.attributes,de=oe.listeners,me=oe.setNodeRef,ue=oe.transform,pe=a.useCallback((function(e){var t=e.pageX-le.pageX,a=e.pageY-le.pageY;Math.sqrt(t*t+a*a)>5||(V?V():O((function(e){return!e})))}),[le,V]),be=Boolean(Y)&&!z,ge=a.useCallback((function(e){se({pageX:e.pageX,pageY:e.pageY})}),[]),ve=function(){return t.__awaiter(b,void 0,void 0,(function(){return t.__generator(this,(function(e){switch(e.label){case 0:return A||Q(!1),[4,null==A?void 0:A()];case 1:return e.sent()&&(L&&L(),Q(!1)),[2]}}))}))};return a.useEffect((function(){O(x)}),[x]),n.createElement("div",t.__assign({className:"sortable-tree-root",style:{transform:d.CSS.Translate.toString(ae),transition:ne}},ce,de,{ref:te}),n.createElement("div",t.__assign({className:"sortable-tree-wrapper",ref:me},ce,de,{onKeyDown:function(e){return e.stopPropagation()},onMouseDown:function(e){J&&e.stopPropagation()},onMouseUp:function(e){J&&e.stopPropagation()},role:"button",tabIndex:0,style:P===p.step?{transform:d.CSS.Translate.toString(ue),opacity:ie?.7:1}:null}),n.createElement("div",{className:"sortable-tree-line"},n.createElement(l.Button,{variant:"link",size:"sm",onMouseDown:ge,onMouseUp:pe},K?n.createElement(s.default,{type:"minus",width:".7rem"}):n.createElement("div",{className:"expand-icon-container"},n.createElement("div",null),n.createElement("div",null),n.createElement("div",null))),K&&n.createElement("svg",{className:"sortable-tree-line-icon",version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"100%",height:"100%",viewBox:"0 0 100 100",preserveAspectRatio:"none"},n.createElement("g",null,n.createElement("path",{className:o("sortable-tree-line-icon-path",I&&"sortable-tree-line-product-element"),style:{stroke:I},d:"M 50 0 V 100"})))),n.createElement("div",{className:"sortable-tree-item-wrapper"},n.createElement("div",{className:o("sortable-tree-item",S?"invalid":"")},n.createElement("div",{className:"sortable-tree-item-header"},M&&n.createElement(l.Button,t.__assign({variant:"link",className:"sortable-tree-item-handle"},$,ee),n.createElement(s.default,{type:"grip-vertical"})),n.createElement(l.Button,{className:"sortable-tree-item-toggle",variant:"link",onMouseDown:ge,onMouseUp:pe},E&&n.createElement("span",{className:"sortable-tree-item-badge"},E),n.createElement("div",{className:o(j?"sortable-tree-product-set-title-container":"sortable-tree-title-container")},n.createElement("span",{className:o("sortable-tree-item-title",j&&"sortable-tree-product-set-element-title")},v),!K&&n.createElement("span",{className:"sortable-tree-item-subtitle"},f)),n.createElement("div",{className:"border-0 open-edit-right-modal-button",role:"button",tabIndex:0,onClick:function(e){return function(e){e.stopPropagation(),R&&!J&&R(),Q(!0)}(e)},onKeyDown:function(e){return e.stopPropagation()}},n.createElement(s.default,{type:"ellipsis-h",color:"#0E8CE2",height:"1rem"})))),M?n.createElement(l.Collapse,{in:K},n.createElement("div",null,n.createElement("div",{className:"sortable-tree-item-body"},N))):n.createElement(l.Modal,{size:"lg",show:J,className:o("m-0 edit-product-set-element-modal edit-right-form-modal h-100",P),dialogClassName:"edit-event-dialog edit-step-dialog",onHide:ve},n.createElement("div",{className:"edit-step-modal-header"},n.createElement("button",{className:"p-0 cancel-add-step-btn border-0",type:"button",onClick:function(){F?(F(),Q(!1)):ve()}},n.createElement("span",null,W("Design:cancel"))),U&&n.createElement("div",{className:"secondary-badge ".concat(null==U?void 0:U.className)},null==U?void 0:U.label)),n.createElement(l.Modal.Body,{as:"form",noValidate:!0},n.createElement("div",{className:"top-label-container"},n.createElement("span",null,j)),N,n.createElement("div",{className:"d-flex product-set-element-control-btns justify-content-between"},n.createElement(l.Button,{className:"step-save-btn mt-4",type:"button",onClick:ve},W("saveAndAdd")),be&&n.createElement("div",{className:"d-flex justify-content-end mt-4 delete-btn"},n.createElement(m.ConfirmModal,null,(function(e){return n.createElement(u.DeleteFieldButton,{onDelete:function(){return e(Y)}})}))))))),w&&n.createElement("div",{className:"sortable-tree-subitems"},h,n.createElement(i.DndContext,null,n.createElement(c.SortableContext,{items:w,strategy:c.verticalListSortingStrategy},n.createElement(l.Collapse,{in:K},n.createElement("div",{className:"ml-0"},y)))),C))))};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.63.0-dev.0",
3
+ "version": "0.63.0-dev.1",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/artelogicsoft/licklist_design.git"
@@ -50,7 +50,7 @@
50
50
  "@fortawesome/free-brands-svg-icons": "5.15.2",
51
51
  "@fortawesome/free-solid-svg-icons": "5.15.2",
52
52
  "@fortawesome/react-fontawesome": "0.1.9",
53
- "@licklist/core": ">=0.25.1-dev.0 < 0.25.1",
53
+ "@licklist/core": ">=0.25.1-dev.1 < 0.25.1",
54
54
  "@licklist/eslint-config": "0.4.5",
55
55
  "@licklist/plugins": ">=0.28.0-dev.2 < 0.28.0",
56
56
  "@mdx-js/react": "1.6.22",
@@ -43,6 +43,10 @@ export const SelectEventProductSet = ({
43
43
  const productSetId = watch("productSetId");
44
44
  const editedProductSet = watch("editedProductSet");
45
45
 
46
+ const selectedProductSet = productSets.find(
47
+ (productSet) => productSet.id === productSetId
48
+ )?.parentMenuId;
49
+
46
50
  const onEditProductSet = useCallback(
47
51
  () => {
48
52
  setEditProductSetId(String(productSetId));
@@ -87,6 +91,9 @@ export const SelectEventProductSet = ({
87
91
  setValue("productSetId", value);
88
92
  };
89
93
 
94
+ const showOverrideProductSet =
95
+ !showEditProductSet && productSetId && !selectedProductSet;
96
+
90
97
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
91
98
  const onSubmit = (value: EditEventFormValues["editedProductSet"]) => {
92
99
  setShowEditProductSet(false);
@@ -162,7 +169,7 @@ export const SelectEventProductSet = ({
162
169
  {t("addNewProductSet")}
163
170
  </Button>
164
171
  )}
165
- {!showEditProductSet && productSetId && (
172
+ {showOverrideProductSet && (
166
173
  <Button
167
174
  variant=""
168
175
  className="btn product-set-button "
@@ -127,6 +127,7 @@ export const EditEventProductSet = ({
127
127
  companyName={selectedCompany?.title}
128
128
  fee={feeInPercent}
129
129
  isEventEditProductSet
130
+ isOverrides
130
131
  workHours={workHours}
131
132
  />
132
133
  <Button
@@ -120,7 +120,7 @@ export function ProductSetControl({
120
120
 
121
121
  const showSmsTemplateSelector = showSmsTemplate && !isOverrides;
122
122
  const showEmailTemplateSelector = showEmailTemplate && !isOverrides;
123
-
123
+ const showDateSelector = !isEventEditProductSet && isOverrides;
124
124
  return (
125
125
  <Row
126
126
  className={`product-set-form ${
@@ -162,7 +162,7 @@ export function ProductSetControl({
162
162
  </Form.Control.Feedback>
163
163
  </Form.Group>
164
164
 
165
- {isOverrides ? (
165
+ {showDateSelector ? (
166
166
  <DateInput
167
167
  workHours={workHours}
168
168
  isLoading={isLoading}
@@ -185,7 +185,11 @@ export function ProductSetControl({
185
185
 
186
186
  <TutorialGifCard isOverrides={isOverrides} />
187
187
 
188
- <StepsControl isLoading={isLoading} isOverrides={isOverrides} />
188
+ <StepsControl
189
+ isLoading={isLoading}
190
+ isEventEditProductSet={isEventEditProductSet}
191
+ isOverrides={isOverrides}
192
+ />
189
193
  </Col>
190
194
  <Col md={6} sm={12}>
191
195
  <div className="second-column">
@@ -36,6 +36,7 @@ import { useSortableTreeFunctions } from "../hooks/useSortableTreeFunctions";
36
36
  interface ProductCategoriesControlProps extends WithIsLoading {
37
37
  stepIndex: number;
38
38
  isOverrides?: boolean;
39
+ isEventEditProductSet?: boolean;
39
40
  }
40
41
 
41
42
  const getCategoryDefaultValue = (
@@ -67,6 +68,7 @@ export function ProductCategoriesControl({
67
68
  isLoading,
68
69
  stepIndex,
69
70
  isOverrides,
71
+ isEventEditProductSet,
70
72
  }: ProductCategoriesControlProps) {
71
73
  const { t } = useTranslation("Design");
72
74
  const {
@@ -214,6 +216,10 @@ export function ProductCategoriesControl({
214
216
  ? String(productCategory.id)
215
217
  : productCategory.uniqueId;
216
218
 
219
+ const isOverridesCategory = productCategory.products.some((product) =>
220
+ isEventEditProductSet ? !!product.id : !!product.originalProductId
221
+ );
222
+
217
223
  const onSetIsExpanded = () => {
218
224
  setIsExpanded(productCategoryId);
219
225
  };
@@ -269,7 +275,7 @@ export function ProductCategoriesControl({
269
275
  categoryName={value}
270
276
  stepIndex={stepIndex}
271
277
  productCategoryIndex={index}
272
- isOverride={isOverrides}
278
+ isOverride={isOverrides && isOverridesCategory}
273
279
  />
274
280
  }
275
281
  isOverride={isOverrides}
@@ -296,6 +302,7 @@ export function ProductCategoriesControl({
296
302
  productCategoryIndex={index}
297
303
  categoryType={productCategory.type}
298
304
  isOverrides={isOverrides}
305
+ isEventEditProductSet={isEventEditProductSet}
299
306
  />
300
307
  </SortableTree.Item>
301
308
  )}
@@ -305,9 +312,7 @@ export function ProductCategoriesControl({
305
312
  </SortableTree>
306
313
  <CreateProductSetItem
307
314
  title={t("addCategory")}
308
- isOverride={isOverrides}
309
315
  onClick={() => {
310
- if (isOverrides) return;
311
316
  setIsSelectCategoryVisible(true);
312
317
  }}
313
318
  />
@@ -316,7 +321,6 @@ export function ProductCategoriesControl({
316
321
  isVisible={isSelectCategoryVisible}
317
322
  onHide={() => setIsSelectCategoryVisible(false)}
318
323
  onCategorySelect={(categoryType) => {
319
- if (isOverrides) return;
320
324
  append(getCategoryDefaultValue(categoryType, fields.length));
321
325
  setShowCategoryModal(true);
322
326
  if (
@@ -35,6 +35,7 @@ interface ProductsControlProps extends WithIsLoading {
35
35
  categoryType: CategoryType;
36
36
  zones?: Zone[];
37
37
  isOverrides?: boolean;
38
+ isEventEditProductSet?: boolean;
38
39
  }
39
40
 
40
41
  const getDefaultProductValue = (sort: number): Product => ({
@@ -57,6 +58,7 @@ const getDefaultProductValue = (sort: number): Product => ({
57
58
  quantitySelector: 1,
58
59
  hasSpecialNotes: false,
59
60
  weight: 0,
61
+ originalProductId: null,
60
62
  type: DEFAULT_PRODUCT_TYPE,
61
63
  tierId: Number(uniqueId()),
62
64
  zoneId: null,
@@ -79,6 +81,7 @@ export function ProductsControl({
79
81
  categoryType,
80
82
  zones,
81
83
  isOverrides,
84
+ isEventEditProductSet,
82
85
  }: ProductsControlProps) {
83
86
  const { t } = useTranslation("Design");
84
87
  const form = useFormContext<ProductSetFormValues>();
@@ -203,90 +206,97 @@ export function ProductsControl({
203
206
  onDragEnd={handleDragEnd}
204
207
  sensors={[mouseSensor]}
205
208
  >
206
- {fields.map((product, index) => (
207
- <Controller
208
- key={product._id}
209
- control={control}
210
- name={`${productControlFieldName}.${index}.name` as const}
211
- rules={{
212
- required: t("Validation:fieldRequired", {
213
- attribute: t("name"),
214
- }) as string,
215
- }}
216
- render={({ field: { value, onChange } }) => (
217
- <SortableTree.Item
218
- key={`product-${product._id}`}
219
- id={String(product._id)}
220
- isExpanded={isFirstProductAdded}
221
- isInvalid={!!categoryProductErrors}
222
- title={value}
223
- isOverride={isOverrides}
224
- badge={<Badge className="product-badge">{t("product")}</Badge>}
225
- isIconInHeader={false}
226
- cancelChanges={() => cancelChanges(index)}
227
- edit={() => edit(index)}
228
- isProduct
229
- secondaryBadge={getBadgeConfig(categoryType, t(categoryType))}
230
- subTitle={
231
- <div className="product-set-badges-container">
232
- <div className="product-set-subtitle-dot product-set-subtitle-product-dot" />
233
- <span>
234
- {`£${prices[index]} ${t("each")} - ${t("qty")}:${
235
- !isUnlimitedQuantities[index]
236
- ? ` ${quantities[index]}`
237
- : t(" unlimited")
238
- } ${
239
- !isUnlimitedQuantities[index]
240
- ? ` - ${t("possibleRevenue")} £${
241
- prices[index] * quantities[index]
242
- }`
243
- : ""
244
- } `}
245
- </span>
246
- </div>
247
- }
248
- modalLabel={t("addNewProduct")}
249
- modalClass={ProductSetModalClasses.product}
250
- isNewAdded={showProductModal}
251
- body={
252
- <ProductControl<ProductSetFormValues>
209
+ {fields.map((product, index) => {
210
+ const isOverridesProductSet = isEventEditProductSet
211
+ ? !!product.id
212
+ : isOverrides && !!product.originalProductId;
213
+
214
+ return (
215
+ <Controller
216
+ key={product._id}
217
+ control={control}
218
+ name={`${productControlFieldName}.${index}.name` as const}
219
+ rules={{
220
+ required: t("Validation:fieldRequired", {
221
+ attribute: t("name"),
222
+ }) as string,
223
+ }}
224
+ render={({ field: { value, onChange } }) => (
225
+ <SortableTree.Item
226
+ key={`product-${product._id}`}
227
+ id={String(product._id)}
228
+ isExpanded={isFirstProductAdded}
229
+ isInvalid={!!categoryProductErrors}
230
+ title={value}
231
+ isOverride={isOverrides}
232
+ badge={
233
+ <Badge className="product-badge">{t("product")}</Badge>
234
+ }
235
+ isIconInHeader={false}
236
+ cancelChanges={() => cancelChanges(index)}
237
+ edit={() => edit(index)}
238
+ secondaryBadge={getBadgeConfig(categoryType, t(categoryType))}
239
+ subTitle={
240
+ <div className="product-set-badges-container">
241
+ <div className="product-set-subtitle-dot product-set-subtitle-product-dot" />
242
+ <span>
243
+ {`£${prices[index]} ${t("each")} - ${t("qty")}:${
244
+ !isUnlimitedQuantities[index]
245
+ ? ` ${quantities[index]}`
246
+ : t(" unlimited")
247
+ } ${
248
+ !isUnlimitedQuantities[index]
249
+ ? ` - ${t("possibleRevenue")} £${
250
+ prices[index] * quantities[index]
251
+ }`
252
+ : ""
253
+ } `}
254
+ </span>
255
+ </div>
256
+ }
257
+ modalLabel={t("addNewProduct")}
258
+ modalClass={ProductSetModalClasses.product}
259
+ isNewAdded={showProductModal}
260
+ body={
261
+ <ProductControl<ProductSetFormValues>
262
+ isLoading={isLoading}
263
+ quantityType={quantityType}
264
+ allowDeposits={allowDeposits}
265
+ hasBookingManagement={false}
266
+ fieldNamePrefix={
267
+ `${productControlFieldName}.${index}` as const
268
+ }
269
+ productName={value}
270
+ onProductNameChange={onChange}
271
+ hasTicket={hasTicket}
272
+ categoryType={categoryType}
273
+ zoneDuration={catergoryZone?.defaultDuration}
274
+ isOverrides={isOverridesProductSet}
275
+ />
276
+ }
277
+ onDelete={() => onProductRemove(index)}
278
+ validate={() =>
279
+ trigger(`${productControlFieldName}.${index}`)
280
+ }
281
+ saveValidField={saveValidField}
282
+ // preItem={<Popover className="d-none d-sm-block" />}
283
+ >
284
+ <SubProductsControl
253
285
  isLoading={isLoading}
254
286
  quantityType={quantityType}
255
- allowDeposits={allowDeposits}
256
- hasBookingManagement={false}
257
- fieldNamePrefix={
258
- `${productControlFieldName}.${index}` as const
259
- }
260
- productName={value}
261
- onProductNameChange={onChange}
262
- hasTicket={hasTicket}
263
- categoryType={categoryType}
264
- zoneDuration={catergoryZone?.defaultDuration}
265
- isOverrides={isOverrides}
287
+ stepIndex={stepIndex}
288
+ productCategoryIndex={productCategoryIndex}
289
+ productIndex={index}
266
290
  />
267
- }
268
- onDelete={() => onProductRemove(index)}
269
- validate={() => trigger(`${productControlFieldName}.${index}`)}
270
- saveValidField={saveValidField}
271
- // preItem={<Popover className="d-none d-sm-block" />}
272
- >
273
- <SubProductsControl
274
- isLoading={isLoading}
275
- quantityType={quantityType}
276
- stepIndex={stepIndex}
277
- productCategoryIndex={productCategoryIndex}
278
- productIndex={index}
279
- />
280
- </SortableTree.Item>
281
- )}
282
- />
283
- ))}
291
+ </SortableTree.Item>
292
+ )}
293
+ />
294
+ );
295
+ })}
284
296
  </SortableTree>
285
297
  <CreateProductSetItem
286
298
  title={t("addProduct")}
287
- isOverride={isOverrides}
288
299
  onClick={() => {
289
- if (isOverrides) return;
290
300
  append(getDefaultProductValue(fields.length));
291
301
  setShowProductModal(true);
292
302
 
@@ -19,9 +19,14 @@ import { ProductSetFormValues } from "./ProductSetForm";
19
19
  interface StepsControlProps {
20
20
  isLoading: boolean;
21
21
  isOverrides?: boolean;
22
+ isEventEditProductSet?: boolean;
22
23
  }
23
24
 
24
- export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
25
+ export function StepsControl({
26
+ isLoading,
27
+ isOverrides,
28
+ isEventEditProductSet,
29
+ }: StepsControlProps) {
25
30
  const form = useFormContext<ProductSetFormValues>();
26
31
  const { t } = useTranslation("Design");
27
32
  const [showStepModal, setShowStepModal] = useState(false);
@@ -68,8 +73,8 @@ export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
68
73
  <>
69
74
  {fields.map((step, index) => {
70
75
  const stepFieldName = `steps.${index}` as const;
71
-
72
76
  const stepData = getValues(stepFieldName);
77
+ const isOverrideStep = !!step.id;
73
78
 
74
79
  return (
75
80
  <Controller
@@ -92,9 +97,9 @@ export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
92
97
  modalLabel={t("addNewStep")}
93
98
  modalClass={ProductSetModalClasses.step}
94
99
  isNewAdded={showStepModal}
95
- edit={() => !isOverrides && edit(index)}
100
+ edit={() => edit(index)}
96
101
  cancelChanges={() => cancelChanges(index)}
97
- isOverride={isOverrides}
102
+ isOverride={isOverrideStep}
98
103
  subTitle={
99
104
  <div className="product-set-badges-container">
100
105
  <div className="product-set-subtitle-dot product-set-subtitle-step-dot" />
@@ -110,6 +115,7 @@ export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
110
115
  stepIndex={index}
111
116
  stepName={value}
112
117
  onStepNameChange={onChange}
118
+ isOverrides={isOverrideStep}
113
119
  />
114
120
  }
115
121
  onDelete={() => remove(index)}
@@ -140,6 +146,7 @@ export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
140
146
  isLoading={isLoading}
141
147
  stepIndex={index}
142
148
  isOverrides={isOverrides}
149
+ isEventEditProductSet={isEventEditProductSet}
143
150
  />
144
151
  </SortableTree.Item>
145
152
  )}
@@ -149,9 +156,7 @@ export function StepsControl({ isLoading, isOverrides }: StepsControlProps) {
149
156
 
150
157
  <CreateProductSetItem
151
158
  title={t("addStep")}
152
- isOverride={isOverrides}
153
159
  onClick={() => {
154
- if (isOverrides) return;
155
160
  append(getDefaultStepsValues());
156
161
  setShowStepModal(true);
157
162
  if (errors.steps?.type === HookFormService.manualErrorType) {
@@ -89,6 +89,7 @@ export interface ProductControlValues
89
89
  totalQuantity: number;
90
90
  isAvailable: boolean;
91
91
  isSoldOut: boolean;
92
+ originalProductId: number | null;
92
93
  isUnlimited: boolean;
93
94
  isRequired: boolean;
94
95
  quantitySelector: number;
@@ -159,7 +160,6 @@ export function ProductControl<T extends FormValues>({
159
160
  );
160
161
  const capacity = watch(`${fieldNamePrefix}.capacity` as Path<T>);
161
162
  const disabledDuration = capacity === "0" || !capacity;
162
-
163
163
  const advancedId = useId();
164
164
  const nameId = useId();
165
165
 
@@ -413,7 +413,7 @@ export function ProductControl<T extends FormValues>({
413
413
  `${fieldNamePrefix}.productGroupId` as Path<T>,
414
414
  errors
415
415
  )}
416
- disabled={isLoading}
416
+ disabled={isLoading || isOverrides}
417
417
  defaultValue=""
418
418
  >
419
419
  <option value="">{t("Design:selectProductGroup")}</option>
@@ -26,6 +26,7 @@ export interface StepControlProps extends IsDeletableEvent {
26
26
  stepIndex: number;
27
27
  stepName: string;
28
28
  onStepNameChange: (args: any) => void;
29
+ isOverrides?: boolean;
29
30
  }
30
31
 
31
32
  export function StepControl({
@@ -33,6 +34,7 @@ export function StepControl({
33
34
  stepIndex,
34
35
  stepName,
35
36
  onStepNameChange,
37
+ isOverrides = false,
36
38
  }: StepControlProps) {
37
39
  const { providerHasMap } = useContext(ProductSetLoadingContext);
38
40
  const {
@@ -42,7 +44,6 @@ export function StepControl({
42
44
  watch,
43
45
  } = useFormContext<ProductSetFormValues>();
44
46
  const { t } = useTranslation("Design");
45
-
46
47
  const fieldName = `steps.${stepIndex}.name` as const;
47
48
  const productCategoriesFieldName =
48
49
  `steps.${stepIndex}.productCategories` as const;
@@ -71,7 +72,7 @@ export function StepControl({
71
72
  fieldName,
72
73
  errors
73
74
  )}
74
- disabled={isLoading}
75
+ disabled={isLoading || isOverrides}
75
76
  />
76
77
  )}
77
78
  control={control}
@@ -114,7 +115,7 @@ export function StepControl({
114
115
  name={name}
115
116
  value={Boolean(value)}
116
117
  onChange={onChange}
117
- disabled={isLoading}
118
+ disabled={isLoading || isOverrides}
118
119
  />
119
120
  )}
120
121
  control={control}
@@ -53,7 +53,6 @@ export interface SortableTreeItemProps {
53
53
  };
54
54
  setIsExpanded?: () => void;
55
55
  isOverride?: boolean;
56
- isProduct?: boolean;
57
56
  }
58
57
 
59
58
  export function SortableTreeItem({
@@ -81,7 +80,6 @@ export function SortableTreeItem({
81
80
  secondaryBadge,
82
81
  setIsExpanded,
83
82
  isOverride,
84
- isProduct = false,
85
83
  }: SortableTreeItemProps) {
86
84
  const [expanded, setExpanded] = useState(isExpanded);
87
85
  const [isModalVisible, setIsModalVisible] = useState(isNewAdded);
@@ -152,7 +150,6 @@ export function SortableTreeItem({
152
150
  };
153
151
 
154
152
  const onEdit = (e) => {
155
- if (isOverride && !isProduct) return;
156
153
  e.stopPropagation();
157
154
  if (edit && !isModalVisible) edit();
158
155
  setIsModalVisible(true);