@licklist/design 0.69.0 → 0.69.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 (510) hide show
  1. package/.prettierrc +5 -1
  2. package/dist/affiliate/form/AffiliateForm.d.ts.map +1 -1
  3. package/dist/auth/Login/LoginComponent.js +2 -1
  4. package/dist/calendar/components/CalendarButtons/CalendarButtons.d.ts.map +1 -1
  5. package/dist/calendar/components/CalendarButtons/CalendarButtons.js +35 -40
  6. package/dist/events/edit-event-modal/IntervalInput.js +1 -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 +26 -25
  9. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -1
  10. package/dist/events/edit-event-modal/utils/getDefaultProductSet.d.ts.map +1 -1
  11. package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +3 -2
  12. package/dist/iframe/activity-card/ActivityCard.d.ts +5 -4
  13. package/dist/iframe/activity-card/ActivityCard.d.ts.map +1 -1
  14. package/dist/iframe/activity-card/ActivityCard.js +52 -40
  15. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.d.ts.map +1 -1
  16. package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.js +13 -0
  17. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  18. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +2 -0
  19. package/dist/iframe/order-process/components/Timer/Timer.js +1 -1
  20. package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +1 -1
  21. package/dist/index.js +1 -0
  22. package/dist/layout/DropDown.d.ts +2 -1
  23. package/dist/layout/DropDown.d.ts.map +1 -1
  24. package/dist/modals/confirmation/ConfirmModal.d.ts +3 -1
  25. package/dist/modals/confirmation/ConfirmModal.d.ts.map +1 -1
  26. package/dist/modals/confirmation/ConfirmModal.js +172 -8
  27. package/dist/modals/dialog/Dialog.js +2 -2
  28. package/dist/notification/email-template/control/EmailTemplateControl.d.ts.map +1 -1
  29. package/dist/notification/email-template/control/EmailTemplateControl.js +3 -0
  30. package/dist/product-set/card/ProductSetCard.d.ts +6 -2
  31. package/dist/product-set/card/ProductSetCard.d.ts.map +1 -1
  32. package/dist/product-set/card/ProductSetCard.js +30 -11
  33. package/dist/product-set/control/DateInput.d.ts.map +1 -1
  34. package/dist/product-set/control/DateInput.js +2 -2
  35. package/dist/product-set/control/ProductSetControl.d.ts +4 -0
  36. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  37. package/dist/product-set/control/ProductSetControl.js +24 -3
  38. package/dist/product-set/control/ProductSetImageControl.d.ts +2 -0
  39. package/dist/product-set/control/ProductSetImageControl.d.ts.map +1 -0
  40. package/dist/product-set/control/ProductSetImageControl.js +279 -0
  41. package/dist/product-set/form/MobileFooter.d.ts.map +1 -1
  42. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  43. package/dist/product-set/form/ProductCategoriesControl.js +48 -2
  44. package/dist/product-set/form/ProductSetForm.d.ts +4 -1
  45. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  46. package/dist/product-set/form/ProductSetForm.js +64 -1
  47. package/dist/product-set/form/ProductSetNameControl.d.ts +6 -0
  48. package/dist/product-set/form/ProductSetNameControl.d.ts.map +1 -0
  49. package/dist/product-set/form/ProductSetNameControl.js +35 -0
  50. package/dist/product-set/form/ProductZonesControl.d.ts.map +1 -1
  51. package/dist/product-set/form/ProductZonesControl.js +0 -2
  52. package/dist/product-set/form/SelectCategoryModal.d.ts +12 -0
  53. package/dist/product-set/form/SelectCategoryModal.d.ts.map +1 -1
  54. package/dist/product-set/form/SelectCategoryModal.js +1 -1
  55. package/dist/product-set/form/SubProductsControl.d.ts.map +1 -1
  56. package/dist/product-set/form/SubProductsControl.js +0 -3
  57. package/dist/product-set/form/VenueMapsControl.d.ts.map +1 -1
  58. package/dist/product-set/form/VenueMapsControl.js +0 -3
  59. package/dist/product-set/form/index.d.ts +1 -0
  60. package/dist/product-set/form/index.d.ts.map +1 -1
  61. package/dist/product-set/product/ProductControl.d.ts.map +1 -1
  62. package/dist/product-set/product/booking-management/ProductBookingManagementControl.d.ts.map +1 -1
  63. package/dist/product-set/product/booking-management/ProductBookingManagementControl.js +6 -0
  64. package/dist/product-set/product/deposit/ProductDepositControl.d.ts.map +1 -1
  65. package/dist/product-set/product/deposit/ProductDepositControl.js +3 -0
  66. package/dist/product-set/product/duration/ProductDurationControl.d.ts.map +1 -1
  67. package/dist/product-set/product/duration/ProductDurationControl.js +6 -0
  68. package/dist/product-set/product/price/ProductPriceControl.d.ts.map +1 -1
  69. package/dist/product-set/product/price/ProductPriceControl.js +3 -0
  70. package/dist/product-set/product/quantity/ProductQuantityConstantControl.d.ts.map +1 -1
  71. package/dist/product-set/product/quantity/ProductQuantityConstantControl.js +6 -0
  72. package/dist/product-set/product/quantity/ProductQuantityControl.d.ts.map +1 -1
  73. package/dist/product-set/product/quantity/ProductQuantityControl.js +6 -0
  74. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.d.ts.map +1 -1
  75. package/dist/product-set/product/quantity/ProductQuantityRechargingControl.js +4 -1
  76. package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
  77. package/dist/product-set/product-category/ProductCategoryControl.js +12 -0
  78. package/dist/product-set/utils/index.d.ts +7 -0
  79. package/dist/product-set/utils/index.d.ts.map +1 -1
  80. package/dist/product-set/utils/index.js +10 -1
  81. package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
  82. package/dist/recurrence-input/RecurrenceEndInput.js +3 -0
  83. package/dist/recurring-date-picker-input/RecurrenceEndInput.d.ts.map +1 -1
  84. package/dist/recurring-date-picker-input/utils.js +6 -4
  85. package/dist/resource/form/components/CapacityControl.d.ts.map +1 -1
  86. package/dist/resource/form/components/CapacityControl.js +3 -0
  87. package/dist/resource/form/components/SortControl.d.ts.map +1 -1
  88. package/dist/resource/form/components/SortControl.js +3 -0
  89. package/dist/root.css +51 -51
  90. package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
  91. package/dist/sales/booking/results/components/ResultCard.js +0 -2
  92. package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
  93. package/dist/sales/coupon/control/CouponFormControl.js +21 -0
  94. package/dist/sales/manual-booking/search-user/SearchUser.js +1 -1
  95. package/dist/setting/admin/PaymentFeeForm.d.ts.map +1 -1
  96. package/dist/setting/admin/PaymentFeeForm.js +16 -1
  97. package/dist/setting/dashboard/DashboardSettingForm.d.ts.map +1 -1
  98. package/dist/setting/dashboard/DashboardSettingForm.js +4 -1
  99. package/dist/snippet/snippet-template/preview/Preview.d.ts.map +1 -1
  100. package/dist/snippet/snippet-template/preview/Preview.js +6 -0
  101. package/dist/sortable-tree/SortableTreeItem.d.ts +2 -1
  102. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  103. package/dist/sortable-tree/SortableTreeItem.js +10 -4
  104. package/dist/static/CurrencyNumberInput.d.ts.map +1 -1
  105. package/dist/static/CurrencyNumberInput.js +3 -0
  106. package/dist/static/form-number-input/FormNumberInput.d.ts.map +1 -1
  107. package/dist/static/form-number-input/FormNumberInput.js +3 -0
  108. package/dist/static/number-input/NumberInput.d.ts.map +1 -1
  109. package/dist/static/number-input/NumberInput.js +3 -0
  110. package/dist/styles/activity-card/{GridActivitiesCard.scss → ActivitiesCard.scss} +19 -5
  111. package/dist/styles/activity-card/ListActivitiesCard.scss +12 -42
  112. package/dist/styles/activity-card/_index.scss +1 -1
  113. package/dist/styles/iframe-events/Calendar.scss +0 -1
  114. package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  115. package/dist/styles/product-set/ProductSetForm.scss +22 -0
  116. package/dist/styles/sales/BookingResults.scss +1 -1
  117. package/dist/tiptap-editor/TipTapMenu/extensions/constants.d.ts.map +1 -1
  118. package/dist/tiptap-editor/TipTapMenu/extensions/constants.js +1 -1
  119. package/dist/tiptap-editor/TipTapMenu/extensions/utils.js +1 -1
  120. package/dist/typeahead/Typeahead.d.ts +5 -1
  121. package/dist/typeahead/Typeahead.d.ts.map +1 -1
  122. package/dist/typeahead/Typeahead.js +9 -2
  123. package/dist/zone/form/components/GameDurationControl.d.ts.map +1 -1
  124. package/dist/zone/form/components/GameDurationControl.js +3 -0
  125. package/dist/zone/form/components/SortControl.d.ts.map +1 -1
  126. package/dist/zone/form/components/SortControl.js +3 -0
  127. package/package.json +6 -5
  128. package/postcss.config.cjs +2 -2
  129. package/src/affiliate/card/AffiliateCard.tsx +15 -15
  130. package/src/affiliate/form/AffiliateControl.tsx +8 -8
  131. package/src/affiliate/form/AffiliateForm.tsx +6 -5
  132. package/src/auth/AccessDenied/AccessDenied.tsx +8 -8
  133. package/src/auth/ChangePassword/ChangePasswordComponent.tsx +4 -4
  134. package/src/auth/ChangePassword/ChangePasswordFormComponent.tsx +14 -14
  135. package/src/auth/Layout/AuthNavComponent.tsx +6 -6
  136. package/src/auth/Layout/UserNavComponent.tsx +2 -2
  137. package/src/auth/Layout/UserNavDropDown.tsx +1 -1
  138. package/src/auth/Login/LoginComponent.tsx +9 -9
  139. package/src/auth/Login/LoginFormComponent.tsx +15 -15
  140. package/src/auth/Logout/Logout.stories.tsx +2 -2
  141. package/src/auth/Register/BirthDateFormComponent.tsx +17 -17
  142. package/src/auth/Register/RegisterComponent.tsx +7 -7
  143. package/src/auth/Register/RegisterFormComponent.tsx +56 -56
  144. package/src/auth/ResetPassword/ResetPasswordComponent.tsx +3 -3
  145. package/src/auth/ResetPassword/ResetPasswordFormComponent.tsx +13 -13
  146. package/src/auth/Social/SocialCallbackComponent.tsx +3 -3
  147. package/src/auth/Social/SocialFormComponent.tsx +4 -4
  148. package/src/availability-indicator/AvailabilityIndicator.tsx +1 -1
  149. package/src/calendar/Calendar.tsx +2 -2
  150. package/src/calendar/components/CalendarButtons/CalendarButtons.tsx +38 -37
  151. package/src/calendar/components/CalendarDates/CalendarDates.tsx +2 -2
  152. package/src/calendar/components/CalendarSelect/CalendarSelect.tsx +2 -2
  153. package/src/calendar/components/CalendarWeekdays/CalendarWeekdays.tsx +2 -2
  154. package/src/collapsible-input-group/CollapsibleInputGroup.tsx +6 -6
  155. package/src/custom-fields/CustomFields.stories.tsx +1 -1
  156. package/src/custom-fields/field/FieldItem.tsx +1 -1
  157. package/src/custom-fields/field/SelectFieldModal.tsx +4 -4
  158. package/src/custom-fields/field-set/components/CustomFieldSet/CustomFieldSet.tsx +8 -8
  159. package/src/custom-fields/forms/DropdownForm.tsx +16 -16
  160. package/src/custom-fields/forms/TextInputForm.tsx +6 -6
  161. package/src/customers/components/filter/CustomerFilter.tsx +3 -3
  162. package/src/date-time-button/DateContent.tsx +1 -1
  163. package/src/date-time-button/DateTimeButton.tsx +2 -2
  164. package/src/error/ErrorFallback.tsx +1 -1
  165. package/src/events/edit-event-modal/IntervalInput.tsx +15 -15
  166. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.stories.tsx +2 -2
  167. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +24 -24
  168. package/src/events/edit-event-modal/component/ProductSetShortForm/ProductSetShortForm.tsx +3 -3
  169. package/src/events/edit-event-modal/component/SaleDeadline/SaleDeadline.tsx +11 -11
  170. package/src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx +85 -88
  171. package/src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx +5 -5
  172. package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +2 -1
  173. package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.stories.tsx +1 -1
  174. package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.tsx +16 -16
  175. package/src/events/event-card/EventCard.stories.tsx +5 -5
  176. package/src/events/event-card/EventCard.tsx +30 -30
  177. package/src/events/event-card/EventCardSkeleton.tsx +10 -10
  178. package/src/events/event-statistic-modal/EventStatisticModal.stories.tsx +1 -1
  179. package/src/events/event-statistic-modal/EventStatisticModal.tsx +8 -8
  180. package/src/events/event-venue-map/components/Dropdown/Dropdown.tsx +1 -1
  181. package/src/events/event-venue-map/components/Dropdown/components/DropdownWrapper/DropdownWrapper.tsx +3 -3
  182. package/src/events/event-venue-map/components/Dropdown/components/ProductsControl/ProductsControl.tsx +5 -5
  183. package/src/events/event-venue-map/components/Dropdown/components/SelectControl/SelectControl.tsx +10 -10
  184. package/src/events/event-venue-map/components/MapPoint/components/DeleteIcon/DeleteIcon.tsx +1 -1
  185. package/src/events/event-venue-map/components/MapPoint/components/EditIcon/EditIcon.tsx +1 -1
  186. package/src/events/event-venue-map/components/MapPoint/components/PointIcon/PointIcon.tsx +2 -2
  187. package/src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx +1 -1
  188. package/src/events/event-venue-map/components/Scrollbars/Scrollbars.tsx +5 -5
  189. package/src/events/event-venue-map/components/VenueMap/VenueMap.tsx +3 -3
  190. package/src/events/event-venue-map/components/ZoomButtons/ZoomButtons.tsx +4 -4
  191. package/src/file-upload/FilePreview.tsx +8 -8
  192. package/src/file-upload/FileUpload.tsx +8 -8
  193. package/src/header/BookeditHeader.tsx +1 -1
  194. package/src/header/Header.stories.tsx +16 -16
  195. package/src/header/Header.tsx +11 -11
  196. package/src/header/LicklistHeader.tsx +1 -1
  197. package/src/header/elements/CompanySelector.tsx +6 -6
  198. package/src/help/example/Example.tsx +12 -12
  199. package/src/help/popover/HelpPopover.tsx +5 -5
  200. package/src/iframe/activity-card/ActivityCard.tsx +38 -27
  201. package/src/iframe/back-button/BackButton.tsx +3 -3
  202. package/src/iframe/custom-fields/components/CustomDateField.stories.tsx +1 -1
  203. package/src/iframe/custom-fields/components/CustomDateField.tsx +7 -7
  204. package/src/iframe/event/event-booking-form/EventBookingForm.tsx +14 -14
  205. package/src/iframe/event/event-booking-products/EventBookingProducts.tsx +3 -3
  206. package/src/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.tsx +10 -10
  207. package/src/iframe/event/event-booking-view/EventBookingView.tsx +1 -1
  208. package/src/iframe/event/event-card/IframeEventCard.stories.tsx +6 -6
  209. package/src/iframe/event/event-card/IframeEventCardSkeleton.tsx +20 -20
  210. package/src/iframe/event/event-card/IframeEventCards.stories.tsx +2 -2
  211. package/src/iframe/event/event-description/EventDescription.stories.tsx +3 -3
  212. package/src/iframe/event/event-description/EventDescription.tsx +10 -10
  213. package/src/iframe/event/event-navigation-footer/EventNavigationFooter.tsx +6 -6
  214. package/src/iframe/event/event-order-short-summary/EventOrderShortSummary.tsx +2 -2
  215. package/src/iframe/event/event-order-short-summary/components/Summary/Summary.tsx +4 -4
  216. package/src/iframe/event/event-order-summary/EventOrderSummary.stories.tsx +1 -1
  217. package/src/iframe/event/event-order-summary/EventOrderSummary.tsx +5 -5
  218. package/src/iframe/event/event-product-sets/EventProductSets.stories.tsx +1 -1
  219. package/src/iframe/event/event-product-sets/EventProductSets.tsx +1 -1
  220. package/src/iframe/event/event-product-sets/components/EventProductSet.tsx +1 -1
  221. package/src/iframe/event/event-step-venue-map-zones/EventStepVenueMapZones.tsx +1 -1
  222. package/src/iframe/event/event-step-venue-map-zones/components/EventStepVenueMapZone.tsx +3 -3
  223. package/src/iframe/event/event-tables/EventTables.stories.tsx +1 -1
  224. package/src/iframe/event/event-tables/EventTables.tsx +5 -5
  225. package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +4 -4
  226. package/src/iframe/event/event-venue-map/IframeEventVenueMap.tsx +1 -1
  227. package/src/iframe/event/ticket-description/TicketDescription.stories.tsx +6 -6
  228. package/src/iframe/event/ticket-description/TicketDescription.tsx +7 -7
  229. package/src/iframe/external-modal/ExternalModal.tsx +7 -7
  230. package/src/iframe/order-process/components/BookingSummary/BookingSummary.stories.tsx +8 -8
  231. package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +23 -23
  232. package/src/iframe/order-process/components/BookingSummary/components/BookingSummaryAccordion/BookingSummaryAccordion.tsx +1 -1
  233. package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +6 -6
  234. package/src/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.tsx +3 -3
  235. package/src/iframe/order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.tsx +1 -1
  236. package/src/iframe/order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.tsx +2 -2
  237. package/src/iframe/order-process/components/BookingSummary/components/ToggleHeader/ToggleHeader.tsx +9 -9
  238. package/src/iframe/order-process/components/BookingSummaryFooter/BookingSummaryFooter.tsx +3 -3
  239. package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.stories.tsx +5 -5
  240. package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.tsx +3 -3
  241. package/src/iframe/order-process/components/CalendarStepsForm/components/Category.tsx +1 -1
  242. package/src/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.tsx +3 -3
  243. package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +7 -7
  244. package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.stories.tsx +1 -1
  245. package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.tsx +13 -4
  246. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +3 -2
  247. package/src/iframe/order-process/components/ErrorModal/ErrorModal.tsx +8 -8
  248. package/src/iframe/order-process/components/NavigationFooter/NavigationFooter.tsx +4 -4
  249. package/src/iframe/order-process/components/NavigationSteps/NavigationSteps.stories.tsx +1 -1
  250. package/src/iframe/order-process/components/NavigationSteps/NavigationSteps.tsx +6 -6
  251. package/src/iframe/order-process/components/PaymentCard/PaymentCard.stories.tsx +2 -2
  252. package/src/iframe/order-process/components/PaymentCard/PaymentCard.tsx +9 -9
  253. package/src/iframe/order-process/components/Timer/Timer.stories.tsx +2 -2
  254. package/src/iframe/order-process/components/Timer/Timer.tsx +6 -6
  255. package/src/iframe/page/Page.stories.tsx +4 -4
  256. package/src/iframe/page/Page.tsx +1 -1
  257. package/src/iframe/page/components/PageBody/components/LeftBlock/LeftBlock.tsx +2 -2
  258. package/src/iframe/page/components/PageBody/components/RightBlock/RightBlock.tsx +2 -2
  259. package/src/iframe/page/components/PageHeader/PageHeader.tsx +6 -6
  260. package/src/iframe/payment/order-items-table/OrderItemsTable.stories.tsx +2 -2
  261. package/src/iframe/payment/order-items-table/OrderItemsTable.tsx +2 -2
  262. package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +3 -3
  263. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +1 -0
  264. package/src/iframe/payment/payment-form/PaymentForm.stories.tsx +5 -5
  265. package/src/iframe/payment/payment-form/PaymentForm.tsx +12 -12
  266. package/src/iframe/payment/payment-page/PaymentPage.tsx +5 -5
  267. package/src/iframe/payment/payment-status-header/PaymentStatusHeader.stories.tsx +2 -2
  268. package/src/iframe/payment/payment-status-header/PaymentStatusHeader.tsx +2 -2
  269. package/src/iframe/payment/payment-status-page/PaymentStatusComponent.stories.tsx +2 -2
  270. package/src/iframe/payment/payment-status-page/PaymentStatusPage.tsx +2 -2
  271. package/src/iframe/payment/status-body/StatusBody.tsx +3 -3
  272. package/src/iframe/powered-by/PoweredBy.tsx +4 -4
  273. package/src/iframe/ryft/RyftPaymentForm.tsx +12 -12
  274. package/src/image-radio-input/ImageRadioInput.tsx +5 -5
  275. package/src/layout/BackgroundVideoContainer.tsx +2 -2
  276. package/src/layout/Container.tsx +1 -1
  277. package/src/layout/DropDown.tsx +2 -1
  278. package/src/layout/DropDownToggle.tsx +1 -1
  279. package/src/layout/Layout.stories.tsx +5 -5
  280. package/src/logo/Logo.tsx +2 -2
  281. package/src/modals/confirmation/ConfirmModal.tsx +32 -16
  282. package/src/modals/dialog/Dialog.tsx +10 -10
  283. package/src/modals/fullscreen/FullscreenModal.tsx +10 -10
  284. package/src/modals/fullscreen/FulscreenModal.stories.tsx +2 -2
  285. package/src/notification/components/NotificationPlaceholders.tsx +5 -5
  286. package/src/notification/email-template/card/EmailTemplateCard.tsx +10 -10
  287. package/src/notification/email-template/control/EmailTemplateControl.tsx +30 -29
  288. package/src/notification/email-template/form/EmailTemplateForm.tsx +3 -3
  289. package/src/notification/send-email-template/SendEmailTemplateForm.tsx +11 -11
  290. package/src/notification/sms-template/card/SmsTemplateCard.tsx +9 -9
  291. package/src/notification/sms-template/control/SmsTemplateControl.tsx +15 -15
  292. package/src/notification/sms-template/form/SmsTemplateForm.tsx +1 -1
  293. package/src/number-of-people-input/components/RenderNumberOfPeopleInputComponent.tsx +6 -6
  294. package/src/product-set/card/ProductSetCard.tsx +63 -24
  295. package/src/product-set/control/DateAndRecurrenceInput.tsx +10 -10
  296. package/src/product-set/control/DateInput.tsx +12 -11
  297. package/src/product-set/control/ProductSetControl.stories.tsx +2 -2
  298. package/src/product-set/control/ProductSetControl.tsx +66 -72
  299. package/src/product-set/control/ProductSetImageControl.tsx +97 -0
  300. package/src/product-set/control/ProductSetRecurrenceControl.stories.tsx +1 -1
  301. package/src/product-set/control/ProductSetRecurrenceControl.tsx +10 -10
  302. package/src/product-set/control/ProductSetRecurrenceOverridesControl.tsx +9 -9
  303. package/src/product-set/control/TutorialGifCard.tsx +10 -10
  304. package/src/product-set/deposit-paid/ProductSetDepositPaid.stories.tsx +2 -2
  305. package/src/product-set/deposit-paid/ProductSetDepositPaidControl.tsx +9 -9
  306. package/src/product-set/elements/DeleteFieldButton.tsx +3 -3
  307. package/src/product-set/form/MobileFooter.tsx +3 -4
  308. package/src/product-set/form/ProductCategoriesControl.tsx +43 -7
  309. package/src/product-set/form/ProductSetForm.tsx +28 -6
  310. package/src/product-set/form/ProductSetFormPopover.tsx +4 -4
  311. package/src/product-set/form/ProductSetNameControl.tsx +27 -0
  312. package/src/product-set/form/ProductZonesControl.tsx +5 -8
  313. package/src/product-set/form/ProductsControl.tsx +4 -4
  314. package/src/product-set/form/SelectCategoryModal.tsx +24 -24
  315. package/src/product-set/form/StepsControl.tsx +5 -5
  316. package/src/product-set/form/SubProductsControl.tsx +1 -4
  317. package/src/product-set/form/VenueMapSetModal.tsx +16 -16
  318. package/src/product-set/form/VenueMapsControl.tsx +9 -12
  319. package/src/product-set/form/index.ts +1 -0
  320. package/src/product-set/item/CreateProductSetItem.tsx +2 -2
  321. package/src/product-set/popover/ProductSetPopover.stories.tsx +7 -7
  322. package/src/product-set/popover/ProductSetPopover.tsx +5 -5
  323. package/src/product-set/product/Product.stories.tsx +4 -4
  324. package/src/product-set/product/ProductControl.tsx +19 -20
  325. package/src/product-set/product/advanced-options/AdvancedOptions.tsx +11 -11
  326. package/src/product-set/product/booking-management/ProductBookingManagement.stories.tsx +1 -1
  327. package/src/product-set/product/booking-management/ProductBookingManagementControl.tsx +11 -9
  328. package/src/product-set/product/deposit/ProductDeposit.stories.tsx +1 -1
  329. package/src/product-set/product/deposit/ProductDepositControl.tsx +5 -4
  330. package/src/product-set/product/duration/ProductDurationControl.stories.tsx +1 -1
  331. package/src/product-set/product/duration/ProductDurationControl.tsx +12 -10
  332. package/src/product-set/product/fixed-duration-fields/FixedDurationOptions.tsx +1 -1
  333. package/src/product-set/product/price/ProductPrice.stories.tsx +1 -1
  334. package/src/product-set/product/price/ProductPriceControl.tsx +5 -4
  335. package/src/product-set/product/quantity/ProductQuantity.stories.tsx +3 -3
  336. package/src/product-set/product/quantity/ProductQuantityConstantControl.tsx +12 -10
  337. package/src/product-set/product/quantity/ProductQuantityControl.tsx +10 -8
  338. package/src/product-set/product/quantity/ProductQuantityRechargingControl.tsx +4 -3
  339. package/src/product-set/product-category/ProductCategory.stories.tsx +4 -4
  340. package/src/product-set/product-category/ProductCategoryControl.tsx +31 -27
  341. package/src/product-set/product-zone/ProductZoneControl.tsx +7 -7
  342. package/src/product-set/step/Step.stories.tsx +1 -1
  343. package/src/product-set/step/StepControl.tsx +5 -5
  344. package/src/product-set/tabs/ProductSetTabs.stories.tsx +3 -3
  345. package/src/product-set/tabs/ProductSetTabs.tsx +1 -1
  346. package/src/product-set/utils/index.ts +11 -0
  347. package/src/provider/categories-input/CategoriesInput.tsx +9 -9
  348. package/src/provider/categories-input/CategoriesInputDescription.tsx +4 -4
  349. package/src/provider/company/user-form/UserForm.tsx +9 -9
  350. package/src/provider/location-input/LocationInput.tsx +11 -11
  351. package/src/provider/location-input/LocationInputDescription.tsx +1 -1
  352. package/src/provider/location-input/components/FormGroupControll.tsx +1 -1
  353. package/src/provider/provider-details-input/ProviderDetailsInput.tsx +18 -18
  354. package/src/provider/provider-form/ProviderForm.tsx +11 -11
  355. package/src/provider/provider-links-input/ProviderLinksInput.tsx +4 -4
  356. package/src/provider/venue-form/VenueForm.tsx +12 -12
  357. package/src/provider/working-hours-input/WorkingHoursInput.tsx +13 -13
  358. package/src/provider/working-hours-input/WorkingHoursInputDescription.tsx +1 -1
  359. package/src/radio-card/RadioCard.tsx +3 -3
  360. package/src/recurrence-input/RecurrenceEndInput.tsx +13 -12
  361. package/src/recurrence-input/RecurrenceIntervalAndFrequencyInput.tsx +6 -6
  362. package/src/recurrence-input/RecurrenceMonthlyRepeatByInput.tsx +4 -4
  363. package/src/recurrence-input/RecurrenceWeekdaysInput.tsx +4 -4
  364. package/src/recurring-date-picker-input/DatePickerInput.tsx +3 -3
  365. package/src/recurring-date-picker-input/RecurrenceAndFrequencyInput.tsx +8 -8
  366. package/src/recurring-date-picker-input/RecurrenceEndInput.tsx +13 -12
  367. package/src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx +10 -10
  368. package/src/recurring-date-picker-input/RecurrenceMonthlyRepeatByInput.tsx +4 -4
  369. package/src/recurring-date-picker-input/RecurrenceWeekdaysInput.tsx +6 -6
  370. package/src/recurring-date-picker-input/RecurringDatePickerInput.tsx +4 -4
  371. package/src/recurring-date-picker-input/utils.ts +4 -4
  372. package/src/report/DataFieldsSelector/DataFieldsSelector.tsx +6 -6
  373. package/src/report/ReportRunnerModal/ReportRunnerModal.tsx +23 -23
  374. package/src/report/ReportTypeSelect/ReportTypeSelect.tsx +9 -9
  375. package/src/report/card/ReportCard.tsx +3 -3
  376. package/src/report/form/ReportForm.tsx +9 -9
  377. package/src/resource/form/ResourceForm.tsx +4 -4
  378. package/src/resource/form/components/CapacityControl.tsx +3 -2
  379. package/src/resource/form/components/NameControl.tsx +1 -1
  380. package/src/resource/form/components/SortControl.tsx +3 -2
  381. package/src/resource/form/components/ZoneControl.tsx +3 -3
  382. package/src/root.css +51 -51
  383. package/src/sales/booking/results/BookingResults.tsx +2 -2
  384. package/src/sales/booking/results/components/ResultCard.tsx +8 -10
  385. package/src/sales/coupon/control/CouponFormControl.tsx +31 -24
  386. package/src/sales/coupon/form/CouponFrom.tsx +3 -3
  387. package/src/sales/filters/SaleFilters.tsx +3 -3
  388. package/src/sales/guest-profile/previous-bookings/PreviousBookings.tsx +12 -12
  389. package/src/sales/guest-profile/profile/Profile.tsx +6 -6
  390. package/src/sales/guest-profile/profile/components/ImageHolder/ImageHolder.tsx +1 -1
  391. package/src/sales/guest-profile/user-metrics/UserMetrics.tsx +34 -34
  392. package/src/sales/guest-profile/visited-providers/VisitedProviders.tsx +10 -10
  393. package/src/sales/life-time-sales/LifeTimeSalesChart.tsx +8 -8
  394. package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.stories.tsx +1 -1
  395. package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.tsx +3 -3
  396. package/src/sales/manual-booking/search-user/SearchUser.tsx +8 -8
  397. package/src/sales/manual-booking/select-date-type-control/SelectDateTypeControl.tsx +10 -10
  398. package/src/sales/manual-booking/select-event/SelectEvent.tsx +13 -13
  399. package/src/sales/manual-booking/select-menu/SelectMenu.tsx +5 -5
  400. package/src/sales/manual-booking/select-menu/components/MenuButton.tsx +2 -2
  401. package/src/sales/manual-booking/summary/ManualBookingSummary.tsx +11 -11
  402. package/src/sales/modals/payment-modal/PaymentModal.tsx +10 -10
  403. package/src/sales/modals/refund-modal/RefundModal.stories.tsx +1 -1
  404. package/src/sales/modals/refund-modal/RefundModal.tsx +11 -11
  405. package/src/sales/notes/NotesTable.tsx +5 -5
  406. package/src/sales/notes/NotesTableRow.tsx +13 -13
  407. package/src/sales/notes/note-form/NoteForm.tsx +11 -11
  408. package/src/sales/payment-form/SalePaymentForm.tsx +5 -5
  409. package/src/sales/payment-form/components/RyftPayment/RyftPayment.tsx +9 -9
  410. package/src/sales/sales-and-views/SalesAndViewsChart.tsx +19 -19
  411. package/src/sales/source-of-sales/SourceOfSalesChart.tsx +9 -9
  412. package/src/sales/statistics-chart/StatisticsChart.tsx +4 -4
  413. package/src/setting/admin/AdminSettingForm.tsx +14 -14
  414. package/src/setting/admin/PaymentFeeForm.tsx +33 -28
  415. package/src/setting/dashboard/DashboardSettingForm.tsx +17 -16
  416. package/src/setting/dashboard/EventSettingForm.tsx +3 -3
  417. package/src/setting/dashboard/FinancialDataForm.tsx +5 -5
  418. package/src/setting/dashboard/OtherSettingForm.tsx +29 -29
  419. package/src/setting/dashboard/ProviderSettingForm.tsx +3 -3
  420. package/src/setting/dashboard/components/IpInput.tsx +10 -10
  421. package/src/setting/dashboard/payments/payments-form/PaymentsForm.tsx +8 -8
  422. package/src/setting/dashboard/payments/payments-modal/PaymentsModal.tsx +4 -4
  423. package/src/setting/dashboard/snippet-templates/card/SnippetTemplateCard.tsx +8 -8
  424. package/src/setting/dashboard/snippets/card/SnippetCard.tsx +16 -16
  425. package/src/setting/system/SystemSettingForm.tsx +8 -8
  426. package/src/sidebar/elements/Elements.stories.tsx +1 -1
  427. package/src/sidebar/elements/ReturnBack.tsx +3 -3
  428. package/src/slide-curtain/SlideCurtain.stories.tsx +1 -1
  429. package/src/slide-curtain/SlideCurtain.tsx +4 -4
  430. package/src/snippet/snippet-template/SnippetTemplate.tsx +3 -3
  431. package/src/snippet/snippet-template/context/snippetTemplate.tsx +2 -2
  432. package/src/snippet/snippet-template/control/PropertyControl.tsx +8 -8
  433. package/src/snippet/snippet-template/form/SnippetTemplateForm.tsx +7 -7
  434. package/src/snippet/snippet-template/preview/Preview.tsx +72 -66
  435. package/src/snippet/snippet-template/settings/SettingButton.tsx +2 -2
  436. package/src/sortable-fields/SortableFieldItem.tsx +2 -2
  437. package/src/sortable-list/CreateSortableListItem.tsx +3 -3
  438. package/src/sortable-tree/SortableTreeItem.stories.tsx +2 -2
  439. package/src/sortable-tree/SortableTreeItem.tsx +46 -40
  440. package/src/sorting-select/SortingSelect.tsx +4 -4
  441. package/src/static/CountryCodeSelect.tsx +4 -4
  442. package/src/static/CountrySelect.tsx +5 -5
  443. package/src/static/CurrencyNumberInput.tsx +6 -5
  444. package/src/static/RestrictedAccess.tsx +6 -6
  445. package/src/static/SocialButton.tsx +1 -1
  446. package/src/static/Static.stories.tsx +24 -24
  447. package/src/static/UserBadge.tsx +7 -7
  448. package/src/static/WarningMessage.tsx +2 -2
  449. package/src/static/date-range-input/DateRangeInput.stories.tsx +1 -1
  450. package/src/static/date-range-input/DateRangeInput.tsx +12 -12
  451. package/src/static/form-number-input/FormNumberInput.stories.tsx +1 -1
  452. package/src/static/form-number-input/FormNumberInput.tsx +5 -4
  453. package/src/static/images/Images.stories.tsx +1 -1
  454. package/src/static/loader/BlockLoader.tsx +2 -2
  455. package/src/static/loader/ButtonLoader.tsx +1 -1
  456. package/src/static/loader/Loader.stories.tsx +2 -2
  457. package/src/static/loader/PaymentLoader.tsx +4 -4
  458. package/src/static/loader/SnippetLoader.tsx +2 -2
  459. package/src/static/manual-date-picker/ManualDatePicker.tsx +9 -9
  460. package/src/static/number-input/NumberInput.tsx +7 -6
  461. package/src/static/switch/Switch.stories.tsx +3 -3
  462. package/src/static/switch/Switch.tsx +4 -4
  463. package/src/static/tabs/Tabs.tsx +1 -1
  464. package/src/static/text-expand/TextExpand.tsx +3 -3
  465. package/src/striped-static-table/StripedStaticTable.tsx +2 -2
  466. package/src/styles/activity-card/{GridActivitiesCard.scss → ActivitiesCard.scss} +19 -5
  467. package/src/styles/activity-card/ListActivitiesCard.scss +12 -42
  468. package/src/styles/activity-card/_index.scss +1 -1
  469. package/src/styles/iframe-events/Calendar.scss +0 -1
  470. package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  471. package/src/styles/product-set/ProductSetForm.scss +22 -0
  472. package/src/styles/sales/BookingResults.scss +1 -1
  473. package/src/table/FilterHelperComponent.tsx +10 -10
  474. package/src/table/MenuButton.tsx +1 -1
  475. package/src/table/PaginationHelperComponent.tsx +7 -7
  476. package/src/table/PerPageHelperComponent.tsx +5 -5
  477. package/src/table/ReactTableHelperComponent.tsx +1 -1
  478. package/src/table/TableHelperComponent.tsx +1 -1
  479. package/src/theme/Theme.stories.tsx +36 -36
  480. package/src/tiptap-editor/TipTapEditor.tsx +1 -1
  481. package/src/tiptap-editor/TipTapMenu/TipTapMenu.tsx +21 -21
  482. package/src/tiptap-editor/TipTapMenu/components/TipTapMenuItem.tsx +2 -2
  483. package/src/tiptap-editor/TipTapMenu/extensions/constants.ts +2 -1
  484. package/src/tiptap-editor/TipTapMenu/extensions/utils.ts +2 -2
  485. package/src/typeahead/Typeahead.stories.tsx +3 -3
  486. package/src/typeahead/Typeahead.tsx +15 -1
  487. package/src/typeahead-helper/TypeaheadHelperComponent.tsx +4 -4
  488. package/src/venue-map-sets/card/VenueMapSetCard.tsx +14 -14
  489. package/src/venue-map-sets/form/VenueMapSetForm.tsx +3 -3
  490. package/src/venue-map-sets/form/components/NameControl.tsx +1 -1
  491. package/src/venue-map-sets/form/components/VenueMapControl.tsx +8 -8
  492. package/src/venue-map-sets/form/components/VenueMapImageControl.tsx +5 -5
  493. package/src/venue-map-sets/form/components/VenueMapModal.tsx +16 -16
  494. package/src/venue-map-sets/form/components/VenueMapsControl.tsx +1 -1
  495. package/src/virtualized/components/VirtualizedGrid.tsx +1 -1
  496. package/src/zone/card/ZoneCard.tsx +14 -14
  497. package/src/zone/form/ZoneForm.tsx +3 -3
  498. package/src/zone/form/components/AvailableTimesControl.tsx +4 -4
  499. package/src/zone/form/components/DescriptionControl.tsx +2 -2
  500. package/src/zone/form/components/GameDurationControl.tsx +3 -2
  501. package/src/zone/form/components/NameControl.tsx +1 -1
  502. package/src/zone/form/components/SortControl.tsx +3 -2
  503. package/src/zone/form/components/ZoneControl.tsx +1 -1
  504. package/src/zone/form/components/ZoneImageControl.tsx +3 -3
  505. package/src/zone/form/components/ZoneRecurrenceControl.tsx +10 -10
  506. package/src/zone/form/components/ZoneRecurrencesControl.tsx +10 -10
  507. package/src/zone/form/components/ZoneTypeControl.tsx +2 -2
  508. package/tailwind.config.js +3 -6
  509. package/yarn.lock +149 -283
  510. package/dist/assets/iframe/selectArrow.svg.js +0 -17
