@licklist/design 0.71.23 → 0.72.0-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 (324) hide show
  1. package/dist/affiliate/form/AffiliateForm.d.ts.map +1 -1
  2. package/dist/auth/Layout/AuthNavComponent.d.ts.map +1 -1
  3. package/dist/auth/Login/LoginComponent.d.ts.map +1 -1
  4. package/dist/auth/Login/LoginComponent.js +2 -1
  5. package/dist/auth/Login/LoginFormComponent.d.ts.map +1 -1
  6. package/dist/auth/Logout/Logout.js +1 -0
  7. package/dist/auth/Register/RegisterComponent.d.ts.map +1 -1
  8. package/dist/auth/Register/RegisterFormComponent.d.ts.map +1 -1
  9. package/dist/auth/ResetPassword/ResetPasswordFormComponent.d.ts.map +1 -1
  10. package/dist/auth/Router.d.ts.map +1 -1
  11. package/dist/auth/Router.js +2 -0
  12. package/dist/calendar/utils/index.d.ts +1 -1
  13. package/dist/calendar/utils/index.d.ts.map +1 -1
  14. package/dist/events/edit-event-modal/IntervalInput.d.ts +3 -1
  15. package/dist/events/edit-event-modal/IntervalInput.d.ts.map +1 -1
  16. package/dist/events/edit-event-modal/IntervalInput.js +11 -4
  17. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts +3 -1
  18. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts.map +1 -1
  19. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.js +20 -6
  20. package/dist/events/edit-event-modal/component/SaleDeadline/SaleDeadline.d.ts.map +1 -1
  21. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +3 -1
  22. package/dist/events/edit-event-modal/utils/getDefaultProductSet.d.ts.map +1 -1
  23. package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +0 -1
  24. package/dist/events/edit-recurrent-event-modal/EditRecurrentEventModal.d.ts +5 -1
  25. package/dist/events/edit-recurrent-event-modal/EditRecurrentEventModal.d.ts.map +1 -1
  26. package/dist/events/edit-recurrent-event-modal/EditRecurrentEventModal.js +5 -3
  27. package/dist/events/event-card/utils.d.ts.map +1 -1
  28. package/dist/events/event-statistic-modal/EventStatisticModal.d.ts +2 -1
  29. package/dist/events/event-statistic-modal/EventStatisticModal.d.ts.map +1 -1
  30. package/dist/events/event-statistic-modal/EventStatisticModal.js +2 -2
  31. package/dist/events/event-statistic-modal/hooks/useTableData.d.ts +1 -1
  32. package/dist/events/event-statistic-modal/hooks/useTableData.d.ts.map +1 -1
  33. package/dist/events/event-statistic-modal/hooks/useTableData.js +2 -1
  34. package/dist/events/event-statistic-modal/utils/index.d.ts.map +1 -1
  35. package/dist/events/event-venue-map/EventVenueMap.d.ts.map +1 -1
  36. package/dist/events/event-venue-map/EventVenueMap.js +1 -0
  37. package/dist/events/event-venue-map/hooks/useCanvasSize.d.ts.map +1 -1
  38. package/dist/events/event-venue-map/hooks/useCanvasSize.js +11 -4
  39. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts +18 -0
  40. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.d.ts.map +1 -0
  41. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.js +295 -0
  42. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts +15 -0
  43. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.d.ts.map +1 -0
  44. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.js +90 -0
  45. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts +14 -0
  46. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.d.ts.map +1 -0
  47. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.js +404 -0
  48. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts +10 -0
  49. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.d.ts.map +1 -0
  50. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.js +87 -0
  51. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts +2 -0
  52. package/dist/iframe/ProductWithModifierModal/ModifierSetModal/index.d.ts.map +1 -0
  53. package/dist/iframe/ProductWithModifierModal/index.d.ts +2 -0
  54. package/dist/iframe/ProductWithModifierModal/index.d.ts.map +1 -0
  55. package/dist/iframe/ProductWithModifierModal/utils.d.ts +5 -0
  56. package/dist/iframe/ProductWithModifierModal/utils.d.ts.map +1 -0
  57. package/dist/iframe/ProductWithModifierModal/utils.js +21 -0
  58. package/dist/iframe/event/ticket-description/TicketDescription.d.ts +3 -1
  59. package/dist/iframe/event/ticket-description/TicketDescription.d.ts.map +1 -1
  60. package/dist/iframe/event/ticket-description/TicketDescription.js +10 -7
  61. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts +1 -1
  62. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts.map +1 -1
  63. package/dist/iframe/order-process/components/BookingSummary/BookingSummary.js +2 -1
  64. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts +5 -1
  65. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.d.ts.map +1 -1
  66. package/dist/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.js +12 -1
  67. package/dist/iframe/order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.d.ts.map +1 -1
  68. package/dist/iframe/order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.js +3 -3
  69. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts +1 -0
  70. package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts.map +1 -1
  71. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts +4 -0
  72. package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts.map +1 -1
  73. package/dist/iframe/order-process/components/BookingSummary/utils/index.js +29 -2
  74. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts.map +1 -1
  75. package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.js +106 -2
  76. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.d.ts.map +1 -1
  77. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.js +13 -0
  78. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts +3 -1
  79. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  80. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +95 -1
  81. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts +23 -0
  82. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.d.ts.map +1 -0
  83. package/dist/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.js +62 -0
  84. package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts +2 -0
  85. package/dist/iframe/order-process/components/CategoryProduct/constants.d.ts.map +1 -0
  86. package/dist/iframe/order-process/components/CategoryProduct/constants.js +4 -0
  87. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts +6 -0
  88. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.d.ts.map +1 -0
  89. package/dist/iframe/order-process/components/utils/useOnWindowUnmount.js +18 -0
  90. package/dist/iframe/page/components/PageBody/hooks/useResizePageBody.d.ts.map +1 -1
  91. package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts.map +1 -1
  92. package/dist/iframe/payment/order-items-table/hooks/useTableData.js +83 -10
  93. package/dist/iframe/payment/order-items-table/utils/index.d.ts.map +1 -1
  94. package/dist/iframe/payment/order-items-table/utils/index.js +15 -0
  95. package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +1 -1
  96. package/dist/iframe/payment/order-items-table/utils/paymentSummary.js +2 -2
  97. package/dist/iframe/payment/payment-page/PaymentPage.d.ts.map +1 -1
  98. package/dist/iframe/payment/payment-page/PaymentPage.js +4 -1
  99. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.d.ts.map +1 -1
  100. package/dist/iframe/payment/payment-status-page/PaymentStatusPage.js +2 -2
  101. package/dist/iframe/ryft/RyftPaymentForm.js +1 -0
  102. package/dist/iframe/ryft/utils/ryft-form.d.ts.map +1 -1
  103. package/dist/iframe/ryft/utils/ryft-form.js +4 -5
  104. package/dist/index.js +2 -1
  105. package/dist/layout/DropDown.d.ts +2 -1
  106. package/dist/layout/DropDown.d.ts.map +1 -1
  107. package/dist/notification/email-template/card/EmailTemplateCard.d.ts.map +1 -1
  108. package/dist/notification/email-template/control/EmailTemplateControl.d.ts.map +1 -1
  109. package/dist/notification/email-template/control/EmailTemplateControl.js +3 -0
  110. package/dist/notification/sms-template/card/SmsTemplateCard.d.ts.map +1 -1
  111. package/dist/product-set/control/DateAndRecurrenceInput.d.ts.map +1 -1
  112. package/dist/product-set/control/DateInput.d.ts.map +1 -1
  113. package/dist/product-set/form/ProductSetForm.d.ts +7 -2
  114. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  115. package/dist/product-set/form/ProductSetForm.js +7 -5
  116. package/dist/product-set/form/ProductZonesControl.d.ts.map +1 -1
  117. package/dist/product-set/form/ProductZonesControl.js +0 -2
  118. package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
  119. package/dist/product-set/form/ProductsControl.js +25 -5
  120. package/dist/product-set/form/SubProductsControl.d.ts.map +1 -1
  121. package/dist/product-set/form/SubProductsControl.js +0 -3
  122. package/dist/product-set/form/VenueMapsControl.d.ts +1 -1
  123. package/dist/product-set/form/VenueMapsControl.d.ts.map +1 -1
  124. package/dist/product-set/form/VenueMapsControl.js +0 -3
  125. package/dist/product-set/form/context.d.ts +3 -1
  126. package/dist/product-set/form/context.d.ts.map +1 -1
  127. package/dist/product-set/form/context.js +2 -1
  128. package/dist/product-set/product/ProductControl.d.ts +8 -0
  129. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  130. package/dist/product-set/product/ProductControl.js +25 -1
  131. package/dist/product-set/product/booking-management/ProductBookingManagementControl.d.ts.map +1 -1
  132. package/dist/product-set/product/booking-management/ProductBookingManagementControl.js +6 -0
  133. package/dist/product-set/product/deposit/ProductDepositControl.d.ts.map +1 -1
  134. package/dist/product-set/product/deposit/ProductDepositControl.js +3 -0
  135. package/dist/product-set/product/duration/ProductDurationControl.d.ts.map +1 -1
  136. package/dist/product-set/product/duration/ProductDurationControl.js +6 -0
  137. package/dist/product-set/product/price/ProductPriceControl.d.ts.map +1 -1
  138. package/dist/product-set/product/price/ProductPriceControl.js +3 -0
  139. package/dist/product-set/product/quantity/ProductQuantityConstantControl.d.ts.map +1 -1
  140. package/dist/product-set/product/quantity/ProductQuantityConstantControl.js +6 -0
  141. package/dist/product-set/product/quantity/ProductQuantityControl.d.ts.map +1 -1
  142. package/dist/product-set/product/quantity/ProductQuantityControl.js +6 -0
  143. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.d.ts.map +1 -1
  144. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.js +4 -1
  145. package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
  146. package/dist/product-set/product-category/ProductCategoryControl.js +12 -0
  147. package/dist/product-set/utils/index.d.ts +88 -0
  148. package/dist/product-set/utils/index.d.ts.map +1 -1
  149. package/dist/product-set/utils/index.js +19 -1
  150. package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
  151. package/dist/recurrence-input/RecurrenceEndInput.js +3 -0
  152. package/dist/recurrence-input/RecurrenceInput.d.ts.map +1 -1
  153. package/dist/recurrence-input/RecurrenceInput.js +7 -3
  154. package/dist/recurring-date-picker-input/RecurrenceEndInput.d.ts.map +1 -1
  155. package/dist/report/ReportRunnerModal/ReportRunnerModal.js +1 -0
  156. package/dist/resource/form/components/CapacityControl.d.ts.map +1 -1
  157. package/dist/resource/form/components/CapacityControl.js +3 -0
  158. package/dist/resource/form/components/SortControl.d.ts.map +1 -1
  159. package/dist/resource/form/components/SortControl.js +3 -0
  160. package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
  161. package/dist/sales/booking/results/components/ResultCard.js +0 -2
  162. package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
  163. package/dist/sales/coupon/control/CouponFormControl.js +21 -0
  164. package/dist/sales/coupon/utils/index.d.ts +2 -1
  165. package/dist/sales/coupon/utils/index.d.ts.map +1 -1
  166. package/dist/sales/life-time-sales/LifeTimeSalesChart.js +1 -0
  167. package/dist/sales/manual-booking/select-event/SelectEvent.js +1 -0
  168. package/dist/sales/manual-booking/select-menu/SelectMenu.js +1 -0
  169. package/dist/sales/manual-booking/summary/ManualBookingSummary.js +1 -0
  170. package/dist/setting/admin/AdminSettingForm.d.ts.map +1 -1
  171. package/dist/setting/admin/PaymentFeeForm.d.ts.map +1 -1
  172. package/dist/setting/admin/PaymentFeeForm.js +16 -1
  173. package/dist/setting/dashboard/DashboardSettingForm.d.ts.map +1 -1
  174. package/dist/setting/dashboard/DashboardSettingForm.js +4 -1
  175. package/dist/setting/dashboard/snippet-templates/card/SnippetTemplateCard.d.ts.map +1 -1
  176. package/dist/snippet/snippet-template/preview/Preview.d.ts.map +1 -1
  177. package/dist/snippet/snippet-template/preview/Preview.js +3 -1
  178. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  179. package/dist/static/CurrencyNumberInput.d.ts.map +1 -1
  180. package/dist/static/CurrencyNumberInput.js +3 -0
  181. package/dist/static/date-range-input/utils/index.d.ts +1 -1
  182. package/dist/static/date-range-input/utils/index.d.ts.map +1 -1
  183. package/dist/static/form-number-input/FormNumberInput.d.ts.map +1 -1
  184. package/dist/static/form-number-input/FormNumberInput.js +3 -0
  185. package/dist/static/loader/FullScreenLoader.d.ts +8 -0
  186. package/dist/static/loader/FullScreenLoader.d.ts.map +1 -0
  187. package/dist/static/loader/FullScreenLoader.js +41 -0
  188. package/dist/static/loader/LoaderIndicator.d.ts +2 -3
  189. package/dist/static/loader/LoaderIndicator.d.ts.map +1 -1
  190. package/dist/static/loader/LoaderIndicator.js +4 -2
  191. package/dist/static/loader/index.d.ts +1 -0
  192. package/dist/static/loader/index.d.ts.map +1 -1
  193. package/dist/static/number-input/NumberInput.d.ts.map +1 -1
  194. package/dist/static/number-input/NumberInput.js +3 -0
  195. package/dist/styles/availability-indicator/AvailabilityIndicator.scss +1 -4
  196. package/dist/styles/date-time-button/DateTimeButton.scss +7 -0
  197. package/dist/styles/events/EditEventModal.scss +2 -0
  198. package/dist/styles/iframe-events/Calendar.scss +1 -1
  199. package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  200. package/dist/styles/iframe-page/Page.scss +16 -0
  201. package/dist/styles/iframe-page/PageBody.scss +4 -0
  202. package/dist/styles/modals/Modals.scss +16 -0
  203. package/dist/styles/product-set/EditProductSetElement.scss +1 -0
  204. package/dist/styles/product-set/ProductSetForm.scss +13 -3
  205. package/dist/styles/ryft-payment-form/RyftPaymentForm.scss +2 -4
  206. package/dist/styles/sales/BookingResults.scss +1 -1
  207. package/dist/styles/sales/ManualBooking.scss +6 -0
  208. package/dist/styles/static/Loader.scss +9 -0
  209. package/dist/styles/themes/bookedit/index.scss +19 -0
  210. package/dist/zone/form/components/GameDurationControl.d.ts.map +1 -1
  211. package/dist/zone/form/components/GameDurationControl.js +3 -0
  212. package/dist/zone/form/components/SortControl.d.ts.map +1 -1
  213. package/dist/zone/form/components/SortControl.js +3 -0
  214. package/package.json +8 -6
  215. package/src/affiliate/form/AffiliateForm.tsx +1 -0
  216. package/src/auth/Layout/AuthNavComponent.tsx +4 -0
  217. package/src/auth/Login/LoginComponent.tsx +3 -1
  218. package/src/auth/Login/LoginFormComponent.tsx +2 -0
  219. package/src/auth/Register/RegisterComponent.tsx +2 -0
  220. package/src/auth/Register/RegisterFormComponent.tsx +4 -0
  221. package/src/auth/ResetPassword/ResetPasswordFormComponent.tsx +4 -0
  222. package/src/auth/Router.tsx +2 -0
  223. package/src/calendar/Calendar.stories.tsx +2 -2
  224. package/src/calendar/utils/index.ts +1 -1
  225. package/src/events/edit-event-modal/IntervalInput.tsx +13 -3
  226. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +24 -2
  227. package/src/events/edit-event-modal/component/SaleDeadline/SaleDeadline.tsx +9 -7
  228. package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +0 -1
  229. package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.tsx +9 -1
  230. package/src/events/event-card/utils.ts +10 -9
  231. package/src/events/event-statistic-modal/EventStatisticModal.tsx +3 -1
  232. package/src/events/event-statistic-modal/hooks/useTableData.tsx +2 -1
  233. package/src/events/event-statistic-modal/utils/index.ts +2 -1
  234. package/src/events/event-venue-map/EventVenueMap.tsx +1 -0
  235. package/src/events/event-venue-map/hooks/useCanvasSize.ts +5 -1
  236. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetForm.tsx +212 -0
  237. package/src/iframe/ProductWithModifierModal/ModifierSetModal/ProductWithModifierSetModal.tsx +76 -0
  238. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ModifierSetControll.tsx +393 -0
  239. package/src/iframe/ProductWithModifierModal/ModifierSetModal/controll/ProductControll.tsx +98 -0
  240. package/src/iframe/ProductWithModifierModal/ModifierSetModal/index.ts +1 -0
  241. package/src/iframe/ProductWithModifierModal/index.ts +1 -0
  242. package/src/iframe/ProductWithModifierModal/utils.ts +29 -0
  243. package/src/iframe/event/ticket-description/TicketDescription.tsx +11 -4
  244. package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +2 -0
  245. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +24 -2
  246. package/src/iframe/order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.tsx +13 -11
  247. package/src/iframe/order-process/components/BookingSummary/types/index.ts +1 -0
  248. package/src/iframe/order-process/components/BookingSummary/utils/index.ts +45 -4
  249. package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +155 -75
  250. package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.tsx +9 -0
  251. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +58 -1
  252. package/src/iframe/order-process/components/CategoryProduct/components/ProductWithModifier/ProductWithModifier.tsx +86 -0
  253. package/src/iframe/order-process/components/CategoryProduct/constants.ts +1 -0
  254. package/src/iframe/order-process/components/utils/useOnWindowUnmount.ts +25 -0
  255. package/src/iframe/page/components/PageBody/hooks/useResizePageBody.ts +1 -2
  256. package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +84 -14
  257. package/src/iframe/payment/order-items-table/utils/index.ts +23 -0
  258. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +3 -2
  259. package/src/iframe/payment/payment-page/PaymentPage.tsx +8 -10
  260. package/src/iframe/payment/payment-status-page/PaymentStatusPage.tsx +19 -20
  261. package/src/iframe/ryft/utils/ryft-form.ts +6 -5
  262. package/src/layout/DropDown.tsx +1 -1
  263. package/src/notification/email-template/card/EmailTemplateCard.tsx +2 -0
  264. package/src/notification/email-template/control/EmailTemplateControl.tsx +1 -0
  265. package/src/notification/sms-template/card/SmsTemplateCard.tsx +2 -0
  266. package/src/product-set/control/DateAndRecurrenceInput.tsx +3 -4
  267. package/src/product-set/control/DateInput.tsx +3 -4
  268. package/src/product-set/form/ProductSetForm.tsx +17 -5
  269. package/src/product-set/form/ProductZonesControl.tsx +1 -4
  270. package/src/product-set/form/ProductsControl.tsx +33 -15
  271. package/src/product-set/form/SubProductsControl.tsx +0 -3
  272. package/src/product-set/form/VenueMapsControl.tsx +1 -4
  273. package/src/product-set/form/context.tsx +5 -0
  274. package/src/product-set/product/ProductControl.tsx +37 -2
  275. package/src/product-set/product/advanced-options/AdvancedOptions.tsx +1 -1
  276. package/src/product-set/product/booking-management/ProductBookingManagementControl.tsx +2 -0
  277. package/src/product-set/product/deposit/ProductDepositControl.tsx +1 -0
  278. package/src/product-set/product/duration/ProductDurationControl.tsx +2 -0
  279. package/src/product-set/product/price/ProductPriceControl.tsx +1 -0
  280. package/src/product-set/product/quantity/ProductQuantityConstantControl.tsx +2 -0
  281. package/src/product-set/product/quantity/ProductQuantityControl.tsx +2 -0
  282. package/src/product-set/product/quantity/ProductQuantityRechargingControl.tsx +1 -0
  283. package/src/product-set/product-category/ProductCategoryControl.tsx +4 -0
  284. package/src/product-set/product-zone/ProductZoneControl.tsx +1 -1
  285. package/src/product-set/utils/index.ts +19 -0
  286. package/src/recurrence-input/RecurrenceEndInput.tsx +1 -0
  287. package/src/recurrence-input/RecurrenceInput.tsx +9 -6
  288. package/src/recurring-date-picker-input/RecurrenceEndInput.tsx +1 -0
  289. package/src/resource/form/components/CapacityControl.tsx +1 -0
  290. package/src/resource/form/components/SortControl.tsx +1 -0
  291. package/src/sales/booking/results/components/ResultCard.tsx +0 -2
  292. package/src/sales/coupon/control/CouponFormControl.tsx +7 -0
  293. package/src/sales/coupon/utils/index.ts +5 -3
  294. package/src/setting/admin/AdminSettingForm.tsx +4 -0
  295. package/src/setting/admin/PaymentFeeForm.tsx +5 -0
  296. package/src/setting/dashboard/DashboardSettingForm.tsx +1 -0
  297. package/src/setting/dashboard/snippet-templates/card/SnippetTemplateCard.tsx +2 -0
  298. package/src/snippet/snippet-template/preview/Preview.tsx +1 -2
  299. package/src/sortable-tree/SortableTreeItem.tsx +1 -6
  300. package/src/static/CurrencyNumberInput.tsx +1 -0
  301. package/src/static/date-range-input/utils/index.ts +1 -1
  302. package/src/static/form-number-input/FormNumberInput.tsx +1 -0
  303. package/src/static/loader/FullScreenLoader.tsx +16 -0
  304. package/src/static/loader/LoaderIndicator.tsx +6 -3
  305. package/src/static/loader/index.ts +1 -0
  306. package/src/static/number-input/NumberInput.tsx +1 -0
  307. package/src/styles/availability-indicator/AvailabilityIndicator.scss +1 -4
  308. package/src/styles/date-time-button/DateTimeButton.scss +7 -0
  309. package/src/styles/events/EditEventModal.scss +2 -0
  310. package/src/styles/iframe-events/Calendar.scss +1 -1
  311. package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  312. package/src/styles/iframe-page/Page.scss +16 -0
  313. package/src/styles/iframe-page/PageBody.scss +4 -0
  314. package/src/styles/modals/Modals.scss +16 -0
  315. package/src/styles/product-set/EditProductSetElement.scss +1 -0
  316. package/src/styles/product-set/ProductSetForm.scss +13 -3
  317. package/src/styles/ryft-payment-form/RyftPaymentForm.scss +2 -4
  318. package/src/styles/sales/BookingResults.scss +1 -1
  319. package/src/styles/sales/ManualBooking.scss +6 -0
  320. package/src/styles/static/Loader.scss +9 -0
  321. package/src/styles/themes/bookedit/index.scss +19 -0
  322. package/src/zone/form/components/GameDurationControl.tsx +1 -0
  323. package/src/zone/form/components/SortControl.tsx +1 -0
  324. package/yarn.lock +201 -200
