@licklist/design 0.63.0 → 0.63.1-dev.0

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 (163) hide show
  1. package/bitbucket-pipelines.yml +0 -8
  2. package/dist/date-time-button/DateTimeButton.js +1 -1
  3. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts +3 -1
  4. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts.map +1 -1
  5. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.js +1 -1
  6. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts +3 -1
  7. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts.map +1 -1
  8. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.js +1 -1
  9. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.d.ts +3 -1
  10. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.d.ts.map +1 -1
  11. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -1
  12. package/dist/iframe/payment/order-items-table/utils/paymentSummary.js +1 -1
  13. package/dist/product-set/control/DateAndRecurrenceInput.d.ts +1 -5
  14. package/dist/product-set/control/DateAndRecurrenceInput.d.ts.map +1 -1
  15. package/dist/product-set/control/DateAndRecurrenceInput.js +1 -1
  16. package/dist/product-set/control/DateInput.d.ts.map +1 -1
  17. package/dist/product-set/control/DateInput.js +1 -1
  18. package/dist/product-set/control/ProductSetControl.d.ts +4 -3
  19. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  20. package/dist/product-set/control/ProductSetControl.js +1 -1
  21. package/dist/product-set/control/utils.d.ts +5 -0
  22. package/dist/product-set/control/utils.d.ts.map +1 -0
  23. package/dist/product-set/control/utils.js +1 -0
  24. package/dist/product-set/form/ProductCategoriesControl.d.ts +2 -1
  25. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  26. package/dist/product-set/form/ProductCategoriesControl.js +1 -1
  27. package/dist/product-set/form/ProductSetForm.d.ts +4 -1
  28. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  29. package/dist/product-set/form/ProductsControl.d.ts +2 -1
  30. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  31. package/dist/product-set/form/ProductsControl.js +1 -1
  32. package/dist/product-set/form/StepsControl.d.ts +2 -1
  33. package/dist/product-set/form/StepsControl.d.ts.map +1 -1
  34. package/dist/product-set/form/StepsControl.js +1 -1
  35. package/dist/product-set/hooks/useSortableTreeFunctions.d.ts.map +1 -1
  36. package/dist/product-set/product/ProductControl.d.ts +1 -0
  37. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  38. package/dist/product-set/product/ProductControl.js +1 -1
  39. package/dist/product-set/product/fixed-duration-fields/FixedDurationOptions.d.ts.map +1 -1
  40. package/dist/product-set/step/StepControl.d.ts +2 -1
  41. package/dist/product-set/step/StepControl.d.ts.map +1 -1
  42. package/dist/product-set/step/StepControl.js +1 -1
  43. package/dist/provider/working-hours-input/WorkingHoursInputDescription.d.ts.map +1 -1
  44. package/dist/provider/working-hours-input/WorkingHoursInputDescription.js +1 -1
  45. package/dist/recurring-date-picker-input/RecurrenceAndFrequencyInput.d.ts.map +1 -1
  46. package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts +3 -1
  47. package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts.map +1 -1
  48. package/dist/recurring-date-picker-input/RecurringDatePickerInput.js +1 -1
  49. package/dist/recurring-date-picker-input/utils.d.ts +6 -0
  50. package/dist/recurring-date-picker-input/utils.d.ts.map +1 -1
  51. package/dist/recurring-date-picker-input/utils.js +1 -1
  52. package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
  53. package/dist/sales/booking/results/components/ResultCard.js +1 -1
  54. package/dist/sales/coupon/control/CouponFormControl.d.ts +2 -1
  55. package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
  56. package/dist/sales/coupon/control/CouponFormControl.js +1 -1
  57. package/dist/sales/coupon/form/CouponFrom.d.ts +2 -2
  58. package/dist/sales/coupon/form/CouponFrom.d.ts.map +1 -1
  59. package/dist/sales/coupon/utils/index.d.ts +7 -0
  60. package/dist/sales/coupon/utils/index.d.ts.map +1 -0
  61. package/dist/sales/coupon/utils/index.js +1 -0
  62. package/dist/setting/admin/AdminSettingForm.d.ts +2 -2
  63. package/dist/setting/admin/AdminSettingForm.d.ts.map +1 -1
  64. package/dist/setting/dashboard/DashboardSettingForm.d.ts +1 -0
  65. package/dist/setting/dashboard/DashboardSettingForm.d.ts.map +1 -1
  66. package/dist/setting/dashboard/DashboardSettingForm.js +1 -1
  67. package/dist/sortable-tree/SortableTreeItem.d.ts +1 -2
  68. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  69. package/dist/sortable-tree/SortableTreeItem.js +1 -1
  70. package/dist/styles/sales/BookingResults.scss +1 -1
  71. package/dist/typeahead/Typeahead.d.ts +2 -1
  72. package/dist/typeahead/Typeahead.d.ts.map +1 -1
  73. package/dist/typeahead/Typeahead.js +1 -1
  74. package/dist/zone/form/ZoneForm.d.ts +2 -2
  75. package/dist/zone/form/ZoneForm.d.ts.map +1 -1
  76. package/dist/zone/form/ZoneForm.js +1 -1
  77. package/dist/zone/form/components/AvailableTimesControl.d.ts +0 -2
  78. package/dist/zone/form/components/AvailableTimesControl.d.ts.map +1 -1
  79. package/dist/zone/form/components/ZoneControl.d.ts +2 -2
  80. package/dist/zone/form/components/ZoneControl.d.ts.map +1 -1
  81. package/dist/zone/form/components/ZoneControl.js +1 -1
  82. package/dist/zone/form/components/ZoneRecurrencesControl.d.ts +4 -4
  83. package/dist/zone/form/components/ZoneRecurrencesControl.d.ts.map +1 -1
  84. package/dist/zone/form/components/ZoneRecurrencesControl.js +1 -1
  85. package/dist/zone/form/utils/dates.d.ts.map +1 -1
  86. package/package.json +10 -35
  87. package/src/date-time-button/DateTimeButton.stories.tsx +2 -1
  88. package/src/date-time-button/DateTimeButton.tsx +7 -5
  89. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +4 -0
  90. package/src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx +18 -9
  91. package/src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx +5 -0
  92. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +6 -6
  93. package/src/product-set/control/DateAndRecurrenceInput.tsx +48 -14
  94. package/src/product-set/control/DateInput.tsx +2 -4
  95. package/src/product-set/control/ProductSetControl.stories.tsx +1 -1
  96. package/src/product-set/control/ProductSetControl.tsx +12 -11
  97. package/src/product-set/control/utils.ts +25 -0
  98. package/src/product-set/form/ProductCategoriesControl.tsx +8 -4
  99. package/src/product-set/form/ProductSetForm.stories.tsx +1 -2
  100. package/src/product-set/form/ProductSetForm.tsx +5 -1
  101. package/src/product-set/form/ProductsControl.tsx +87 -77
  102. package/src/product-set/form/StepsControl.tsx +11 -6
  103. package/src/product-set/hooks/useSortableTreeFunctions.ts +2 -0
  104. package/src/product-set/product/ProductControl.tsx +39 -39
  105. package/src/product-set/product/fixed-duration-fields/FixedDurationOptions.tsx +0 -2
  106. package/src/product-set/step/StepControl.tsx +4 -3
  107. package/src/provider/working-hours-input/WorkingHoursInputDescription.tsx +4 -18
  108. package/src/recurring-date-picker-input/RecurrenceAndFrequencyInput.tsx +0 -1
  109. package/src/recurring-date-picker-input/RecurringDatePickerInput.stories.tsx +13 -7
  110. package/src/recurring-date-picker-input/RecurringDatePickerInput.tsx +12 -1
  111. package/src/recurring-date-picker-input/utils.ts +82 -1
  112. package/src/sales/booking/results/BookingResults.stories.tsx +3 -2
  113. package/src/sales/booking/results/components/ResultCard.tsx +2 -5
  114. package/src/sales/coupon/control/CouponFormControl.tsx +28 -51
  115. package/src/sales/coupon/form/CouponFrom.tsx +5 -15
  116. package/src/sales/coupon/utils/index.ts +13 -0
  117. package/src/setting/admin/AdminSettingForm.tsx +2 -2
  118. package/src/setting/dashboard/DashboardSettingForm.tsx +13 -0
  119. package/src/sortable-tree/SortableTreeItem.tsx +1 -4
  120. package/src/static/switch/BooleanSwitch.tsx +1 -1
  121. package/src/styles/sales/BookingResults.scss +1 -1
  122. package/src/typeahead/Typeahead.tsx +16 -3
  123. package/src/zone/form/ZoneForm.tsx +3 -2
  124. package/src/zone/form/components/AvailableTimesControl.tsx +0 -2
  125. package/src/zone/form/components/ZoneControl.tsx +3 -3
  126. package/src/zone/form/components/ZoneRecurrencesControl.tsx +7 -5
  127. package/src/zone/form/utils/dates.ts +9 -10
  128. package/jest.config.js +0 -29
  129. package/tests/Auth/Authorizer.test.tsx +0 -194
  130. package/tests/Auth/Layout/UserNavDropDown.test.tsx +0 -43
  131. package/tests/Auth/Layout/UserNavDropDownToggle.test.tsx +0 -33
  132. package/tests/Auth/Login/LoginComponent.test.tsx +0 -246
  133. package/tests/Auth/Login/LoginFormComponent.test.tsx +0 -182
  134. package/tests/Auth/Register/RegisterComponent.test.tsx +0 -285
  135. package/tests/Auth/Register/RegisterFormComponent.test.tsx +0 -170
  136. package/tests/Auth/Settings/Dashboard/IpInput.test.tsx +0 -130
  137. package/tests/Auth/Social/SocialCallbackComponent.test.tsx +0 -133
  138. package/tests/Auth/Social/SocialFormComponent.test.tsx +0 -118
  139. package/tests/FileUpload/FileUpload.test.tsx +0 -42
  140. package/tests/Notification/EmailTemplate.test.tsx +0 -82
  141. package/tests/ProductSet/ProductSetPopover.test.tsx +0 -40
  142. package/tests/Report/Report.test.tsx +0 -48
  143. package/tests/Sales/Coupon.test.tsx +0 -51
  144. package/tests/Sales/SalesAndVIews.test.tsx +0 -63
  145. package/tests/SnippetTemplates/SnippetTemplates.test.tsx +0 -56
  146. package/tests/Table/FilterHelperComponent.test.tsx +0 -88
  147. package/tests/Table/PaginationHelperComponent.test.tsx +0 -109
  148. package/tests/Table/PerPageHelperComponent.test.tsx +0 -34
  149. package/tests/Table/TableHelperComponent.test.tsx +0 -295
  150. package/tests/TipTapEditor/TipTapEditor.test.tsx +0 -28
  151. package/tests/__mock__/hooks/useAuthApi.ts +0 -13
  152. package/tests/__mock__/hooks/useAuthMock.ts +0 -13
  153. package/tests/__mock__/hooks/useFormMock.ts +0 -27
  154. package/tests/__mock__/hooks/useNotificationMock.ts +0 -13
  155. package/tests/__mock__/hooks/useQueryMock.ts +0 -16
  156. package/tests/__mock__/hooks/useSocialApiMock.ts +0 -20
  157. package/tests/__mock__/hooks/useTranslationMock.ts +0 -17
  158. package/tests/__mock__/hooks/useUserApiMock.ts +0 -18
  159. package/tests/__mock__/hooks/useUserMock.ts +0 -13
  160. package/tests/__mock__/styleMock.js +0 -1
  161. package/tests/__mock__/windowMock.ts +0 -5
  162. package/tests/packages/react-query.tsx +0 -28
  163. package/tests/setupTests.ts +0 -10
