@licklist/design 0.44.486-dev.49 → 0.44.486-dev.5
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.
- package/dist/assets/logo/bookedit.svg +11 -9
- package/dist/assets/logo/bookedit.svg.js +1 -1
- package/dist/assets/logo/licklist.svg +2 -0
- package/dist/assets/logo/licklist.svg.js +1 -1
- package/dist/date-time-button/DateTimeButton.d.ts +1 -7
- package/dist/date-time-button/DateTimeButton.d.ts.map +1 -1
- package/dist/date-time-button/DateTimeButton.js +1 -1
- package/dist/events/edit-event-modal/IntervalInput.d.ts.map +1 -1
- package/dist/events/edit-event-modal/IntervalInput.js +1 -1
- package/dist/events/event-venue-map/hooks/useImage.d.ts.map +1 -1
- package/dist/events/event-venue-map/hooks/useImage.js +1 -1
- package/dist/file-upload/FileUpload.d.ts.map +1 -1
- package/dist/file-upload/FileUpload.js +1 -1
- package/dist/iframe/activity-cards/activity-card/ActivityCard.d.ts +12 -0
- package/dist/iframe/activity-cards/activity-card/ActivityCard.d.ts.map +1 -0
- package/dist/iframe/activity-cards/activity-card/ActivityCard.js +1 -0
- package/dist/iframe/activity-cards/index.d.ts +3 -0
- package/dist/iframe/activity-cards/index.d.ts.map +1 -0
- package/dist/iframe/activity-cards/list-activity-card/ListActivityCard.d.ts +12 -0
- package/dist/iframe/activity-cards/list-activity-card/ListActivityCard.d.ts.map +1 -0
- package/dist/iframe/activity-cards/list-activity-card/ListActivityCard.js +1 -0
- package/dist/iframe/event/event-calendar/EventCalendar.d.ts +7 -0
- package/dist/iframe/event/event-calendar/EventCalendar.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/EventCalendar.js +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarButtons/CalendarButtons.d.ts +6 -0
- package/dist/iframe/event/event-calendar/components/CalendarButtons/CalendarButtons.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarButtons/CalendarButtons.js +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarButtons/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDate/CalendarDate.d.ts +12 -0
- package/dist/iframe/event/event-calendar/components/CalendarDate/CalendarDate.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDate/CalendarDate.js +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDate/index.d.ts +3 -0
- package/dist/iframe/event/event-calendar/components/CalendarDate/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDates/CalendarDates.d.ts +7 -0
- package/dist/iframe/event/event-calendar/components/CalendarDates/CalendarDates.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDates/CalendarDates.js +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarDates/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarSelect/CalendarSelect.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarSelect/CalendarSelect.js +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarSelect/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarWeekdays/CalendarWeekdays.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/components/CalendarWeekdays/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/index.d.ts +4 -0
- package/dist/iframe/event/event-calendar/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/types/index.d.ts +6 -0
- package/dist/iframe/event/event-calendar/types/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/utils/index.d.ts +3 -0
- package/dist/iframe/event/event-calendar/utils/index.d.ts.map +1 -0
- package/dist/iframe/event/event-calendar/utils/index.js +1 -0
- package/dist/iframe/event/index.d.ts +1 -0
- package/dist/iframe/event/index.d.ts.map +1 -1
- package/dist/iframe/index.d.ts +2 -2
- package/dist/iframe/index.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts +1 -1
- package/dist/iframe/order-process/components/BookingSummary/BookingSummary.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/BookingSummary.js +1 -1
- package/dist/iframe/order-process/components/BookingSummary/components/BookingSummaryAccordion/BookingSummaryAccordion.js +1 -1
- package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts +1 -2
- package/dist/iframe/order-process/components/BookingSummary/types/index.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/utils/index.d.ts.map +1 -1
- package/dist/iframe/order-process/components/BookingSummary/utils/index.js +1 -1
- package/dist/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.d.ts +1 -1
- package/dist/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.js +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/CategoryProduct.js +1 -1
- package/dist/iframe/order-process/components/ErrorModal/ErrorModal.d.ts +1 -2
- package/dist/iframe/order-process/components/ErrorModal/ErrorModal.d.ts.map +1 -1
- package/dist/iframe/order-process/components/ErrorModal/ErrorModal.js +1 -1
- package/dist/iframe/order-process/components/Timer/utils/index.d.ts +1 -1
- package/dist/iframe/order-process/components/Timer/utils/index.d.ts.map +1 -1
- package/dist/iframe/order-process/components/Timer/utils/index.js +1 -1
- package/dist/iframe/order-process/components/utils/useCategoryVerification.d.ts +3 -4
- package/dist/iframe/order-process/components/utils/useCategoryVerification.d.ts.map +1 -1
- package/dist/iframe/order-process/components/utils/useCategoryVerification.js +1 -1
- package/dist/iframe/order-process/constants.d.ts +0 -1
- package/dist/iframe/order-process/constants.d.ts.map +1 -1
- package/dist/iframe/order-process/constants.js +1 -1
- package/dist/iframe/page/components/PageBody/components/LeftBlock/LeftBlock.d.ts.map +1 -1
- package/dist/iframe/page/components/PageBody/components/LeftBlock/LeftBlock.js +1 -1
- package/dist/iframe/payment/order-items-table/hooks/useTableData.d.ts.map +1 -1
- package/dist/iframe/payment/order-items-table/hooks/useTableData.js +1 -1
- package/dist/iframe/payment/order-items-table/types/index.d.ts +1 -7
- package/dist/iframe/payment/order-items-table/types/index.d.ts.map +1 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/notification/email-template/control/EmailTemplateControl.d.ts.map +1 -1
- package/dist/notification/email-template/control/EmailTemplateControl.js +1 -1
- package/dist/product-set/control/ProductSetRecurrenceControl.d.ts.map +1 -1
- package/dist/product-set/control/ProductSetRecurrenceControl.js +1 -1
- package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductCategoriesControl.js +1 -1
- package/dist/product-set/form/ProductsControl.d.ts +1 -3
- package/dist/product-set/form/ProductsControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductsControl.js +1 -1
- package/dist/product-set/product/ProductControl.d.ts +1 -2
- package/dist/product-set/product/ProductControl.d.ts.map +1 -1
- package/dist/product-set/product/ProductControl.js +1 -1
- package/dist/product-set/product/duration/ProductDurationControl.js +1 -1
- package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
- package/dist/product-set/product-category/ProductCategoryControl.js +1 -1
- package/dist/provider/working-hours-input/WorkingHoursInputDescription.d.ts.map +1 -1
- package/dist/recurrence-input/RecurrenceEndInput.d.ts +1 -8
- package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
- package/dist/recurrence-input/RecurrenceEndInput.js +1 -1
- package/dist/recurrence-input/RecurrenceInput.d.ts +1 -2
- package/dist/recurrence-input/RecurrenceInput.d.ts.map +1 -1
- package/dist/recurrence-input/RecurrenceInput.js +1 -1
- package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.d.ts +1 -4
- package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.d.ts.map +1 -1
- package/dist/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.js +1 -1
- package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts +0 -1
- package/dist/recurring-date-picker-input/RecurringDatePickerInput.d.ts.map +1 -1
- package/dist/recurring-date-picker-input/RecurringDatePickerInput.js +1 -1
- package/dist/report/form/ReportForm.d.ts.map +1 -1
- package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
- package/dist/sales/booking/results/components/ResultCard.js +1 -1
- package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
- package/dist/sales/coupon/control/CouponFormControl.js +1 -1
- package/dist/snippet/snippet-template/preview/Preview.d.ts.map +1 -1
- package/dist/snippet/snippet-template/preview/Preview.js +1 -1
- package/dist/static/RestrictedAccess.d.ts.map +1 -1
- package/dist/static/form-number-input/FormNumberInput.d.ts +1 -2
- package/dist/static/form-number-input/FormNumberInput.d.ts.map +1 -1
- package/dist/static/form-number-input/FormNumberInput.js +1 -1
- package/dist/styles/form/CustomCheckbox.scss +0 -5
- package/dist/styles/header/Header.scss +4 -0
- package/dist/styles/{activity-card/GridActivitiesCard.scss → iframe-customers-journey/ActivitiesCard.scss} +1 -1
- package/{src/styles/activity-card/ListActivitiesCard.scss → dist/styles/iframe-customers-journey/ActivitiesSelectedCard.scss} +1 -2
- package/dist/styles/{date-time-button → iframe-customers-journey}/DateTimeButton.scss +12 -6
- package/dist/styles/iframe-customers-journey/_index.scss +3 -0
- package/dist/styles/iframe-events/Card.scss +0 -1
- package/dist/styles/iframe-page/PageBody.scss +2 -3
- package/dist/styles/notification/Notification.scss +0 -4
- package/dist/styles/packages.scss +1 -3
- package/dist/styles/resources-blocking/_index.scss +0 -5
- package/dist/styles/themes/bookedit/_index.scss +0 -1
- package/dist/virtualized/components/VirtualizedWindowScroller.d.ts.map +1 -1
- package/dist/virtualized/components/VirtualizedWindowScroller.js +1 -1
- package/dist/zone/form/components/AvailableTimesControl.d.ts.map +1 -1
- package/dist/zone/form/components/AvailableTimesControl.js +1 -1
- package/dist/zone/form/components/ZoneControl.d.ts.map +1 -1
- package/dist/zone/form/components/ZoneControl.js +1 -1
- package/dist/zone/form/components/ZoneRecurrencesControl.d.ts.map +1 -1
- package/dist/zone/form/components/ZoneRecurrencesControl.js +1 -1
- package/dist/zone/form/utils/dates.d.ts.map +1 -1
- package/dist/zone/form/utils/dates.js +1 -1
- package/package.json +2 -2
- package/src/assets/logo/bookedit.svg +11 -9
- package/src/assets/logo/licklist.svg +2 -0
- package/src/date-time-button/DateTimeButton.stories.tsx +0 -17
- package/src/date-time-button/DateTimeButton.tsx +22 -19
- package/src/events/edit-event-modal/IntervalInput.tsx +0 -3
- package/src/events/event-venue-map/hooks/useImage.tsx +8 -17
- package/src/file-upload/FileUpload.tsx +1 -3
- package/src/iframe/{activity-card → activity-cards/activity-card}/ActivityCard.stories.tsx +1 -24
- package/src/iframe/activity-cards/activity-card/ActivityCard.tsx +38 -0
- package/src/iframe/activity-cards/index.ts +2 -0
- package/src/iframe/activity-cards/list-activity-card/ListActivityCard.stories.tsx +52 -0
- package/src/iframe/activity-cards/list-activity-card/ListActivityCard.tsx +49 -0
- package/src/iframe/event/event-calendar/EventCalendar.stories.tsx +36 -0
- package/src/iframe/event/event-calendar/EventCalendar.tsx +27 -0
- package/src/{calendar → iframe/event/event-calendar}/components/CalendarButtons/CalendarButtons.tsx +14 -31
- package/src/iframe/event/event-calendar/components/CalendarDate/CalendarDate.tsx +51 -0
- package/src/iframe/event/event-calendar/components/CalendarDate/index.ts +2 -0
- package/src/{calendar → iframe/event/event-calendar}/components/CalendarDates/CalendarDates.tsx +19 -24
- package/src/{calendar → iframe/event/event-calendar}/components/CalendarSelect/CalendarSelect.tsx +1 -1
- package/src/iframe/event/event-calendar/index.ts +6 -0
- package/src/iframe/event/event-calendar/types/index.ts +6 -0
- package/src/iframe/event/event-calendar/utils/index.ts +11 -0
- package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +1 -1
- package/src/iframe/event/index.ts +6 -0
- package/src/iframe/index.ts +2 -1
- package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +2 -4
- package/src/iframe/order-process/components/BookingSummary/types/index.ts +1 -2
- package/src/iframe/order-process/components/BookingSummary/utils/index.ts +0 -2
- package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.tsx +8 -17
- package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +15 -1
- package/src/iframe/order-process/components/ErrorModal/ErrorModal.tsx +9 -12
- package/src/iframe/order-process/components/Timer/utils/index.ts +9 -6
- package/src/iframe/order-process/components/utils/useCategoryVerification.ts +32 -62
- package/src/iframe/order-process/constants.ts +0 -1
- package/src/iframe/page/Page.stories.tsx +2 -2
- package/src/iframe/page/components/PageBody/components/LeftBlock/LeftBlock.tsx +1 -6
- package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +99 -11
- package/src/iframe/payment/order-items-table/types/index.ts +1 -18
- package/src/iframe/payment/payment-page/PaymentPage.stories.tsx +1 -1
- package/src/iframe/payment/payment-page/PaymentPage.tsx +4 -4
- package/src/index.ts +0 -2
- package/src/notification/email-template/control/EmailTemplateControl.tsx +1 -26
- package/src/product-set/control/ProductSetRecurrenceControl.tsx +4 -8
- package/src/product-set/form/ProductCategoriesControl.tsx +0 -2
- package/src/product-set/form/ProductSetForm.stories.tsx +0 -1
- package/src/product-set/form/ProductsControl.tsx +0 -10
- package/src/product-set/product/ProductControl.tsx +1 -28
- package/src/product-set/product/duration/ProductDurationControl.tsx +1 -1
- package/src/product-set/product-category/ProductCategoryControl.tsx +7 -1
- package/src/provider/location-input/LocationInputDescription.tsx +2 -2
- package/src/provider/working-hours-input/WorkingHoursInputDescription.tsx +6 -9
- package/src/recurrence-input/RecurrenceEndInput.tsx +10 -28
- package/src/recurrence-input/RecurrenceInput.tsx +2 -12
- package/src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx +21 -24
- package/src/recurring-date-picker-input/RecurringDatePickerInput.tsx +0 -9
- package/src/report/form/ReportForm.tsx +1 -1
- package/src/sales/booking/results/components/ResultCard.tsx +2 -3
- package/src/sales/coupon/control/CouponFormControl.tsx +0 -5
- package/src/snippet/snippet-template/preview/Preview.tsx +2 -14
- package/src/static/RestrictedAccess.tsx +1 -1
- package/src/static/form-number-input/FormNumberInput.tsx +1 -8
- package/src/styles/form/CustomCheckbox.scss +0 -5
- package/src/styles/header/Header.scss +4 -0
- package/src/styles/{activity-card/GridActivitiesCard.scss → iframe-customers-journey/ActivitiesCard.scss} +1 -1
- package/{dist/styles/activity-card/ListActivitiesCard.scss → src/styles/iframe-customers-journey/ActivitiesSelectedCard.scss} +1 -2
- package/src/styles/{date-time-button → iframe-customers-journey}/DateTimeButton.scss +12 -6
- package/src/styles/iframe-customers-journey/_index.scss +3 -0
- package/src/styles/iframe-events/Card.scss +0 -1
- package/src/styles/iframe-page/PageBody.scss +2 -3
- package/src/styles/notification/Notification.scss +0 -4
- package/src/styles/packages.scss +1 -3
- package/src/styles/resources-blocking/_index.scss +0 -5
- package/src/styles/themes/bookedit/_index.scss +0 -1
- package/src/typings.d.ts +0 -11
- package/src/virtualized/components/VirtualizedWindowScroller.tsx +1 -2
- package/src/zone/form/components/AvailableTimesControl.tsx +9 -4
- package/src/zone/form/components/ZoneControl.tsx +0 -2
- package/src/zone/form/components/ZoneRecurrencesControl.tsx +35 -27
- package/src/zone/form/utils/dates.ts +36 -29
- package/dist/assets/iframe/available.svg.js +0 -1
- package/dist/assets/iframe/limited.svg.js +0 -1
- package/dist/assets/iframe/soldOut.svg.js +0 -1
- package/dist/assets/logo/favicon.svg +0 -12
- package/dist/availability-indicator/AvailabilityIndicator.d.ts +0 -9
- package/dist/availability-indicator/AvailabilityIndicator.d.ts.map +0 -1
- package/dist/availability-indicator/AvailabilityIndicator.js +0 -1
- package/dist/availability-indicator/index.d.ts +0 -2
- package/dist/availability-indicator/index.d.ts.map +0 -1
- package/dist/calendar/Calendar.d.ts +0 -21
- package/dist/calendar/Calendar.d.ts.map +0 -1
- package/dist/calendar/Calendar.js +0 -1
- package/dist/calendar/components/CalendarButtons/CalendarButtons.d.ts +0 -6
- package/dist/calendar/components/CalendarButtons/CalendarButtons.d.ts.map +0 -1
- package/dist/calendar/components/CalendarButtons/CalendarButtons.js +0 -1
- package/dist/calendar/components/CalendarButtons/index.d.ts.map +0 -1
- package/dist/calendar/components/CalendarDates/CalendarDates.d.ts +0 -5
- package/dist/calendar/components/CalendarDates/CalendarDates.d.ts.map +0 -1
- package/dist/calendar/components/CalendarDates/CalendarDates.js +0 -1
- package/dist/calendar/components/CalendarDates/index.d.ts.map +0 -1
- package/dist/calendar/components/CalendarSelect/CalendarSelect.d.ts.map +0 -1
- package/dist/calendar/components/CalendarSelect/CalendarSelect.js +0 -1
- package/dist/calendar/components/CalendarSelect/index.d.ts.map +0 -1
- package/dist/calendar/components/CalendarWeekdays/CalendarWeekdays.d.ts.map +0 -1
- package/dist/calendar/components/CalendarWeekdays/index.d.ts.map +0 -1
- package/dist/calendar/index.d.ts +0 -4
- package/dist/calendar/index.d.ts.map +0 -1
- package/dist/calendar/utils/index.d.ts +0 -5
- package/dist/calendar/utils/index.d.ts.map +0 -1
- package/dist/calendar/utils/index.js +0 -1
- package/dist/iframe/activity-card/ActivityCard.d.ts +0 -17
- package/dist/iframe/activity-card/ActivityCard.d.ts.map +0 -1
- package/dist/iframe/activity-card/ActivityCard.js +0 -1
- package/dist/iframe/activity-card/index.d.ts +0 -2
- package/dist/iframe/activity-card/index.d.ts.map +0 -1
- package/dist/iframe/payment/order-items-table/types/index.js +0 -1
- package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts +0 -3
- package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +0 -1
- package/dist/iframe/payment/order-items-table/utils/paymentSummary.js +0 -1
- package/dist/styles/activity-card/_index.scss +0 -2
- package/dist/styles/availability-indicator/AvailabilityIndicator.scss +0 -7
- package/dist/styles/availability-indicator/_index.scss +0 -1
- package/dist/styles/date-time-button/_index.scss +0 -1
- package/dist/zone/form/components/GameDurationControl.d.ts +0 -7
- package/dist/zone/form/components/GameDurationControl.d.ts.map +0 -1
- package/dist/zone/form/components/GameDurationControl.js +0 -1
- package/src/assets/logo/favicon.svg +0 -12
- package/src/availability-indicator/AvailabilityIndicator.tsx +0 -59
- package/src/availability-indicator/index.ts +0 -1
- package/src/calendar/Calendar.stories.tsx +0 -33
- package/src/calendar/Calendar.tsx +0 -46
- package/src/calendar/index.ts +0 -3
- package/src/calendar/utils/index.ts +0 -28
- package/src/iframe/activity-card/ActivityCard.tsx +0 -77
- package/src/iframe/activity-card/index.ts +0 -1
- package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +0 -118
- package/src/styles/activity-card/_index.scss +0 -2
- package/src/styles/availability-indicator/AvailabilityIndicator.scss +0 -7
- package/src/styles/availability-indicator/_index.scss +0 -1
- package/src/styles/date-time-button/_index.scss +0 -1
- package/src/zone/form/components/GameDurationControl.tsx +0 -46
- /package/dist/assets/iframe/{available.svg → dateInfo/available.svg} +0 -0
- /package/dist/assets/iframe/{limited.svg → dateInfo/limited.svg} +0 -0
- /package/dist/assets/iframe/{soldOut.svg → dateInfo/soldOut.svg} +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarButtons/index.d.ts +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarDates/index.d.ts +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarSelect/CalendarSelect.d.ts +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarSelect/index.d.ts +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarWeekdays/CalendarWeekdays.d.ts +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarWeekdays/CalendarWeekdays.js +0 -0
- /package/dist/{calendar → iframe/event/event-calendar}/components/CalendarWeekdays/index.d.ts +0 -0
- /package/src/assets/iframe/{available.svg → dateInfo/available.svg} +0 -0
- /package/src/assets/iframe/{limited.svg → dateInfo/limited.svg} +0 -0
- /package/src/assets/iframe/{soldOut.svg → dateInfo/soldOut.svg} +0 -0
- /package/src/{calendar → iframe/event/event-calendar}/components/CalendarButtons/index.ts +0 -0
- /package/src/{calendar → iframe/event/event-calendar}/components/CalendarDates/index.ts +0 -0
- /package/src/{calendar → iframe/event/event-calendar}/components/CalendarSelect/index.ts +0 -0
- /package/src/{calendar → iframe/event/event-calendar}/components/CalendarWeekdays/CalendarWeekdays.tsx +0 -0
- /package/src/{calendar → iframe/event/event-calendar}/components/CalendarWeekdays/index.ts +0 -0
|
@@ -1,82 +1,52 @@
|
|
|
1
|
-
import { ProductCategory } from "@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper";
|
|
2
|
-
import { Currency } from "@licklist/core/dist/Config";
|
|
3
|
-
import { useIntl } from "react-intl";
|
|
4
1
|
import { useTranslation } from "react-i18next";
|
|
5
|
-
import { Order } from "src/types";
|
|
2
|
+
import { MenuStep, Order } from "src/types";
|
|
6
3
|
|
|
7
4
|
interface CategoryError {
|
|
8
5
|
message: string;
|
|
9
|
-
id
|
|
6
|
+
id: number;
|
|
10
7
|
}
|
|
11
8
|
|
|
12
9
|
// TODO it's temporary solution, please remove it later
|
|
13
10
|
export const useCategoryVerification = () => {
|
|
14
11
|
const { t } = useTranslation("Validation");
|
|
15
|
-
|
|
12
|
+
|
|
16
13
|
return (
|
|
17
14
|
values: Record<Order["id"], Order>,
|
|
18
|
-
|
|
19
|
-
isLastPage?: boolean
|
|
15
|
+
step: MenuStep
|
|
20
16
|
): CategoryError | void => {
|
|
21
|
-
let errorMessage
|
|
17
|
+
let errorMessage;
|
|
18
|
+
|
|
22
19
|
const productArray = Object.values(values).filter(
|
|
23
20
|
(product) => product?.quantity > 0
|
|
24
21
|
);
|
|
25
|
-
const sumOfMinSpends = productCategories.reduce((acc, productCategory) => {
|
|
26
|
-
const { products } = productCategory;
|
|
27
|
-
const selectedProducts = products.filter((product) =>
|
|
28
|
-
productArray.map((el) => el.id).includes(product?.id)
|
|
29
|
-
);
|
|
30
|
-
const productMinSpendsSum = selectedProducts.reduce((sum, product) => {
|
|
31
|
-
const quantity =
|
|
32
|
-
productArray.find((selected) => selected.id === product.id)
|
|
33
|
-
?.quantity || 1;
|
|
34
|
-
return sum + product.minSpend * quantity;
|
|
35
|
-
}, 0);
|
|
36
|
-
|
|
37
|
-
return acc + productMinSpendsSum;
|
|
38
|
-
}, 0);
|
|
39
|
-
|
|
40
|
-
const totalPrice = productArray.reduce(
|
|
41
|
-
(total, product) => total + product.price * product.quantity,
|
|
42
|
-
0
|
|
43
|
-
);
|
|
44
|
-
|
|
45
|
-
productCategories.forEach(({ minSubItems, maxSubItems, id, name }) => {
|
|
46
|
-
if (!minSubItems && !maxSubItems) return;
|
|
47
22
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
23
|
+
step?.productCategories.forEach(
|
|
24
|
+
({ minSubItems, maxSubItems, id, name }) => {
|
|
25
|
+
if (!minSubItems && !maxSubItems) return;
|
|
26
|
+
|
|
27
|
+
const categoryProductsQuantity = productArray.filter(
|
|
28
|
+
(product) => product?.productsCategoryId === id
|
|
29
|
+
).length;
|
|
30
|
+
|
|
31
|
+
if (minSubItems && categoryProductsQuantity < minSubItems) {
|
|
32
|
+
const message = t("Validation:fieldMinNumber", {
|
|
33
|
+
min: minSubItems,
|
|
34
|
+
attribute: `number of products in the ${name} category`,
|
|
35
|
+
});
|
|
36
|
+
errorMessage = { id, message };
|
|
37
|
+
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
if (maxSubItems && categoryProductsQuantity > maxSubItems) {
|
|
42
|
+
const message = t("Validation:fieldMaxNumber", {
|
|
43
|
+
max: maxSubItems,
|
|
44
|
+
attribute: `number of products in the ${name} category`,
|
|
45
|
+
});
|
|
46
|
+
errorMessage = { id, message };
|
|
47
|
+
}
|
|
68
48
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
if (totalPrice < sumOfMinSpends && !errorMessage && isLastPage) {
|
|
72
|
-
const message = t("Design:minimumSpendSumValidation", {
|
|
73
|
-
minSpend: formatNumber(sumOfMinSpends, {
|
|
74
|
-
style: "currency",
|
|
75
|
-
currency: Currency.GBP,
|
|
76
|
-
}),
|
|
77
|
-
}) as string;
|
|
78
|
-
errorMessage = { message };
|
|
79
|
-
}
|
|
49
|
+
);
|
|
80
50
|
|
|
81
51
|
return errorMessage;
|
|
82
52
|
};
|
|
@@ -6,7 +6,7 @@ import { Page } from "./Page";
|
|
|
6
6
|
import { PageHeader } from "./components/PageHeader";
|
|
7
7
|
import { PageBody } from "./components/PageBody";
|
|
8
8
|
import { IframeEventCard } from "../event/event-card/IframeEventCard";
|
|
9
|
-
import { CalendarSelect } from "
|
|
9
|
+
import { CalendarSelect } from "../event/event-calendar/components/CalendarSelect";
|
|
10
10
|
|
|
11
11
|
export default {
|
|
12
12
|
title: "Iframe/Page/Page",
|
|
@@ -219,7 +219,7 @@ export function Default() {
|
|
|
219
219
|
<>
|
|
220
220
|
<CalendarSelect
|
|
221
221
|
options={[{ label: "Floor 1", value: "1" }]}
|
|
222
|
-
value="1"
|
|
222
|
+
value={"1"}
|
|
223
223
|
onChange={(chagedId: string) => console.log({ chagedId })}
|
|
224
224
|
/>
|
|
225
225
|
</>
|
|
@@ -26,12 +26,7 @@ export const LeftBlock = ({
|
|
|
26
26
|
<div className={clsx("left-block", className)} {...props}>
|
|
27
27
|
{pageTitle && (
|
|
28
28
|
<div className="navigation">
|
|
29
|
-
|
|
30
|
-
<div className="title">{pageTitle}</div>
|
|
31
|
-
) : (
|
|
32
|
-
pageTitle
|
|
33
|
-
)}
|
|
34
|
-
|
|
29
|
+
<div className="title">{pageTitle}</div>
|
|
35
30
|
{component}
|
|
36
31
|
</div>
|
|
37
32
|
)}
|
|
@@ -9,9 +9,15 @@ import {
|
|
|
9
9
|
PAYMENT_TYPE_NET_PROFIT,
|
|
10
10
|
} from "@licklist/core/dist/DataMapper/Order/PaymentDataMapper";
|
|
11
11
|
import { StaticTableData } from "../../../../table";
|
|
12
|
-
import {
|
|
12
|
+
import {
|
|
13
|
+
getProductQuantityAndPrice,
|
|
14
|
+
calculateTotalDiscount,
|
|
15
|
+
calculateTotalPrice,
|
|
16
|
+
getPaymentValueByType,
|
|
17
|
+
getExternalPaymentDetail,
|
|
18
|
+
getTotalSumByCategory,
|
|
19
|
+
} from "../utils";
|
|
13
20
|
import { OrderItemsTableProps, SummaryItem } from "../types";
|
|
14
|
-
import { getOrderSummaryItems } from "../utils/paymentSummary";
|
|
15
21
|
|
|
16
22
|
const CURRENCY_DEFAULT = "GBP";
|
|
17
23
|
export const PAYMENT_TYPE_TRANSLATE_KEYS = {
|
|
@@ -108,7 +114,9 @@ export const useTableData = ({
|
|
|
108
114
|
);
|
|
109
115
|
};
|
|
110
116
|
|
|
111
|
-
const renderSummaryItems = (
|
|
117
|
+
const renderSummaryItems = (
|
|
118
|
+
summaryItems: { translateKey: string; price: number }[]
|
|
119
|
+
) => {
|
|
112
120
|
return summaryItems.map(({ translateKey, price }) => {
|
|
113
121
|
return {
|
|
114
122
|
key: uniqueId(`summary-info-${translateKey}`),
|
|
@@ -119,6 +127,93 @@ export const useTableData = ({
|
|
|
119
127
|
});
|
|
120
128
|
};
|
|
121
129
|
|
|
130
|
+
const paymentNotProcessedSummary = () => {
|
|
131
|
+
const externalPaymentDetail = paymentDetail
|
|
132
|
+
? getExternalPaymentDetail(paymentDetail)
|
|
133
|
+
: undefined;
|
|
134
|
+
|
|
135
|
+
const total = calculateTotalPrice(order, externalPaymentDetail);
|
|
136
|
+
|
|
137
|
+
const summaryItems: SummaryItem[] = [
|
|
138
|
+
{
|
|
139
|
+
translateKey: "amountTotal",
|
|
140
|
+
price: total,
|
|
141
|
+
},
|
|
142
|
+
];
|
|
143
|
+
|
|
144
|
+
if (externalDiscount) {
|
|
145
|
+
summaryItems.push({
|
|
146
|
+
price: externalDiscount,
|
|
147
|
+
translateKey: "amountWithDiscount",
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (externalPaymentDetail) {
|
|
152
|
+
return [...summaryItems, ...getExternalPaymentDetail(paymentDetail)];
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
return summaryItems;
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
const processedPaymentSummary = () => {
|
|
159
|
+
const externalPaymentDetail =
|
|
160
|
+
paymentDetail && !order.payments.length
|
|
161
|
+
? getExternalPaymentDetail(paymentDetail)
|
|
162
|
+
: Object.keys(PAYMENT_TYPE_TRANSLATE_KEYS).map((key) => {
|
|
163
|
+
return {
|
|
164
|
+
translateKey: PAYMENT_TYPE_TRANSLATE_KEYS[key],
|
|
165
|
+
price: getPaymentValueByType(order.payments, key),
|
|
166
|
+
};
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
const total = calculateTotalPrice(order, externalPaymentDetail);
|
|
170
|
+
|
|
171
|
+
const totalDiscount = calculateTotalDiscount(order.payments);
|
|
172
|
+
const totalWithDiscount = total - Number(totalDiscount);
|
|
173
|
+
let summaryItems: SummaryItem[] = [
|
|
174
|
+
{
|
|
175
|
+
translateKey: "amountTotal",
|
|
176
|
+
price: total,
|
|
177
|
+
},
|
|
178
|
+
];
|
|
179
|
+
|
|
180
|
+
if (totalDiscount) {
|
|
181
|
+
summaryItems.push({
|
|
182
|
+
translateKey: "amountWithDiscount",
|
|
183
|
+
price: totalWithDiscount < 0 ? 0 : totalWithDiscount,
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
if (paymentDetail && !order.payments.length) {
|
|
188
|
+
return [...summaryItems, ...externalPaymentDetail];
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
summaryItems.push({
|
|
192
|
+
translateKey: "totalPaid",
|
|
193
|
+
price: totalWithDiscount <= 0 ? 0 : order.totalAmount,
|
|
194
|
+
});
|
|
195
|
+
if (totalWithDiscount <= 0) {
|
|
196
|
+
return summaryItems;
|
|
197
|
+
}
|
|
198
|
+
summaryItems = [...summaryItems, ...externalPaymentDetail];
|
|
199
|
+
|
|
200
|
+
if (totalWithDiscount > order.totalAmount) {
|
|
201
|
+
summaryItems.push({
|
|
202
|
+
translateKey: "remainingToPay",
|
|
203
|
+
price: totalWithDiscount - order.totalAmount,
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
return summaryItems;
|
|
207
|
+
};
|
|
208
|
+
|
|
209
|
+
const getOrderSummaryItems = () => {
|
|
210
|
+
if (!isPaymentProcessed) {
|
|
211
|
+
return paymentNotProcessedSummary();
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
return processedPaymentSummary();
|
|
215
|
+
};
|
|
216
|
+
|
|
122
217
|
const data = useMemo(
|
|
123
218
|
() => {
|
|
124
219
|
if (!order) {
|
|
@@ -127,14 +222,7 @@ export const useTableData = ({
|
|
|
127
222
|
|
|
128
223
|
return [
|
|
129
224
|
...renderProductsContent(),
|
|
130
|
-
...renderSummaryItems(
|
|
131
|
-
getOrderSummaryItems({
|
|
132
|
-
order,
|
|
133
|
-
paymentDetail,
|
|
134
|
-
isPaymentProcessed,
|
|
135
|
-
externalDiscount,
|
|
136
|
-
})
|
|
137
|
-
),
|
|
225
|
+
...renderSummaryItems(getOrderSummaryItems()),
|
|
138
226
|
];
|
|
139
227
|
},
|
|
140
228
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -1,24 +1,7 @@
|
|
|
1
1
|
import { Order } from "@licklist/core/dist/DataMapper/Order/OrderDataMapper";
|
|
2
2
|
import { PaymentDetail } from "@licklist/core/dist/DataMapper/Order/PaymentDetailDataMapper";
|
|
3
3
|
|
|
4
|
-
export
|
|
5
|
-
export const AMOUNT_WITH_DISCOUNT = "amountWithDiscount";
|
|
6
|
-
export const TOTAL_PAID = "totalPaid";
|
|
7
|
-
export const REMAINING_TO_PAY = "remainingToPay";
|
|
8
|
-
|
|
9
|
-
export const SUMMARY_TRANSLATE_KEYS = [
|
|
10
|
-
AMOUNT_TOTAL,
|
|
11
|
-
AMOUNT_WITH_DISCOUNT,
|
|
12
|
-
TOTAL_PAID,
|
|
13
|
-
REMAINING_TO_PAY,
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
export type SUMMARY_TRANSLATE_KEY = typeof SUMMARY_TRANSLATE_KEYS[number];
|
|
17
|
-
|
|
18
|
-
export type SummaryItem = {
|
|
19
|
-
translateKey: SUMMARY_TRANSLATE_KEY;
|
|
20
|
-
price: number;
|
|
21
|
-
};
|
|
4
|
+
export type SummaryItem = { translateKey: string; price: number };
|
|
22
5
|
|
|
23
6
|
export type OrderItemsTableProps = {
|
|
24
7
|
order?: Order;
|
|
@@ -100,18 +100,18 @@ export const PaymentPage = ({
|
|
|
100
100
|
);
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
const
|
|
103
|
+
const orderTotalAmounByFormValues = cartSumByOrderProducts(
|
|
104
104
|
bookingSummaryProps && bookingSummaryProps?.formValues
|
|
105
105
|
? Object.values(bookingSummaryProps?.formValues)
|
|
106
106
|
: undefined
|
|
107
107
|
);
|
|
108
108
|
|
|
109
|
-
// User can fill
|
|
109
|
+
// User can fill promocode only in iframe appcliation.
|
|
110
110
|
// It didn't possible via payment link. This check will
|
|
111
111
|
// be applied when there are no metadata and in case when
|
|
112
112
|
// orderValues sum is greater than amount in order.
|
|
113
113
|
const isCalculatedAmountGreaterThanOrderAmount =
|
|
114
|
-
|
|
114
|
+
orderTotalAmounByFormValues > data?.amount;
|
|
115
115
|
|
|
116
116
|
return (
|
|
117
117
|
<Page
|
|
@@ -164,7 +164,7 @@ export const PaymentPage = ({
|
|
|
164
164
|
<SummaryTotalBlock
|
|
165
165
|
label={t("total")}
|
|
166
166
|
amount={
|
|
167
|
-
|
|
167
|
+
orderTotalAmounByFormValues +
|
|
168
168
|
(bookingSummaryProps?.transactionFee || 0)
|
|
169
169
|
}
|
|
170
170
|
/>
|
package/src/index.ts
CHANGED
|
@@ -314,38 +314,13 @@ export const EmailTemplateControl = React.forwardRef(
|
|
|
314
314
|
<Row className="mb-4">
|
|
315
315
|
<Form.Group as={Col}>
|
|
316
316
|
<Form.Label>{t("Design:emailBody")}</Form.Label>
|
|
317
|
-
|
|
318
|
-
<div className="alert alert-warning" role="alert">
|
|
319
|
-
Due to the mail services limitations on the length of the email
|
|
320
|
-
body that can be sent or received - maximum length is set to
|
|
321
|
-
65,535 characters.
|
|
322
|
-
</div>
|
|
323
|
-
|
|
324
|
-
<div className={`email-editor ${errors.body && "is-invalid"}`}>
|
|
317
|
+
<div className="email-editor">
|
|
325
318
|
<EmailEditor
|
|
326
319
|
ref={ref}
|
|
327
320
|
onReady={onReadyEditor}
|
|
328
321
|
style={{ height: "50rem" }}
|
|
329
322
|
/>
|
|
330
|
-
|
|
331
|
-
<input
|
|
332
|
-
type="hidden"
|
|
333
|
-
name="body"
|
|
334
|
-
{...register("body", {
|
|
335
|
-
maxLength: {
|
|
336
|
-
value: 65535,
|
|
337
|
-
message: t("Validation:fieldMaxLength", {
|
|
338
|
-
attribute: t("body"),
|
|
339
|
-
max: 65535,
|
|
340
|
-
}) as string,
|
|
341
|
-
},
|
|
342
|
-
})}
|
|
343
|
-
/>
|
|
344
323
|
</div>
|
|
345
|
-
|
|
346
|
-
<Form.Control.Feedback type="invalid">
|
|
347
|
-
{errors.body?.message}
|
|
348
|
-
</Form.Control.Feedback>
|
|
349
324
|
</Form.Group>
|
|
350
325
|
</Row>
|
|
351
326
|
<Row>
|
|
@@ -56,14 +56,10 @@ export const ProductSetRecurrenceControl = ({
|
|
|
56
56
|
{formatDate(menuRecurrence.startDate, {
|
|
57
57
|
dateStyle: "medium",
|
|
58
58
|
})}{" "}
|
|
59
|
-
{
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
dateStyle: "medium",
|
|
64
|
-
})}
|
|
65
|
-
</>
|
|
66
|
-
)}
|
|
59
|
+
-{" "}
|
|
60
|
+
{formatDate(menuRecurrence.endDate, {
|
|
61
|
+
dateStyle: "medium",
|
|
62
|
+
})}
|
|
67
63
|
</span>
|
|
68
64
|
|
|
69
65
|
<div
|
|
@@ -72,7 +72,6 @@ export function ProductCategoriesControl({
|
|
|
72
72
|
providerHasMap,
|
|
73
73
|
expandedProductCategories,
|
|
74
74
|
setExpandedProductCategories,
|
|
75
|
-
zones,
|
|
76
75
|
} = useContext(ProductSetLoadingContext);
|
|
77
76
|
const form = useFormContext<ProductSetFormValues>();
|
|
78
77
|
const [isSelectCategoryVisible, setIsSelectCategoryVisible] = useState(false);
|
|
@@ -288,7 +287,6 @@ export function ProductCategoriesControl({
|
|
|
288
287
|
quantityType={productCategory.quantityType}
|
|
289
288
|
hasTicket={productCategory?.hasTicket}
|
|
290
289
|
stepIndex={stepIndex}
|
|
291
|
-
zones={zones}
|
|
292
290
|
productCategoryIndex={index}
|
|
293
291
|
categoryType={productCategory.type}
|
|
294
292
|
/>
|
|
@@ -14,7 +14,6 @@ import { generateUuid } from "@licklist/core/dist/Services";
|
|
|
14
14
|
import HookFormService from "@licklist/plugins/dist/services/Form/HookFormService";
|
|
15
15
|
|
|
16
16
|
import { CategoryType } from "@licklist/core/dist/DataMapper/Product/ProductCategoryDataMapper";
|
|
17
|
-
import { Zone } from "@licklist/core/dist/DataMapper/Provider/ZoneDataMapper";
|
|
18
17
|
import { ProductControl, ProductControlProps, ProductSetFormValues } from "..";
|
|
19
18
|
import { SortableTree } from "../../sortable-tree";
|
|
20
19
|
import { CreateProductSetItem } from "../item/CreateProductSetItem";
|
|
@@ -33,7 +32,6 @@ interface ProductsControlProps extends WithIsLoading {
|
|
|
33
32
|
productCategoryIndex: number;
|
|
34
33
|
hasTicket?: boolean;
|
|
35
34
|
categoryType: CategoryType;
|
|
36
|
-
zones?: Zone[];
|
|
37
35
|
}
|
|
38
36
|
|
|
39
37
|
const getDefaultProductValue = (sort: number): Product => ({
|
|
@@ -76,7 +74,6 @@ export function ProductsControl({
|
|
|
76
74
|
productCategoryIndex,
|
|
77
75
|
hasTicket,
|
|
78
76
|
categoryType,
|
|
79
|
-
zones,
|
|
80
77
|
}: ProductsControlProps) {
|
|
81
78
|
const { t } = useTranslation("Design");
|
|
82
79
|
const form = useFormContext<ProductSetFormValues>();
|
|
@@ -92,12 +89,6 @@ export function ProductsControl({
|
|
|
92
89
|
getValues,
|
|
93
90
|
} = form;
|
|
94
91
|
|
|
95
|
-
const zoneId = watch(
|
|
96
|
-
`steps.${stepIndex}.productCategories.${productCategoryIndex}.zoneId`
|
|
97
|
-
);
|
|
98
|
-
|
|
99
|
-
const catergoryZone = zones?.find((zone) => zone.id === Number(zoneId));
|
|
100
|
-
|
|
101
92
|
const productControlFieldName =
|
|
102
93
|
`steps.${stepIndex}.productCategories.${productCategoryIndex}.products` as const;
|
|
103
94
|
|
|
@@ -254,7 +245,6 @@ export function ProductsControl({
|
|
|
254
245
|
onProductNameChange={onChange}
|
|
255
246
|
hasTicket={hasTicket}
|
|
256
247
|
categoryType={categoryType}
|
|
257
|
-
zoneDuration={catergoryZone?.defaultDuration}
|
|
258
248
|
/>
|
|
259
249
|
}
|
|
260
250
|
onDelete={() => onProductRemove(index)}
|
|
@@ -113,7 +113,6 @@ export interface ProductControlProps<T>
|
|
|
113
113
|
productName: string;
|
|
114
114
|
hasTicket?: boolean;
|
|
115
115
|
categoryType?: CategoryType;
|
|
116
|
-
zoneDuration?: number;
|
|
117
116
|
}
|
|
118
117
|
|
|
119
118
|
export function ProductControl<T extends FormValues>({
|
|
@@ -127,7 +126,6 @@ export function ProductControl<T extends FormValues>({
|
|
|
127
126
|
productName,
|
|
128
127
|
hasTicket,
|
|
129
128
|
categoryType,
|
|
130
|
-
zoneDuration,
|
|
131
129
|
}: ProductControlProps<T>) {
|
|
132
130
|
const {
|
|
133
131
|
register,
|
|
@@ -192,16 +190,6 @@ export function ProductControl<T extends FormValues>({
|
|
|
192
190
|
[handleImageUploading]
|
|
193
191
|
);
|
|
194
192
|
|
|
195
|
-
const onChangeGameCapacity = (value: number) => {
|
|
196
|
-
if (!zoneDuration) {
|
|
197
|
-
return;
|
|
198
|
-
}
|
|
199
|
-
setValue(
|
|
200
|
-
`${fieldNamePrefix}.duration` as Path<T>,
|
|
201
|
-
(value * zoneDuration) as UnpackNestedValue<PathValue<T, Path<T>>>
|
|
202
|
-
);
|
|
203
|
-
};
|
|
204
|
-
|
|
205
193
|
const onImageRemove = useCallback(
|
|
206
194
|
(id, path) => {
|
|
207
195
|
handleImageRemove(String(id), path);
|
|
@@ -384,14 +372,6 @@ export function ProductControl<T extends FormValues>({
|
|
|
384
372
|
<FormNumberInput
|
|
385
373
|
fieldName={`${fieldNamePrefix}.capacity`}
|
|
386
374
|
label={t("capacity")}
|
|
387
|
-
rules={{
|
|
388
|
-
min: {
|
|
389
|
-
value: 1,
|
|
390
|
-
message: t("Validation:fieldRequired", {
|
|
391
|
-
attribute: t("capacity"),
|
|
392
|
-
}) as string,
|
|
393
|
-
},
|
|
394
|
-
}}
|
|
395
375
|
/>
|
|
396
376
|
</Col>
|
|
397
377
|
</Row>
|
|
@@ -403,11 +383,7 @@ export function ProductControl<T extends FormValues>({
|
|
|
403
383
|
<FormNumberInput
|
|
404
384
|
fieldName={`${fieldNamePrefix}.capacity`}
|
|
405
385
|
label={t("capacity")}
|
|
406
|
-
onChange={onChangeGameCapacity}
|
|
407
386
|
rules={{
|
|
408
|
-
required: t("Validation:fieldRequired", {
|
|
409
|
-
attribute: t("capacity"),
|
|
410
|
-
}) as string,
|
|
411
387
|
min: {
|
|
412
388
|
value: 1,
|
|
413
389
|
message: t("Validation:fieldRequired", {
|
|
@@ -422,13 +398,10 @@ export function ProductControl<T extends FormValues>({
|
|
|
422
398
|
fieldName={`${fieldNamePrefix}.duration`}
|
|
423
399
|
label={t("durationMinutes")}
|
|
424
400
|
rules={{
|
|
425
|
-
required: t("Validation:fieldRequired", {
|
|
426
|
-
attribute: t("capacity"),
|
|
427
|
-
}) as string,
|
|
428
401
|
min: {
|
|
429
402
|
value: 1,
|
|
430
403
|
message: t("Validation:fieldRequired", {
|
|
431
|
-
attribute: t("
|
|
404
|
+
attribute: t("duration"),
|
|
432
405
|
}) as string,
|
|
433
406
|
},
|
|
434
407
|
}}
|
|
@@ -332,7 +332,7 @@ export function ProductCategoryControl({
|
|
|
332
332
|
<Row>
|
|
333
333
|
<Col>
|
|
334
334
|
<Form.Group controlId={zoneId}>
|
|
335
|
-
<Form.Label>
|
|
335
|
+
<Form.Label>Zone</Form.Label>
|
|
336
336
|
<Controller
|
|
337
337
|
control={control}
|
|
338
338
|
name={`${fieldNamePrefix}.zoneId`}
|
|
@@ -360,6 +360,12 @@ export function ProductCategoryControl({
|
|
|
360
360
|
attribute: t("zone"),
|
|
361
361
|
}),
|
|
362
362
|
},
|
|
363
|
+
validate: (value) => {
|
|
364
|
+
if (value) return true;
|
|
365
|
+
return t("Validation:fieldRequired", {
|
|
366
|
+
attribute: t("zone"),
|
|
367
|
+
}) as string;
|
|
368
|
+
},
|
|
363
369
|
}}
|
|
364
370
|
/>
|
|
365
371
|
<Form.Control.Feedback type="invalid">
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from "react";
|
|
2
2
|
import { useFormContext } from "react-hook-form";
|
|
3
3
|
import en from "react-phone-number-input/locale/en.json";
|
|
4
4
|
import { LocationInputValues } from ".";
|
|
@@ -13,7 +13,7 @@ export function LocationInputDescription() {
|
|
|
13
13
|
"postcode",
|
|
14
14
|
"country",
|
|
15
15
|
] as const;
|
|
16
|
-
const fields = fieldNames.reduce<
|
|
16
|
+
const fields = fieldNames.reduce<JSX.Element[]>((acc, field) => {
|
|
17
17
|
const value = values?.[field];
|
|
18
18
|
if (!value) return acc;
|
|
19
19
|
|
|
@@ -28,17 +28,14 @@ export function WorkingHoursInputDescription() {
|
|
|
28
28
|
{weekday?.end
|
|
29
29
|
? weekday.start
|
|
30
30
|
? t("timeInterval", {
|
|
31
|
-
start:
|
|
32
|
-
TIME_FORMAT
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
TIME_FORMAT
|
|
36
|
-
),
|
|
31
|
+
start:
|
|
32
|
+
DateTime.fromISO(weekday.start).toFormat(TIME_FORMAT),
|
|
33
|
+
end:
|
|
34
|
+
DateTime.fromISO(weekday.start).toFormat(TIME_FORMAT),
|
|
37
35
|
})
|
|
38
36
|
: t("timeFrom", {
|
|
39
|
-
start:
|
|
40
|
-
|
|
41
|
-
),
|
|
37
|
+
start:
|
|
38
|
+
DateTime.fromISO(weekday.start).toFormat(TIME_FORMAT),
|
|
42
39
|
})
|
|
43
40
|
: null}
|
|
44
41
|
</Col>
|