@@ -105,3 +105,10 @@
105
105
  font-weight: 300;
106
106
  color: $snippet-calendar-button-font-color;
107
107
  }
108
+
109
+ .modifier-price {
110
+ font-size: 1rem;
111
+ line-height: 1.03rem;
112
+ font-weight: 500;
113
+ color: $snippet-calendar-button-font-color;
114
+ }
@@ -37,6 +37,8 @@
37
37
  .edit-step-dialog {
38
38
  .custom-checkbox {
39
39
  align-items: unset;
40
+ position: relative;
41
+ z-index: 0;
40
42
  .form-check-label {
41
43
  margin-top: 1rem;
42
44
  }
@@ -74,7 +74,7 @@
74
74
  .calendar-dates-wrapper {
75
75
  .calendar-dates {
76
76
  display: grid;
77
- grid-template-columns: repeat(7, 1fr);
77
+ grid-template-columns: repeat(7, auto);
78
78
  grid-gap: 0.5rem 1rem;
79
79
  overflow-x: auto;
80
80
  }
@@ -15,7 +15,7 @@ body[bkdt-scrollable='false'] .bkdt-mask {
15
15
  left: 0;
16
16
  width: 100%;
17
17
  height: 100%;
18
- z-index: 1000000;
18
+ z-index: 2147483646;
19
19
  background-color: rgba(0, 0, 0, 0.5);
20
20
  display: none;
21
21
  }
@@ -24,7 +24,7 @@ body[bkdt-scrollable='false'] .bkdt-mask {
24
24
  position: fixed;
25
25
  top: 0;
26
26
  left: 0;
27
- z-index: 1000001;
27
+ z-index: 2147483647;
28
28
  display: none;
29
29
  width: 100%;
30
30
  height: 100%;
@@ -24,6 +24,22 @@
24
24
  min-width: auto;
25
25
  }
26
26
 
27
+ .manual-booking-form-modal {
28
+ width: 40vw !important;
29
+ left: 60vh;
30
+
31
+ .modal-content {
32
+ height: 96vh;
33
+ margin-left: auto;
34
+ }
35
+
36
+ @include media-breakpoint-down(sm) {
37
+ width: 100vw !important;
38
+ left: 0;
39
+ top: 10% !important;
40
+ }
41
+ }
42
+
27
43
  .header-block {
28
44
  margin-bottom: 1rem;
29
45
  }
@@ -10,6 +10,8 @@
10
10
  height: calc(100svh - 5.5rem);
11
11
  }
12
12
 
13
+
14
+
13
15
  .left-block {
14
16
  flex: 1;
15
17
  align-items: stretch;
@@ -25,6 +27,8 @@
25
27
  min-height: calc(100svh - 6.5rem);
26
28
  }
27
29
 
30
+
31
+
28
32
  .navigation {
29
33
  font-size: 1.125rem;
30
34
  font-weight: 500;
@@ -6,6 +6,22 @@
6
6
  z-index: 1080;
7
7
  }
8
8
 
9
+ .manual-booking-form-modal {
10
+ width: 40vw !important;
11
+ left: 66vw;
12
+
13
+ .modal-content {
14
+ min-height: 95vh;
15
+ margin-left: auto;
16
+ }
17
+
18
+ @include media-breakpoint-down(sm) {
19
+ width: 100vw !important;
20
+ left: 0;
21
+ top: 10% !important;
22
+ }
23
+ }
24
+
9
25
  .confirm-modal {
10
26
  z-index: 1081;
11
27
  }
@@ -90,6 +90,7 @@
90
90
  }
91
91
  label.btn-link {
92
92
  width: 4.5rem;
93
+ z-index: 0;
93
94
  display: flex;
94
95
  justify-content: center;
95
96
  span {
@@ -1,5 +1,4 @@
1
1
  .product-set-form {
2
-
3
2
  input,
4
3
  textarea,
5
4
  select,
@@ -59,6 +58,11 @@
59
58
  font-weight: 600;
60
59
  }
61
60
 
61
+ .modifier-badge {
62
+ font-size: 0.5rem;
63
+ font-weight: 400;
64
+ }
65
+
62
66
  .step-badge {
63
67
  background-color: #ffdbdb;
64
68
  color: #d52902;
@@ -82,6 +86,12 @@
82
86
  background-color: #e9f5ea;
83
87
  color: #269b36;
84
88
  }
89
+
90
+ .modifier-badge {
91
+ background-color: #e9f5ea;
92
+ color: #269b36;
93
+ height: 1rem;
94
+ }
85
95
  }
86
96
 
87
97
  .product-set-mobile-footer {
@@ -200,8 +210,8 @@
200
210
 
201
211
  .sortable-tree-item-toggle {
202
212
  .product-zone-badge {
203
- background-color: #EFE9F5;
204
- color: #84269B;
213
+ background-color: #efe9f5;
214
+ color: #84269b;
205
215
  font-size: 0.875rem;
206
216
  font-weight: 600;
207
217
  }
@@ -102,7 +102,6 @@
102
102
  }
103
103
 
104
104
  .ryft-payment-form {
105
-
106
105
  .form-disable-box {
107
106
  display: none;
108
107
  position: absolute;
@@ -180,11 +179,10 @@
180
179
  .form-disable-box {
181
180
  top: 20rem;
182
181
  }
183
- }
182
+ }
184
183
  }
185
184
 
186
185
  @include media-breakpoint-up(md) {
187
-
188
186
  .ryft-payment-form,
189
187
  .form-disable-box {
190
188
  height: 50%;
@@ -213,4 +211,4 @@
213
211
  .divider {
214
212
  display: none !important;
215
213
  }
216
- }
214
+ }
@@ -5,7 +5,7 @@
5
5
  flex-wrap: wrap;
6
6
 
7
7
  .result-card {
8
- height: 14.25rem;
8
+ height: 14rem;
9
9
  border: 1px solid $gray-400;
10
10
  max-width: calc(50% - 0.75rem);
11
11
  flex: 0 0 calc(50% - 0.75rem);
@@ -234,6 +234,12 @@
234
234
  margin-bottom: 2rem;
235
235
  }
236
236
 
237
+ .quantity-container-product {
238
+ display: flex;
239
+ justify-content: center;
240
+ margin: 1rem;
241
+ }
242
+
237
243
  .save-btn:disabled {
238
244
  background-color: #fafafa;
239
245
  border: none;
@@ -27,6 +27,15 @@
27
27
  }
28
28
  }
29
29
 
30
+ .fullscreen-loader {
31
+ width: 100vw;
32
+ height: 100vh;
33
+ position: fixed;
34
+ z-index: 5000;
35
+ top: 0;
36
+ left: 0;
37
+ }
38
+
30
39
  .payment-loader {
31
40
  position: absolute;
32
41
  top: 50%;
@@ -51,6 +51,25 @@
51
51
  border-bottom: 1px solid #f0f0f0;
52
52
  }
53
53
 
54
+ .modifier-header {
55
+ background-color: color('white');
56
+ padding: 0 2.5rem;
57
+ z-index: 2;
58
+ margin-top: 1rem;
59
+ min-height: 2rem;
60
+ }
61
+
62
+ .modifier-container {
63
+ background-color: color('white');
64
+ padding-bottom: 1rem;
65
+ }
66
+
67
+ .modifier-set-container {
68
+ background-color: color('white');
69
+ border-bottom: 2px solid #f0f0f0;
70
+ padding-bottom: 1rem;
71
+ }
72
+
54
73
  .header-user-image {
55
74
  width: 3rem;
56
75
  height: 3rem;
@@ -1 +1 @@
1
- {"version":3,"file":"GameDurationControl.d.ts","sourceRoot":"","sources":["../../../../src/zone/form/components/GameDurationControl.tsx"],"names":[],"mappings":"AAOA,KAAK,wBAAwB,GAAG;IAC9B,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,mBAAmB,mBAE7B,wBAAwB,4CA+B1B,CAAA"}
1
+ {"version":3,"file":"GameDurationControl.d.ts","sourceRoot":"","sources":["../../../../src/zone/form/components/GameDurationControl.tsx"],"names":[],"mappings":"AAOA,KAAK,wBAAwB,GAAG;IAC9B,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,mBAAmB,mBAE7B,wBAAwB,4CAgC1B,CAAA"}
@@ -77,6 +77,9 @@ var GameDurationControl = function(param) {
77
77
  required: false,
78
78
  min: 1
79
79
  })), {
80
+ onWheel: function(event) {
81
+ return event.currentTarget.blur();
82
+ },
80
83
  placeholder: t('Design:duration'),
81
84
  isInvalid: Boolean(errors.defaultDuration),
82
85
  disabled: isLoading
@@ -1 +1 @@
1
- {"version":3,"file":"SortControl.d.ts","sourceRoot":"","sources":["../../../../src/zone/form/components/SortControl.tsx"],"names":[],"mappings":"AAOA,KAAK,gBAAgB,GAAG;IACtB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,kBAAmB,gBAAgB,4CAmC1D,CAAA"}
1
+ {"version":3,"file":"SortControl.d.ts","sourceRoot":"","sources":["../../../../src/zone/form/components/SortControl.tsx"],"names":[],"mappings":"AAOA,KAAK,gBAAgB,GAAG;IACtB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,kBAAmB,gBAAgB,4CAoC1D,CAAA"}
@@ -77,6 +77,9 @@ var SortControl = function(param) {
77
77
  required: false,
78
78
  min: 1
79
79
  })), {
80
+ onWheel: function(event) {
81
+ return event.currentTarget.blur();
82
+ },
80
83
  placeholder: t('Design:ordering'),
81
84
  isInvalid: Boolean(errors.sort),
82
85
  disabled: isLoading
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@licklist/design",
3
- "version": "0.71.23",
3
+ "version": "0.72.0-dev.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+ssh://git@bitbucket.org/artelogicsoft/licklist_design.git"
@@ -42,9 +42,9 @@
42
42
  ]