@@ -16,11 +16,6 @@ definitions:
16
16
  - yarn install --legacy-peer-deps
17
17
  artifacts:
18
18
  - node_modules/**
19
- - step: &test
20
- image: node:16.15.1-alpine3.15
21
- name: Test
22
- script:
23
- - yarn run test
24
19
  - step: &build
25
20
  image: node:16.15.1-alpine3.15
26
21
  name: Build application
@@ -55,7 +50,6 @@ pipelines:
55
50
  - step:
56
51
  <<: *install
57
52
  - parallel:
58
- - step: *test
59
53
  - step: *build
60
54
  - step:
61
55
  name: Publish to NPM
@@ -70,7 +64,6 @@ pipelines:
70
64
  - step:
71
65
  <<: *install
72
66
  - parallel:
73
- - step: *test
74
67
  - step: *build_storybook
75
68
  - step:
76
69
  <<: *deploy
@@ -88,5 +81,4 @@ pipelines:
88
81
  "**":
89
82
  - step: *install
90
83
  - parallel:
91
- - step: *test
92
84
  - step: *build
@@ -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,a=e(require("react")),r=e(require("clsx")),i=require("luxon"),o=require("lodash"),s=require("../availability-indicator/AvailabilityIndicator.js"),n=require("./DateContent.js");(t=exports.Variant||(exports.Variant={})).week="week",t.month="month",t.time="time";var l=function(e){return e.toUTC()<=i.DateTime.now().toUTC()};exports.DateTimeButton=function(e){var t=e.date,i=e.isDisabled,u=e.isSelected,c=e.isSoldOut,d=e.onSelect,m=e.price,b=e.resources,v=e.showResources,p=e.shouldCalculateResources,x=void 0===p||p,f=e.variant,h=void 0===f?exports.Variant.week:f,y=c||x&&b&&b.bookedResources>=b.totalResources,k=h===exports.Variant.time,q=k&&l(t),w=x&&(!b||!o.has(b,"bookedResources")||!o.has(b,"totalResources")),C=i||y||q||w;return a.createElement("button",{type:"button",onClick:function(){return d(t)},disabled:C,className:r("date-time-button",C&&"disabled",u&&"selected",k&&"time-button",k&&"only-time-container",!k&&"today",h===exports.Variant.month&&"calendar-view")},a.createElement(n.DateContent,{date:t,isDisabled:C,isSelected:u,variant:h}),m&&!C&&a.createElement("div",{className:"price"},m),v&&b&&a.createElement(s.AvailabilityIndicator,{resources:b,isUnavailable:i||q,isSoldOut:y}))};
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,a=e(require("react")),r=e(require("clsx")),i=require("luxon"),o=require("lodash"),n=require("../availability-indicator/AvailabilityIndicator.js"),s=require("./DateContent.js");(t=exports.Variant||(exports.Variant={})).week="week",t.month="month",t.time="time";var u=function(e){return i.DateTime.now()>e},l=function(e){return i.DateTime.now()>e.set({hour:23,minute:59,second:59})};exports.DateTimeButton=function(e){var t=e.date,i=e.isDisabled,c=e.isSelected,d=e.isSoldOut,m=e.onSelect,b=e.price,v=e.resources,p=e.showResources,x=e.shouldCalculateResources,f=void 0===x||x,h=e.variant,y=void 0===h?exports.Variant.week:h,w=d||f&&v&&v.bookedResources>=v.totalResources,D=y===exports.Variant.time,k=y===exports.Variant.time?u(t):l(t),q=f&&(!v||!o.has(v,"bookedResources")||!o.has(v,"totalResources")),R=i||w||k||q;return a.createElement("button",{type:"button",onClick:function(){return m(t)},disabled:R,className:r("date-time-button",R&&"disabled",c&&"selected",D&&"time-button",D&&"only-time-container",!D&&"today",y===exports.Variant.month&&"calendar-view")},a.createElement(s.DateContent,{date:t,isDisabled:R,isSelected:c,variant:y}),b&&!R&&a.createElement("div",{className:"price"},b),p&&v&&a.createElement(n.AvailabilityIndicator,{resources:v,isUnavailable:i||k,isSoldOut:w}))};
@@ -3,6 +3,7 @@ import { Image } from "@licklist/core/dist/DataMapper/Media/ImageDataMapper";
3
3
  import { HasPermissionProp } from "@licklist/plugins/dist/types/permission/Permission";
4
4
  import { ServerError } from "@licklist/plugins/dist/hooks/Api/useHttpQuery";
5
5
  import { ProductSet } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
6
+ import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
6
7
  import { CategoryGroup } from "../../../../types/categories";
7
8
  import { IntervalInputValues } from "../../IntervalInput";
8
9
  import { ProductSetFormValues } from "../../../../product-set/form/ProductSetForm";
@@ -34,6 +35,7 @@ export interface EditEventFormProps extends HasPermissionProp {
34
35
  createProductSet: (props: EditEventFormValues) => void;
35
36
  setEditProductSetId: (value: string) => void;
36
37
  isExternalPaymentLinkEnabled?: boolean;
38
+ workHours: WorkHour[] | undefined;
37
39
  }
38
- export declare const EditEventForm: ({ disabled, categories, title, hasPermission, defaultEventValues, serverErrors, onSaveEvent, productSets, createProductSet, setEditProductSetId, isExternalPaymentLinkEnabled, }: EditEventFormProps) => JSX.Element;
40
+ export declare const EditEventForm: ({ disabled, categories, title, hasPermission, defaultEventValues, serverErrors, onSaveEvent, productSets, createProductSet, setEditProductSetId, isExternalPaymentLinkEnabled, workHours, }: EditEventFormProps) => JSX.Element;
39
41
  //# sourceMappingURL=EditEventForm.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditEventForm.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx"],"names":[],"mappings":";AAEA,OAAO,EAIL,KAAK,EACN,MAAM,sDAAsD,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAGvF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAI5E,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,OAAO,EAAiB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,WAAW,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC;AAOD,eAAO,MAAM,aAAa,qLAYvB,kBAAkB,gBAsVpB,CAAC"}
1
+ {"version":3,"file":"EditEventForm.d.ts","sourceRoot":"","sources":["../../../../../src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx"],"names":[],"mappings":";AAEA,OAAO,EAIL,KAAK,EACN,MAAM,sDAAsD,CAAC;AAM9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oDAAoD,CAAC;AAGvF,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAI5E,OAAO,EAAE,UAAU,EAAE,MAAM,6DAA6D,CAAC;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAS7D,OAAO,EAAiB,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAIzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAGnF,MAAM,WAAW,mBAAoB,SAAQ,mBAAmB;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,WAAW,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACnD,WAAW,CAAC,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,mBAAmB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;CACnC;AAOD,eAAO,MAAM,aAAa,gMAavB,kBAAkB,gBAuVpB,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"),i=e(r),n=require("react-i18next"),o=require("react-bootstrap"),l=require("react-hook-form"),a=e(require("@licklist/plugins/dist/services/Form/FormErrorService")),d=require("@react-aria/utils"),u=require("luxon"),s=require("../../../../collapsible-input-group/CollapsibleInputGroup.js"),c=require("../../../../modals/dialog/Dialog.js"),m=require("../../../../modals/dialog/DialogContext.js"),p=require("@licklist/core/dist/DataMapper/Media/ImageDataMapper"),v=require("../../../../file-upload/FileUpload.js"),g=require("../../../../tiptap-editor/TipTapEditor.js"),E=require("@licklist/plugins/dist/utils/ScrollUtils"),f=require("@licklist/plugins/dist/utils/FormValues"),I=require("../SelectEventProductSet/SelectEventProductSet.js"),b=require("@licklist/plugins/dist/hooks/Media/useMultipleImages"),S=require("../SaleDeadline/SaleDeadline.js"),F=require("../../../../provider/categories-input/CategoriesInput.js"),P=require("../../../../provider/categories-input/CategoriesInputDescription.js");require("../../../../provider/location-input/components/FormGroupControll.js"),require("../../../../provider/location-input/LocationInput.js"),require("../../../../provider/location-input/LocationInputDescription.js"),require("../../../../provider/provider-links-input/ProviderLinksInput.js"),require("../../../../provider/provider-details-input/ProviderDetailsInput.js"),require("../../../../provider/provider-form/ProviderForm.js"),require("../../../../provider/working-hours-input/WorkingHoursInput.js"),require("../../../../provider/working-hours-input/WorkingHoursInputDescription.js"),require("../../../../provider/venue-form/VenueForm.js"),require("../../../../provider/company/user-form/UserForm.js");var q=require("../../IntervalInput.js"),A=require("../../utils/isUrlValid.js"),C={uploadImage:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE],uploadCover:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_COVER]},D=function(e){var t,r,i,n,o,l,a,d,s,c,m,p=function(e){return e&&u.DateTime.fromISO(e).toISO({includeOffset:!1,suppressMilliseconds:!0,suppressSeconds:!0})};return{name:null!==(t=null==e?void 0:e.name)&&void 0!==t?t:"",description:null!==(r=null==e?void 0:e.description)&&void 0!==r?r:"",start:p(null!==(i=null==e?void 0:e.startAt)&&void 0!==i?i:""),end:p(null!==(n=null==e?void 0:e.endAt)&&void 0!==n?n:""),rrule:null!==(o=null==e?void 0:e.rrule)&&void 0!==o?o:void 0,categories:null!==(l=null==e?void 0:e.categories)&&void 0!==l?l:[],termsAndConditions:null!==(a=null==e?void 0:e.termsAndConditions)&&void 0!==a?a:"",visible:null!==(d=null==e?void 0:e.visible)&&void 0!==d?d:"",externalPaymentLink:null!==(s=null==e?void 0:e.externalPaymentLink)&&void 0!==s?s:"",productSetId:null==e?void 0:e.productSetId,images:null==e?void 0:e.images,saleDeadline:null==e?void 0:e.saleDeadline,integrationUrl:null!==(c=null==e?void 0:e.integrationUrl)&&void 0!==c?c:"",recurrenceEndAt:null!==(m=null==e?void 0:e.recurrenceEndAt)&&void 0!==m?m:void 0}};exports.EditEventForm=function(e){var u,h,_,y=e.disabled,k=void 0!==y&&y,M=e.categories,j=e.title,L=e.hasPermission,w=void 0===L||L,G=e.defaultEventValues,U=e.serverErrors,x=e.onSaveEvent,T=e.productSets,V=e.createProductSet,Y=e.setEditProductSetId,O=e.isExternalPaymentLinkEnabled,B=n.useTranslation(["Design","Validation"]).t,R=d.useId(),N=d.useId(),W=d.useId(),H=d.useId(),K=d.useId(),z=t.__read(r.useState(null),2),J=z[0],Q=z[1],X=t.__read(r.useState(!1),2),Z=X[0],$=X[1],ee=m.useDialogContext(),te=ee.isShownDialog,re=ee.onBeforeUnload,ie=ee.onPopState,ne=ee.onApproveDialog,oe=ee.onDeclineDialog,le=l.useForm({defaultValues:D(G)}),ae=le.register,de=le.formState.errors,ue=le.handleSubmit,se=le.formState,ce=le.reset,me=le.watch,pe=le.setValue,ve=le.setError,ge=le.getValues,Ee=le.control,fe=me("visible"),Ie=me("editedProductSet"),be=me("productSetId"),Se=b.useMultipleImages(J),Fe=Se.images,Pe=Se.handleImageRemove,qe=Se.handleImageUploading,Ae=Se.isImagesLoading,Ce=Se.isCoverImagesLoading,De=r.useCallback((function(e,t){return!!A.isUrlValid(e)||B("Validation:fieldValidWebURL",{attribute:t})}),[]);return r.useEffect((function(){ce(D(G))}),[G]),r.useEffect((function(){if(G.images&&G.images.length>0){var e=ge("images");Q(e)}else Q([])}),[Q,ge,G]),r.useEffect((function(){Array.isArray(Fe)&&pe("images",Fe)}),[Fe]),r.useEffect((function(){a.handleServerErrors(U,ve)}),[U]),r.useEffect((function(){return window.history.pushState(null,"",window.location.pathname),window.addEventListener("beforeunload",re),window.addEventListener("popstate",ie),function(){window.removeEventListener("beforeunload",re),window.removeEventListener("popstate",ie)}}),[]),i.createElement(i.Fragment,null,i.createElement(c.Dialog,{isActive:te,title:B("Design:leavePage"),content:B("Design:changesNotBeSaved"),onApprove:ne,onDecline:oe}),i.createElement("h5",{className:"edit-event-modal-title highlited-primary-title"},j),i.createElement(l.FormProvider,t.__assign({},le),i.createElement(o.Modal.Body,{as:"form",noValidate:!0,onSubmit:ue(x,(function(e){E.scrollToError(f.getFirstErrorKey(e))}))},i.createElement(o.Form.Group,{controlId:"name"},i.createElement(o.Form.Label,null,B("nameOfEvent")),i.createElement(o.Form.Control,t.__assign({},ae("name",{required:B("Validation:fieldRequired",{attribute:B("name")}),maxLength:{value:255,message:B("Validation:fieldMaxLength",{attribute:B("name"),max:255})}}),{name:"name",required:!0,isInvalid:Boolean(de.name),disabled:k})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(u=de.name)||void 0===u?void 0:u.message)),Object.keys(C).map((function(e){var t=C[e];return i.createElement(v.FileUpload,{key:e,allowedExtensions:["jpg","jpeg","png"],enablePreview:!0,defaultFiles:null==Fe?void 0:Fe.filter((function(e){return p.IMAGE_TYPE_MAP[e.imageType]===t})),onFilesChange:function(e){qe(e,t)},secondSubtitle:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?"1200x600":void 0,title:B("Design:".concat(e)),onFileRemove:function(e,r){return Pe(String(e),r,t)},isLoading:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?Ae:Ce,disabled:k})})),i.createElement(o.Form.Group,{controlId:R},i.createElement(o.Form.Label,null,B("description")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:k})},name:"description"})),i.createElement(q.IntervalInput,{key:me("name"),disabled:k,productSetId:be,productSets:T,editedProductSet:Ie}),0!==M.length&&i.createElement(o.Form.Group,null,i.createElement(o.Accordion,null,i.createElement(s.CollapsibleInputGroup,{eventKey:"categories",label:B("categories"),description:i.createElement(P.CategoriesInputDescription,{categories:M})},i.createElement(F.CategoriesInput,{categories:M})))),i.createElement(S.SaleDeadline,{disabled:k}),i.createElement(o.Form.Group,{controlId:N},i.createElement(o.Form.Label,null,B("termsAndConditions")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:k})},name:"termsAndConditions"})),O&&i.createElement(o.Form.Group,{controlId:K},i.createElement(o.Form.Label,null,B("externalPaymentLink")),i.createElement(o.Form.Control,t.__assign({},ae("externalPaymentLink",{validate:function(e){return!e||De(e,B("Design:externalPaymentLink"))}}),{name:"externalPaymentLink",type:"url",inputMode:"url",disabled:k,isInvalid:Boolean(de.externalPaymentLink)})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(h=de.externalPaymentLink)||void 0===h?void 0:h.message)),i.createElement(o.Form.Group,{controlId:W,className:"mt-5"},i.createElement(o.Form.Label,null,B("public")," / ",B("private")),i.createElement(l.Controller,{control:Ee,name:"visible",rules:{validate:function(e){return"boolean"==typeof e||B("Validation:fieldRequired",{attribute:B("visible")})}},render:function(e){var t=e.field,r=e.fieldState,n=r.invalid,l=r.error,a=String(t.value);return i.createElement(i.Fragment,null,i.createElement(o.Form.Control,{as:"select",onChange:function(e){var r=e.target.value;t.onChange(r?"true"===r:r)},isInvalid:n,defaultValue:"",value:a,disabled:k},i.createElement("option",{value:""},B("Design:pleaseChooseOne")),i.createElement("option",{value:"false"},B("Design:private")),i.createElement("option",{value:"true"},B("Design:public"))),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null==l?void 0:l.message))}})),"boolean"!=typeof fe||fe?null:i.createElement(o.Form.Group,{controlId:H},i.createElement(o.Form.Label,null,B("Design:integrationUrl")),i.createElement(o.Form.Control,t.__assign({},ae("integrationUrl",{required:B("Validation:fieldRequired",{attribute:B("Design:integrationUrl")}),validate:function(e){return De(e,B("Design:integrationUrl"))}}),{name:"integrationUrl",isInvalid:Boolean(de.integrationUrl),placeholder:B("Design:integrationUrl"),disabled:k})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(_=de.integrationUrl)||void 0===_?void 0:_.message)),i.createElement(I.SelectEventProductSet,{productSets:T||[],createProductSet:V,setEditProductSetId:Y,setShowEditProductSet:$,showEditProductSet:Z}),w&&!Z&&i.createElement(o.Button,{disabled:k||se.isSubmitting||Ae||Ce,className:"save-event",type:"submit"},se.isSubmitting?"".concat(B("saveAndAdd"),"..."):B("saveAndAdd")))))};
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"),i=e(r),n=require("react-i18next"),o=require("react-bootstrap"),l=require("react-hook-form"),a=e(require("@licklist/plugins/dist/services/Form/FormErrorService")),u=require("@react-aria/utils"),d=require("luxon"),s=require("../../../../collapsible-input-group/CollapsibleInputGroup.js"),c=require("../../../../modals/dialog/Dialog.js"),m=require("../../../../modals/dialog/DialogContext.js"),p=require("@licklist/core/dist/DataMapper/Media/ImageDataMapper"),v=require("../../../../file-upload/FileUpload.js"),g=require("../../../../tiptap-editor/TipTapEditor.js"),E=require("@licklist/plugins/dist/utils/ScrollUtils"),f=require("@licklist/plugins/dist/utils/FormValues"),I=require("../SelectEventProductSet/SelectEventProductSet.js"),b=require("@licklist/plugins/dist/hooks/Media/useMultipleImages"),S=require("../SaleDeadline/SaleDeadline.js"),F=require("../../../../provider/categories-input/CategoriesInput.js"),P=require("../../../../provider/categories-input/CategoriesInputDescription.js");require("../../../../provider/location-input/components/FormGroupControll.js"),require("../../../../provider/location-input/LocationInput.js"),require("../../../../provider/location-input/LocationInputDescription.js"),require("../../../../provider/provider-links-input/ProviderLinksInput.js"),require("../../../../provider/provider-details-input/ProviderDetailsInput.js"),require("../../../../provider/provider-form/ProviderForm.js"),require("../../../../provider/working-hours-input/WorkingHoursInput.js"),require("../../../../provider/working-hours-input/WorkingHoursInputDescription.js"),require("../../../../provider/venue-form/VenueForm.js"),require("../../../../provider/company/user-form/UserForm.js");var q=require("../../IntervalInput.js"),A=require("../../utils/isUrlValid.js"),C={uploadImage:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE],uploadCover:p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_COVER]},D=function(e){var t,r,i,n,o,l,a,u,s,c,m,p=function(e){return e&&d.DateTime.fromISO(e).toISO({includeOffset:!1,suppressMilliseconds:!0,suppressSeconds:!0})};return{name:null!==(t=null==e?void 0:e.name)&&void 0!==t?t:"",description:null!==(r=null==e?void 0:e.description)&&void 0!==r?r:"",start:p(null!==(i=null==e?void 0:e.startAt)&&void 0!==i?i:""),end:p(null!==(n=null==e?void 0:e.endAt)&&void 0!==n?n:""),rrule:null!==(o=null==e?void 0:e.rrule)&&void 0!==o?o:void 0,categories:null!==(l=null==e?void 0:e.categories)&&void 0!==l?l:[],termsAndConditions:null!==(a=null==e?void 0:e.termsAndConditions)&&void 0!==a?a:"",visible:null!==(u=null==e?void 0:e.visible)&&void 0!==u?u:"",externalPaymentLink:null!==(s=null==e?void 0:e.externalPaymentLink)&&void 0!==s?s:"",productSetId:null==e?void 0:e.productSetId,images:null==e?void 0:e.images,saleDeadline:null==e?void 0:e.saleDeadline,integrationUrl:null!==(c=null==e?void 0:e.integrationUrl)&&void 0!==c?c:"",recurrenceEndAt:null!==(m=null==e?void 0:e.recurrenceEndAt)&&void 0!==m?m:void 0}};exports.EditEventForm=function(e){var d,h,k,_=e.disabled,y=void 0!==_&&_,M=e.categories,j=e.title,L=e.hasPermission,w=void 0===L||L,G=e.defaultEventValues,U=e.serverErrors,x=e.onSaveEvent,T=e.productSets,V=e.createProductSet,Y=e.setEditProductSetId,O=e.isExternalPaymentLinkEnabled,B=e.workHours,R=n.useTranslation(["Design","Validation"]).t,H=u.useId(),N=u.useId(),W=u.useId(),K=u.useId(),z=u.useId(),J=t.__read(r.useState(null),2),Q=J[0],X=J[1],Z=t.__read(r.useState(!1),2),$=Z[0],ee=Z[1],te=m.useDialogContext(),re=te.isShownDialog,ie=te.onBeforeUnload,ne=te.onPopState,oe=te.onApproveDialog,le=te.onDeclineDialog,ae=l.useForm({defaultValues:D(G)}),ue=ae.register,de=ae.formState.errors,se=ae.handleSubmit,ce=ae.formState,me=ae.reset,pe=ae.watch,ve=ae.setValue,ge=ae.setError,Ee=ae.getValues,fe=ae.control,Ie=pe("visible"),be=pe("editedProductSet"),Se=pe("productSetId"),Fe=b.useMultipleImages(Q),Pe=Fe.images,qe=Fe.handleImageRemove,Ae=Fe.handleImageUploading,Ce=Fe.isImagesLoading,De=Fe.isCoverImagesLoading,he=r.useCallback((function(e,t){return!!A.isUrlValid(e)||R("Validation:fieldValidWebURL",{attribute:t})}),[]);return r.useEffect((function(){me(D(G))}),[G]),r.useEffect((function(){if(G.images&&G.images.length>0){var e=Ee("images");X(e)}else X([])}),[X,Ee,G]),r.useEffect((function(){Array.isArray(Pe)&&ve("images",Pe)}),[Pe]),r.useEffect((function(){a.handleServerErrors(U,ge)}),[U]),r.useEffect((function(){return window.history.pushState(null,"",window.location.pathname),window.addEventListener("beforeunload",ie),window.addEventListener("popstate",ne),function(){window.removeEventListener("beforeunload",ie),window.removeEventListener("popstate",ne)}}),[]),i.createElement(i.Fragment,null,i.createElement(c.Dialog,{isActive:re,title:R("Design:leavePage"),content:R("Design:changesNotBeSaved"),onApprove:oe,onDecline:le}),i.createElement("h5",{className:"edit-event-modal-title highlited-primary-title"},j),i.createElement(l.FormProvider,t.__assign({},ae),i.createElement(o.Modal.Body,{as:"form",noValidate:!0,onSubmit:se(x,(function(e){E.scrollToError(f.getFirstErrorKey(e))}))},i.createElement(o.Form.Group,{controlId:"name"},i.createElement(o.Form.Label,null,R("nameOfEvent")),i.createElement(o.Form.Control,t.__assign({},ue("name",{required:R("Validation:fieldRequired",{attribute:R("name")}),maxLength:{value:255,message:R("Validation:fieldMaxLength",{attribute:R("name"),max:255})}}),{name:"name",required:!0,isInvalid:Boolean(de.name),disabled:y})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(d=de.name)||void 0===d?void 0:d.message)),Object.keys(C).map((function(e){var t=C[e];return i.createElement(v.FileUpload,{key:e,allowedExtensions:["jpg","jpeg","png"],enablePreview:!0,defaultFiles:null==Pe?void 0:Pe.filter((function(e){return p.IMAGE_TYPE_MAP[e.imageType]===t})),onFilesChange:function(e){Ae(e,t)},secondSubtitle:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?"1200x600":void 0,title:R("Design:".concat(e)),onFileRemove:function(e,r){return qe(String(e),r,t)},isLoading:t===p.IMAGE_TYPE_MAP[p.IMAGE_TYPE_IMAGE]?Ce:De,disabled:y})})),i.createElement(o.Form.Group,{controlId:H},i.createElement(o.Form.Label,null,R("description")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:y})},name:"description"})),i.createElement(q.IntervalInput,{key:pe("name"),disabled:y,productSetId:Se,productSets:T,editedProductSet:be}),0!==M.length&&i.createElement(o.Form.Group,null,i.createElement(o.Accordion,null,i.createElement(s.CollapsibleInputGroup,{eventKey:"categories",label:R("categories"),description:i.createElement(P.CategoriesInputDescription,{categories:M})},i.createElement(F.CategoriesInput,{categories:M})))),i.createElement(S.SaleDeadline,{disabled:y}),i.createElement(o.Form.Group,{controlId:N},i.createElement(o.Form.Label,null,R("termsAndConditions")),i.createElement(l.Controller,{render:function(e){var t=e.field;return i.createElement(g.TipTapEditor,{withEmoji:!1,viewMode:!1,onUpdate:t.onChange,content:t.value,disabled:y})},name:"termsAndConditions"})),O&&i.createElement(o.Form.Group,{controlId:z},i.createElement(o.Form.Label,null,R("externalPaymentLink")),i.createElement(o.Form.Control,t.__assign({},ue("externalPaymentLink",{validate:function(e){return!e||he(e,R("Design:externalPaymentLink"))}}),{name:"externalPaymentLink",type:"url",inputMode:"url",disabled:y,isInvalid:Boolean(de.externalPaymentLink)})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(h=de.externalPaymentLink)||void 0===h?void 0:h.message)),i.createElement(o.Form.Group,{controlId:W,className:"mt-5"},i.createElement(o.Form.Label,null,R("public")," / ",R("private")),i.createElement(l.Controller,{control:fe,name:"visible",rules:{validate:function(e){return"boolean"==typeof e||R("Validation:fieldRequired",{attribute:R("visible")})}},render:function(e){var t=e.field,r=e.fieldState,n=r.invalid,l=r.error,a=String(t.value);return i.createElement(i.Fragment,null,i.createElement(o.Form.Control,{as:"select",onChange:function(e){var r=e.target.value;t.onChange(r?"true"===r:r)},isInvalid:n,defaultValue:"",value:a,disabled:y},i.createElement("option",{value:""},R("Design:pleaseChooseOne")),i.createElement("option",{value:"false"},R("Design:private")),i.createElement("option",{value:"true"},R("Design:public"))),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null==l?void 0:l.message))}})),"boolean"!=typeof Ie||Ie?null:i.createElement(o.Form.Group,{controlId:K},i.createElement(o.Form.Label,null,R("Design:integrationUrl")),i.createElement(o.Form.Control,t.__assign({},ue("integrationUrl",{required:R("Validation:fieldRequired",{attribute:R("Design:integrationUrl")}),validate:function(e){return he(e,R("Design:integrationUrl"))}}),{name:"integrationUrl",isInvalid:Boolean(de.integrationUrl),placeholder:R("Design:integrationUrl"),disabled:y})),i.createElement(o.Form.Control.Feedback,{type:"invalid"},null===(k=de.integrationUrl)||void 0===k?void 0:k.message)),i.createElement(I.SelectEventProductSet,{productSets:T||[],createProductSet:V,setEditProductSetId:Y,setShowEditProductSet:ee,showEditProductSet:$,workHours:B}),w&&!$&&i.createElement(o.Button,{disabled:y||ce.isSubmitting||Ce||De,className:"save-event",type:"submit"},ce.isSubmitting?"".concat(R("saveAndAdd"),"..."):R("saveAndAdd")))))};
@@ -1,6 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { HasPermissionProp } from "@licklist/plugins/dist/types/permission/Permission";
3
3
  import { ProductSet } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
4
+ import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
4
5
  import { EditEventFormValues } from "../EditEventForm/EditEventForm";
5
6
  interface SelectEventProductSetProps extends HasPermissionProp {
6
7
  productSets?: ProductSet[];
@@ -8,7 +9,8 @@ interface SelectEventProductSetProps extends HasPermissionProp {
8
9
  setShowEditProductSet: (value: boolean) => void;
9
10
  createProductSet: (props: EditEventFormValues) => void;
10
11
  setEditProductSetId: (value: string) => void;
12
+ workHours: WorkHour[] | undefined;
11
13
  }
12
- export declare const SelectEventProductSet: ({ productSets, createProductSet, setEditProductSetId, showEditProductSet, setShowEditProductSet, }: SelectEventProductSetProps) => JSX.Element;
14
+ export declare const SelectEventProductSet: ({ productSets, createProductSet, setEditProductSetId, showEditProductSet, setShowEditProductSet, workHours, }: SelectEventProductSetProps) => JSX.Element;
13
15
  export {};
14
16
  //# sourceMappingURL=SelectEventProductSet.d.ts.map
@@ -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;AAEzF,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;CAC9C;AAED,eAAO,MAAM,qBAAqB,uGAM/B,0BAA0B,gBA2L5B,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"),l=require("@react-aria/utils"),u=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=o.useTranslation(["Design"]).t,E=c.useFormContext(),p=E.control,b=E.watch,g=E.trigger,P=E.formState.errors,C=E.getValues,h=E.setValue,I=l.useId(),x=b("productSetId"),N=b("editedProductSet"),w=n.useCallback((function(){m(String(x)),f(!0)}),[x]),F=function(){f(!1),N&&h("editedProductSet",void 0)},k=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,g()];case 1:return t.sent()?(e=C(),[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,S("Design:selectProductSet")),r.createElement(c.Controller,{control:p,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(u.ConfirmModal,null,(function(e){return r.createElement(a.Form.Control,{as:"select",onChange:function(t){return function(e,t){N?t((function(){h("productSetId",e),h("editedProductSet",void 0)})):(v&&f(!1),h("productSetId",e))}(Number(t.target.value),e)},isInvalid:Boolean(P.productSetId),value:o},r.createElement("option",{value:"",hidden:!0},S("Design:chooseProductSet")),null==i?void 0:i.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(S("edited"),"] ").concat(t?null==N?void 0:N.name:e.name):e.name)})))})),r.createElement("div",{className:"buttons-container"},!v&&!N&&r.createElement(a.Button,{variant:"",className:"btn product-set-button mr-4",onClick:k},S("addNewProductSet")),!v&&x&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ",onClick:w},S("editProductSet")),v&&r.createElement(a.Button,{variant:"",className:"btn product-set-button",onClick:F},S("cancelAndRevert")),!v&&N&&r.createElement(a.Button,{variant:"",className:"btn product-set-button ml-4 text-danger",onClick:F},S("undoChanges")))),r.createElement(a.Form.Control.Feedback,{type:"invalid"},null===(t=null==P?void 0:P.productSetId)||void 0===t?void 0:t.message))}}))),v&&x&&r.createElement(r.Fragment,null,r.createElement(d.EditEventProductSet,{onSubmit:function(e){f(!1),h("editedProductSet",e)},defaultValues:x===(null==N?void 0:N.id)&&N})))};
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,4 +1,5 @@
1
1
  /// <reference types="react" />
2
+ import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
2
3
  import { EditEventFormValues } from "../../EditEventForm";
3
4
  export declare const DEFAULT_FEE = 5;
4
5
  export interface EventDates {
@@ -9,7 +10,8 @@ export interface EventDates {
9
10
  interface EditEventProductSetProps {
10
11
  onSubmit: (value: EditEventFormValues["editedProductSet"]) => void;
11
12
  defaultValues?: EditEventFormValues["editedProductSet"];
13
+ workHours: WorkHour[] | undefined;
12
14
  }
13
- export declare const EditEventProductSet: ({ onSubmit, defaultValues, }: EditEventProductSetProps) => JSX.Element;
15
+ export declare const EditEventProductSet: ({ onSubmit, defaultValues, workHours, }: EditEventProductSetProps) => JSX.Element;
14
16
  export {};
15
17
  //# sourceMappingURL=EditEventProductSet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EditEventProductSet.d.ts","sourceRoot":"","sources":["../../../../../../src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx"],"names":[],"mappings":";AAWA,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;CACzD;AAED,eAAO,MAAM,mBAAmB,iCAG7B,wBAAwB,gBAgH1B,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=u.useParams().companyId,g=c.useEventEditProductSetContext(),f=g.companies,E=g.isLoading,j=g.settings,C=g.smsTemplates,b=g.systemSettings,T=g.productGroupsData,y=g.productSetData,x=g.venueMapSets,D=g.emailTemplates,F=g.fieldSetsData,h=i.useTranslation("Design").t,M=r.useMemo((function(){return P||(y?v.getDefaultValues(y,!0):void 0)}),[y,P]),k=n.useForm({defaultValues:P,mode:"onChange"}),N=k.reset,L=k.handleSubmit,w=(0,k.watch)();r.useEffect((function(){M&&!d.isEqual(M,w)&&N(M)}),[M]);var B=String((null==b?void 0:b.feeInPercent)||5),_=null==f?void 0:f.find((function(e){return String(null==e?void 0:e.id)===S})),Q=r.useMemo((function(){return T?T.map((function(e){var t=e.id,r=e.name;return{id:Number(t),value:r}})):[]}),[T]);return E?o.createElement(s.BlockLoader,null):o.createElement(l.ProductSetContextProvider,{productGroupList:Q,providerHasMap:null==j?void 0:j.providerHasMap,venueMapSets:x},o.createElement("div",{className:"edit-product-set-warning"},h("editProductSetWarning",{attribute:null==y?void 0:y.name})),o.createElement("div",{className:"product-set-border"}),o.createElement(n.FormProvider,t.__assign({},k),o.createElement(a.Form,{className:"mt-6"},o.createElement(m.ProductSetControl,{smsTemplates:p.getFilteredTemplates(C,null==w?void 0:w.smsTemplates),emailTemplates:p.getFilteredTemplates(D,null==w?void 0:w.emailTemplates),showEmailTemplate:!!D,showSmsTemplate:!!C,fieldSets:F,isLoading:E,companyName:null==_?void 0:_.title,fee:B,isEventEditProductSet:!0}),o.createElement(a.Button,{disabled:E,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
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),t=require("./index.js"),r=require("../types/index.js"),a=require("../hooks/useTableData.js");exports.getOrderSummaryItems=function(n){var s=n.order,_=n.externalDiscount,l=n.paymentDetail;return n.isPaymentProcessed?function(n){var s=n.order,_=n.paymentDetail,l=_&&!s.payments.length?t.getExternalPaymentDetail(_):Object.keys(a.PAYMENT_TYPE_TRANSLATE_KEYS).map((function(e){return{translateKey:a.PAYMENT_TYPE_TRANSLATE_KEYS[e],price:t.getPaymentValueByType(s.payments,e)}})),i=t.calculateTotalPrice(s,l),u=t.calculateTotalDiscount(s.payments),y=i-Number(u),p=[{translateKey:r.AMOUNT_TOTAL,price:i}];return u&&p.push({translateKey:r.AMOUNT_WITH_DISCOUNT,price:y<0?0:y}),_&&!s.payments.length?e.__spreadArray(e.__spreadArray([],e.__read(p),!1),e.__read(l),!1):(p.push({translateKey:r.TOTAL_PAID,price:y<=0?0:s.totalAmount}),y<=0||(p=e.__spreadArray(e.__spreadArray([],e.__read(p),!1),e.__read(l),!1),y>s.totalAmount&&p.push({translateKey:r.REMAINING_TO_PAY,price:y-s.totalAmount})),p)}({order:s,paymentDetail:l}):function(a){var n=a.order,s=a.externalDiscount,_=a.paymentDetail,l=_?t.getExternalPaymentDetail(_):void 0,i=t.calculateTotalPrice(n,l),u=[{translateKey:r.AMOUNT_TOTAL,price:i}];return s&&u.push({price:s,translateKey:r.AMOUNT_WITH_DISCOUNT}),l?e.__spreadArray(e.__spreadArray([],e.__read(u),!1),e.__read(t.getExternalPaymentDetail(_)),!1):u}({order:s,externalDiscount:_,paymentDetail:l})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("tslib"),a=require("./index.js"),r=require("../types/index.js"),t=require("../hooks/useTableData.js");exports.getOrderSummaryItems=function(n){var s=n.order,i=n.externalDiscount,_=n.paymentDetail;return n.isPaymentProcessed?function(n){var s=n.order,i=n.paymentDetail,_=i&&!s.payments.length?a.getExternalPaymentDetail(i):Object.keys(t.PAYMENT_TYPE_TRANSLATE_KEYS).map((function(e){return{translateKey:t.PAYMENT_TYPE_TRANSLATE_KEYS[e],price:a.getPaymentValueByType(s.payments,e)}})),l=a.calculateTotalPrice(s,_),y=a.calculateTotalDiscount(s.payments),o=[{translateKey:r.AMOUNT_TOTAL,price:l}];return y&&o.push({translateKey:r.AMOUNT_WITH_DISCOUNT,price:s.totalToPayAmount}),i&&!s.payments.length?e.__spreadArray(e.__spreadArray([],e.__read(o),!1),e.__read(_),!1):(o.push({translateKey:r.TOTAL_PAID,price:s.paidAmount}),s.totalToPayAmount<=0||(o=e.__spreadArray(e.__spreadArray([],e.__read(o),!1),e.__read(_),!1),s.remainingToPay&&o.push({translateKey:r.REMAINING_TO_PAY,price:s.remainingToPay})),o)}({order:s,paymentDetail:_}):function(t){var n=t.order,s=t.externalDiscount,i=t.paymentDetail,_=i?a.getExternalPaymentDetail(i):void 0,l=a.calculateTotalPrice(n,_),y=[{translateKey:r.AMOUNT_TOTAL,price:l}];return s&&y.push({price:s,translateKey:r.AMOUNT_WITH_DISCOUNT}),_?e.__spreadArray(e.__spreadArray([],e.__read(y),!1),e.__read(a.getExternalPaymentDetail(i)),!1):y}({order:s,externalDiscount:i,paymentDetail:_})};
@@ -1,13 +1,9 @@
1
1
  /// <reference types="react" />
2
2
  import { Modifier } from "@popperjs/core";
3
3
  import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
4
- import { ProductSetRecurrence } from "@licklist/core/dist/DataMapper/Product/ProductSetRecurrenceDataMapper";
5
- export interface DateAndRecurrenceInputValues {
6
- menuRecurrences?: Partial<ProductSetRecurrence>[];
7
- }
8
4
  interface DateAndRecurrenceInputProps {
9
5
  isEventEditProductSet?: boolean;
10
- workHours?: WorkHour[];
6
+ workHours: WorkHour[] | undefined;
11
7
  providerHasBookingManagement: boolean;
12
8
  isLoading?: boolean;
13
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DateAndRecurrenceInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateAndRecurrenceInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAuB7G,MAAM,WAAW,4BAA4B;IAC3C,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,4BAA4B,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,sBAAsB,mFAKhC,2BAA2B,gBA+Q7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,CAAC"}
1
+ {"version":3,"file":"DateAndRecurrenceInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateAndRecurrenceInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AA0BtF,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC;IAClC,4BAA4B,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,sBAAsB,mFAKhC,2BAA2B,gBAmT7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,CAAC"}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),t=require("react"),n=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,i=require("react-i18next"),a=require("react-bootstrap"),o=require("../../static/Icon.js"),u=require("react-hook-form"),l=require("@react-aria/utils"),s=require("react-use"),d=require("luxon");require("../../static/index.js");var c=require("@dnd-kit/core"),m=require("@dnd-kit/modifiers"),v=require("@dnd-kit/sortable"),f=require("../../modals/confirmation/ConfirmModal.js"),g=require("@licklist/core/dist/Config/Date"),p=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),T=require("./ProductSetRecurrenceControl.js"),b=require("../../zone/form/components/AvailableTimesControl.js"),x={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,n={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,n)}};exports.DateAndRecurrenceInput=function(e){var E,_,R,h,q,D=e.isEventEditProductSet,S=e.providerHasBookingManagement,C=e.workHours,y=e.isLoading,k=u.useFormContext(),I=k.control,M=k.register,w=k.formState.errors,A=k.getValues,O=k.setValue,F=k.clearErrors,N=r.__read(t.useState([]),2),j=N[0],P=N[1],V=t.useRef(),L=u.useFieldArray({name:"menuRecurrences",control:I,keyName:"_id"}),W=L.fields,B=L.append,H=L.update,z=L.move,G=r.__read(t.useState(!1),2),K=G[0],J=G[1],Q=r.__read(t.useState({index:null,values:null}),2),U=Q[0],X=Q[1],Y=function(){return X({index:null,values:null})},Z=t.useRef();s.useClickAway(Z,(function(e){var r,t,n;f.CONFIRM_MODAL_ACTIONS.includes(null===(n=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===n?void 0:n.value)||(J(!1),Y())}));var $=l.useId(),ee=i.useTranslation("Design").t,re=function(){Y(),J((function(e){return!e}))};return t.useEffect((function(){W.length&&F("menuRecurrences")}),[W,F]),n.createElement(a.Form.Group,null,n.createElement(a.Form.Label,null,ee(D?"whenOverridesAvailable":"productSetAvailable")),n.createElement(a.OverlayTrigger,{show:K,overlay:n.createElement(a.Popover,{id:$,className:"rounded"},n.createElement(a.Popover.Content,{className:"shadow-lg rounded",ref:Z},n.createElement(p.RecurringDatePickerInput,{defaultValues:U.values,onChange:function(e){return r.__awaiter(void 0,void 0,void 0,(function(){var t,n,i,a,o,u,l,s,c,m,v;return r.__generator(this,(function(r){switch(r.label){case 0:return[4,null===(l=V.current)||void 0===l?void 0:l.trigger()];case 1:return t=r.sent(),(null==e?void 0:e.startTime)&&(null==e?void 0:e.endTime)&&t&&(n=d.DateTime.fromISO(e.startTime),i=d.DateTime.fromISO(e.endTime),a=V.current.getValues().availableTimes,!a.every((function(e){var r=d.DateTime.fromFormat(e,g.TIME_FORMAT);return r.diff(n,"minutes").minutes>=0&&r.diff(i,"minutes").minutes<=0})))?(V.current.setError("availableTimes",{message:ee("Validation:fieldTimeBetween",{attribute:ee("Design:startTimesSmall"),min:n.toFormat(g.TIME_FORMAT),max:i.toFormat(g.TIME_FORMAT)})}),[2]):(o=(null===(c=null===(s=null==V?void 0:V.current)||void 0===s?void 0:s.getValues())||void 0===c?void 0:c.availableTimes)||null,u={rrule:e.rrule,startDate:e.startDate,endDate:e.endDate,startTime:e.startTime,endTime:e.endTime,availableTimes:o},(null===(m=U.values)||void 0===m?void 0:m.id)&&(u.id=null===(v=U.values)||void 0===v?void 0:v.id),null!==U.index?H(U.index,u):B(u),J((function(){return!1})),Y(),[2])}}))}))},onDelete:function(){var e=U.index;J(!1),Y(),setTimeout((function(){var r=A().menuRecurrences;O("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)}},S&&n.createElement(b.AvailableTimesControl,{workHours:C,isLoading:y,defaultValues:j,ref:V,errorMessage:null===(R=null===(_=null===(E=null==w?void 0:w.menuRecurrences)||void 0===E?void 0:E["".concat(null==U?void 0:U.index)])||void 0===_?void 0:_.availableTimes)||void 0===R?void 0:R.message,clearErrorMessage:function(){return F("menuRecurrences.".concat(null==U?void 0:U.index,".availableTimes"))}})))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[x]}},n.createElement("div",{className:"product-set-recurrences"},n.createElement(c.DndContext,{onDragEnd:function(e){var r=e.over,t=e.active;if(r.id!==t.id){var n=W.findIndex((function(e){return String(e._id)===t.id})),i=W.findIndex((function(e){return String(e._id)===r.id}));z(n,i)}},modifiers:[m.restrictToVerticalAxis]},n.createElement(v.SortableContext,{items:null!==(h=null==W?void 0:W.map((function(e){return String(e._id)})))&&void 0!==h?h:[],strategy:v.verticalListSortingStrategy},W.map((function(e,r){var t,i,a;return n.createElement(T.ProductSetRecurrenceControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){Y(),setTimeout((function(){X({index:r,values:e}),P(e.availableTimes||[]),J((function(){return!0}))}),100)}(e,r)},errorMessage:null===(a=null===(i=null===(t=null==w?void 0:w.menuRecurrences)||void 0===t?void 0:t["".concat(r)])||void 0===i?void 0:i.availableTimes)||void 0===a?void 0:a.message})})))),(!D||(null==W?void 0:W.length)<1)&&n.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:re,onKeyDown:re},n.createElement(o.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),ee("addDates")),n.createElement(a.Form.Control,r.__assign({type:"hidden"},M("menuRecurrences",{required:{value:!0,message:ee("Validation:fieldMinNumber",{attribute:ee("dates"),min:1})}}))),n.createElement("div",{className:"manual-form-error"},null===(q=w.menuRecurrences)||void 0===q?void 0:q.message))))},exports.sameWidthPopperModifier=x;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,r=require("tslib"),t=require("react"),i=(e=t)&&"object"==typeof e&&"default"in e?e.default:e,n=require("react-i18next"),a=require("react-bootstrap"),o=require("../../static/Icon.js"),u=require("react-hook-form"),l=require("@react-aria/utils"),s=require("react-use"),d=require("luxon");require("../../static/index.js");var c=require("@dnd-kit/core"),m=require("@dnd-kit/modifiers"),v=require("@dnd-kit/sortable"),f=require("../../modals/confirmation/ConfirmModal.js"),g=require("@licklist/core/dist/Config/Date"),p=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),T=require("./ProductSetRecurrenceControl.js"),b=require("../../zone/form/components/AvailableTimesControl.js"),E=require("./utils.js"),x={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,i={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,i)}};exports.DateAndRecurrenceInput=function(e){var _,R,D,h,M,q=e.isEventEditProductSet,S=e.providerHasBookingManagement,I=e.workHours,C=e.isLoading,F=u.useFormContext(),k=F.control,w=F.register,y=F.formState.errors,A=F.getValues,O=F.setValue,j=F.clearErrors,N=u.useWatch({control:k,name:"steps"}),P=r.__read(t.useState([]),2),V=P[0],L=P[1],W=t.useRef(),B=u.useFieldArray({name:"menuRecurrences",control:k,keyName:"_id"}),H=B.fields,z=B.append,G=B.update,K=B.move,J=r.__read(t.useState(!1),2),Q=J[0],U=J[1],X=r.__read(t.useState({index:null,values:null}),2),Y=X[0],Z=X[1],$=function(){return Z({index:null,values:null})},ee=t.useRef();s.useClickAway(ee,(function(e){var r,t,i;f.CONFIRM_MODAL_ACTIONS.includes(null===(i=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===i?void 0:i.value)||(U(!1),$())}));var re=l.useId(),te=n.useTranslation("Design").t,ie=function(){$(),U((function(e){return!e}))};return t.useEffect((function(){H.length&&j("menuRecurrences")}),[H,j]),i.createElement(a.Form.Group,null,i.createElement(a.Form.Label,null,te(q?"whenOverridesAvailable":"productSetAvailable")),i.createElement(a.OverlayTrigger,{show:Q,overlay:i.createElement(a.Popover,{id:re,className:"rounded"},i.createElement(a.Popover.Content,{className:"shadow-lg rounded",ref:ee},i.createElement(p.RecurringDatePickerInput,{defaultValues:Y.values,onChange:function(e){return r.__awaiter(void 0,void 0,void 0,(function(){var t,i,n,a,o,u,l,s,c,m,v,f,p,T,b;return r.__generator(this,(function(r){switch(r.label){case 0:return[4,null===(v=W.current)||void 0===v?void 0:v.trigger()];case 1:return t=r.sent(),i=W.current.getValues().availableTimes,(null==e?void 0:e.startTime)&&(null==e?void 0:e.endTime)&&t&&(n=d.DateTime.fromISO(e.startTime),a=d.DateTime.fromISO(e.endTime),!i.every((function(e){var r=d.DateTime.fromFormat(e,g.TIME_FORMAT);return r.diff(n,"minutes").minutes>=0&&r.diff(a,"minutes").minutes<=0})))?(W.current.setError("availableTimes",{message:te("Validation:fieldTimeBetween",{attribute:te("Design:startTimesSmall"),min:n.toFormat(g.TIME_FORMAT),max:a.toFormat(g.TIME_FORMAT)})}),[2]):(o=E.getProductWithSmallestDuration(N))&&(u=(null==e?void 0:e.endTime)?d.DateTime.fromFormat(null==e?void 0:e.endTime,g.TIME_FORMAT):d.DateTime.fromFormat("23:59",g.TIME_FORMAT).plus({minutes:1}),l=E.getLatestAvailableDateTime(i),s=u.minus({minutes:o.duration}),l>s)?(W.current.setError("availableTimes",{message:te("Validation:fieldTimeBefore",{attribute:te("Design:timeLowercase"),time:s.toFormat(g.TIME_FORMAT)})}),[2]):(c=(null===(p=null===(f=null==W?void 0:W.current)||void 0===f?void 0:f.getValues())||void 0===p?void 0:p.availableTimes)||null,m={rrule:e.rrule,startDate:e.startDate,endDate:e.endDate,startTime:e.startTime,endTime:e.endTime,availableTimes:c},(null===(T=Y.values)||void 0===T?void 0:T.id)&&(m.id=null===(b=Y.values)||void 0===b?void 0:b.id),null!==Y.index?G(Y.index,m):z(m),U((function(){return!1})),$(),[2])}}))}))},onDelete:function(){var e=Y.index;U(!1),$(),setTimeout((function(){var r=A().menuRecurrences;O("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)},workHours:I},S&&i.createElement(b.AvailableTimesControl,{workHours:I,isLoading:C,defaultValues:V,ref:W,errorMessage:null===(D=null===(R=null===(_=null==y?void 0:y.menuRecurrences)||void 0===_?void 0:_["".concat(null==Y?void 0:Y.index)])||void 0===R?void 0:R.availableTimes)||void 0===D?void 0:D.message,clearErrorMessage:function(){return j("menuRecurrences.".concat(null==Y?void 0:Y.index,".availableTimes"))}})))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[x]}},i.createElement("div",{className:"product-set-recurrences"},i.createElement(c.DndContext,{onDragEnd:function(e){var r=e.over,t=e.active;if(r.id!==t.id){var i=H.findIndex((function(e){return String(e._id)===t.id})),n=H.findIndex((function(e){return String(e._id)===r.id}));K(i,n)}},modifiers:[m.restrictToVerticalAxis]},i.createElement(v.SortableContext,{items:null!==(h=null==H?void 0:H.map((function(e){return String(e._id)})))&&void 0!==h?h:[],strategy:v.verticalListSortingStrategy},H.map((function(e,r){var t,n,a;return i.createElement(T.ProductSetRecurrenceControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){$(),setTimeout((function(){Z({index:r,values:e}),L(e.availableTimes||[]),U((function(){return!0}))}),100)}(e,r)},errorMessage:null===(a=null===(n=null===(t=null==y?void 0:y.menuRecurrences)||void 0===t?void 0:t["".concat(r)])||void 0===n?void 0:n.availableTimes)||void 0===a?void 0:a.message})})))),(!q||(null==H?void 0:H.length)<1)&&i.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:ie,onKeyDown:ie},i.createElement(o.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),te("addDates")),i.createElement(a.Form.Control,r.__assign({type:"hidden"},w("menuRecurrences",{required:{value:!0,message:te("Validation:fieldMinNumber",{attribute:te("dates"),min:1})}}))),i.createElement("div",{className:"manual-form-error"},null===(M=y.menuRecurrences)||void 0===M?void 0:M.message))))},exports.sameWidthPopperModifier=x;
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAI7G,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAkBtF,MAAM,WAAW,4BAA4B;IAC3C,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,4BAA4B,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,mFAKnB,2BAA2B,gBAsP7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,CAAC"}
1
+ {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/DateInput.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAO1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uEAAuE,CAAC;AAG7G,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAiBtF,MAAM,WAAW,4BAA4B;IAC3C,eAAe,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;CACnD;AAED,UAAU,2BAA2B;IACnC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,4BAA4B,EAAE,OAAO,CAAC;IACtC,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,mFAKnB,2BAA2B,gBAsP7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAC5C,WAAW,EACX,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAsBxB,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 r=require("tslib"),t=require("react"),n=e(t),i=require("react-i18next"),a=require("react-bootstrap"),u=require("../../static/Icon.js"),o=require("react-hook-form"),l=require("@react-aria/utils"),s=require("react-use"),c=require("luxon");require("../../static/index.js");var d=require("../../modals/confirmation/ConfirmModal.js"),m=require("rrule"),v=e(m),f=require("@licklist/core/dist/Config/Date"),p=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),g=require("../../zone/form/components/AvailableTimesControl.js"),T=require("../product/constants.js"),b=require("../../recurring-date-picker-input/DatePickerInput.js"),E=require("./ProductSetRecurrenceOverridesControl.js"),R={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,n={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,n)}};exports.DateInput=function(e){var _,D,q,x,h=e.isEventEditProductSet,I=e.isLoading,y=e.workHours,C=e.providerHasBookingManagement,M=o.useFormContext(),O=M.control,k=M.register,w=M.formState.errors,A=M.getValues,N=M.setValue,S=M.clearErrors,j=o.useFieldArray({name:"menuRecurrences",control:O,keyName:"_id"}),F=j.fields,P=j.append,V=j.update,L=r.__read(t.useState([]),2),W=L[0],B=L[1],H=r.__read(t.useState(!1),2),U=H[0],z=H[1],Y=t.useRef(),G=r.__read(t.useState({index:null,values:null}),2),J=G[0],K=G[1],Q=function(){return K({index:null,values:null})},X=t.useRef();s.useClickAway(X,(function(e){var r,t,n;d.CONFIRM_MODAL_ACTIONS.includes(null===(n=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===n?void 0:n.value)||(z(!1),Q())}));var Z=l.useId(),$=i.useTranslation("Design").t,ee=function(){F.length>=1||(Q(),z((function(e){return!e})))};return n.createElement(a.Form.Group,null,n.createElement(a.Form.Label,null,$(h?"whenOverridesAvailable":"productSetAvailable")),n.createElement(a.OverlayTrigger,{show:U,overlay:n.createElement(a.Popover,{id:Z,className:"rounded"},n.createElement(a.Popover.Content,{className:"shadow-lg rounded",ref:X},n.createElement(b.DatePickerInput,{defaultValues:J.values,onChange:function(e){return r.__awaiter(void 0,void 0,void 0,(function(){var t,n,i,a,u,o,l,s,d,g,T,b,E;return r.__generator(this,(function(r){switch(r.label){case 0:return[4,null===(d=Y.current)||void 0===d?void 0:d.trigger()];case 1:return t=r.sent(),(null==e?void 0:e.startTime)&&(null==e?void 0:e.endTime)&&t&&(n=c.DateTime.fromISO(e.startTime),i=c.DateTime.fromISO(e.endTime),a=Y.current.getValues().availableTimes,!a.every((function(e){var r=c.DateTime.fromFormat(e,f.TIME_FORMAT);return r.diff(n,"minutes").minutes>=0&&r.diff(i,"minutes").minutes<=0})))?(Y.current.setError("availableTimes",{message:$("Validation:fieldTimeBetween",{attribute:$("Design:startTimesSmall"),min:n.toFormat(f.TIME_FORMAT),max:i.toFormat(f.TIME_FORMAT)})}),[2]):(u=p.getDateTimeObject(e.startDate,e.endTime||"23:59:59"),o=v.optionsToString({until:u.toJSDate(),byweekday:[],freq:m.Frequency.DAILY,tzid:f.TIMEZONE,interval:1}).replace("RRULE:",""),l=(null===(T=null===(g=null==Y?void 0:Y.current)||void 0===g?void 0:g.getValues())||void 0===T?void 0:T.availableTimes)||null,s={rrule:o,startDate:e.startDate,endDate:e.startDate,startTime:e.startTime,endTime:e.endTime,availableTimes:l},(null===(b=J.values)||void 0===b?void 0:b.id)&&(s.id=null===(E=J.values)||void 0===E?void 0:E.id),null!==J.index?V(J.index,s):P(s),z((function(){return!1})),Q(),[2])}}))}))},onDelete:function(){var e=J.index;z(!1),Q(),setTimeout((function(){var r=A().menuRecurrences;N("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)}},C&&n.createElement(g.AvailableTimesControl,{workHours:y,isLoading:I,ref:Y,defaultValues:W,errorMessage:null===(q=null===(D=null===(_=null==w?void 0:w.menuRecurrences)||void 0===_?void 0:_["".concat(null==J?void 0:J.index)])||void 0===D?void 0:D.availableTimes)||void 0===q?void 0:q.message,clearErrorMessage:function(){return S("menuRecurrences.".concat(null==J?void 0:J.index,".availableTimes"))}})))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[R]}},n.createElement("div",{className:"product-set-recurrences"},F.map((function(e,r){var t,i,a;return n.createElement(E.ProductSetRecurrenceOverridesControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){Q(),setTimeout((function(){K({index:r,values:e}),B(e.availableTimes||[]),z((function(){return!0}))}),100)}(e,r)},errorMessage:null===(a=null===(i=null===(t=null==w?void 0:w.menuRecurrences)||void 0===t?void 0:t["".concat(r)])||void 0===i?void 0:i.availableTimes)||void 0===a?void 0:a.message})})),F.length<T.MAX_QUANTITY_RECURRENCE_DATE_IN_OVERRIDE&&n.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:ee,onKeyDown:ee},n.createElement(u.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),$("addDates")),n.createElement(a.Form.Control,r.__assign({type:"hidden"},k("menuRecurrences",{required:{value:!0,message:$("Validation:fieldMinNumber",{attribute:$("dates"),min:1})}}))),n.createElement("div",{className:"manual-form-error"},null===(x=w.menuRecurrences)||void 0===x?void 0:x.message))))},exports.sameWidthPopperModifier=R;
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("tslib"),t=require("react"),n=e(t),i=require("react-i18next"),a=require("react-bootstrap"),u=require("../../static/Icon.js"),o=require("react-hook-form"),l=require("@react-aria/utils"),s=require("react-use"),c=require("luxon");require("../../static/index.js");var d=require("../../modals/confirmation/ConfirmModal.js"),m=require("rrule"),v=e(m),f=require("@licklist/core/dist/Config/Date"),p=require("../../recurring-date-picker-input/RecurringDatePickerInput.js"),g=require("../../zone/form/components/AvailableTimesControl.js"),T=require("../product/constants.js"),b=require("../../recurring-date-picker-input/DatePickerInput.js"),E=require("./ProductSetRecurrenceOverridesControl.js"),_={name:"sameWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var r=e.state,t={width:"".concat(r.rects.reference.width+4,"px"),marginLeft:"-2px",maxWidth:"unset"};Object.assign(r.styles.popper,t)},effect:function(e){var r=e.state,t=r.elements.reference.getBoundingClientRect().width,n={width:"".concat(t,"px"),maxWidth:"unset"};Object.assign(r.elements.popper.style,n)}};exports.DateInput=function(e){var R,D,q,x,h=e.isEventEditProductSet,I=e.isLoading,C=e.workHours,y=e.providerHasBookingManagement,M=o.useFormContext(),O=M.control,k=M.register,w=M.formState.errors,A=M.getValues,N=M.setValue,S=M.clearErrors,j=o.useFieldArray({name:"menuRecurrences",control:O,keyName:"_id"}),F=j.fields,P=j.append,V=j.update,L=r.__read(t.useState([]),2),W=L[0],U=L[1],B=r.__read(t.useState(!1),2),H=B[0],z=B[1],Y=t.useRef(),G=r.__read(t.useState({index:null,values:null}),2),J=G[0],K=G[1],Q=function(){return K({index:null,values:null})},X=t.useRef();s.useClickAway(X,(function(e){var r,t,n;d.CONFIRM_MODAL_ACTIONS.includes(null===(n=null===(t=null===(r=e.target)||void 0===r?void 0:r.attributes)||void 0===t?void 0:t.getNamedItem("data-id"))||void 0===n?void 0:n.value)||(z(!1),Q())}));var Z=l.useId(),$=i.useTranslation("Design").t,ee=function(){F.length>=1||(Q(),z((function(e){return!e})))};return n.createElement(a.Form.Group,null,n.createElement(a.Form.Label,null,$(h?"whenOverridesAvailable":"productSetAvailable")),n.createElement(a.OverlayTrigger,{show:H,overlay:n.createElement(a.Popover,{id:Z,className:"rounded"},n.createElement(a.Popover.Content,{className:"shadow-lg rounded",ref:X},n.createElement(b.DatePickerInput,{defaultValues:J.values,onChange:function(e){return r.__awaiter(void 0,void 0,void 0,(function(){var t,n,i,a,u,o,l,s,d,g,T,b,E;return r.__generator(this,(function(r){switch(r.label){case 0:return[4,null===(d=Y.current)||void 0===d?void 0:d.trigger()];case 1:return t=r.sent(),(null==e?void 0:e.startTime)&&(null==e?void 0:e.endTime)&&t&&(n=c.DateTime.fromISO(e.startTime),i=c.DateTime.fromISO(e.endTime),a=Y.current.getValues().availableTimes,!a.every((function(e){var r=c.DateTime.fromFormat(e,f.TIME_FORMAT);return r.diff(n,"minutes").minutes>=0&&r.diff(i,"minutes").minutes<=0})))?(Y.current.setError("availableTimes",{message:$("Validation:fieldTimeBetween",{attribute:$("Design:startTimesSmall"),min:n.toFormat(f.TIME_FORMAT),max:i.toFormat(f.TIME_FORMAT)})}),[2]):(u=p.getDateTimeObject(e.startDate,e.endTime||"23:59:59"),o=v.optionsToString({until:u.toJSDate(),byweekday:[],freq:m.Frequency.DAILY,tzid:f.UTC_TIMEZONE,interval:1}).replace("RRULE:",""),l=(null===(T=null===(g=null==Y?void 0:Y.current)||void 0===g?void 0:g.getValues())||void 0===T?void 0:T.availableTimes)||null,s={rrule:o,startDate:e.startDate,endDate:e.startDate,startTime:e.startTime,endTime:e.endTime,availableTimes:l},(null===(b=J.values)||void 0===b?void 0:b.id)&&(s.id=null===(E=J.values)||void 0===E?void 0:E.id),null!==J.index?V(J.index,s):P(s),z((function(){return!1})),Q(),[2])}}))}))},onDelete:function(){var e=J.index;z(!1),Q(),setTimeout((function(){var r=A().menuRecurrences;N("menuRecurrences",(void 0===r?[]:r).filter((function(r,t){return t!==e})))}),100)}},y&&n.createElement(g.AvailableTimesControl,{workHours:C,isLoading:I,ref:Y,defaultValues:W,errorMessage:null===(q=null===(D=null===(R=null==w?void 0:w.menuRecurrences)||void 0===R?void 0:R["".concat(null==J?void 0:J.index)])||void 0===D?void 0:D.availableTimes)||void 0===q?void 0:q.message,clearErrorMessage:function(){return S("menuRecurrences.".concat(null==J?void 0:J.index,".availableTimes"))}})))),trigger:"click",placement:"bottom",popperConfig:{modifiers:[_]}},n.createElement("div",{className:"product-set-recurrences"},F.map((function(e,r){var t,i,a;return n.createElement(E.ProductSetRecurrenceOverridesControl,{key:e._id,menuRecurrence:e,onEdit:function(){return function(e,r){Q(),setTimeout((function(){K({index:r,values:e}),U(e.availableTimes||[]),z((function(){return!0}))}),100)}(e,r)},errorMessage:null===(a=null===(i=null===(t=null==w?void 0:w.menuRecurrences)||void 0===t?void 0:t["".concat(r)])||void 0===i?void 0:i.availableTimes)||void 0===a?void 0:a.message})})),F.length<T.MAX_QUANTITY_RECURRENCE_DATE_IN_OVERRIDE&&n.createElement("div",{className:"product-set-recurrence-icon-wrapper",role:"button",tabIndex:0,onClick:ee,onKeyDown:ee},n.createElement(u.default,{type:"plus-circle",height:"1rem",className:"product-set-recurrence-icon-add mr-2"}),$("addDates")),n.createElement(a.Form.Control,r.__assign({type:"hidden"},k("menuRecurrences",{required:{value:!0,message:$("Validation:fieldMinNumber",{attribute:$("dates"),min:1})}}))),n.createElement("div",{className:"manual-form-error"},null===(x=w.menuRecurrences)||void 0===x?void 0:x.message))))},exports.sameWidthPopperModifier=_;
@@ -4,15 +4,15 @@ import { FieldSet } from "@licklist/core/dist/DataMapper/Order/FieldSetDataMappe
4
4
  import { EmailTemplate } from "@licklist/core/dist/DataMapper/Notification/EmailTemplateDataMapper";
5
5
  import { SmsTemplate } from "@licklist/core/dist/DataMapper/Notification/SmsTemplateDataMapper";
6
6
  import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
7
+ import { ProductSetRecurrence } from "@licklist/core/dist/DataMapper/Product/ProductSetRecurrenceDataMapper";
7
8
  import { SelectItem } from "../../types/generic/SelectItem";
8
- import { DateAndRecurrenceInputValues } from "./DateAndRecurrenceInput";
9
9
  import { Step } from "../types";
10
10
  export interface TemplateItem {
11
11
  id: string;
12
12
  value: EmailTemplate | SmsTemplate;
13
13
  label: string;
14
14
  }
15
- export interface ProductSetControlValues extends DateAndRecurrenceInputValues {
15
+ export interface ProductSetControlValues {
16
16
  name: string;
17
17
  type: ProductSetType;
18
18
  termsAndConditions: string;
@@ -24,6 +24,7 @@ export interface ProductSetControlValues extends DateAndRecurrenceInputValues {
24
24
  steps: Step[];
25
25
  emailTemplates?: TemplateItem[];
26
26
  smsTemplates?: TemplateItem[];
27
+ menuRecurrences?: Partial<ProductSetRecurrence>[];
27
28
  }
28
29
  export interface ProductSetControlShared {
29
30
  fee?: string;
@@ -42,7 +43,7 @@ export interface ProductSetControlProps {
42
43
  fieldSets?: FieldSet[];
43
44
  showEmailTemplate?: boolean;
44
45
  showSmsTemplate?: boolean;
45
- workHours?: WorkHour[];
46
+ workHours: WorkHour[] | undefined;
46
47
  providerHasBookingManagement?: boolean;
47
48
  isOverrides?: boolean;
48
49
  }
@@ -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;AAEtF,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAIL,4BAA4B,EAC7B,MAAM,0BAA0B,CAAC;AAElC,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,uBAAwB,SAAQ,4BAA4B;IAC3E,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;CAC/B;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,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,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))))))};
@@ -0,0 +1,5 @@
1
+ import { DateTime } from "luxon";
2
+ import { Product, Step } from "../types";
3
+ export declare const getProductWithSmallestDuration: (steps: Step[]) => Product;
4
+ export declare const getLatestAvailableDateTime: (array: string[]) => DateTime;
5
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/product-set/control/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAczC,eAAO,MAAM,8BAA8B,UAAW,IAAI,EAAE,KAAG,OACM,CAAC;AAEtE,eAAO,MAAM,0BAA0B,UAAW,MAAM,EAAE,KAAG,QAGxB,CAAC"}
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@licklist/core/dist/Config"),e=require("luxon"),r=require("@licklist/plugins/dist/utils/dateTime"),i=require("@licklist/plugins/dist/utils/extractObjectWithLowestKey");exports.getLatestAvailableDateTime=function(i){return i.map((function(r){return e.DateTime.fromFormat(r,t.TIME_FORMAT)})).sort(r.dateTimesSortFn("desc"))[0]},exports.getProductWithSmallestDuration=function(t){return i.extractObjectWithLowestKey(function(t){return t.reduce((function(t,e){return t.concat(e.productCategories.reduce((function(t,e){return t.concat(e.products)}),[]))}),[])}(t),"duration")};
@@ -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,10 +11,13 @@ import { SelectItem } from "../../types/generic/SelectItem";
11
11
  export interface WithIsLoading {
12
12
  isLoading: boolean;
13
13
  }
14
+ export interface WithIdOptional {
15
+ id?: number;
16
+ }
14
17
  export interface WithId {
15
18
  id: number;
16
19
  }
17
- export interface ProductSetFormValues extends FormValues, WithId, ProductSetControlValues {
20
+ export interface ProductSetFormValues extends FormValues, WithIdOptional, ProductSetControlValues {
18
21
  steps: Step[];
19
22
  isOverrides?: boolean;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProductSetForm.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductSetForm.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAC;AAI1F,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAK5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAC;AACtI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EAEL,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ;AACD,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,MAAM,EACN,uBAAuB;IACzB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,mBACf,SAAQ,aAAa,EACnB,uBAAuB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAC;IACxF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,EACL,cAAc,EACd,SAAS,EACT,WAAW,EACX,GAAG,MAAM,EACV,EAAE,mBAAmB,eAuIrB"}
1
+ {"version":3,"file":"ProductSetForm.d.ts","sourceRoot":"","sources":["../../../src/product-set/form/ProductSetForm.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,8DAA8D,CAAC;AAI1F,OAAO,EAAE,WAAW,EAAE,MAAM,8DAA8D,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAK5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oFAAoF,CAAC;AACtI,OAAO,EAAE,IAAI,EAAE,MAAM,wDAAwD,CAAC;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,4DAA4D,CAAC;AAEtF,OAAO,EAEL,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAG5D,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,OAAO,CAAC;CACpB;AACD,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;CACZ;AACD,MAAM,WAAW,oBACf,SAAQ,UAAU,EAChB,cAAc,EACd,uBAAuB;IACzB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,mBACf,SAAQ,aAAa,EACnB,uBAAuB;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,mBAAmB,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IAC5D,gBAAgB,CAAC,EAAE,UAAU,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,WAAW,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,4BAA4B,CAAC,EAAE,gCAAgC,CAAC,sBAAsB,CAAC,CAAC;IACxF,KAAK,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,EAC7B,WAAW,EACX,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,cAAsB,EACtB,YAAiB,EACjB,4BAA4B,EAC5B,KAAK,EACL,cAAc,EACd,SAAS,EACT,WAAW,EACX,GAAG,MAAM,EACV,EAAE,mBAAmB,eAuIrB"}
@@ -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"}