@licklist/design 0.67.4-dev.0 → 0.67.4

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 (301) hide show
  1. package/.storybook/main.cjs +12 -15
  2. package/dist/assets/iframe/selectArrow.svg.js +17 -0
  3. package/dist/auth/Login/LoginComponent.js +1 -2
  4. package/dist/calendar/Calendar.d.ts +1 -1
  5. package/dist/calendar/Calendar.d.ts.map +1 -1
  6. package/dist/calendar/components/CalendarButtons/CalendarButtons.d.ts.map +1 -1
  7. package/dist/calendar/components/CalendarButtons/CalendarButtons.js +40 -35
  8. package/dist/calendar/utils/index.d.ts +2 -2
  9. package/dist/calendar/utils/index.d.ts.map +1 -1
  10. package/dist/calendar/utils/index.js +4 -20
  11. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts +1 -2
  12. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts.map +1 -1
  13. package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.js +4 -4
  14. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts +2 -2
  15. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts.map +1 -1
  16. package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.js +26 -27
  17. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.d.ts +2 -2
  18. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.d.ts.map +1 -1
  19. package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +3 -3
  20. package/dist/events/edit-event-modal/utils/getDefaultProductSet.d.ts.map +1 -1
  21. package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +1 -0
  22. package/dist/iframe/event/event-card/IframeEventCard.d.ts +1 -1
  23. package/dist/iframe/event/event-card/IframeEventCard.d.ts.map +1 -1
  24. package/dist/iframe/event/event-card/IframeEventCard.js +3 -9
  25. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
  26. package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +0 -2
  27. package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +1 -1
  28. package/dist/index.js +0 -1
  29. package/dist/layout/DropDown.d.ts +1 -2
  30. package/dist/layout/DropDown.d.ts.map +1 -1
  31. package/dist/modals/confirmation/ConfirmModal.d.ts +1 -3
  32. package/dist/modals/confirmation/ConfirmModal.d.ts.map +1 -1
  33. package/dist/modals/confirmation/ConfirmModal.js +8 -172
  34. package/dist/product-set/card/ProductSetCard.d.ts +2 -6
  35. package/dist/product-set/card/ProductSetCard.d.ts.map +1 -1
  36. package/dist/product-set/card/ProductSetCard.js +11 -30
  37. package/dist/product-set/control/DateAndRecurrenceInput.d.ts +2 -3
  38. package/dist/product-set/control/DateAndRecurrenceInput.d.ts.map +1 -1
  39. package/dist/product-set/control/DateAndRecurrenceInput.js +1 -3
  40. package/dist/product-set/control/DateInput.d.ts.map +1 -1
  41. package/dist/product-set/control/DateInput.js +2 -2
  42. package/dist/product-set/control/ProductSetControl.d.ts +3 -3
  43. package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
  44. package/dist/product-set/control/ProductSetControl.js +16 -4
  45. package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
  46. package/dist/product-set/form/ProductCategoriesControl.js +2 -48
  47. package/dist/product-set/form/ProductSetForm.d.ts +2 -6
  48. package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
  49. package/dist/product-set/form/ProductSetForm.js +5 -65
  50. package/dist/product-set/form/ProductZonesControl.d.ts.map +1 -1
  51. package/dist/product-set/form/ProductZonesControl.js +2 -0
  52. package/dist/product-set/form/SelectCategoryModal.d.ts +0 -12
  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 +3 -0
  57. package/dist/product-set/form/VenueMapsControl.d.ts.map +1 -1
  58. package/dist/product-set/form/VenueMapsControl.js +3 -0
  59. package/dist/product-set/form/index.d.ts +0 -1
  60. package/dist/product-set/form/index.d.ts.map +1 -1
  61. package/dist/product-set/utils/index.d.ts +0 -7
  62. package/dist/product-set/utils/index.d.ts.map +1 -1
  63. package/dist/product-set/utils/index.js +1 -10
  64. package/dist/provider/location-input/LocationInput.d.ts +1 -4
  65. package/dist/provider/location-input/LocationInput.d.ts.map +1 -1
  66. package/dist/provider/location-input/LocationInput.js +2 -41
  67. package/dist/provider/location-input/LocationInputDescription.d.ts +1 -4
  68. package/dist/provider/location-input/LocationInputDescription.d.ts.map +1 -1
  69. package/dist/provider/location-input/LocationInputDescription.js +12 -27
  70. package/dist/provider/location-input/index.d.ts +0 -1
  71. package/dist/provider/location-input/index.d.ts.map +1 -1
  72. package/dist/provider/provider-form/ProviderForm.d.ts +1 -3
  73. package/dist/provider/provider-form/ProviderForm.d.ts.map +1 -1
  74. package/dist/provider/provider-form/ProviderForm.js +3 -7
  75. package/dist/provider/venue-form/VenueForm.d.ts +1 -3
  76. package/dist/provider/venue-form/VenueForm.d.ts.map +1 -1
  77. package/dist/provider/venue-form/VenueForm.js +3 -7
  78. package/dist/provider/working-hours-input/WorkingHoursInputDescription.d.ts.map +1 -1
  79. package/dist/provider/working-hours-input/WorkingHoursInputDescription.js +8 -4
  80. package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.d.ts +1 -2
  81. package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.d.ts.map +1 -1
  82. package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.js +13 -7
  83. package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts +1 -4
  84. package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts.map +1 -1
  85. package/dist/recurring-date-picker-input/RecurringDatePickerInput.js +3 -7
  86. package/dist/recurring-date-picker-input/utils.d.ts +0 -5
  87. package/dist/recurring-date-picker-input/utils.d.ts.map +1 -1
  88. package/dist/recurring-date-picker-input/utils.js +3 -72
  89. package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
  90. package/dist/sales/booking/results/components/ResultCard.js +7 -4
  91. package/dist/sales/guest-profile/previous-bookings/PreviousBookings.js +1 -1
  92. package/dist/sales/manual-booking/formatDays.js +3 -3
  93. package/dist/sales/manual-booking/select-event/SelectEvent.d.ts.map +1 -1
  94. package/dist/sales/manual-booking/select-event/SelectEvent.js +3 -3
  95. package/dist/sales/manual-booking/summary/ManualBookingSummary.d.ts.map +1 -1
  96. package/dist/sales/manual-booking/summary/ManualBookingSummary.js +2 -2
  97. package/dist/sales/notes/NotesTableRow.js +4 -3
  98. package/dist/setting/admin/AdminSettingForm.d.ts +2 -2
  99. package/dist/setting/admin/AdminSettingForm.d.ts.map +1 -1
  100. package/dist/snippet/snippet-template/preview/Preview.d.ts.map +1 -1
  101. package/dist/snippet/snippet-template/preview/Preview.js +0 -6
  102. package/dist/sortable-tree/SortableTreeItem.d.ts +1 -2
  103. package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
  104. package/dist/sortable-tree/SortableTreeItem.js +4 -10
  105. package/dist/styles/auth/AccessDenied.scss +1 -1
  106. package/dist/styles/back-button/BackButton.scss +24 -25
  107. package/dist/styles/back-button/_index.scss +1 -1
  108. package/dist/styles/company-user-form/UserForm.scss +7 -4
  109. package/dist/styles/company-user-form/_index.scss +1 -1
  110. package/dist/styles/custom-fields/CreateSortableListItem.scss +1 -2
  111. package/dist/styles/custom-fields/_index.scss +1 -1
  112. package/dist/styles/customers/Filter.scss +5 -5
  113. package/dist/styles/events/EditEventModal.scss +3 -1
  114. package/dist/styles/events/EventVenueMap.scss +7 -7
  115. package/dist/styles/form/Input.scss +1 -1
  116. package/dist/styles/header/Header.scss +1 -1
  117. package/dist/styles/header/elements/CompanySelector.scss +2 -2
  118. package/dist/styles/iframe-events/Calendar.scss +1 -0
  119. package/dist/styles/iframe-events/CalendarSelect.scss +1 -1
  120. package/dist/styles/iframe-events/CategoryStepsForm.scss +7 -6
  121. package/dist/styles/iframe-events/Event.scss +4 -2
  122. package/dist/styles/iframe-events/EventForm.scss +54 -54
  123. package/dist/styles/iframe-events/EventNavigationFooter.scss +0 -1
  124. package/dist/styles/iframe-events/TicketDescription.scss +1 -1
  125. package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  126. package/dist/styles/iframe-payments/PaymentForm.scss +1 -1
  127. package/dist/styles/layout/BackgroundVideoContainer.scss +2 -2
  128. package/dist/styles/notification/Notification.scss +1 -1
  129. package/dist/styles/order-items-table/OrderItemsTable.scss +2 -1
  130. package/dist/styles/product-set/CreateProductSetItem.scss +13 -15
  131. package/dist/styles/product-set/DateAndRecurrenceInput.scss +8 -6
  132. package/dist/styles/product-set/EditCategoryModal.scss +4 -4
  133. package/dist/styles/product-set/EditProductModal.scss +3 -3
  134. package/dist/styles/product-set/EditStepModal.scss +4 -4
  135. package/dist/styles/product-set/EditVenueMapSetModal.scss +6 -6
  136. package/dist/styles/product-set/ProductSetForm.scss +2 -25
  137. package/dist/styles/product-set/TutorialGifCard.scss +1 -1
  138. package/dist/styles/product-set/_index.scss +2 -2
  139. package/dist/styles/report/ReportCard.scss +0 -1
  140. package/dist/styles/report/_index.scss +1 -1
  141. package/dist/styles/resources-blocking/_index.scss +0 -4
  142. package/dist/styles/sales/BookingFilter.scss +2 -2
  143. package/dist/styles/sales/BookingResults.scss +1 -1
  144. package/dist/styles/sales/BookingTabs.scss +5 -7
  145. package/dist/styles/sales/Filters.scss +4 -5
  146. package/dist/styles/sales/GuestProfile.scss +175 -170
  147. package/dist/styles/sales/LifeTimeSales.scss +1 -1
  148. package/dist/styles/sales/ManualBooking.scss +2 -4
  149. package/dist/styles/snippet-templates/_snippetVariables.scss +244 -63
  150. package/dist/styles/sortable-field/SortableField.scss +16 -16
  151. package/dist/styles/sortable-field/_index.scss +1 -1
  152. package/dist/styles/sortable-tree/Item.scss +4 -4
  153. package/dist/styles/table/Table.scss +1 -1
  154. package/dist/styles/themes/bookedit/_variables.scss +32 -10
  155. package/dist/styles/themes/licklist/_variables.scss +1 -1
  156. package/dist/styles/tiptap-editor/TiptapEditor.scss +10 -9
  157. package/dist/styles/tiptap-editor/_index.scss +1 -1
  158. package/dist/styles/venue-map-sets/VenueMapSetForm.scss +4 -5
  159. package/dist/styles/virtualized/_index.scss +1 -1
  160. package/dist/styles/zones/ZoneForm.scss +0 -1
  161. package/dist/styles/zones/ZoneRecurrencesControl.scss +8 -6
  162. package/dist/typeahead/Typeahead.d.ts +1 -5
  163. package/dist/typeahead/Typeahead.d.ts.map +1 -1
  164. package/dist/typeahead/Typeahead.js +2 -9
  165. package/dist/zone/form/ZoneForm.d.ts +2 -3
  166. package/dist/zone/form/ZoneForm.d.ts.map +1 -1
  167. package/dist/zone/form/ZoneForm.js +2 -4
  168. package/dist/zone/form/components/ZoneControl.d.ts +2 -3
  169. package/dist/zone/form/components/ZoneControl.d.ts.map +1 -1
  170. package/dist/zone/form/components/ZoneControl.js +2 -5
  171. package/dist/zone/form/components/ZoneRecurrencesControl.d.ts +4 -5
  172. package/dist/zone/form/components/ZoneRecurrencesControl.d.ts.map +1 -1
  173. package/dist/zone/form/components/ZoneRecurrencesControl.js +2 -5
  174. package/dist/zone/form/utils/dates.d.ts.map +1 -1
  175. package/package.json +10 -10
  176. package/src/auth/ChangePassword/ChangePassword.stories.tsx +1 -1
  177. package/src/auth/Login/LoginComponent.tsx +1 -1
  178. package/src/auth/ResetPassword/ResetPassword.stories.tsx +1 -1
  179. package/src/calendar/components/CalendarButtons/CalendarButtons.tsx +28 -31
  180. package/src/calendar/utils/index.ts +4 -26
  181. package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +2 -3
  182. package/src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx +37 -35
  183. package/src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx +3 -3
  184. package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +1 -0
  185. package/src/header/elements/Elements.stories.tsx +1 -1
  186. package/src/help/popover/Popover.stories.tsx +1 -1
  187. package/src/iframe/event/event-card/IframeEventCard.tsx +2 -16
  188. package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +3 -3
  189. package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +0 -1
  190. package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +0 -1
  191. package/src/layout/DropDown.tsx +1 -2
  192. package/src/modals/confirmation/ConfirmModal.tsx +3 -19
  193. package/src/product-set/card/ProductSetCard.stories.tsx +1 -3
  194. package/src/product-set/card/ProductSetCard.tsx +8 -47
  195. package/src/product-set/control/DateAndRecurrenceInput.tsx +4 -6
  196. package/src/product-set/control/DateInput.tsx +1 -2
  197. package/src/product-set/control/ProductSetControl.tsx +15 -4
  198. package/src/product-set/control/ProductSetRecurrenceControl.stories.tsx +2 -2
  199. package/src/product-set/form/ProductCategoriesControl.tsx +1 -37
  200. package/src/product-set/form/ProductSetForm.tsx +3 -25
  201. package/src/product-set/form/ProductZonesControl.tsx +7 -4
  202. package/src/product-set/form/SelectCategoryModal.stories.tsx +1 -1
  203. package/src/product-set/form/SelectCategoryModal.tsx +2 -2
  204. package/src/product-set/form/SubProductsControl.tsx +3 -0
  205. package/src/product-set/form/VenueMapsControl.tsx +3 -0
  206. package/src/product-set/form/index.ts +0 -1
  207. package/src/product-set/product/advanced-options/AdvancedOptions.tsx +5 -5
  208. package/src/product-set/product/booking-management/ProductBookingManagement.stories.tsx +1 -1
  209. package/src/product-set/product/quantity/ProductQuantity.stories.tsx +1 -1
  210. package/src/product-set/product-zone/ProductZoneControl.tsx +9 -9
  211. package/src/product-set/utils/index.ts +0 -11
  212. package/src/provider/location-input/LocationInput.tsx +1 -36
  213. package/src/provider/location-input/LocationInputDescription.tsx +11 -23
  214. package/src/provider/location-input/index.ts +0 -1
  215. package/src/provider/provider-form/ProviderForm.tsx +2 -7
  216. package/src/provider/venue-form/VenueForm.tsx +2 -5
  217. package/src/provider/working-hours-input/WorkingHoursInputDescription.tsx +18 -4
  218. package/src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx +22 -8
  219. package/src/recurring-date-picker-input/RecurringDatePickerInput.stories.tsx +4 -11
  220. package/src/recurring-date-picker-input/RecurringDatePickerInput.tsx +3 -17
  221. package/src/recurring-date-picker-input/utils.ts +1 -86
  222. package/src/sales/booking/results/components/ResultCard.tsx +10 -4
  223. package/src/sales/guest-profile/previous-bookings/PreviousBookings.tsx +1 -1
  224. package/src/sales/manual-booking/formatDays.ts +3 -3
  225. package/src/sales/manual-booking/select-event/SelectEvent.tsx +2 -2
  226. package/src/sales/manual-booking/summary/ManualBookingSummary.tsx +2 -2
  227. package/src/sales/notes/NotesTableRow.tsx +3 -3
  228. package/src/setting/admin/AdminSetting.stories.tsx +0 -1
  229. package/src/setting/admin/AdminSettingForm.tsx +2 -2
  230. package/src/setting/system/SystemSetting.stories.tsx +1 -1
  231. package/src/snippet/snippet-template/preview/Preview.tsx +0 -6
  232. package/src/sortable-tree/SortableTreeItem.tsx +0 -6
  233. package/src/styles/auth/AccessDenied.scss +1 -1
  234. package/src/styles/back-button/BackButton.scss +24 -25
  235. package/src/styles/back-button/_index.scss +1 -1
  236. package/src/styles/company-user-form/UserForm.scss +7 -4
  237. package/src/styles/company-user-form/_index.scss +1 -1
  238. package/src/styles/custom-fields/CreateSortableListItem.scss +1 -2
  239. package/src/styles/custom-fields/_index.scss +1 -1
  240. package/src/styles/customers/Filter.scss +5 -5
  241. package/src/styles/events/EditEventModal.scss +3 -1
  242. package/src/styles/events/EventVenueMap.scss +7 -7
  243. package/src/styles/form/Input.scss +1 -1
  244. package/src/styles/header/Header.scss +1 -1
  245. package/src/styles/header/elements/CompanySelector.scss +2 -2
  246. package/src/styles/iframe-events/Calendar.scss +1 -0
  247. package/src/styles/iframe-events/CalendarSelect.scss +1 -1
  248. package/src/styles/iframe-events/CategoryStepsForm.scss +7 -6
  249. package/src/styles/iframe-events/Event.scss +4 -2
  250. package/src/styles/iframe-events/EventForm.scss +54 -54
  251. package/src/styles/iframe-events/EventNavigationFooter.scss +0 -1
  252. package/src/styles/iframe-events/TicketDescription.scss +1 -1
  253. package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
  254. package/src/styles/iframe-payments/PaymentForm.scss +1 -1
  255. package/src/styles/layout/BackgroundVideoContainer.scss +2 -2
  256. package/src/styles/notification/Notification.scss +1 -1
  257. package/src/styles/order-items-table/OrderItemsTable.scss +2 -1
  258. package/src/styles/product-set/CreateProductSetItem.scss +13 -15
  259. package/src/styles/product-set/DateAndRecurrenceInput.scss +8 -6
  260. package/src/styles/product-set/EditCategoryModal.scss +4 -4
  261. package/src/styles/product-set/EditProductModal.scss +3 -3
  262. package/src/styles/product-set/EditStepModal.scss +4 -4
  263. package/src/styles/product-set/EditVenueMapSetModal.scss +6 -6
  264. package/src/styles/product-set/ProductSetForm.scss +2 -25
  265. package/src/styles/product-set/TutorialGifCard.scss +1 -1
  266. package/src/styles/product-set/_index.scss +2 -2
  267. package/src/styles/report/ReportCard.scss +0 -1
  268. package/src/styles/report/_index.scss +1 -1
  269. package/src/styles/resources-blocking/_index.scss +0 -4
  270. package/src/styles/sales/BookingFilter.scss +2 -2
  271. package/src/styles/sales/BookingResults.scss +1 -1
  272. package/src/styles/sales/BookingTabs.scss +5 -7
  273. package/src/styles/sales/Filters.scss +4 -5
  274. package/src/styles/sales/GuestProfile.scss +175 -170
  275. package/src/styles/sales/LifeTimeSales.scss +1 -1
  276. package/src/styles/sales/ManualBooking.scss +2 -4
  277. package/src/styles/snippet-templates/_snippetVariables.scss +244 -63
  278. package/src/styles/sortable-field/SortableField.scss +16 -16
  279. package/src/styles/sortable-field/_index.scss +1 -1
  280. package/src/styles/sortable-tree/Item.scss +4 -4
  281. package/src/styles/table/Table.scss +1 -1
  282. package/src/styles/themes/bookedit/_variables.scss +32 -10
  283. package/src/styles/themes/licklist/_variables.scss +1 -1
  284. package/src/styles/tiptap-editor/TiptapEditor.scss +10 -9
  285. package/src/styles/tiptap-editor/_index.scss +1 -1
  286. package/src/styles/venue-map-sets/VenueMapSetForm.scss +4 -5
  287. package/src/styles/virtualized/_index.scss +1 -1
  288. package/src/styles/zones/ZoneForm.scss +0 -1
  289. package/src/styles/zones/ZoneRecurrencesControl.scss +8 -6
  290. package/src/tiptap-editor/TipTapEditor.stories.tsx +4 -6
  291. package/src/tiptap-editor/TipTapMenu/TipTapMenu.stories.tsx +2 -5
  292. package/src/typeahead/Typeahead.tsx +1 -15
  293. package/src/zone/form/ZoneForm.tsx +2 -9
  294. package/src/zone/form/components/ZoneControl.tsx +3 -8
  295. package/src/zone/form/components/ZoneRecurrencesControl.tsx +5 -10
  296. package/src/zone/form/utils/dates.ts +10 -9
  297. package/yarn.lock +48 -35
  298. package/dist/product-set/form/ProductSetNameControl.d.ts +0 -6
  299. package/dist/product-set/form/ProductSetNameControl.d.ts.map +0 -1
  300. package/dist/product-set/form/ProductSetNameControl.js +0 -35
  301. package/src/product-set/form/ProductSetNameControl.tsx +0 -27