43
43
  },
44
44
  "peerDependencies": {
45
- "@licklist/core": "0.32.7",
45
+ "@licklist/core": "0.31.2-dev.14",
46
46
  "@licklist/eslint-config": "0.5.6",
47
- "@licklist/plugins": "0.35.7",
47
+ "@licklist/plugins": "0.35.1-dev.8",
48
48
  "lodash": "4.17.21",
49
49
  "luxon": "3.5.0",
50
50
  "react": "17.0.2",
@@ -61,9 +61,9 @@
61
61
  "@dnd-kit/utilities": "2.0.0",
62
62
  "@fortawesome/fontawesome-svg-core": "1.2.34",
63
63
  "@fortawesome/free-solid-svg-icons": "5.15.2",
64
- "@licklist/core": "0.32.7",
64
+ "@licklist/core": "0.31.2-dev.14",
65
65
  "@licklist/eslint-config": "0.5.6",
66
- "@licklist/plugins": "0.35.7",
66
+ "@licklist/plugins": "0.35.1-dev.8",
67
67
  "@mantine/core": "6.0.22",
68
68
  "@mantine/hooks": "6.0.22",
69
69
  "@mdx-js/react": "1.6.22",
@@ -202,8 +202,10 @@
202
202
  "yarn tsc"
203
203
  ]