@@ -24,38 +24,38 @@ const TutorialGifCard = ({
24
24
  return (
25
25
  <>
26
26
  <Card className={`tutorial-card ${!isVisible && 'hidden'}`}>
27
- <Card.Header className="tutorial-card-header">
27
+ <Card.Header className='tutorial-card-header'>
28
28
  <div>
29
29
  <FaCheck
30
- color="white"
31
- className="rounded product-set-item-icon"
30
+ color='white'
31
+ className='rounded product-set-item-icon'
32
32
  size={14}
33
33
  />
34
34
  <span>{t('bookedTopTip')}</span>
35
35
  </div>
36
36
  <button
37
- className="border-0"
37
+ className='border-0'
38
38
  onClick={() => setIsVisible(false)}
39
- type="button"
39
+ type='button'
40
40
  >
41
41
  <span>{t('gotIt')}</span>
42
- <FaTimes size={18} className="rounded tutorial-close-icon p-1" />
42
+ <FaTimes size={18} className='rounded tutorial-close-icon p-1' />
43
43
  </button>
44
44
  </Card.Header>
45
- <Card.Body className="tutorial-card-body">
45
+ <Card.Body className='tutorial-card-body'>
46
46
  <p>
47
47
  {t(isOverrides ? 'buildOverrideProductSet' : 'buildProductSet')}
48
48
  </p>
49
49
  <span>
50
50
  {t(isOverrides ? 'buildOverrideRules' : 'buildProductSetDesc')}
51
51
  </span>
52
- {tutorialAsset && <Image src={tutorialAsset} alt="Tutorial Gif" />}
52
+ {tutorialAsset && <Image src={tutorialAsset} alt='Tutorial Gif' />}
53
53
  </Card.Body>
54
54
  </Card>
55
55
  <Button
56
- type="button"
56
+ type='button'
57
57
  onClick={() => setIsVisible(true)}
58
- className="mb-4"
58
+ className='mb-4'
59
59
  style={{ display: !isVisible ? 'block' : 'none' }}
60
60
  >
61
61
  <span>{t('hint')}</span>
@@ -26,7 +26,7 @@ export const Default: Story<ProductSetDepositPaidControlProps> = (args) => {
26
26
  return (
27
27
  <FormProvider {...form}>
28
28
  <Form
29
- className="d-flex flex-column"
29
+ className='d-flex flex-column'
30
30
  noValidate
31
31
  onSubmit={form.handleSubmit(onSubmit)}
32
32
  >
@@ -47,7 +47,7 @@ export const WithData: Story<ProductSetDepositPaidControlProps> = (args) => {
47
47
  return (
48
48
  <FormProvider {...form}>
49
49
  <Form
50
- className="d-flex flex-column"
50
+ className='d-flex flex-column'
51
51
  noValidate
52
52
  onSubmit={form.handleSubmit(onSubmit)}
53
53
  >
@@ -38,11 +38,11 @@ export function ProductSetDepositPaidControl(
38
38
  return (
39
39
  <Row>
40
40
  <Col xs={12}>
41
- <div className="form-inline">
41
+ <div className='form-inline'>
42
42
  <Form.Group controlId={depositPaidId}>
43
43
  <Form.Label>{t('depositPaid')}</Form.Label>
44
44
 
45
- <div className="form-inline-group">
45
+ <div className='form-inline-group'>
46
46
  <InputGroup hasValidation>
47
47
  <InputGroup.Prepend>
48
48
  <InputGroup.Text>{t('pay')}</InputGroup.Text>
@@ -58,7 +58,7 @@ export function ProductSetDepositPaidControl(
58
58
  />
59
59
  )}
60
60
  control={control}
61
- name="depositPaidAmount"
61
+ name='depositPaidAmount'
62
62
  rules={{
63
63
  required: t('Validation:fieldRequired', {
64
64
  attribute: t('depositPaidAmount'),
@@ -83,7 +83,7 @@ export function ProductSetDepositPaidControl(
83
83
  <Controller
84
84
  render={({ field: { value, onChange } }) => (
85
85
  <Form.Control
86
- as="select"
86
+ as='select'
87
87
  onChange={onChange}
88
88
  isInvalid={Boolean(errors.depositPaidAmountType)}
89
89
  disabled={isLoading}
@@ -100,7 +100,7 @@ export function ProductSetDepositPaidControl(
100
100
  </Form.Control>
101
101
  )}
102
102
  control={control}
103
- name="depositPaidAmountType"
103
+ name='depositPaidAmountType'
104
104
  rules={{
105
105
  required: t('Validation:fieldRequired', {
106
106
  attribute: t('depositPaidAmountType'),
@@ -122,7 +122,7 @@ export function ProductSetDepositPaidControl(
122
122
  />
123
123
  )}
124
124
  control={control}
125
- name="depositPaidPeriod"
125
+ name='depositPaidPeriod'
126
126
  rules={{
127
127
  required: t('Validation:fieldRequired', {
128
128
  attribute: t('depositPaidPeriod'),
@@ -147,7 +147,7 @@ export function ProductSetDepositPaidControl(
147
147
  <Controller
148
148
  render={({ field: { value, onChange } }) => (
149
149
  <Form.Control
150
- as="select"
150
+ as='select'
151
151
  onChange={onChange}
152
152
  isInvalid={Boolean(errors.depositPaidPeriodType)}
153
153
  disabled={isLoading}
@@ -164,7 +164,7 @@ export function ProductSetDepositPaidControl(
164
164
  </Form.Control>
165
165
  )}
166
166
  control={control}
167
- name="depositPaidPeriodType"
167
+ name='depositPaidPeriodType'
168
168
  rules={{
169
169
  required: t('Validation:fieldRequired', {
170
170
  attribute: t('depositPaidPeriodType'),
@@ -176,7 +176,7 @@ export function ProductSetDepositPaidControl(
176
176
  <InputGroup.Text>{t('beforeEvent')}</InputGroup.Text>
177
177
  </InputGroup.Append>
178
178
 
179
- <Form.Control.Feedback type="invalid">
179
+ <Form.Control.Feedback type='invalid'>
180
180
  {errors.depositPaidAmount?.message}
181
181
  {errors.depositPaidPeriod?.message}
182
182
  </Form.Control.Feedback>
@@ -11,11 +11,11 @@ export function DeleteFieldButton({ onDelete }: DeleteFieldButtonProps) {
11
11
  return (
12
12
  <Button
13
13
  onClick={onDelete}
14
- variant="outline-danger"
15
- className="d-flex align-items-center"
14
+ variant='outline-danger'
15
+ className='d-flex align-items-center'
16
16
  >
17
17
  <FaTrashAlt size={16} />{' '}
18
- <span className="d-none d-sm-inline ml-2">{t('delete')}</span>
18
+ <span className='d-none d-sm-inline ml-2'>{t('delete')}</span>
19
19
  </Button>
20
20
  )
21
21
  }
@@ -5,12 +5,11 @@ export function MobileFooter() {
5
5
  const { t } = useTranslation('Design')
6
6
 
7
7
  return (
8
- <div className="container product-set-mobile-footer">
8
+ <div className='container product-set-mobile-footer'>
9
9
  <div
10
- className={`d-block d-sm-none bg-white border-top fixed-bottom
11
- py-4 px-5 d-flex justify-content-between flex-row-reverse`}
10
+ className={`d-block d-sm-none bg-white border-top fixed-bottom py-4 px-5 d-flex justify-content-between flex-row-reverse`}
12
11
  >
13
- <Button type="submit">{t('save')}</Button>
12
+ <Button type='submit'>{t('save')}</Button>
14
13
  </div>
15
14
  </div>
16
15
  )
@@ -8,6 +8,7 @@ import {
8
8
  useFormContext,
9
9
  useWatch,
10
10
  } from 'react-hook-form'
11
+ import { FaBars, FaBowlingBall, FaCalendar, FaTicketAlt } from 'react-icons/fa'
11
12
  import { useTranslation } from 'react-i18next'
12
13
  import { useSensor, MouseSensor } from '@dnd-kit/core'
13
14
  import {
@@ -25,7 +26,11 @@ import { ProductCategoryControl } from '../product-category'
25
26
  import { ProductCategory } from '../types'
26
27
  import { ProductsControl } from './ProductsControl'
27
28
  import { ProductSetFormValues, WithIsLoading } from './ProductSetForm'
28
- import { SelectCategoryModal } from './SelectCategoryModal'
29
+ import {
30
+ SelectCategoryModal,
31
+ CATEGORY_TYPES_NAMES,
32
+ CategoryConfig,
33
+ } from './SelectCategoryModal'
29
34
  import { ProductSetLoadingContext } from './context'
30
35
  import { VenueMapSetModal } from './VenueMapSetModal'
31
36
  import { moveArrayElements, sortArrayByIndex } from '../utils'
@@ -33,6 +38,29 @@ import { useSortableTreeFunctions } from '../hooks/useSortableTreeFunctions'
33
38
  // @TODO not for first release
34
39
  // import Popover from "./ProductSetFormPopover";
35
40
 
41
+ const CATEGORIES_TYPE: Partial<Record<CategoryType, CategoryConfig>> = {
42
+ [CATEGORY_TYPES_NAMES.tickets]: {
43
+ label: 'tickets',
44
+ icon: <FaTicketAlt color='#0e8ce2' size={10} />,
45
+ },
46
+ [CATEGORY_TYPES_NAMES.bookings]: {
47
+ label: 'bookings',
48
+ icon: <FaCalendar color='#0e8ce2' size={10} />,
49
+ },
50
+ [CATEGORY_TYPES_NAMES.menuItems]: {
51
+ label: 'menuItems',
52
+ icon: <FaBars color='#0e8ce2' size={10} />,
53
+ },
54
+ [CATEGORY_TYPES_NAMES.game]: {
55
+ label: 'game',
56
+ icon: <FaBowlingBall color='#0e8ce2' size={10} />,
57
+ },
58
+ [CATEGORY_TYPES_NAMES.fixedDuration]: {
59
+ label: 'fixedDuration',
60
+ icon: <FaCalendar color='#0e8ce2' size={10} />,
61
+ },
62
+ }
63
+
36
64
  interface ProductCategoriesControlProps extends WithIsLoading {
37
65
  stepIndex: number
38
66
  isOverrides?: boolean
@@ -228,6 +256,8 @@ export function ProductCategoriesControl({
228
256
  setIsExpanded(productCategoryId)
229
257
  }
230
258
 
259
+ const categoryType = CATEGORIES_TYPE[productCategory.type]
260
+
231
261
  return (
232
262
  <Controller
233
263
  key={`product-category-${productCategory._id}`}
@@ -248,14 +278,14 @@ export function ProductCategoriesControl({
248
278
  cancelChanges={() => cancelChanges(index)}
249
279
  isInvalid={!!productCategoriesErrors}
250
280
  badge={
251
- <Badge className="category-badge">
281
+ <Badge className='category-badge'>
252
282
  {t('productCategory')}
253
283
  </Badge>
254
284
  }
255
285
  isIconInHeader={false}
256
286
  subTitle={
257
- <div className="product-set-badges-container">
258
- <div className="product-set-subtitle-dot product-set-subtitle-category-dot" />
287
+ <div className='product-set-badges-container'>
288
+ <div className='product-set-subtitle-dot product-set-subtitle-category-dot' />
259
289
  <span>
260
290
  {productCategoryState[
261
291
  productCategory?.id ?? productCategory.uniqueId
@@ -264,7 +294,7 @@ export function ProductCategoriesControl({
264
294
  </span>
265
295
  </div>
266
296
  }
267
- treeLineIconColor="#1A93AA"
297
+ treeLineIconColor='#1A93AA'
268
298
  modalLabel={t('addNewCategory')}
269
299
  secondaryBadge={getBadgeConfig(
270
300
  productCategory.type,
@@ -272,6 +302,12 @@ export function ProductCategoriesControl({
272
302
  )}
273
303
  modalClass={ProductSetModalClasses.category}
274
304
  isNewAdded={showCategoryModal}
305
+ itemButton={
306
+ <div className='btn-outline-primary item-icon sm border border-primary rounded-sm'>
307
+ {categoryType.icon}
308
+ <span className='ml-2'>{t(categoryType.label)}</span>
309
+ </div>
310
+ }
275
311
  body={
276
312
  <ProductCategoryControl
277
313
  isLoading={isLoading}
@@ -353,7 +389,7 @@ export function ProductCategoriesControl({
353
389
  )}
354
390
  />
355
391
  {showVenueMapSetError && (
356
- <div className="manual-form-error">
392
+ <div className='manual-form-error'>
357
393
  {venueMapSetIdError &&
358
394
  t('Validation:fieldRequired', {
359
395
  attribute: t('Design:venueMapSet'),
@@ -373,7 +409,7 @@ export function ProductCategoriesControl({
373
409
  </>
374
410
  )}
375
411
 
376
- <div className="manual-form-error">
412
+ <div className='manual-form-error'>
377
413
  {productCategoriesErrors && productCategoriesErrors.message}
378
414
  </div>
379
415
  </>
@@ -1,4 +1,4 @@
1
- import { useEffect } from 'react'
1
+ import { useEffect, useState } from 'react'
2
2
  import { FormValues } from '@licklist/plugins/dist/types/services/Form/hook-form-service'
3
3
  import { Button, Form, Col, Row } from 'react-bootstrap'
4
4
  import { FormProvider, useForm } from 'react-hook-form'
@@ -12,6 +12,7 @@ import { isEqual } from 'lodash'
12
12
  import { ProviderBookingManagementSetting } from '@licklist/core/dist/DataMapper/Provider/ProviderBookingManagementSettingDataMapper'
13
13
  import { Zone } from '@licklist/core/dist/DataMapper/Provider/ZoneDataMapper'
14
14
  import { WorkHour } from '@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper'
15
+ import { transformErrorToMessage } from '@licklist/plugins'
15
16
  import { Dialog, useDialogContext } from '../../modals/dialog'
16
17
  import {
17
18
  ProductSetControl,
@@ -22,16 +23,21 @@ import { Step } from '../types'
22
23
  import { ProductSetContextProvider, ProductSetLoadingContext } from './context'
23
24
  import { SelectItem } from '../../types/generic/SelectItem'
24
25
  import { checkAvailableTimesErrors, getFilteredTemplates } from '../utils'
26
+ import { ErrorModal } from '../../iframe/order-process/components/ErrorModal'
25
27
 
26
28
  export interface WithIsLoading {
27
29
  isLoading: boolean
28
30
  }
31
+ export interface WithIdOptional {
32
+ id?: number
33
+ }
34
+
29
35
  export interface WithId {
30
36
  id: number
31
37
  }
32
38
  export interface ProductSetFormValues
33
39
  extends FormValues,
34
- WithId,
40
+ WithIdOptional,
35
41
  ProductSetControlValues {
36
42
  steps: Step[]
37
43
  isOverrides?: boolean
@@ -84,6 +90,7 @@ export function ProductSetForm({
84
90
  onApproveDialog,
85
91
  onDeclineDialog,
86
92
  } = useDialogContext()
93
+ const [errorMessage, setErrorMessage] = useState('')
87
94
 
88
95
  const form = useForm<ProductSetFormValues>({
89
96
  defaultValues,
@@ -121,6 +128,15 @@ export function ProductSetForm({
121
128
  if (!serverErrors) {
122
129
  return
123
130
  }
131
+ if (!Array.isArray(serverErrors)) {
132
+ setErrorMessage(transformErrorToMessage(serverErrors))
133
+ return
134
+ }
135
+
136
+ if (Array.isArray(serverErrors) && serverErrors[0]) {
137
+ setErrorMessage(serverErrors[0])
138
+ }
139
+
124
140
  FormErrorService.handleServerErrors(serverErrors, setError)
125
141
  }, [serverErrors, setError])
126
142
 
@@ -156,6 +172,12 @@ export function ProductSetForm({
156
172
  onDecline={onDeclineDialog}
157
173
  />
158
174
 
175
+ <ErrorModal
176
+ message={errorMessage}
177
+ isOpen={!!errorMessage}
178
+ onClose={() => setErrorMessage('')}
179
+ />
180
+
159
181
  <FormProvider {...form}>
160
182
  <Form onSubmit={form.handleSubmit(submitHandler(onSubmitAndRedirect))}>
161
183
  <ProductSetLoadingContext.Consumer>
@@ -185,13 +207,13 @@ export function ProductSetForm({
185
207
  <Row>
186
208
  <Col md={6} sm={12} />
187
209
  <Col
188
- className="product-set-save-btn-wrapper p-0 pl-4 d-flex mw-100"
210
+ className='product-set-save-btn-wrapper p-0 pl-4 d-flex mw-100'
189
211
  md={6}
190
212
  sm={12}
191
213
  >
192
214
  {onSubmitNoRedirect && (
193
215
  <Button
194
- className="product-set-save-btn mt-5 ml-5 d-no dne d-md-block"
216
+ className='product-set-save-btn mt-5 ml-5 d-no dne d-md-block'
195
217
  onClick={form.handleSubmit(
196
218
  submitHandler(onSubmitNoRedirect),
197
219
  )}
@@ -203,8 +225,8 @@ export function ProductSetForm({
203
225
  </Button>
204
226
  )}
205
227
  <Button
206
- className="product-set-save-btn mt-5 ml-5 d-no dne d-md-block"
207
- type="submit"
228
+ className='product-set-save-btn mt-5 ml-5 d-no dne d-md-block'
229
+ type='submit'
208
230
  disabled={
209
231
  isLoading || contextIsLoading || !formValues.name
210
232
  }
@@ -14,18 +14,18 @@ function ProductSetFormPopover({ className = '' }: ProductSetFormPopoverProps) {
14
14
 
15
15
  return (
16
16
  <ProductSetPopover
17
- placement="bottom"
17
+ placement='bottom'
18
18
  ref={popoverRef}
19
19
  onClick={() => setIsVisible(true)}
20
20
  isVisible={isVisible}
21
21
  className={className}
22
22
  >
23
- <Tabs defaultActiveKey="first">
24
- <Tabs.Tab eventKey="first" title="Add item">
23
+ <Tabs defaultActiveKey='first'>
24
+ <Tabs.Tab eventKey='first' title='Add item'>
25
25
  <p>Add new sub product item</p>
26
26
  <p>Add new sub product modifier</p>
27
27
  </Tabs.Tab>
28
- <Tabs.Tab eventKey="second" title="Reusable subsets">
28
+ <Tabs.Tab eventKey='second' title='Reusable subsets'>
29
29
  <p>Add new sub product item 1</p>
30
30
  <p>Add new sub product modifier 2</p>
31
31
  </Tabs.Tab>
@@ -0,0 +1,27 @@
1
+ import { Form } from 'react-bootstrap'
2
+ import { useTranslation } from 'react-i18next'
3
+
4
+ export const ProductSetNameControl = ({
5
+ value,
6
+ onChange,
7
+ error,
8
+ }: {
9
+ value: string
10
+ onChange: (value: string) => void
11
+ error?: string
12
+ }) => {
13
+ const { t } = useTranslation(['Design'])
14
+ return (
15
+ <Form.Group>
16
+ <Form.Label>{t('Design:ProductSetName')}*</Form.Label>
17
+ <Form.Control
18
+ value={value}
19
+ maxLength={255}
20
+ onChange={(e) => onChange(e.target.value)}
21
+ placeholder={t('Design:placeholderProductSetName')}
22
+ isInvalid={Boolean(error)}
23
+ />
24
+ <Form.Control.Feedback type='invalid'>{error}</Form.Control.Feedback>
25
+ </Form.Group>
26
+ )
27
+ }
@@ -1,7 +1,4 @@
1
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
2
- // @ts-nocheck
3
- import React, { useContext, useState } from 'react'
4
-
1
+ import { useContext, useState } from 'react'
5
2
  import {
6
3
  ArrayPath,
7
4
  Controller,
@@ -125,14 +122,14 @@ export const ProductZonesControl = <T extends FormValues>({
125
122
  id={String(productZones._id)}
126
123
  title={zones.find((zone) => zone.id === Number(value))?.name}
127
124
  badge={
128
- <Badge className="product-zone-badge">{t('productZone')}</Badge>
125
+ <Badge className='product-zone-badge'>{t('productZone')}</Badge>
129
126
  }
130
127
  isIconInHeader={false}
131
128
  cancelChanges={() => cancelChanges(index)}
132
129
  edit={() => edit(index)}
133
130
  subTitle={
134
- <div className="product-set-badges-container">
135
- <div className="product-set-subtitle-dot product-set-subtitle-product-dot" />
131
+ <div className='product-set-badges-container'>
132
+ <div className='product-set-subtitle-dot product-set-subtitle-product-dot' />
136
133
  <span>
137
134
  {zoneCapacity[index] &&
138
135
  `${t('Cap')}: ${zoneCapacity[index]}; `}
@@ -175,7 +172,7 @@ export const ProductZonesControl = <T extends FormValues>({
175
172
  }
176
173
  }}
177
174
  />
178
- <div className="manual-form-error">{productZonesError}</div>
175
+ <div className='manual-form-error'>{productZonesError}</div>
179
176
  </>
180
177
  )
181
178
  }
@@ -219,15 +219,15 @@ export function ProductsControl({
219
219
  title={value}
220
220
  isOverride={isOverrides}
221
221
  badge={
222
- <Badge className="product-badge">{t('product')}</Badge>
222
+ <Badge className='product-badge'>{t('product')}</Badge>
223
223
  }
224
224
  isIconInHeader={false}
225
225
  cancelChanges={() => cancelChanges(index)}
226
226
  edit={() => edit(index)}
227
227
  secondaryBadge={getBadgeConfig(categoryType, t(categoryType))}
228
228
  subTitle={
229
- <div className="product-set-badges-container">
230
- <div className="product-set-subtitle-dot product-set-subtitle-product-dot" />
229
+ <div className='product-set-badges-container'>
230
+ <div className='product-set-subtitle-dot product-set-subtitle-product-dot' />
231
231
  <span>
232
232
  {`£${prices[index]} ${t('each')} - ${t('qty')}:${
233
233
  !isUnlimitedQuantities[index]
@@ -295,7 +295,7 @@ export function ProductsControl({
295
295
  }
296
296
  }}
297
297
  />
298
- <div className="manual-form-error">
298
+ <div className='manual-form-error'>
299
299
  {categoryProductErrors && categoryProductErrors.message}
300
300
  </div>
301
301
  </>
@@ -25,7 +25,7 @@ import {
25
25
  } from 'react-icons/fa'
26
26
  import { ProductSetLoadingContext } from './context'
27
27
 
28
- const CATEGORY_TYPES_NAMES = {
28
+ export const CATEGORY_TYPES_NAMES = {
29
29
  menuItems: CATEGORY_TYPE_MENU_ITEMS,
30
30
  tickets: CATEGORY_TYPE_TICKETS,
31
31
  bookings: CATEGORY_TYPE_BOOKINGS,
@@ -33,31 +33,31 @@ const CATEGORY_TYPES_NAMES = {
33
33
  fixedDuration: CATEGORY_TYPE_FIXED_DURATION,
34
34
  } as const
35
35
 
36
- type CategoryConfig = { label: string; icon: ReactElement }
36
+ export type CategoryConfig = { label: string; icon: ReactElement }
37
37
 
38
38
  const MAIN_CATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
39
39
  [CATEGORY_TYPES_NAMES.tickets]: {
40
40
  label: 'tickets',
41
- icon: <FaTicketAlt color="#0e8ce2" size={32} />,
41
+ icon: <FaTicketAlt color='#0e8ce2' size={32} />,
42
42
  },
43
43
  [CATEGORY_TYPES_NAMES.bookings]: {
44
44
  label: 'bookings',
45
- icon: <FaCalendar color="#0e8ce2" size={32} />,
45
+ icon: <FaCalendar color='#0e8ce2' size={32} />,
46
46
  },
47
47
  [CATEGORY_TYPES_NAMES.menuItems]: {
48
48
  label: 'menuItems',
49
- icon: <FaBars color="#0e8ce2" size={32} />,
49
+ icon: <FaBars color='#0e8ce2' size={32} />,
50
50
  },
51
51
  }
52
52
 
53
53
  const BOOKING_SUBCATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
54
54
  [CATEGORY_TYPES_NAMES.game]: {
55
55
  label: 'game',
56
- icon: <FaBowlingBall color="#0e8ce2" size={32} />,
56
+ icon: <FaBowlingBall color='#0e8ce2' size={32} />,
57
57
  },
58
58
  [CATEGORY_TYPES_NAMES.fixedDuration]: {
59
59
  label: 'fixedDuration',
60
- icon: <FaCalendar color="#0e8ce2" size={32} />,
60
+ icon: <FaCalendar color='#0e8ce2' size={32} />,
61
61
  },
62
62
  }
63
63
 
@@ -102,18 +102,18 @@ export function SelectCategoryModal({
102
102
 
103
103
  return (
104
104
  <Modal
105
- size="lg"
105
+ size='lg'
106
106
  centered
107
107
  show={isVisible}
108
108
  onHide={onHide}
109
- className="p-3 border-0"
109
+ className='p-3 border-0'
110
110
  animation={false}
111
- contentClassName="rounded"
111
+ contentClassName='rounded'
112
112
  >
113
- <ModalHeader className="align-items-center border-0">
114
- <ModalTitle as="h5">{t('Design:selectCategory')}</ModalTitle>
113
+ <ModalHeader className='align-items-center border-0'>
114
+ <ModalTitle as='h5'>{t('Design:selectCategory')}</ModalTitle>
115
115
 
116
- <Button variant="danger" className="btn-sm rounded" onClick={onHide}>
116
+ <Button variant='danger' className='btn-sm rounded' onClick={onHide}>
117
117
  <FaTimes size={20} />
118
118
  </Button>
119
119
  </ModalHeader>
@@ -127,22 +127,22 @@ export function SelectCategoryModal({
127
127
  controls={false}
128
128
  >
129
129
  <Carousel.Item>
130
- <div className="d-flex flex-row flex-wrap p-4 justify-content-between mb-6">
130
+ <div className='d-flex flex-row flex-wrap p-4 justify-content-between mb-6'>
131
131
  {mainCategories.map((categoryType) => {
132
132
  const { label, icon } = MAIN_CATEGORIES[categoryType]
133
133
 
134
134
  return (
135
135
  <Col key={label}>
136
136
  <Button
137
- variant="outline-light"
138
- className="d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded"
139
- role="button"
137
+ variant='outline-light'
138
+ className='d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded'
139
+ role='button'
140
140
  tabIndex={0}
141
141
  onClick={() => categorySelectHandler(categoryType)}
142
142
  active={selectedCategory === categoryType}
143
143
  >
144
144
  {icon}
145
- <h6 className="text-dark mt-3">{t(label)}</h6>
145
+ <h6 className='text-dark mt-3'>{t(label)}</h6>
146
146
  </Button>
147
147
  </Col>
148
148
  )
@@ -150,22 +150,22 @@ export function SelectCategoryModal({
150
150
  </div>
151
151
  </Carousel.Item>
152
152
  <Carousel.Item>
153
- <div className="d-flex flex-row flex-wrap p-4 justify-content-between mb-6">
153
+ <div className='d-flex flex-row flex-wrap p-4 justify-content-between mb-6'>
154
154
  {bookingSubcategories.map((categoryType) => {
155
155
  const { label, icon } = BOOKING_SUBCATEGORIES[categoryType]
156
156
 
157
157
  return (
158
158
  <Col key={label}>
159
159
  <Button
160
- variant="outline-light"
161
- className="d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded"
162
- role="button"
160
+ variant='outline-light'
161
+ className='d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded'
162
+ role='button'
163
163
  tabIndex={0}
164
164
  onClick={() => categorySelectHandler(categoryType)}
165
165
  active={selectedCategory === categoryType}
166
166
  >
167
167
  {icon}
168
- <h6 className="text-dark mt-3">{t(label)}</h6>
168
+ <h6 className='text-dark mt-3'>{t(label)}</h6>
169
169
  </Button>
170
170
  </Col>
171
171
  )
@@ -176,7 +176,7 @@ export function SelectCategoryModal({
176
176
 
177
177
  {isBookingsSelected && (
178
178
  <Button
179
- size="sm"
179
+ size='sm'
180
180
  className={`carousel-control-button ${
181
181
  activeCarouselIndex ? 'left' : 'right'
182
182
  }`}