@@ -1,8 +1,4 @@
1
- import { WorkHour } from "@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper";
2
- import { fromIso } from "@licklist/core/dist/Services";
3
- import { DateTime, Interval } from "luxon";
4
- import { Validate } from "react-hook-form";
5
- import { useTranslation } from "react-i18next";
1
+ import { DateTime } from "luxon";
6
2
  import RRule, { Frequency, Weekday } from "rrule";
7
3
 
8
4
  export const getWeekdayForFrequency = ({
@@ -15,7 +11,6 @@ export const getWeekdayForFrequency = ({
15
11
  const parsedDate = DateTime.fromISO(date);
16
12
  return new Weekday(
17
13
  parsedDate.weekday - 1,
18
- // eslint-disable-next-line no-nested-ternary
19
14
  frequency !== Frequency.MONTHLY
20
15
  ? undefined
21
16
  : parsedDate.day + 7 > parsedDate.daysInMonth
@@ -114,83 +109,3 @@ export const parseAndValidateRRule = ({
114
109
  until: options.until,
115
110
  } as ParsedRRuleOptions;
116
111
  };
117
-
118
- export const useWorkHoursValidation = (
119
- byWeekDay: Weekday[] = [],
120
- workHours: WorkHour[] | undefined,
121
- timeZone: string,
122
- ): {
123
- /* @ts-expect-error 2314 */
124
- validate?: Validate<string>;
125
- } => {
126
- const { t } = useTranslation("Validation");
127
- if (!workHours) return {};
128
-
129
- // map every day to array of intervals describing workhours for that day
130
- let intervalsByDay = workHours.map((workhour, index, self) => {
131
- const res: Interval[] = [];
132
-
133
- const startTime = fromIso(workhour.start, timeZone);
134
- const endTime = fromIso(workhour.end, timeZone);
135
-
136
- if (endTime > startTime) {
137
- res.push(Interval.fromDateTimes(startTime, endTime));
138
- } else {
139
- // if end is before start, then it means that end is on the next day
140
- // so count only to the end of current day
141
- res.push(Interval.fromDateTimes(startTime, startTime.endOf("day")));
142
- }
143
-
144
- const prevIndex = index === 0 ? self.length - 1 : index - 1;
145
-
146
- const prevStartTime = fromIso(self[prevIndex].start, timeZone);
147
- const prevEndTime = fromIso(self[prevIndex].end, timeZone);
148
-
149
- // if prevStartTime > prevEndTime then it means that prevEndTime is on the current day
150
- // so we need to add interval from start of current day to prevEndTime
151
- if (prevStartTime > prevEndTime) {
152
- res.push(Interval.fromDateTimes(prevEndTime.startOf("day"), prevEndTime));
153
- }
154
-
155
- return res;
156
- });
157
-
158
- // if length === 0 or length === 7 then all workhours are selected, no need to filter
159
- if (![0, 7].includes(byWeekDay.length)) {
160
- intervalsByDay = intervalsByDay.filter((_, index) =>
161
- byWeekDay.find(({ weekday }) => weekday === index),
162
- );
163
- }
164
-
165
- return {
166
- validate: (_time: string) => {
167
- // workaround for issue with form values
168
- // default values and entered values have different formats
169
- const time = fromIso(_time, timeZone);
170
-
171
- const notFittingIntervalsByDay = intervalsByDay.reduce<Interval[][]>(
172
- (acc, intervalsByDay) => {
173
- if (!intervalsByDay.some((interval) => interval.contains(time))) {
174
- acc.push(intervalsByDay);
175
- }
176
- return acc;
177
- },
178
- [],
179
- );
180
-
181
- const notFittingIntervals = notFittingIntervalsByDay
182
- .flat()
183
- .filter((interval) => !interval.contains(time));
184
-
185
- const attribute = notFittingIntervals
186
- .map((interval) => interval.toFormat("HH:mm"))
187
- .join(", ");
188
-
189
- if (notFittingIntervalsByDay.length !== 0) {
190
- return t("outsideWorkingHours", { attribute }) as string;
191
- }
192
-
193
- return true;
194
- },
195
- };
196
- };
@@ -1,5 +1,6 @@
1
1
  import clsx from "clsx";
2
2
  import { useTranslation } from "react-i18next";
3
+ import { DateTime } from "luxon";
3
4
  import { useIntl } from "react-intl";
4
5
  import {
5
6
  Order,
@@ -11,7 +12,6 @@ import * as Config from "@licklist/core/dist/Config";
11
12
  import { formatDateStringForEvent } from "@licklist/plugins/dist/utils/formatDate";
12
13
  import { getOrderSourceTitle } from "@licklist/plugins/dist/utils/sourceTitle";
13
14
  import { FaUser } from "react-icons/fa";
14
- import { fromIso } from "@licklist/core/dist/Services";
15
15
 
16
16
  export type ResultCardProps = {
17
17
  className: string;
@@ -20,6 +20,8 @@ export type ResultCardProps = {
20
20
  onCardClick?: (id: number) => void;
21
21
  };
22
22
 
23
+ // @TODO integrate when API will be available
24
+ // activity and staff keys
23
25
  export const ResultCard = ({
24
26
  order,
25
27
  className,
@@ -46,7 +48,11 @@ export const ResultCard = ({
46
48
  const productList = products.map((product) => product.name)?.join(", ") || "";
47
49
  const activityName = event?.name || menu?.name || "";
48
50
 
49
- const onClick = () => onCardClick?.(id);
51
+ const onClick = () => {
52
+ if (!onCardClick) return;
53
+
54
+ onCardClick(id);
55
+ };
50
56
 
51
57
  return (
52
58
  <div
@@ -81,10 +87,10 @@ export const ResultCard = ({
81
87
  {t("status")}: {t(status)}
82
88
  </p>
83
89
  <p>
84
- {t("date")}: {formatDateStringForEvent(startDate)}
90
+ {t("date")}: {formatDateStringForEvent(startDate, false)}
85
91
  </p>
86
92
  <p>
87
- {t("time")}: {fromIso(startDate).toFormat(TIME_FORMAT)}
93
+ {t("time")}: {DateTime.fromISO(startDate).toFormat(TIME_FORMAT)}
88
94
  </p>
89
95
  <p className="products" title={productList}>
90
96
  {t("products")}: {productList}
@@ -19,7 +19,7 @@ export const PreviousBookings = ({
19
19
  const [showOlderBookings, setShowOlderBookings] = useState(false);
20
20
 
21
21
  const formatDate = (date: string) => {
22
- return DateTime.fromJSDate(new Date(date)).toFormat("dd LLL yyyy HH:mm");
22
+ return DateTime.fromJSDate(new Date(date)).toFormat("dd LLL yyyy hh:mm");
23
23
  };
24
24
 
25
25
  const capitalizeFirstLetter = (string: string) => {
@@ -1,5 +1,5 @@
1
1
  import { TIME_FORMAT } from "@licklist/core/dist/Config";
2
- import { fromIso } from "@licklist/core/dist/Services";
2
+ import { DateTime } from "luxon";
3
3
 
4
4
  export const formatToDays = (daysInWeek?: number[]): string | null => {
5
5
  if (!daysInWeek) {
@@ -40,7 +40,7 @@ export const formatToDays = (daysInWeek?: number[]): string | null => {
40
40
  };
41
41
 
42
42
  export const formatToHours = (startAt: string, endAt: string) => {
43
- const firstTime = fromIso(startAt).toFormat(TIME_FORMAT);
44
- const lastTime = fromIso(endAt).toFormat(TIME_FORMAT);
43
+ const firstTime = DateTime.fromISO(startAt).toFormat(TIME_FORMAT);
44
+ const lastTime = DateTime.fromISO(endAt).toFormat(TIME_FORMAT);
45
45
  return `${firstTime} - ${lastTime}`;
46
46
  };
@@ -2,8 +2,8 @@ import { useTranslation } from "react-i18next";
2
2
  import { Card, Form } from "react-bootstrap";
3
3
  import MediaService from "@licklist/plugins/dist/services/Media/MediaService";
4
4
  import { rrulestr } from "rrule";
5
+ import { DateTime } from "luxon";
5
6
  import { ManualBookingEvent } from "@licklist/plugins/dist/types/context/sale/menuSteps";
6
- import { fromIso } from "@licklist/core/dist/Services";
7
7
  import { formatToDays, formatToHours } from "../formatDays";
8
8
  import { BlockLoader } from "../../../static/loader";
9
9
 
@@ -106,7 +106,7 @@ export const EventCardManualBooking = ({
106
106
  rrule.includes("EXDATE") ? rrule.split(";EXDATE=")[0] : rrule,
107
107
  )?.options?.byweekday,
108
108
  )
109
- : formatToDays([fromIso(startAt)?.day])}
109
+ : formatToDays([DateTime.fromISO(startAt)?.day])}
110
110
  </div>
111
111
  <div className="event-card-hours">{formatToHours(startAt, endAt)}</div>
112
112
  </div>
@@ -1,5 +1,6 @@
1
1
  import { useTranslation } from "react-i18next";
2
2
  import { ManualBookingOrder } from "@licklist/plugins/dist/context/sale/ManualBookingStepsContext";
3
+ import { DateTime } from "luxon";
3
4
  import {
4
5
  DATE_TIME_MANUAL_BOOKING_FORMAT,
5
6
  TIME_FORMAT,
@@ -11,7 +12,6 @@ import {
11
12
  RelyOnPeopleType,
12
13
  } from "@licklist/core/dist/DataMapper/Product/ProductSetDataMapper";
13
14
  import { getRelyOnPeopleMultiplier } from "@licklist/plugins/dist/utils/relyOnPeople";
14
- import { fromIso } from "@licklist/core/dist/Services";
15
15
  import { BlockLoader } from "../../../static/loader";
16
16
 
17
17
  export interface ManualBookingSummaryProps {
@@ -41,7 +41,7 @@ export const ManualBookingSummary = ({
41
41
  const { formatNumber } = useIntl();
42
42
  const showRelyOnPeople =
43
43
  relyOnPeopleType && relyOnPeopleType !== RELY_ON_PEOPLE_QUANTITY;
44
- const currentDate = fromIso(orderDate);
44
+ const currentDate = DateTime.fromISO(orderDate);
45
45
  const date = currentDate.toFormat(DATE_TIME_MANUAL_BOOKING_FORMAT);
46
46
  const time = currentDate.toFormat(TIME_FORMAT);
47
47
  return (
@@ -9,8 +9,8 @@ import { DateTime } from "luxon";
9
9
  import {
10
10
  DATE_TIME_FORMAT,
11
11
  DATE_TIME_FULL_FORMAT,
12
- UTC_TIMEZONE,
13
12
  } from "@licklist/core/dist/Config";
13
+ import { getClientTimeZone } from "@licklist/core/dist/Services";
14
14
  import { FaEllipsisH, FaEye, FaTrashAlt } from "react-icons/fa";
15
15
  import { ConfirmModal } from "../../modals";
16
16
  import { MenuButton } from "../../table";
@@ -27,9 +27,9 @@ export const TableRow = ({ note, onClick, onDeleteNote }: TableRowProps) => {
27
27
  const [isOverlayVisibile, setIsOverlayVisible] = useState(false);
28
28
 
29
29
  const date = DateTime.fromFormat(note.updatedAt, DATE_TIME_FULL_FORMAT, {
30
- zone: UTC_TIMEZONE,
30
+ zone: "utc",
31
31
  })
32
- .toLocal()
32
+ .setZone(getClientTimeZone())
33
33
  .toFormat(DATE_TIME_FORMAT);
34
34
 
35
35
  return (
@@ -19,7 +19,6 @@ export const SettingFormComponent: Story<AdminSettingFormProps> = (args) => (
19
19
  </Container>
20
20
  );
21
21
 
22
-
23
22
  export const PaymentFeeFormComponent: Story<PaymentFeeFormProps> = (args) => {
24
23
  const form = useForm<PaymentFeeFormFieldValues>({
25
24
  defaultValues: args.defaultValues,
@@ -10,7 +10,7 @@ import Row from "react-bootstrap/Row";
10
10
  import Col from "react-bootstrap/Col";
11
11
  import { Link } from "react-router-dom";
12
12
  import HookFormService from "@licklist/plugins/dist/services/Form/HookFormService";
13
- import { ProvidableType } from "@licklist/core/dist/DataMapper/Provider/ProvidableDataMapper";
13
+ import { ProviderType } from "@licklist/core/dist/DataMapper/Provider/ProvidableDataMapper";
14
14
  import { FaCommentAlt } from "react-icons/fa";
15
15
  import { PaymentFeeForm, PaymentFeeFormFieldValues } from "./PaymentFeeForm";
16
16
  import { Currency } from "../../types/currency";
@@ -32,7 +32,7 @@ export interface AdminSettingFormProps extends HasPermissionProp {
32
32
  providerMetadata: {
33
33
  country?: string;
34
34
  providableId?: number;
35
- providerType?: ProvidableType;
35
+ providerType?: ProviderType;
36
36
  };
37
37
  }
38
38
 
@@ -23,4 +23,4 @@ export function Default() {
23
23
  />
24
24
  </Container>
25
25
  );
26
- }
26
+ }
@@ -307,7 +307,6 @@ export function Preview({
307
307
  productCategoryId: 57,
308
308
  productGroupId: null,
309
309
  availableQuantity: 980,
310
- zoneId: null,
311
310
  name: "Cofee",
312
311
  description: "",
313
312
  price: 15,
@@ -316,8 +315,6 @@ export function Preview({
316
315
  maxQuantity: 15,
317
316
  totalQuantity: 980,
318
317
  type: "sale" as const,
319
- capacity: 0,
320
- duration: 0,
321
318
  weight: 0,
322
319
  isAvailable: true,
323
320
  isSoldOut: false,
@@ -336,7 +333,6 @@ export function Preview({
336
333
  productCategoryId: 57,
337
334
  productGroupId: null,
338
335
  availableQuantity: 980,
339
- zoneId: null,
340
336
  name: "Cofee 2",
341
337
  description: "",
342
338
  price: 15,
@@ -345,8 +341,6 @@ export function Preview({
345
341
  maxQuantity: 15,
346
342
  totalQuantity: 980,
347
343
  type: "sale" as const,
348
- capacity: 0,
349
- duration: 0,
350
344
  weight: 0,
351
345
  isAvailable: true,
352
346
  isSoldOut: false,
@@ -33,7 +33,6 @@ export interface SortableTreeItemProps {
33
33
  body: ReactNode;
34
34
  children?: ReactNode;
35
35
  preItem?: ReactNode;
36
- itemButton?: ReactNode;
37
36
  postItem?: ReactNode;
38
37
  sortableItems?: string[];
39
38
  isExpanded?: boolean;
@@ -83,7 +82,6 @@ export function SortableTreeItem({
83
82
  secondaryBadge,
84
83
  setIsExpanded,
85
84
  isOverride,
86
- itemButton,
87
85
  }: SortableTreeItemProps) {
88
86
  const [expanded, setExpanded] = useState(isExpanded);
89
87
  const [isModalVisible, setIsModalVisible] = useState(isNewAdded);
@@ -289,13 +287,9 @@ export function SortableTreeItem({
289
287
  className={clsx(
290
288
  "sortable-tree-item-title",
291
289
  modalLabel && "sortable-tree-product-set-element-title",
292
- "d-flex justify-content-between",
293
290
  )}
294
291
  >
295
292
  {title}
296
- <div className="sortable-tree-item-subtitle">
297
- {itemButton}
298
- </div>
299
293
  </span>
300
294
  {!expanded && (
301
295
  <span className="sortable-tree-item-subtitle">
@@ -8,4 +8,4 @@
8
8
  h6 {
9
9
  color: $gray-600;
10
10
  }
11
- }
11
+ }
@@ -1,33 +1,32 @@
1
1
  $base-height: 2.5rem;
2
2
 
3
3
  .button-wrapper {
4
- background-color: $snippet-page-header-steps-close-button-background-color;
5
- height: $base-height;
4
+ background-color: $snippet-page-header-steps-close-button-background-color;
5
+ height: $base-height;
6
+ width: $base-height;
7
+ border-radius: $base-height;
8
+ transition: $color-transition;
9
+
10
+ .back-button {
11
+ font-size: 2rem;
6
12
  width: $base-height;
7
- border-radius: $base-height;
13
+ height: $base-height;
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ font-weight: lighter;
18
+ color: $snippet-page-header-steps-close-button-border-color;
8
19
  transition: $color-transition;
9
20
 
10
-
11
- .back-button {
12
- font-size: 2rem;
13
- width: $base-height;
14
- height: $base-height;
15
- display: flex;
16
- align-items: center;
17
- justify-content: center;
18
- font-weight: lighter;
19
- color: $snippet-page-header-steps-close-button-border-color;
20
- transition: $color-transition;
21
-
22
- &:hover {
23
- cursor: pointer;
24
- }
21
+ &:hover {
22
+ cursor: pointer;
25
23
  }
24
+ }
26
25
 
27
- &.back-button {
28
- display: flex;
29
- align-items: center;
30
- justify-content: center;
31
- margin-right: 1rem;
32
- }
33
- }
26
+ &.back-button {
27
+ display: flex;
28
+ align-items: center;
29
+ justify-content: center;
30
+ margin-right: 1rem;
31
+ }
32
+ }
@@ -1 +1 @@
1
- @import "./BackButton.scss";
1
+ @import "./BackButton.scss";
@@ -33,11 +33,15 @@
33
33
  }
34
34
 
35
35
  &.active {
36
- color: #0E8CE2;
37
- background: linear-gradient(149.72deg, #D9EFFF 50.04%, #E9F4FE 107.75%);
36
+ color: #0e8ce2;
37
+ background: linear-gradient(
38
+ 149.72deg,
39
+ #d9efff 50.04%,
40
+ #e9f4fe 107.75%
41
+ );
38
42
 
39
43
  svg path {
40
- stroke: #0E8CE2;
44
+ stroke: #0e8ce2;
41
45
  }
42
46
  }
43
47
  }
@@ -62,4 +66,3 @@
62
66
  }
63
67
  }
64
68
  }
65
-
@@ -1 +1 @@
1
- @import "./UserForm.scss";
1
+ @import "./UserForm.scss";
@@ -1,4 +1,3 @@
1
-
2
1
  $sortable-list-item-hover-bg-color: #d9efff !default;
3
2
 
4
3
  .sortable-list-item-wrapper {
@@ -26,4 +25,4 @@ $sortable-list-item-hover-bg-color: #d9efff !default;
26
25
  &:hover {
27
26
  background-color: $sortable-list-item-hover-bg-color;
28
27
  }
29
- }
28
+ }
@@ -1,3 +1,3 @@
1
1
  @import "./FieldItem.scss";
2
2
  @import "./SelectFieldModal.scss";
3
- @import "./CreateSortableListItem.scss";
3
+ @import "./CreateSortableListItem.scss";
@@ -4,13 +4,13 @@
4
4
  font-size: 0.8rem;
5
5
  }
6
6
  }
7
-
7
+
8
8
  @include media-breakpoint-up(md) {
9
9
  label {
10
10
  font-size: 0.9rem;
11
11
  }
12
12
  }
13
-
13
+
14
14
  @include media-breakpoint-up(lg) {
15
15
  label {
16
16
  font-size: 1rem;
@@ -28,7 +28,7 @@
28
28
  flex: 0 0 33.33%;
29
29
  max-width: 33.33%;
30
30
  }
31
-
31
+
32
32
  @include media-breakpoint-down(xs) {
33
33
  flex-direction: column;
34
34
 
@@ -43,11 +43,11 @@
43
43
  &:first-child {
44
44
  padding-left: 0;
45
45
  }
46
-
46
+
47
47
  &:last-child {
48
48
  padding-right: 0;
49
49
  }
50
50
  }
51
51
  }
52
- }
52
+ }
53
53
  }
@@ -5,7 +5,9 @@
5
5
  padding: 1rem 2rem;
6
6
  border-radius: 1rem;
7
7
  margin-bottom: 1.5rem;
8
- transition: color 0.2s ease-out, background-color 0.2s ease-out;
8
+ transition:
9
+ color 0.2s ease-out,
10
+ background-color 0.2s ease-out;
9
11
  margin-left: 1rem;
10
12
 
11
13
  &:hover {
@@ -5,44 +5,44 @@
5
5
  overflow: hidden;
6
6
  background-color: $gray-600;
7
7
  }
8
-
8
+
9
9
  .canvas-scrollbars {
10
10
  .scrollbar-wrapper {
11
11
  position: absolute;
12
12
  z-index: 5;
13
13
  overflow: hidden;
14
-
14
+
15
15
  .scroll-element {
16
16
  position: absolute;
17
17
  display: block;
18
18
  border-radius: 0.375rem;
19
19
  background: rgba(0, 0, 0, 0.3);
20
20
  outline: 1px solid rgba(255, 255, 255, 0.3);
21
-
21
+
22
22
  &:hover {
23
23
  background: rgba(0, 0, 0, 0.5);
24
24
  transition: background-color 500ms linear;
25
25
  cursor: pointer;
26
26
  }
27
27
  }
28
-
28
+
29
29
  .horizontal-scroll {
30
30
  width: 100%;
31
31
  height: 0.375rem;
32
32
  }
33
-
33
+
34
34
  .vertical-scroll {
35
35
  height: 100%;
36
36
  width: 0.375rem;
37
37
  }
38
-
38
+
39
39
  &-vertical {
40
40
  right: 0.1rem;
41
41
  height: calc(100% - 1rem);
42
42
  margin: 0.5rem 0;
43
43
  width: 0.5rem;
44
44
  }
45
-
45
+
46
46
  &-horizontal {
47
47
  bottom: 0.1rem;
48
48
  width: calc(100% - 1rem);
@@ -33,4 +33,4 @@ input[type="date"].date-input-with-value::-webkit-datetime-edit-year-field {
33
33
  .invalid-feedback-message {
34
34
  font-size: 80%;
35
35
  color: #f94b25;
36
- }
36
+ }
@@ -5,7 +5,7 @@
5
5
  justify-content: space-between;
6
6
  display: flex;
7
7
  flex-direction: row;
8
-
8
+
9
9
  @include media-breakpoint-down(sm) {
10
10
  width: 100%;
11
11
  }
@@ -1,4 +1,4 @@
1
- $company-selector-font-size: .85rem !default;
1
+ $company-selector-font-size: 0.85rem !default;
2
2
  $company-selector-font-weight: $font-weight-semibold !default;
3
3
 
4
4
  .header-company-selector-container {
@@ -20,7 +20,7 @@ $company-selector-font-weight: $font-weight-semibold !default;
20
20
  .header-company-selector {
21
21
  border-color: transparent;
22
22
  background: transparent;
23
- padding: 0 .25rem;
23
+ padding: 0 0.25rem;
24
24
  font-size: $company-selector-font-size;
25
25
  font-weight: $company-selector-font-weight;
26
26
  }
@@ -48,6 +48,7 @@
48
48
  height: 2.25rem;
49
49
  width: 14.125rem;
50
50
  justify-content: space-between;
51
+ border: 1px solid $snippet-dropdown-border-color;
51
52
  border-radius: $iframe-border-radius;
52
53
  transition: $color-transition;
53
54
 
@@ -15,4 +15,4 @@
15
15
  box-shadow: 0 0 0 0;
16
16
  }
17
17
  }
18
- }
18
+ }
@@ -44,15 +44,15 @@
44
44
  background-color: $snippet-canvas-background-color;
45
45
  transition: $color-transition;
46
46
  }
47
-
47
+
48
48
  .zoom-buttons {
49
49
  bottom: 0;
50
50
  top: unset;
51
-
51
+
52
52
  .buttons-wrapper {
53
53
  background-color: transparent;
54
- }
55
-
54
+ }
55
+
56
56
  .icon-wrapper {
57
57
  display: none;
58
58
  }
@@ -65,7 +65,8 @@
65
65
  background-color: $snippet-elements-button-background-color;
66
66
  border-color: $snippet-elements-button-border-color;
67
67
 
68
- &:hover, &:focus {
68
+ &:hover,
69
+ &:focus {
69
70
  box-shadow: none;
70
71
  transition: $color-transition;
71
72
  color: $snippet-elements-button-color;
@@ -91,4 +92,4 @@
91
92
  padding: 1rem;
92
93
  }
93
94
  }
94
- }
95
+ }
@@ -171,7 +171,8 @@
171
171
  color: $snippet-elements-button-color;
172
172
  border: none;
173
173
  background-color: $snippet-elements-button-background-color;
174
- box-shadow: 0 0 0 $input-btn-focus-width $snippet-elements-button-background-color;
174
+ box-shadow: 0 0 0 $input-btn-focus-width
175
+ $snippet-elements-button-background-color;
175
176
  }
176
177
 
177
178
  &:disabled {
@@ -227,7 +228,8 @@
227
228
  color: $snippet-elements-button-color;
228
229
  border: none;
229
230
  background-color: $snippet-elements-button-background-color;
230
- box-shadow: 0 0 0 $input-btn-focus-width $snippet-elements-button-background-color;
231
+ box-shadow: 0 0 0 $input-btn-focus-width
232
+ $snippet-elements-button-background-color;
231
233
  }
232
234
 
233
235
  &:disabled {