204
204
  },
205
+ "packageManager": "yarn@4.4.0",
205
206
  "volta": {
206
207
  "node": "20.9.0",
207
208
  "yarn": "4.4.0"
208
- }
209
+ },
210
+ "stableVersion": "0.71.4-dev.1"
209
211
  }
@@ -76,6 +76,7 @@ export const AffiliateForm = ({
76
76
  const copyToClipboard = () =>
77
77
  // eslint-disable-next-line consistent-return
78
78
  window.navigator.clipboard.writeText(formValues.link)
79
+
79
80
  return (
80
81
  <FormProvider {...form}>
81
82
  <Form onSubmit={form.handleSubmit(handleSubmit)}>
@@ -8,11 +8,15 @@ function AuthNavComponent() {
8
8
 
9
9
  return (
10
10
  <Router>
11
+ {/* TODO fix issue react router types
12
+ @ts-expect-error */}
11
13
  <Link to='/login'>
12
14
  <StyledButton size='sm' className='rounded-pill mr-2'>
13
15
  {t('login')}
14
16
  </StyledButton>
15
17
  </Link>
18
+ {/* TODO fix issue react router types
19
+ @ts-expect-error */}
16
20
  <Link to='/register'>
17
21
  <StyledButton
18
22
  size='sm'
@@ -44,7 +44,7 @@ const LoginComponent = ({
44
44
  const handleError = (error: any) => {
45
45
  notification.danger({
46
46
  title: 'Error',
47
- message: error.message,
47
+ message: error?.response?.data?.message || error.message,
48
48
  })
49
49
  }
50
50
 
@@ -112,6 +112,8 @@ const LoginComponent = ({
112
112
  {!hideSignUpLink && (
113
113
  <h6 className='text-center'>
114
114
  <Trans t={t} i18nKey='loginPromo'>
115
+ {/* TODO fix issue react router types
116
+ @ts-expect-error */}
115
117
  Don&apos;t have account? <Link to='/register'>Sign up</Link>.
116
118
  </Trans>
117
119
  </h6>
@@ -147,6 +147,8 @@ function LoginFormComponent(props: LoginFormComponentProps) {
147
147
  <p className='text-center mb-0 mt-3'>
148
148
  <Trans t={t} i18nKey='User:resetPromo'>
149
149
  Forgot your password?{' '}
150
+ {/* TODO fix issue react router types
151
+ @ts-expect-error */}
150
152
  <Link
151
153
  to='/forgot-password'
152
154
  className={[isLoading && 'disabled'].join(' ')}
@@ -105,6 +105,8 @@ function RegisterComponent({
105
105
  <h6 className='text-center'>
106
106
  <Trans t={t} i18nKey='registerPromo'>
107
107
  Fill out the form below to sign up for {{ name: t('bookedit') }}
108
+ {/* TODO fix issue react router types
109
+ @ts-expect-error */}
108
110
  . Already signed up? Then just <Link to='/login'>Log in</Link>.
109
111
  </Trans>
110
112
  </h6>
@@ -400,10 +400,14 @@ function RegisterFormComponent({
400
400
  <Trans t={t} i18nKey='User:agreementsPromo'>
401
401
  By creating an account, I agree to {{ name: t('User:bookedit') }}
402
402
  &apos;s{' '}
403
+ {/* TODO fix issue react router types
404
+ @ts-expect-error */}
403
405
  <Link to='/terms' className={[isLoading && 'disabled'].join(' ')}>
404
406
  terms of service
405
407
  </Link>{' '}
406
408
  and{' '}
409
+ {/* TODO fix issue react router types
410
+ @ts-expect-error */}
407
411
  <Link to='/privacy' className={[isLoading && 'disabled'].join(' ')}>
408
412
  privacy policy
409
413
  </Link>
@@ -97,6 +97,8 @@ function ResetPasswordFormComponent(props: ResetPasswordFormComponentProps) {
97
97
  <p className='text-center mb-0 mt-3'>
98
98
  <Trans t={t} i18nKey='User:signinPromo'>
99
99
  Already a user?{' '}
100
+ {/* TODO fix issue react router types
101
+ @ts-expect-error */}
100
102
  <Link to='/login' className={[isLoading && 'disabled'].join(' ')}>
101
103
  Sign in
102
104
  </Link>
@@ -106,6 +108,8 @@ function ResetPasswordFormComponent(props: ResetPasswordFormComponentProps) {
106
108
  <p className='text-center mb-0 mt-3'>
107
109
  <Trans t={t} i18nKey='User:loginPromo'>
108
110
  Don&apos;t have an account?{' '}
111
+ {/* TODO fix issue react router types
112
+ @ts-expect-error */}
109
113
  <Link
110
114
  to='/register'
111
115
  className={[isLoading && 'disabled'].join(' ')}
@@ -29,6 +29,8 @@ function Router(props: RouterProps) {
29
29
  }
30
30
  }, [])
31
31
 
32
+ // TODO fix issue react router types
33
+ // @ts-expect-error
32
34
  return <BrowserRouter history={history}>{children}</BrowserRouter>
33
35
  }
34
36
 
@@ -28,7 +28,7 @@ Default.args = {
28
28
  fromPrice: 'from £10',
29
29
  selectedDate: null,
30
30
  setSelectedDate: () => null,
31
- calendarDates: getMonthCalendarDates(now),
31
+ calendarDates: getMonthCalendarDates({ initialDate: now }),
32
32
  currentDate: now,
33
33
  getDateTimeButtonProps: () => ({
34
34
  resources: [],
@@ -50,7 +50,7 @@ Loading.args = {
50
50
  fromPrice: 'from £10',
51
51
  selectedDate: null,
52
52
  setSelectedDate: () => null,
53
- calendarDates: getMonthCalendarDates(now),
53
+ calendarDates: getMonthCalendarDates({ initialDate: now }),
54
54
  currentDate: now,
55
55
  getDateTimeButtonProps: () => ({
56
56
  resources: [],
@@ -3,7 +3,7 @@ import { DateTime, Interval } from 'luxon'
3
3
 
4
4
  type Builder = (args: {
5
5
  initialDate?: DateTime
6
- timeZone: TimeZone['name']
6
+ timeZone?: TimeZone['name']
7
7
  }) => DateTime[]
8
8
 
9
9
  export const getMonthCalendarDates: Builder = ({
@@ -17,6 +17,8 @@ interface IntervalInputProps {
17
17
  productSets?: ProductSet[]
18
18
  productSetId?: number
19
19
  disabled?: boolean
20
+ disabledRecurrent?: boolean
21
+ isCopyCreate?: boolean
20
22
  }
21
23
 
22
24
  export interface IntervalInputValues {
@@ -30,6 +32,8 @@ export function IntervalInput({
30
32
  editedProductSet,
31
33
  productSetId,
32
34
  productSets,
35
+ disabledRecurrent = false,
36
+ isCopyCreate = false
33
37
  }: IntervalInputProps) {
34
38
  const { t } = useTranslation(['Design', 'Validation'])
35
39
  const {
@@ -54,7 +58,6 @@ export function IntervalInput({
54
58
  const endDateInput = useRef<HTMLInputDateElement | null>(null)
55
59
 
56
60
  const updateEndDate = ({ target: { value: nextStartDate } }) => {
57
- setRecurrent(false)
58
61
  setValue('start', nextStartDate)
59
62
 
60
63
  if (
@@ -72,6 +75,13 @@ export function IntervalInput({
72
75
  // eslint-disable-next-line react-hooks/exhaustive-deps
73
76
  }, [editedProductSet])
74
77
 
78
+ useEffect(() => {
79
+ if (!isCopyCreate) return
80
+ setRecurrent(false)
81
+ setValue('rrule', null)
82
+ // eslint-disable-next-line react-hooks/exhaustive-deps
83
+ }, [isCopyCreate])
84
+
75
85
  useEffect(() => {
76
86
  if (!productSets) return
77
87
 
@@ -153,7 +163,7 @@ export function IntervalInput({
153
163
  onChange={({ target: { checked } }) => {
154
164
  onChangeRecurrent(checked)
155
165
  }}
156
- disabled={disabled || Boolean(editedProductSet)}
166
+ disabled={disabled || Boolean(editedProductSet) || disabledRecurrent}
157
167
  />
158
168
  {!recurrent && (
159
169
  <Form.Text muted>
@@ -178,7 +188,7 @@ export function IntervalInput({
178
188
  minDate={DateTime.fromISO(start)
179
189
  .plus({ day: 1 })
180
190
  .toFormat('yyyy-MM-dd')}
181
- disabled={disabled}
191
+ disabled={disabled || disabledRecurrent}
182
192
  />
183
193
  )}
184
194
  />
@@ -8,6 +8,7 @@ import {
8
8
  } from '@licklist/core/dist/DataMapper/Media/ImageDataMapper'
9
9
  import { useId } from '@react-aria/utils'
10
10
  import { Accordion, Button, Form, Modal } from 'react-bootstrap'
11
+ import { isEqual } from 'lodash'
11
12
  import { FormProvider, useForm, Controller } from 'react-hook-form'
12
13
  import { DateTime } from 'luxon'
13
14
  import { useTranslation } from 'react-i18next'
@@ -65,6 +66,8 @@ export interface EditEventFormProps extends HasPermissionProp {
65
66
  timeZone: string
66
67
  eventProductSet?: ProductSet
67
68
  overrideNameError?: string
69
+ disabledRecurrent?: boolean
70
+ isCopyCreate?: boolean
68
71
  }
69
72
 
70
73
  const eventImageTypes = {
@@ -87,6 +90,8 @@ export const EditEventForm = ({
87
90
  timeZone,
88
91
  eventProductSet,
89
92
  overrideNameError,
93
+ disabledRecurrent = false,
94
+ isCopyCreate = false,
90
95
  }: EditEventFormProps) => {
91
96
  const { t } = useTranslation(['Design', 'Validation'])
92
97
 
@@ -126,7 +131,7 @@ export const EditEventForm = ({
126
131
  const visible = watch('visible')
127
132
  const editedProductSet = watch('editedProductSet')
128
133
  const productSetId = watch('productSetId')
129
-
134
+ const rrule = watch('rrule')
130
135
  const {
131
136
  images,
132
137
  handleImageRemove,
@@ -135,6 +140,8 @@ export const EditEventForm = ({
135
140
  isCoverImagesLoading,
136
141
  } = useMultipleImages(initialImages)
137
142
 
143
+ const watchedValues = watch()
144
+
138
145
  const onErrorSubmit = (submitErrors) => {
139
146
  scrollToError(getFirstErrorKey(submitErrors))
140
147
  }
@@ -179,6 +186,18 @@ export const EditEventForm = ({
179
186
  // eslint-disable-next-line react-hooks/exhaustive-deps
180
187
  }, [])
181
188
 
189
+ const defaultExDate = defaultEventValues?.rrule?.includes('EXDATE')
190
+ ? defaultEventValues?.rrule?.split(';EXDATE=')[1]
191
+ : ''
192
+
193
+ useEffect(() => {
194
+ if (!defaultExDate || rrule?.includes('EXDATE')) return
195
+ rrule && setValue('rrule', rrule?.concat(`;EXDATE=${defaultExDate}`))
196
+ }, [defaultExDate, rrule])
197
+
198
+
199
+ const isChanged = !isEqual(watchedValues, sanitizeDefaultValues(defaultEventValues));
200
+
182
201
  return (
183
202
  <>
184
203
  <Dialog
@@ -273,7 +292,9 @@ export const EditEventForm = ({
273
292
  disabled={disabled}
274
293
  productSetId={productSetId}
275
294
  productSets={productSets}
295
+ disabledRecurrent={disabledRecurrent}
276
296
  editedProductSet={editedProductSet}
297
+ isCopyCreate={isCopyCreate}
277
298
  />
278
299
  {categories.length !== 0 && (
279
300
  <Form.Group>
@@ -416,6 +437,7 @@ export const EditEventForm = ({
416
437
  disabled={
417
438
  disabled ||
418
439
  formState.isSubmitting ||
440
+ !isChanged ||
419
441
  isImagesLoading ||
420
442
  isCoverImagesLoading
421
443
  }
@@ -462,7 +484,7 @@ const sanitizeDefaultValues = (
462
484
  visible: values?.visible ?? '',
463
485
  externalPaymentLink: values?.externalPaymentLink ?? '',
464
486
  productSetId: values?.productSetId,
465
- images: values?.images,
487
+ images: values?.images ?? [],
466
488
  saleDeadline: values?.saleDeadline,
467
489
  integrationUrl: values?.integrationUrl ?? '',
468
490
  recurrenceEndAt: values?.recurrenceEndAt ?? undefined,
@@ -28,11 +28,13 @@ export const DEADLINE_NAME = [
28
28
 
29
29
  export type DeadLineNameType = (typeof DEADLINE_NAME)[number]
30
30
 
31
- type SaleDeadlineType = {
32
- saleDeadline: null | number
33
- } | {
34
- [key: string] : null | number
35
- }
31
+ type SaleDeadlineType =
32
+ | {
33
+ saleDeadline: null | number
34
+ }
35
+ | {
36
+ [key: string]: null | number
37
+ }
36
38
 
37
39
  export const SaleDeadline = ({
38
40
  disabled = false,
@@ -52,8 +54,8 @@ export const SaleDeadline = ({
52
54
  const [deadlineType, setDeadlineType] = useState<DeadlineType>(
53
55
  SALE_DEADLINE_BEFORE_TYPE,
54
56
  )
55
-
56
- const saleDeadline = watch(deadLineCategory || SALE_DEADLINE_NAME)
57
+
58
+ const saleDeadline = watch(deadLineCategory || SALE_DEADLINE_NAME)
57
59
 
58
60
  useEffect(() => {
59
61
  if (onlyBefore) return
@@ -40,7 +40,6 @@ export const getDefaultValues = (
40
40
  ...product,
41
41
  subProducts: subProducts?.map(({ ...subProducts }) => ({
42
42
  ...subProducts,
43
- originalProductId: null,
44
43
  productCategoryId: undefined,
45
44
  })),
46
45
  productCategoryId: undefined,