@licklist/design 0.69.1 → 0.69.3-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.
- package/.prettierrc +5 -1
- package/dist/affiliate/form/AffiliateForm.d.ts.map +1 -1
- package/dist/auth/Login/LoginComponent.js +2 -1
- package/dist/events/edit-event-modal/IntervalInput.js +1 -1
- package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts +2 -1
- package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.d.ts.map +1 -1
- package/dist/events/edit-event-modal/component/EditEventForm/EditEventForm.js +3 -2
- package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts +2 -1
- package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.d.ts.map +1 -1
- package/dist/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.js +55 -26
- package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -0
- package/dist/events/edit-event-modal/utils/getDefaultProductSet.d.ts.map +1 -1
- package/dist/events/edit-event-modal/utils/getDefaultProductSet.js +3 -2
- package/dist/iframe/activity-card/ActivityCard.d.ts +5 -4
- package/dist/iframe/activity-card/ActivityCard.d.ts.map +1 -1
- package/dist/iframe/activity-card/ActivityCard.js +52 -40
- package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.js +13 -0
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.d.ts.map +1 -1
- package/dist/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.js +2 -0
- package/dist/iframe/order-process/components/Timer/Timer.js +1 -1
- package/dist/iframe/payment/order-items-table/utils/paymentSummary.d.ts.map +1 -1
- package/dist/iframe/ryft/RyftPaymentForm.d.ts +2 -2
- package/dist/iframe/ryft/RyftPaymentForm.d.ts.map +1 -1
- package/dist/iframe/ryft/RyftPaymentForm.js +8 -2
- package/dist/iframe/ryft/utils/ryft-form.d.ts +2 -1
- package/dist/iframe/ryft/utils/ryft-form.d.ts.map +1 -1
- package/dist/iframe/ryft/utils/ryft-form.js +20 -1
- package/dist/index.js +1 -0
- package/dist/layout/DropDown.d.ts +2 -1
- package/dist/layout/DropDown.d.ts.map +1 -1
- package/dist/modals/confirmation/ConfirmModal.d.ts +3 -1
- package/dist/modals/confirmation/ConfirmModal.d.ts.map +1 -1
- package/dist/modals/confirmation/ConfirmModal.js +172 -8
- package/dist/modals/dialog/Dialog.js +2 -2
- package/dist/notification/email-template/control/EmailTemplateControl.d.ts.map +1 -1
- package/dist/notification/email-template/control/EmailTemplateControl.js +3 -0
- package/dist/product-set/card/ProductSetCard.d.ts +6 -2
- package/dist/product-set/card/ProductSetCard.d.ts.map +1 -1
- package/dist/product-set/card/ProductSetCard.js +30 -11
- package/dist/product-set/control/DateInput.d.ts.map +1 -1
- package/dist/product-set/control/DateInput.js +2 -2
- package/dist/product-set/control/ProductSetControl.d.ts +4 -0
- package/dist/product-set/control/ProductSetControl.d.ts.map +1 -1
- package/dist/product-set/control/ProductSetControl.js +24 -3
- package/dist/product-set/control/ProductSetImageControl.d.ts +2 -0
- package/dist/product-set/control/ProductSetImageControl.d.ts.map +1 -0
- package/dist/product-set/control/ProductSetImageControl.js +279 -0
- package/dist/product-set/form/MobileFooter.d.ts.map +1 -1
- package/dist/product-set/form/ProductCategoriesControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductCategoriesControl.js +48 -2
- package/dist/product-set/form/ProductSetForm.d.ts +4 -1
- package/dist/product-set/form/ProductSetForm.d.ts.map +1 -1
- package/dist/product-set/form/ProductSetForm.js +64 -1
- package/dist/product-set/form/ProductSetNameControl.d.ts +6 -0
- package/dist/product-set/form/ProductSetNameControl.d.ts.map +1 -0
- package/dist/product-set/form/ProductSetNameControl.js +35 -0
- package/dist/product-set/form/ProductZonesControl.d.ts.map +1 -1
- package/dist/product-set/form/ProductZonesControl.js +0 -2
- package/dist/product-set/form/ProductsControl.js +1 -0
- package/dist/product-set/form/SelectCategoryModal.d.ts +12 -0
- package/dist/product-set/form/SelectCategoryModal.d.ts.map +1 -1
- package/dist/product-set/form/SelectCategoryModal.js +1 -1
- package/dist/product-set/form/SubProductsControl.d.ts.map +1 -1
- package/dist/product-set/form/SubProductsControl.js +0 -3
- package/dist/product-set/form/VenueMapsControl.d.ts.map +1 -1
- package/dist/product-set/form/VenueMapsControl.js +0 -3
- package/dist/product-set/form/index.d.ts +1 -0
- package/dist/product-set/form/index.d.ts.map +1 -1
- package/dist/product-set/product/ProductControl.d.ts.map +1 -1
- package/dist/product-set/product/booking-management/ProductBookingManagementControl.d.ts.map +1 -1
- package/dist/product-set/product/booking-management/ProductBookingManagementControl.js +6 -0
- package/dist/product-set/product/deposit/ProductDepositControl.d.ts.map +1 -1
- package/dist/product-set/product/deposit/ProductDepositControl.js +3 -0
- package/dist/product-set/product/duration/ProductDurationControl.d.ts.map +1 -1
- package/dist/product-set/product/duration/ProductDurationControl.js +6 -0
- package/dist/product-set/product/price/ProductPriceControl.d.ts.map +1 -1
- package/dist/product-set/product/price/ProductPriceControl.js +3 -0
- package/dist/product-set/product/quantity/ProductQuantityConstantControl.d.ts.map +1 -1
- package/dist/product-set/product/quantity/ProductQuantityConstantControl.js +6 -0
- package/dist/product-set/product/quantity/ProductQuantityControl.d.ts.map +1 -1
- package/dist/product-set/product/quantity/ProductQuantityControl.js +6 -0
- package/dist/product-set/product/quantity/ProductQuantityRechargingControl.d.ts.map +1 -1
- package/dist/product-set/product/quantity/ProductQuantityRechargingControl.js +4 -1
- package/dist/product-set/product-category/ProductCategoryControl.d.ts.map +1 -1
- package/dist/product-set/product-category/ProductCategoryControl.js +12 -0
- package/dist/product-set/utils/index.d.ts +7 -0
- package/dist/product-set/utils/index.d.ts.map +1 -1
- package/dist/product-set/utils/index.js +10 -1
- package/dist/recurrence-input/RecurrenceEndInput.d.ts.map +1 -1
- package/dist/recurrence-input/RecurrenceEndInput.js +3 -0
- package/dist/recurring-date-picker-input/RecurrenceEndInput.d.ts.map +1 -1
- package/dist/recurring-date-picker-input/utils.js +6 -4
- package/dist/resource/form/components/CapacityControl.d.ts.map +1 -1
- package/dist/resource/form/components/CapacityControl.js +3 -0
- package/dist/resource/form/components/SortControl.d.ts.map +1 -1
- package/dist/resource/form/components/SortControl.js +3 -0
- package/dist/root.css +51 -51
- package/dist/sales/booking/results/components/ResultCard.d.ts.map +1 -1
- package/dist/sales/booking/results/components/ResultCard.js +0 -2
- package/dist/sales/coupon/control/CouponFormControl.d.ts.map +1 -1
- package/dist/sales/coupon/control/CouponFormControl.js +21 -0
- package/dist/sales/manual-booking/search-user/SearchUser.js +1 -1
- package/dist/setting/admin/PaymentFeeForm.d.ts.map +1 -1
- package/dist/setting/admin/PaymentFeeForm.js +16 -1
- package/dist/setting/dashboard/DashboardSettingForm.d.ts.map +1 -1
- package/dist/setting/dashboard/DashboardSettingForm.js +4 -1
- package/dist/snippet/snippet-template/preview/Preview.d.ts.map +1 -1
- package/dist/snippet/snippet-template/preview/Preview.js +6 -0
- package/dist/sortable-tree/SortableTreeItem.d.ts +2 -1
- package/dist/sortable-tree/SortableTreeItem.d.ts.map +1 -1
- package/dist/sortable-tree/SortableTreeItem.js +10 -4
- package/dist/static/CurrencyNumberInput.d.ts.map +1 -1
- package/dist/static/CurrencyNumberInput.js +3 -0
- package/dist/static/form-number-input/FormNumberInput.d.ts.map +1 -1
- package/dist/static/form-number-input/FormNumberInput.js +3 -0
- package/dist/static/number-input/NumberInput.d.ts.map +1 -1
- package/dist/static/number-input/NumberInput.js +3 -0
- package/dist/styles/activity-card/{GridActivitiesCard.scss → ActivitiesCard.scss} +19 -5
- package/dist/styles/activity-card/ListActivitiesCard.scss +12 -42
- package/dist/styles/activity-card/_index.scss +1 -1
- package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
- package/dist/styles/product-set/ProductSetForm.scss +22 -0
- package/dist/styles/ryft-payment-form/RyftPaymentForm.scss +28 -1
- package/dist/styles/sales/BookingResults.scss +1 -1
- package/dist/tiptap-editor/TipTapMenu/extensions/constants.d.ts.map +1 -1
- package/dist/tiptap-editor/TipTapMenu/extensions/constants.js +1 -1
- package/dist/tiptap-editor/TipTapMenu/extensions/utils.js +1 -1
- package/dist/typeahead/Typeahead.d.ts +5 -1
- package/dist/typeahead/Typeahead.d.ts.map +1 -1
- package/dist/typeahead/Typeahead.js +9 -2
- package/dist/zone/form/components/GameDurationControl.d.ts.map +1 -1
- package/dist/zone/form/components/GameDurationControl.js +3 -0
- package/dist/zone/form/components/SortControl.d.ts.map +1 -1
- package/dist/zone/form/components/SortControl.js +3 -0
- package/package.json +9 -7
- package/postcss.config.cjs +2 -2
- package/src/affiliate/card/AffiliateCard.tsx +15 -15
- package/src/affiliate/form/AffiliateControl.tsx +8 -8
- package/src/affiliate/form/AffiliateForm.tsx +6 -5
- package/src/auth/AccessDenied/AccessDenied.tsx +8 -8
- package/src/auth/ChangePassword/ChangePasswordComponent.tsx +4 -4
- package/src/auth/ChangePassword/ChangePasswordFormComponent.tsx +14 -14
- package/src/auth/Layout/AuthNavComponent.tsx +6 -6
- package/src/auth/Layout/UserNavComponent.tsx +2 -2
- package/src/auth/Layout/UserNavDropDown.tsx +1 -1
- package/src/auth/Login/LoginComponent.tsx +9 -9
- package/src/auth/Login/LoginFormComponent.tsx +15 -15
- package/src/auth/Logout/Logout.stories.tsx +2 -2
- package/src/auth/Register/BirthDateFormComponent.tsx +17 -17
- package/src/auth/Register/RegisterComponent.tsx +7 -7
- package/src/auth/Register/RegisterFormComponent.tsx +56 -56
- package/src/auth/ResetPassword/ResetPasswordComponent.tsx +3 -3
- package/src/auth/ResetPassword/ResetPasswordFormComponent.tsx +13 -13
- package/src/auth/Social/SocialCallbackComponent.tsx +3 -3
- package/src/auth/Social/SocialFormComponent.tsx +4 -4
- package/src/availability-indicator/AvailabilityIndicator.tsx +1 -1
- package/src/calendar/Calendar.tsx +2 -2
- package/src/calendar/components/CalendarDates/CalendarDates.tsx +2 -2
- package/src/calendar/components/CalendarSelect/CalendarSelect.tsx +2 -2
- package/src/calendar/components/CalendarWeekdays/CalendarWeekdays.tsx +2 -2
- package/src/collapsible-input-group/CollapsibleInputGroup.tsx +6 -6
- package/src/custom-fields/CustomFields.stories.tsx +1 -1
- package/src/custom-fields/field/FieldItem.tsx +1 -1
- package/src/custom-fields/field/SelectFieldModal.tsx +4 -4
- package/src/custom-fields/field-set/components/CustomFieldSet/CustomFieldSet.tsx +8 -8
- package/src/custom-fields/forms/DropdownForm.tsx +16 -16
- package/src/custom-fields/forms/TextInputForm.tsx +6 -6
- package/src/customers/components/filter/CustomerFilter.tsx +3 -3
- package/src/date-time-button/DateContent.tsx +1 -1
- package/src/date-time-button/DateTimeButton.tsx +2 -2
- package/src/error/ErrorFallback.tsx +1 -1
- package/src/events/edit-event-modal/IntervalInput.tsx +15 -15
- package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.stories.tsx +2 -2
- package/src/events/edit-event-modal/component/EditEventForm/EditEventForm.tsx +27 -26
- package/src/events/edit-event-modal/component/ProductSetShortForm/ProductSetShortForm.tsx +3 -3
- package/src/events/edit-event-modal/component/SaleDeadline/SaleDeadline.tsx +11 -11
- package/src/events/edit-event-modal/component/SelectEventProductSet/SelectEventProductSet.tsx +94 -89
- package/src/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.tsx +5 -5
- package/src/events/edit-event-modal/utils/getDefaultProductSet.ts +2 -1
- package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.stories.tsx +1 -1
- package/src/events/edit-recurrent-event-modal/EditRecurrentEventModal.tsx +16 -16
- package/src/events/event-card/EventCard.stories.tsx +5 -5
- package/src/events/event-card/EventCard.tsx +30 -30
- package/src/events/event-card/EventCardSkeleton.tsx +10 -10
- package/src/events/event-statistic-modal/EventStatisticModal.stories.tsx +1 -1
- package/src/events/event-statistic-modal/EventStatisticModal.tsx +8 -8
- package/src/events/event-venue-map/components/Dropdown/Dropdown.tsx +1 -1
- package/src/events/event-venue-map/components/Dropdown/components/DropdownWrapper/DropdownWrapper.tsx +3 -3
- package/src/events/event-venue-map/components/Dropdown/components/ProductsControl/ProductsControl.tsx +5 -5
- package/src/events/event-venue-map/components/Dropdown/components/SelectControl/SelectControl.tsx +10 -10
- package/src/events/event-venue-map/components/MapPoint/components/DeleteIcon/DeleteIcon.tsx +1 -1
- package/src/events/event-venue-map/components/MapPoint/components/EditIcon/EditIcon.tsx +1 -1
- package/src/events/event-venue-map/components/MapPoint/components/PointIcon/PointIcon.tsx +2 -2
- package/src/events/event-venue-map/components/MapPoint/components/ProductIcon/ProductIcon.tsx +1 -1
- package/src/events/event-venue-map/components/Scrollbars/Scrollbars.tsx +5 -5
- package/src/events/event-venue-map/components/VenueMap/VenueMap.tsx +3 -3
- package/src/events/event-venue-map/components/ZoomButtons/ZoomButtons.tsx +4 -4
- package/src/file-upload/FilePreview.tsx +8 -8
- package/src/file-upload/FileUpload.tsx +8 -8
- package/src/header/BookeditHeader.tsx +1 -1
- package/src/header/Header.stories.tsx +16 -16
- package/src/header/Header.tsx +11 -11
- package/src/header/LicklistHeader.tsx +1 -1
- package/src/header/elements/CompanySelector.tsx +6 -6
- package/src/help/example/Example.tsx +12 -12
- package/src/help/popover/HelpPopover.tsx +5 -5
- package/src/iframe/activity-card/ActivityCard.tsx +38 -27
- package/src/iframe/back-button/BackButton.tsx +3 -3
- package/src/iframe/custom-fields/components/CustomDateField.stories.tsx +1 -1
- package/src/iframe/custom-fields/components/CustomDateField.tsx +7 -7
- package/src/iframe/event/event-booking-form/EventBookingForm.tsx +14 -14
- package/src/iframe/event/event-booking-products/EventBookingProducts.tsx +3 -3
- package/src/iframe/event/event-booking-products/components/AccordionItem/AccordionItem.tsx +10 -10
- package/src/iframe/event/event-booking-view/EventBookingView.tsx +1 -1
- package/src/iframe/event/event-card/IframeEventCard.stories.tsx +6 -6
- package/src/iframe/event/event-card/IframeEventCardSkeleton.tsx +20 -20
- package/src/iframe/event/event-card/IframeEventCards.stories.tsx +2 -2
- package/src/iframe/event/event-description/EventDescription.stories.tsx +3 -3
- package/src/iframe/event/event-description/EventDescription.tsx +10 -10
- package/src/iframe/event/event-navigation-footer/EventNavigationFooter.tsx +6 -6
- package/src/iframe/event/event-order-short-summary/EventOrderShortSummary.tsx +2 -2
- package/src/iframe/event/event-order-short-summary/components/Summary/Summary.tsx +4 -4
- package/src/iframe/event/event-order-summary/EventOrderSummary.stories.tsx +1 -1
- package/src/iframe/event/event-order-summary/EventOrderSummary.tsx +5 -5
- package/src/iframe/event/event-product-sets/EventProductSets.stories.tsx +1 -1
- package/src/iframe/event/event-product-sets/EventProductSets.tsx +1 -1
- package/src/iframe/event/event-product-sets/components/EventProductSet.tsx +1 -1
- package/src/iframe/event/event-step-venue-map-zones/EventStepVenueMapZones.tsx +1 -1
- package/src/iframe/event/event-step-venue-map-zones/components/EventStepVenueMapZone.tsx +3 -3
- package/src/iframe/event/event-tables/EventTables.stories.tsx +1 -1
- package/src/iframe/event/event-tables/EventTables.tsx +5 -5
- package/src/iframe/event/event-venue-map/IframeEventVenueMap.stories.tsx +4 -4
- package/src/iframe/event/event-venue-map/IframeEventVenueMap.tsx +1 -1
- package/src/iframe/event/ticket-description/TicketDescription.stories.tsx +6 -6
- package/src/iframe/event/ticket-description/TicketDescription.tsx +7 -7
- package/src/iframe/external-modal/ExternalModal.tsx +7 -7
- package/src/iframe/order-process/components/BookingSummary/BookingSummary.stories.tsx +8 -8
- package/src/iframe/order-process/components/BookingSummary/BookingSummary.tsx +23 -23
- package/src/iframe/order-process/components/BookingSummary/components/BookingSummaryAccordion/BookingSummaryAccordion.tsx +1 -1
- package/src/iframe/order-process/components/BookingSummary/components/ProductSummary/ProductSummary.tsx +6 -6
- package/src/iframe/order-process/components/BookingSummary/components/ProductsByMenuStep/ProductsByMenuStep.tsx +3 -3
- package/src/iframe/order-process/components/BookingSummary/components/SummaryTotal/SummaryTotal.tsx +1 -1
- package/src/iframe/order-process/components/BookingSummary/components/SummaryTotal/components/SummaryTotalBlock.tsx +2 -2
- package/src/iframe/order-process/components/BookingSummary/components/ToggleHeader/ToggleHeader.tsx +9 -9
- package/src/iframe/order-process/components/BookingSummaryFooter/BookingSummaryFooter.tsx +3 -3
- package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.stories.tsx +5 -5
- package/src/iframe/order-process/components/CalendarStepsForm/CalendarStepsForm.tsx +3 -3
- package/src/iframe/order-process/components/CalendarStepsForm/components/Category.tsx +1 -1
- package/src/iframe/order-process/components/CalendarStepsForm/components/CategoryProductModal.tsx +3 -3
- package/src/iframe/order-process/components/CategoryProduct/CategoryProduct.tsx +7 -7
- package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.stories.tsx +1 -1
- package/src/iframe/order-process/components/CategoryProduct/components/NumberInput/NumberInput.tsx +13 -4
- package/src/iframe/order-process/components/CategoryProduct/components/ProductQuantityInput/ProductQuantityInput.tsx +3 -2
- package/src/iframe/order-process/components/ErrorModal/ErrorModal.tsx +8 -8
- package/src/iframe/order-process/components/NavigationFooter/NavigationFooter.tsx +4 -4
- package/src/iframe/order-process/components/NavigationSteps/NavigationSteps.stories.tsx +1 -1
- package/src/iframe/order-process/components/NavigationSteps/NavigationSteps.tsx +6 -6
- package/src/iframe/order-process/components/PaymentCard/PaymentCard.stories.tsx +2 -2
- package/src/iframe/order-process/components/PaymentCard/PaymentCard.tsx +9 -9
- package/src/iframe/order-process/components/Timer/Timer.stories.tsx +2 -2
- package/src/iframe/order-process/components/Timer/Timer.tsx +6 -6
- package/src/iframe/page/Page.stories.tsx +4 -4
- package/src/iframe/page/Page.tsx +1 -1
- package/src/iframe/page/components/PageBody/components/LeftBlock/LeftBlock.tsx +2 -2
- package/src/iframe/page/components/PageBody/components/RightBlock/RightBlock.tsx +2 -2
- package/src/iframe/page/components/PageHeader/PageHeader.tsx +6 -6
- package/src/iframe/payment/order-items-table/OrderItemsTable.stories.tsx +2 -2
- package/src/iframe/payment/order-items-table/OrderItemsTable.tsx +2 -2
- package/src/iframe/payment/order-items-table/hooks/useTableData.tsx +3 -3
- package/src/iframe/payment/order-items-table/utils/paymentSummary.tsx +1 -0
- package/src/iframe/payment/payment-form/PaymentForm.stories.tsx +5 -5
- package/src/iframe/payment/payment-form/PaymentForm.tsx +12 -12
- package/src/iframe/payment/payment-page/PaymentPage.tsx +5 -5
- package/src/iframe/payment/payment-status-header/PaymentStatusHeader.stories.tsx +2 -2
- package/src/iframe/payment/payment-status-header/PaymentStatusHeader.tsx +2 -2
- package/src/iframe/payment/payment-status-page/PaymentStatusComponent.stories.tsx +2 -2
- package/src/iframe/payment/payment-status-page/PaymentStatusPage.tsx +2 -2
- package/src/iframe/payment/status-body/StatusBody.tsx +3 -3
- package/src/iframe/powered-by/PoweredBy.tsx +4 -4
- package/src/iframe/ryft/RyftPaymentForm.tsx +24 -16
- package/src/iframe/ryft/utils/ryft-form.ts +26 -2
- package/src/image-radio-input/ImageRadioInput.tsx +5 -5
- package/src/layout/BackgroundVideoContainer.tsx +2 -2
- package/src/layout/Container.tsx +1 -1
- package/src/layout/DropDown.tsx +1 -1
- package/src/layout/Layout.stories.tsx +5 -5
- package/src/logo/Logo.tsx +2 -2
- package/src/modals/confirmation/ConfirmModal.tsx +32 -16
- package/src/modals/dialog/Dialog.tsx +10 -10
- package/src/modals/fullscreen/FullscreenModal.tsx +10 -10
- package/src/modals/fullscreen/FulscreenModal.stories.tsx +2 -2
- package/src/notification/components/NotificationPlaceholders.tsx +5 -5
- package/src/notification/email-template/card/EmailTemplateCard.tsx +10 -10
- package/src/notification/email-template/control/EmailTemplateControl.tsx +30 -29
- package/src/notification/email-template/form/EmailTemplateForm.tsx +3 -3
- package/src/notification/send-email-template/SendEmailTemplateForm.tsx +11 -11
- package/src/notification/sms-template/card/SmsTemplateCard.tsx +9 -9
- package/src/notification/sms-template/control/SmsTemplateControl.tsx +15 -15
- package/src/notification/sms-template/form/SmsTemplateForm.tsx +1 -1
- package/src/number-of-people-input/components/RenderNumberOfPeopleInputComponent.tsx +6 -6
- package/src/product-set/card/ProductSetCard.tsx +63 -24
- package/src/product-set/control/DateAndRecurrenceInput.tsx +10 -10
- package/src/product-set/control/DateInput.tsx +12 -11
- package/src/product-set/control/ProductSetControl.stories.tsx +2 -2
- package/src/product-set/control/ProductSetControl.tsx +66 -72
- package/src/product-set/control/ProductSetImageControl.tsx +97 -0
- package/src/product-set/control/ProductSetRecurrenceControl.stories.tsx +1 -1
- package/src/product-set/control/ProductSetRecurrenceControl.tsx +10 -10
- package/src/product-set/control/ProductSetRecurrenceOverridesControl.tsx +9 -9
- package/src/product-set/control/TutorialGifCard.tsx +10 -10
- package/src/product-set/deposit-paid/ProductSetDepositPaid.stories.tsx +2 -2
- package/src/product-set/deposit-paid/ProductSetDepositPaidControl.tsx +9 -9
- package/src/product-set/elements/DeleteFieldButton.tsx +3 -3
- package/src/product-set/form/MobileFooter.tsx +3 -4
- package/src/product-set/form/ProductCategoriesControl.tsx +43 -7
- package/src/product-set/form/ProductSetForm.tsx +28 -6
- package/src/product-set/form/ProductSetFormPopover.tsx +4 -4
- package/src/product-set/form/ProductSetNameControl.tsx +27 -0
- package/src/product-set/form/ProductZonesControl.tsx +5 -8
- package/src/product-set/form/ProductsControl.tsx +4 -4
- package/src/product-set/form/SelectCategoryModal.tsx +24 -24
- package/src/product-set/form/StepsControl.tsx +5 -5
- package/src/product-set/form/SubProductsControl.tsx +1 -4
- package/src/product-set/form/VenueMapSetModal.tsx +16 -16
- package/src/product-set/form/VenueMapsControl.tsx +9 -12
- package/src/product-set/form/index.ts +1 -0
- package/src/product-set/item/CreateProductSetItem.tsx +2 -2
- package/src/product-set/popover/ProductSetPopover.stories.tsx +7 -7
- package/src/product-set/popover/ProductSetPopover.tsx +5 -5
- package/src/product-set/product/Product.stories.tsx +4 -4
- package/src/product-set/product/ProductControl.tsx +19 -20
- package/src/product-set/product/advanced-options/AdvancedOptions.tsx +11 -11
- package/src/product-set/product/booking-management/ProductBookingManagement.stories.tsx +1 -1
- package/src/product-set/product/booking-management/ProductBookingManagementControl.tsx +11 -9
- package/src/product-set/product/deposit/ProductDeposit.stories.tsx +1 -1
- package/src/product-set/product/deposit/ProductDepositControl.tsx +5 -4
- package/src/product-set/product/duration/ProductDurationControl.stories.tsx +1 -1
- package/src/product-set/product/duration/ProductDurationControl.tsx +12 -10
- package/src/product-set/product/fixed-duration-fields/FixedDurationOptions.tsx +1 -1
- package/src/product-set/product/price/ProductPrice.stories.tsx +1 -1
- package/src/product-set/product/price/ProductPriceControl.tsx +5 -4
- package/src/product-set/product/quantity/ProductQuantity.stories.tsx +3 -3
- package/src/product-set/product/quantity/ProductQuantityConstantControl.tsx +12 -10
- package/src/product-set/product/quantity/ProductQuantityControl.tsx +10 -8
- package/src/product-set/product/quantity/ProductQuantityRechargingControl.tsx +4 -3
- package/src/product-set/product-category/ProductCategory.stories.tsx +4 -4
- package/src/product-set/product-category/ProductCategoryControl.tsx +31 -27
- package/src/product-set/product-zone/ProductZoneControl.tsx +7 -7
- package/src/product-set/step/Step.stories.tsx +1 -1
- package/src/product-set/step/StepControl.tsx +5 -5
- package/src/product-set/tabs/ProductSetTabs.stories.tsx +3 -3
- package/src/product-set/tabs/ProductSetTabs.tsx +1 -1
- package/src/product-set/utils/index.ts +11 -0
- package/src/provider/categories-input/CategoriesInput.tsx +9 -9
- package/src/provider/categories-input/CategoriesInputDescription.tsx +4 -4
- package/src/provider/company/user-form/UserForm.tsx +9 -9
- package/src/provider/location-input/LocationInput.tsx +11 -11
- package/src/provider/location-input/LocationInputDescription.tsx +1 -1
- package/src/provider/location-input/components/FormGroupControll.tsx +1 -1
- package/src/provider/provider-details-input/ProviderDetailsInput.tsx +18 -18
- package/src/provider/provider-form/ProviderForm.tsx +11 -11
- package/src/provider/provider-links-input/ProviderLinksInput.tsx +4 -4
- package/src/provider/venue-form/VenueForm.tsx +12 -12
- package/src/provider/working-hours-input/WorkingHoursInput.tsx +13 -13
- package/src/provider/working-hours-input/WorkingHoursInputDescription.tsx +1 -1
- package/src/radio-card/RadioCard.tsx +3 -3
- package/src/recurrence-input/RecurrenceEndInput.tsx +13 -12
- package/src/recurrence-input/RecurrenceIntervalAndFrequencyInput.tsx +6 -6
- package/src/recurrence-input/RecurrenceMonthlyRepeatByInput.tsx +4 -4
- package/src/recurrence-input/RecurrenceWeekdaysInput.tsx +4 -4
- package/src/recurring-date-picker-input/DatePickerInput.tsx +3 -3
- package/src/recurring-date-picker-input/RecurrenceAndFrequencyInput.tsx +8 -8
- package/src/recurring-date-picker-input/RecurrenceEndInput.tsx +13 -12
- package/src/recurring-date-picker-input/RecurrenceIntervalAndFrequencyInput.tsx +10 -10
- package/src/recurring-date-picker-input/RecurrenceMonthlyRepeatByInput.tsx +4 -4
- package/src/recurring-date-picker-input/RecurrenceWeekdaysInput.tsx +6 -6
- package/src/recurring-date-picker-input/RecurringDatePickerInput.tsx +4 -4
- package/src/recurring-date-picker-input/utils.ts +4 -4
- package/src/report/DataFieldsSelector/DataFieldsSelector.tsx +6 -6
- package/src/report/ReportRunnerModal/ReportRunnerModal.tsx +23 -23
- package/src/report/ReportTypeSelect/ReportTypeSelect.tsx +9 -9
- package/src/report/card/ReportCard.tsx +3 -3
- package/src/report/form/ReportForm.tsx +9 -9
- package/src/resource/form/ResourceForm.tsx +4 -4
- package/src/resource/form/components/CapacityControl.tsx +3 -2
- package/src/resource/form/components/NameControl.tsx +1 -1
- package/src/resource/form/components/SortControl.tsx +3 -2
- package/src/resource/form/components/ZoneControl.tsx +3 -3
- package/src/root.css +51 -51
- package/src/sales/booking/results/BookingResults.tsx +2 -2
- package/src/sales/booking/results/components/ResultCard.tsx +8 -10
- package/src/sales/coupon/control/CouponFormControl.tsx +31 -24
- package/src/sales/coupon/form/CouponFrom.tsx +3 -3
- package/src/sales/filters/SaleFilters.tsx +3 -3
- package/src/sales/guest-profile/previous-bookings/PreviousBookings.tsx +12 -12
- package/src/sales/guest-profile/profile/Profile.tsx +6 -6
- package/src/sales/guest-profile/profile/components/ImageHolder/ImageHolder.tsx +1 -1
- package/src/sales/guest-profile/user-metrics/UserMetrics.tsx +34 -34
- package/src/sales/guest-profile/visited-providers/VisitedProviders.tsx +10 -10
- package/src/sales/life-time-sales/LifeTimeSalesChart.tsx +8 -8
- package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.stories.tsx +1 -1
- package/src/sales/manual-booking/number-input-horizontal/NumberInputHorizontal.tsx +3 -3
- package/src/sales/manual-booking/search-user/SearchUser.tsx +8 -8
- package/src/sales/manual-booking/select-date-type-control/SelectDateTypeControl.tsx +10 -10
- package/src/sales/manual-booking/select-event/SelectEvent.tsx +13 -13
- package/src/sales/manual-booking/select-menu/SelectMenu.tsx +5 -5
- package/src/sales/manual-booking/select-menu/components/MenuButton.tsx +2 -2
- package/src/sales/manual-booking/summary/ManualBookingSummary.tsx +11 -11
- package/src/sales/modals/payment-modal/PaymentModal.tsx +10 -10
- package/src/sales/modals/refund-modal/RefundModal.stories.tsx +1 -1
- package/src/sales/modals/refund-modal/RefundModal.tsx +11 -11
- package/src/sales/notes/NotesTable.tsx +5 -5
- package/src/sales/notes/NotesTableRow.tsx +13 -13
- package/src/sales/notes/note-form/NoteForm.tsx +11 -11
- package/src/sales/payment-form/SalePaymentForm.tsx +5 -5
- package/src/sales/payment-form/components/RyftPayment/RyftPayment.tsx +9 -9
- package/src/sales/sales-and-views/SalesAndViewsChart.tsx +19 -19
- package/src/sales/source-of-sales/SourceOfSalesChart.tsx +9 -9
- package/src/sales/statistics-chart/StatisticsChart.tsx +4 -4
- package/src/setting/admin/AdminSettingForm.tsx +14 -14
- package/src/setting/admin/PaymentFeeForm.tsx +33 -28
- package/src/setting/dashboard/DashboardSettingForm.tsx +17 -16
- package/src/setting/dashboard/EventSettingForm.tsx +3 -3
- package/src/setting/dashboard/FinancialDataForm.tsx +5 -5
- package/src/setting/dashboard/OtherSettingForm.tsx +29 -29
- package/src/setting/dashboard/ProviderSettingForm.tsx +3 -3
- package/src/setting/dashboard/components/IpInput.tsx +10 -10
- package/src/setting/dashboard/payments/payments-form/PaymentsForm.tsx +8 -8
- package/src/setting/dashboard/payments/payments-modal/PaymentsModal.tsx +4 -4
- package/src/setting/dashboard/snippet-templates/card/SnippetTemplateCard.tsx +8 -8
- package/src/setting/dashboard/snippets/card/SnippetCard.tsx +16 -16
- package/src/setting/system/SystemSettingForm.tsx +8 -8
- package/src/sidebar/elements/Elements.stories.tsx +1 -1
- package/src/sidebar/elements/ReturnBack.tsx +3 -3
- package/src/slide-curtain/SlideCurtain.stories.tsx +1 -1
- package/src/slide-curtain/SlideCurtain.tsx +4 -4
- package/src/snippet/snippet-template/SnippetTemplate.tsx +3 -3
- package/src/snippet/snippet-template/context/snippetTemplate.tsx +2 -2
- package/src/snippet/snippet-template/control/PropertyControl.tsx +8 -8
- package/src/snippet/snippet-template/form/SnippetTemplateForm.tsx +7 -7
- package/src/snippet/snippet-template/preview/Preview.tsx +72 -66
- package/src/snippet/snippet-template/settings/SettingButton.tsx +2 -2
- package/src/sortable-fields/SortableFieldItem.tsx +2 -2
- package/src/sortable-list/CreateSortableListItem.tsx +3 -3
- package/src/sortable-tree/SortableTreeItem.stories.tsx +2 -2
- package/src/sortable-tree/SortableTreeItem.tsx +46 -40
- package/src/sorting-select/SortingSelect.tsx +4 -4
- package/src/static/CountryCodeSelect.tsx +4 -4
- package/src/static/CountrySelect.tsx +5 -5
- package/src/static/CurrencyNumberInput.tsx +6 -5
- package/src/static/RestrictedAccess.tsx +6 -6
- package/src/static/SocialButton.tsx +1 -1
- package/src/static/Static.stories.tsx +24 -24
- package/src/static/UserBadge.tsx +7 -7
- package/src/static/WarningMessage.tsx +2 -2
- package/src/static/date-range-input/DateRangeInput.stories.tsx +1 -1
- package/src/static/date-range-input/DateRangeInput.tsx +12 -12
- package/src/static/form-number-input/FormNumberInput.stories.tsx +1 -1
- package/src/static/form-number-input/FormNumberInput.tsx +5 -4
- package/src/static/images/Images.stories.tsx +1 -1
- package/src/static/loader/BlockLoader.tsx +2 -2
- package/src/static/loader/ButtonLoader.tsx +1 -1
- package/src/static/loader/Loader.stories.tsx +2 -2
- package/src/static/loader/PaymentLoader.tsx +4 -4
- package/src/static/loader/SnippetLoader.tsx +2 -2
- package/src/static/manual-date-picker/ManualDatePicker.tsx +9 -9
- package/src/static/number-input/NumberInput.tsx +7 -6
- package/src/static/switch/Switch.stories.tsx +3 -3
- package/src/static/switch/Switch.tsx +4 -4
- package/src/static/tabs/Tabs.tsx +1 -1
- package/src/static/text-expand/TextExpand.tsx +3 -3
- package/src/striped-static-table/StripedStaticTable.tsx +2 -2
- package/src/styles/activity-card/{GridActivitiesCard.scss → ActivitiesCard.scss} +19 -5
- package/src/styles/activity-card/ListActivitiesCard.scss +12 -42
- package/src/styles/activity-card/_index.scss +1 -1
- package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
- package/src/styles/product-set/ProductSetForm.scss +22 -0
- package/src/styles/ryft-payment-form/RyftPaymentForm.scss +28 -1
- package/src/styles/sales/BookingResults.scss +1 -1
- package/src/table/FilterHelperComponent.tsx +10 -10
- package/src/table/MenuButton.tsx +1 -1
- package/src/table/PaginationHelperComponent.tsx +7 -7
- package/src/table/PerPageHelperComponent.tsx +5 -5
- package/src/table/ReactTableHelperComponent.tsx +1 -1
- package/src/table/TableHelperComponent.tsx +1 -1
- package/src/theme/Theme.stories.tsx +36 -36
- package/src/tiptap-editor/TipTapEditor.tsx +1 -1
- package/src/tiptap-editor/TipTapMenu/TipTapMenu.tsx +21 -21
- package/src/tiptap-editor/TipTapMenu/components/TipTapMenuItem.tsx +2 -2
- package/src/tiptap-editor/TipTapMenu/extensions/constants.ts +2 -1
- package/src/tiptap-editor/TipTapMenu/extensions/utils.ts +2 -2
- package/src/typeahead/Typeahead.stories.tsx +3 -3
- package/src/typeahead/Typeahead.tsx +15 -1
- package/src/typeahead-helper/TypeaheadHelperComponent.tsx +4 -4
- package/src/venue-map-sets/card/VenueMapSetCard.tsx +14 -14
- package/src/venue-map-sets/form/VenueMapSetForm.tsx +3 -3
- package/src/venue-map-sets/form/components/NameControl.tsx +1 -1
- package/src/venue-map-sets/form/components/VenueMapControl.tsx +8 -8
- package/src/venue-map-sets/form/components/VenueMapImageControl.tsx +5 -5
- package/src/venue-map-sets/form/components/VenueMapModal.tsx +16 -16
- package/src/venue-map-sets/form/components/VenueMapsControl.tsx +1 -1
- package/src/virtualized/components/VirtualizedGrid.tsx +1 -1
- package/src/zone/card/ZoneCard.tsx +14 -14
- package/src/zone/form/ZoneForm.tsx +3 -3
- package/src/zone/form/components/AvailableTimesControl.tsx +4 -4
- package/src/zone/form/components/DescriptionControl.tsx +2 -2
- package/src/zone/form/components/GameDurationControl.tsx +3 -2
- package/src/zone/form/components/NameControl.tsx +1 -1
- package/src/zone/form/components/SortControl.tsx +3 -2
- package/src/zone/form/components/ZoneControl.tsx +1 -1
- package/src/zone/form/components/ZoneImageControl.tsx +3 -3
- package/src/zone/form/components/ZoneRecurrenceControl.tsx +10 -10
- package/src/zone/form/components/ZoneRecurrencesControl.tsx +10 -10
- package/src/zone/form/components/ZoneTypeControl.tsx +2 -2
- package/tailwind.config.js +3 -6
- package/yarn.lock +95 -69
|
@@ -217,8 +217,8 @@ export const DateAndRecurrenceInput = ({
|
|
|
217
217
|
<OverlayTrigger
|
|
218
218
|
show={isDatePopoverVisible}
|
|
219
219
|
overlay={
|
|
220
|
-
<Popover id={popoverId} className=
|
|
221
|
-
<Popover.Content className=
|
|
220
|
+
<Popover id={popoverId} className='rounded'>
|
|
221
|
+
<Popover.Content className='shadow-lg rounded' ref={popoverRef}>
|
|
222
222
|
<RecurringDatePickerInput
|
|
223
223
|
defaultValues={editState.values}
|
|
224
224
|
onChange={handleRecurringDateChange}
|
|
@@ -247,11 +247,11 @@ export const DateAndRecurrenceInput = ({
|
|
|
247
247
|
</Popover.Content>
|
|
248
248
|
</Popover>
|
|
249
249
|
}
|
|
250
|
-
trigger=
|
|
251
|
-
placement=
|
|
250
|
+
trigger='click'
|
|
251
|
+
placement='bottom'
|
|
252
252
|
popperConfig={{ modifiers: [sameWidthPopperModifier] }}
|
|
253
253
|
>
|
|
254
|
-
<div className=
|
|
254
|
+
<div className='product-set-recurrences'>
|
|
255
255
|
<DndContext
|
|
256
256
|
onDragEnd={handleOnDragEnd}
|
|
257
257
|
modifiers={[restrictToVerticalAxis]}
|
|
@@ -279,22 +279,22 @@ export const DateAndRecurrenceInput = ({
|
|
|
279
279
|
|
|
280
280
|
{(!isEventEditProductSet || fields?.length < 1) && (
|
|
281
281
|
<div
|
|
282
|
-
className=
|
|
283
|
-
role=
|
|
282
|
+
className='product-set-recurrence-icon-wrapper'
|
|
283
|
+
role='button'
|
|
284
284
|
tabIndex={0}
|
|
285
285
|
onClick={handleOnAdd}
|
|
286
286
|
onKeyDown={handleOnAdd}
|
|
287
287
|
>
|
|
288
288
|
<FaPlusCircle
|
|
289
289
|
size={16}
|
|
290
|
-
className=
|
|
290
|
+
className='product-set-recurrence-icon-add mr-2'
|
|
291
291
|
/>
|
|
292
292
|
{t('addDates')}
|
|
293
293
|
</div>
|
|
294
294
|
)}
|
|
295
295
|
|
|
296
296
|
<Form.Control
|
|
297
|
-
type=
|
|
297
|
+
type='hidden'
|
|
298
298
|
{...register('menuRecurrences', {
|
|
299
299
|
required: {
|
|
300
300
|
value: true,
|
|
@@ -306,7 +306,7 @@ export const DateAndRecurrenceInput = ({
|
|
|
306
306
|
})}
|
|
307
307
|
/>
|
|
308
308
|
|
|
309
|
-
<div className=
|
|
309
|
+
<div className='manual-form-error'>
|
|
310
310
|
{errors.menuRecurrences?.message}
|
|
311
311
|
</div>
|
|
312
312
|
</div>
|
|
@@ -208,8 +208,8 @@ export const DateInput = ({
|
|
|
208
208
|
<OverlayTrigger
|
|
209
209
|
show={isDatePopoverVisible}
|
|
210
210
|
overlay={
|
|
211
|
-
<Popover id={popoverId} className=
|
|
212
|
-
<Popover.Content className=
|
|
211
|
+
<Popover id={popoverId} className='rounded'>
|
|
212
|
+
<Popover.Content className='shadow-lg rounded' ref={popoverRef}>
|
|
213
213
|
<DatePickerInput
|
|
214
214
|
defaultValues={editState.values}
|
|
215
215
|
onChange={handleRecurringDateChange}
|
|
@@ -236,32 +236,33 @@ export const DateInput = ({
|
|
|
236
236
|
</Popover.Content>
|
|
237
237
|
</Popover>
|
|
238
238
|
}
|
|
239
|
-
trigger=
|
|
240
|
-
placement=
|
|
239
|
+
trigger='click'
|
|
240
|
+
placement='bottom'
|
|
241
241
|
popperConfig={{ modifiers: [sameWidthPopperModifier] }}
|
|
242
242
|
>
|
|
243
|
-
<div className=
|
|
243
|
+
<div className='product-set-recurrences'>
|
|
244
244
|
{fields.map((menuRecurrence, index) => (
|
|
245
245
|
<ProductSetRecurrenceOverridesControl
|
|
246
246
|
key={menuRecurrence._id}
|
|
247
247
|
menuRecurrence={menuRecurrence}
|
|
248
248
|
onEdit={() => handleOnEdit(menuRecurrence, index)}
|
|
249
249
|
errorMessage={
|
|
250
|
-
errors?.menuRecurrences?.[`${index}`]?.availableTimes
|
|
250
|
+
errors?.menuRecurrences?.[`${index}`]?.availableTimes
|
|
251
|
+
?.message || errors?.menuRecurrences?.[`${index}`]?.message
|
|
251
252
|
}
|
|
252
253
|
/>
|
|
253
254
|
))}
|
|
254
255
|
{fields.length < MAX_QUANTITY_RECURRENCE_DATE_IN_OVERRIDE && (
|
|
255
256
|
<div
|
|
256
|
-
className=
|
|
257
|
-
role=
|
|
257
|
+
className='product-set-recurrence-icon-wrapper'
|
|
258
|
+
role='button'
|
|
258
259
|
tabIndex={0}
|
|
259
260
|
onClick={handleOnAdd}
|
|
260
261
|
onKeyDown={handleOnAdd}
|
|
261
262
|
>
|
|
262
263
|
<FaPlusCircle
|
|
263
264
|
size={16}
|
|
264
|
-
className=
|
|
265
|
+
className='product-set-recurrence-icon-add mr-2'
|
|
265
266
|
/>
|
|
266
267
|
|
|
267
268
|
{t('addDates')}
|
|
@@ -269,7 +270,7 @@ export const DateInput = ({
|
|
|
269
270
|
)}
|
|
270
271
|
|
|
271
272
|
<Form.Control
|
|
272
|
-
type=
|
|
273
|
+
type='hidden'
|
|
273
274
|
{...register('menuRecurrences', {
|
|
274
275
|
required: {
|
|
275
276
|
value: true,
|
|
@@ -281,7 +282,7 @@ export const DateInput = ({
|
|
|
281
282
|
})}
|
|
282
283
|
/>
|
|
283
284
|
|
|
284
|
-
<div className=
|
|
285
|
+
<div className='manual-form-error'>
|
|
285
286
|
{errors.menuRecurrences?.message}
|
|
286
287
|
</div>
|
|
287
288
|
</div>
|
|
@@ -28,7 +28,7 @@ export const Default: Story<DefaultProductSetControl> = (args) => {
|
|
|
28
28
|
return (
|
|
29
29
|
<FormProvider {...form}>
|
|
30
30
|
<Form
|
|
31
|
-
className=
|
|
31
|
+
className='d-flex flex-column'
|
|
32
32
|
noValidate
|
|
33
33
|
onSubmit={form.handleSubmit(onSubmit)}
|
|
34
34
|
>
|
|
@@ -49,7 +49,7 @@ export const Empty: Story<DefaultProductSetControl> = (args) => {
|
|
|
49
49
|
return (
|
|
50
50
|
<FormProvider {...form}>
|
|
51
51
|
<Form
|
|
52
|
-
className=
|
|
52
|
+
className='d-flex flex-column'
|
|
53
53
|
noValidate
|
|
54
54
|
onSubmit={form.handleSubmit(onSubmit)}
|
|
55
55
|
>
|
|
@@ -22,12 +22,11 @@ import HookFormService from '@licklist/plugins/dist/services/Form/HookFormServic
|
|
|
22
22
|
import { ruleForUrlWithProtocol } from '@licklist/plugins/dist/validation/Rules/urlRule'
|
|
23
23
|
import { WorkHour } from '@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper'
|
|
24
24
|
import { checkIfZoneCategory } from '@licklist/plugins'
|
|
25
|
+
import { Image } from '@licklist/core/dist/DataMapper/Media/ImageDataMapper'
|
|
25
26
|
import { WarningMessage } from '../../static'
|
|
26
27
|
import { SelectItem } from '../../types/generic/SelectItem'
|
|
27
28
|
import {
|
|
28
29
|
DateAndRecurrenceInput,
|
|
29
|
-
// TODO: Show Date Component, when reccurent date bugs are fixed
|
|
30
|
-
// DateAndRecurrenceInput,
|
|
31
30
|
DateAndRecurrenceInputValues,
|
|
32
31
|
} from './DateAndRecurrenceInput'
|
|
33
32
|
import TutorialGifCard from './TutorialGifCard'
|
|
@@ -35,6 +34,7 @@ import { Step } from '../types'
|
|
|
35
34
|
import { StepsControl } from '../form/StepsControl'
|
|
36
35
|
import { Typeahead } from '../../typeahead'
|
|
37
36
|
import { DateInput } from './DateInput'
|
|
37
|
+
import { ProductSetImageControl } from './ProductSetImageControl'
|
|
38
38
|
|
|
39
39
|
const OPERATIONAL_COST_TITLES = {
|
|
40
40
|
[OPERATIONAL_COST_PROVIDER]: 'operationalCostProvider',
|
|
@@ -47,6 +47,8 @@ const RELY_ON_PEOPLE_TYPE_TITLES = {
|
|
|
47
47
|
[RELY_ON_PEOPLE_QUANTITY]: 'peopleQuantity',
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
const MAX_DESCRIPTION_LENGTH = 500
|
|
51
|
+
|
|
50
52
|
export interface TemplateItem {
|
|
51
53
|
id: string
|
|
52
54
|
value: EmailTemplate | SmsTemplate
|
|
@@ -55,6 +57,8 @@ export interface TemplateItem {
|
|
|
55
57
|
|
|
56
58
|
export interface ProductSetControlValues extends DateAndRecurrenceInputValues {
|
|
57
59
|
name: string
|
|
60
|
+
description?: string
|
|
61
|
+
image?: Image
|
|
58
62
|
type: ProductSetType
|
|
59
63
|
termsAndConditions: string
|
|
60
64
|
thankYouPageUrl: string
|
|
@@ -65,6 +69,7 @@ export interface ProductSetControlValues extends DateAndRecurrenceInputValues {
|
|
|
65
69
|
steps: Step[]
|
|
66
70
|
emailTemplates?: TemplateItem[]
|
|
67
71
|
smsTemplates?: TemplateItem[]
|
|
72
|
+
localImageBlobURL?: string
|
|
68
73
|
}
|
|
69
74
|
|
|
70
75
|
export interface ProductSetControlShared {
|
|
@@ -122,6 +127,7 @@ export function ProductSetControl({
|
|
|
122
127
|
const steps = watch('steps')
|
|
123
128
|
|
|
124
129
|
const nameId = useId()
|
|
130
|
+
const descriptionId = useId()
|
|
125
131
|
const termsAndConditionsId = useId()
|
|
126
132
|
const relyOnPeopleTypeId = useId()
|
|
127
133
|
|
|
@@ -139,7 +145,7 @@ export function ProductSetControl({
|
|
|
139
145
|
isEventEditProductSet && 'event-edit-product-set'
|
|
140
146
|
}`}
|
|
141
147
|
>
|
|
142
|
-
<Col md={6} sm={12} className=
|
|
148
|
+
<Col md={6} sm={12} className='pr-5'>
|
|
143
149
|
<Form.Group controlId={nameId}>
|
|
144
150
|
<Form.Label>{t('Design:name')}*</Form.Label>
|
|
145
151
|
<Form.Control
|
|
@@ -169,11 +175,27 @@ export function ProductSetControl({
|
|
|
169
175
|
placeholder={t('Design:placeholderProductSetName')}
|
|
170
176
|
isInvalid={Boolean(errors.name)}
|
|
171
177
|
/>
|
|
172
|
-
<Form.Control.Feedback type=
|
|
178
|
+
<Form.Control.Feedback type='invalid'>
|
|
173
179
|
{errors.name?.message}
|
|
174
180
|
</Form.Control.Feedback>
|
|
175
181
|
</Form.Group>
|
|
176
182
|
|
|
183
|
+
<Form.Group controlId={descriptionId}>
|
|
184
|
+
<Form.Label>{t('Design:description')}</Form.Label>
|
|
185
|
+
<Form.Control
|
|
186
|
+
{...register('description', {
|
|
187
|
+
maxLength: MAX_DESCRIPTION_LENGTH,
|
|
188
|
+
})}
|
|
189
|
+
as='textarea'
|
|
190
|
+
isInvalid={Boolean(errors.description)}
|
|
191
|
+
/>
|
|
192
|
+
<Form.Control.Feedback type='invalid'>
|
|
193
|
+
{errors.description?.message}
|
|
194
|
+
</Form.Control.Feedback>
|
|
195
|
+
</Form.Group>
|
|
196
|
+
|
|
197
|
+
<ProductSetImageControl />
|
|
198
|
+
|
|
177
199
|
{showDateSelector ? (
|
|
178
200
|
<DateInput
|
|
179
201
|
workHours={isZoneAdded ? workHours : undefined}
|
|
@@ -194,7 +216,7 @@ export function ProductSetControl({
|
|
|
194
216
|
</>
|
|
195
217
|
)}
|
|
196
218
|
|
|
197
|
-
<div className=
|
|
219
|
+
<div className='divider' />
|
|
198
220
|
|
|
199
221
|
<TutorialGifCard isOverrides={isOverrides} />
|
|
200
222
|
|
|
@@ -206,34 +228,13 @@ export function ProductSetControl({
|
|
|
206
228
|
/>
|
|
207
229
|
</Col>
|
|
208
230
|
<Col md={6} sm={12}>
|
|
209
|
-
<div className=
|
|
210
|
-
{/* <Controller
|
|
211
|
-
control={control}
|
|
212
|
-
name="type"
|
|
213
|
-
render={({ field }) => (
|
|
214
|
-
<Form.Group className="d-flex flex-column flex-grow-1 align-items-start">
|
|
215
|
-
<Form.Label>{t("Design:checkoutType")}</Form.Label>
|
|
216
|
-
<Switch
|
|
217
|
-
name={field.name}
|
|
218
|
-
options={PRODUCT_SET_TYPES.map((type) => ({
|
|
219
|
-
key: type,
|
|
220
|
-
id: type,
|
|
221
|
-
value: t(type),
|
|
222
|
-
}))}
|
|
223
|
-
value={field.value}
|
|
224
|
-
onChange={field.onChange}
|
|
225
|
-
disabled={isLoading}
|
|
226
|
-
/>
|
|
227
|
-
</Form.Group>
|
|
228
|
-
)}
|
|
229
|
-
/> */}
|
|
230
|
-
|
|
231
|
+
<div className='second-column'>
|
|
231
232
|
<Form.Group>
|
|
232
|
-
<Form.Label className=
|
|
233
|
+
<Form.Label className='mb-0'>
|
|
233
234
|
{t('Design:operationalCost')}
|
|
234
235
|
</Form.Label>
|
|
235
|
-
<div className=
|
|
236
|
-
<span className=
|
|
236
|
+
<div className='d-flex'>
|
|
237
|
+
<span className='booking-fee-text'>
|
|
237
238
|
{t('bookingFeePaid', {
|
|
238
239
|
fee,
|
|
239
240
|
})}
|
|
@@ -241,7 +242,7 @@ export function ProductSetControl({
|
|
|
241
242
|
</div>
|
|
242
243
|
<Form.Control
|
|
243
244
|
{...register('operationalCost', { required: true })}
|
|
244
|
-
as=
|
|
245
|
+
as='select'
|
|
245
246
|
defaultValue={OPERATIONAL_COST_PROVIDER}
|
|
246
247
|
disabled={isOverrides}
|
|
247
248
|
isInvalid={HookFormService.isInvalid('operationalCost', errors)}
|
|
@@ -262,7 +263,7 @@ export function ProductSetControl({
|
|
|
262
263
|
</option>
|
|
263
264
|
))}
|
|
264
265
|
</Form.Control>
|
|
265
|
-
<Form.Control.Feedback type=
|
|
266
|
+
<Form.Control.Feedback type='invalid'>
|
|
266
267
|
{HookFormService.getErrors('operationalCost', errors)}
|
|
267
268
|
</Form.Control.Feedback>
|
|
268
269
|
</Form.Group>
|
|
@@ -271,12 +272,12 @@ export function ProductSetControl({
|
|
|
271
272
|
<Form.Label>{t('peopleQuantityType')}</Form.Label>
|
|
272
273
|
<Form.Control
|
|
273
274
|
{...register('relyOnPeopleType')}
|
|
274
|
-
as=
|
|
275
|
+
as='select'
|
|
275
276
|
defaultValue={null}
|
|
276
277
|
disabled={isOverrides}
|
|
277
278
|
isInvalid={HookFormService.isInvalid('relyOnPeopleType', errors)}
|
|
278
279
|
>
|
|
279
|
-
<option value=
|
|
280
|
+
<option value=''>{t('notRequired')} </option>
|
|
280
281
|
{Object.keys(RELY_ON_PEOPLE_TYPES).map((relyOnPeopleType) => (
|
|
281
282
|
<option
|
|
282
283
|
value={RELY_ON_PEOPLE_TYPES[relyOnPeopleType]}
|
|
@@ -290,7 +291,7 @@ export function ProductSetControl({
|
|
|
290
291
|
</option>
|
|
291
292
|
))}
|
|
292
293
|
</Form.Control>
|
|
293
|
-
<Form.Control.Feedback type=
|
|
294
|
+
<Form.Control.Feedback type='invalid'>
|
|
294
295
|
{HookFormService.getErrors('relyOnPeopleType', errors)}
|
|
295
296
|
</Form.Control.Feedback>
|
|
296
297
|
</Form.Group>
|
|
@@ -299,7 +300,7 @@ export function ProductSetControl({
|
|
|
299
300
|
<Form.Label>{t('Design:termsAndConditions')}</Form.Label>
|
|
300
301
|
<Form.Control
|
|
301
302
|
{...register('termsAndConditions')}
|
|
302
|
-
as=
|
|
303
|
+
as='textarea'
|
|
303
304
|
rows={2}
|
|
304
305
|
disabled={isLoading || isOverrides}
|
|
305
306
|
isInvalid={HookFormService.isInvalid(
|
|
@@ -307,19 +308,19 @@ export function ProductSetControl({
|
|
|
307
308
|
errors,
|
|
308
309
|
)}
|
|
309
310
|
/>
|
|
310
|
-
<Form.Control.Feedback type=
|
|
311
|
+
<Form.Control.Feedback type='invalid'>
|
|
311
312
|
{HookFormService.getErrors('termsAndConditions', errors)}
|
|
312
313
|
</Form.Control.Feedback>
|
|
313
314
|
</Form.Group>
|
|
314
315
|
|
|
315
316
|
<Form.Group>
|
|
316
|
-
<Form.Label className=
|
|
317
|
+
<Form.Label className='mt-4'>
|
|
317
318
|
{t('Design:emailTemplate')}
|
|
318
319
|
</Form.Label>
|
|
319
320
|
<>
|
|
320
321
|
{showEmailTemplateSelector ? (
|
|
321
322
|
<Typeahead
|
|
322
|
-
name=
|
|
323
|
+
name='emailTemplates'
|
|
323
324
|
options={emailTemplates}
|
|
324
325
|
isMultipleChoise
|
|
325
326
|
placeholder={t('Design:choose')}
|
|
@@ -343,7 +344,7 @@ export function ProductSetControl({
|
|
|
343
344
|
</Form.Label>
|
|
344
345
|
{showSmsTemplateSelector ? (
|
|
345
346
|
<Typeahead
|
|
346
|
-
name=
|
|
347
|
+
name='smsTemplates'
|
|
347
348
|
options={smsTemplates}
|
|
348
349
|
isMultipleChoise
|
|
349
350
|
placeholder={t('Design:choose')}
|
|
@@ -363,40 +364,33 @@ export function ProductSetControl({
|
|
|
363
364
|
<Form.Group>
|
|
364
365
|
<Controller
|
|
365
366
|
control={control}
|
|
366
|
-
name=
|
|
367
|
-
render={({ field }) =>
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
</Form.Control>
|
|
390
|
-
<Form.Control.Feedback type="invalid">
|
|
391
|
-
{HookFormService.getErrors('fieldSetId', errors)}
|
|
392
|
-
</Form.Control.Feedback>
|
|
393
|
-
</>
|
|
394
|
-
)
|
|
395
|
-
}}
|
|
367
|
+
name='fieldSetId'
|
|
368
|
+
render={({ field }) => (
|
|
369
|
+
<>
|
|
370
|
+
<Form.Label>{t('Design:customFields')}</Form.Label>
|
|
371
|
+
<Form.Control
|
|
372
|
+
onChange={field.onChange}
|
|
373
|
+
value={Number(field.value)}
|
|
374
|
+
as='select'
|
|
375
|
+
disabled={isOverrides}
|
|
376
|
+
isInvalid={HookFormService.isInvalid('fieldSetId', errors)}
|
|
377
|
+
>
|
|
378
|
+
<option value=''>{t('Design:choose')}</option>
|
|
379
|
+
{fieldSets?.map((fieldSet) => (
|
|
380
|
+
<option value={fieldSet.id} key={fieldSet.id}>
|
|
381
|
+
{fieldSet.name}
|
|
382
|
+
</option>
|
|
383
|
+
))}
|
|
384
|
+
</Form.Control>
|
|
385
|
+
<Form.Control.Feedback type='invalid'>
|
|
386
|
+
{HookFormService.getErrors('fieldSetId', errors)}
|
|
387
|
+
</Form.Control.Feedback>
|
|
388
|
+
</>
|
|
389
|
+
)}
|
|
396
390
|
/>
|
|
397
391
|
</Form.Group>
|
|
398
392
|
|
|
399
|
-
<Form.Group controlId=
|
|
393
|
+
<Form.Group controlId='thankYouPageUrlId'>
|
|
400
394
|
<Form.Label>{t('thankYouPageUrl')}</Form.Label>
|
|
401
395
|
|
|
402
396
|
<Form.Control
|
|
@@ -413,7 +407,7 @@ export function ProductSetControl({
|
|
|
413
407
|
isInvalid={HookFormService.isInvalid('thankYouPageUrl', errors)}
|
|
414
408
|
/>
|
|
415
409
|
|
|
416
|
-
<Form.Control.Feedback type=
|
|
410
|
+
<Form.Control.Feedback type='invalid'>
|
|
417
411
|
{HookFormService.getErrors('thankYouPageUrl', errors)}
|
|
418
412
|
</Form.Control.Feedback>
|
|
419
413
|
</Form.Group>
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { useFormContext } from 'react-hook-form'
|
|
2
|
+
import { HookFormService, useImages } from '@licklist/plugins'
|
|
3
|
+
import { IMAGE_TYPE_IMAGE } from '@licklist/core/dist/DataMapper/Media/ImageDataMapper'
|
|
4
|
+
import { useCallback, useEffect } from 'react'
|
|
5
|
+
import { Form } from 'react-bootstrap'
|
|
6
|
+
import { FileUpload } from 'src/file-upload'
|
|
7
|
+
import { useTranslation } from 'react-i18next'
|
|
8
|
+
import { isEqual } from 'lodash'
|
|
9
|
+
import { ProductSetControlValues } from '..'
|
|
10
|
+
|
|
11
|
+
export const ProductSetImageControl = () => {
|
|
12
|
+
const { t } = useTranslation('Design')
|
|
13
|
+
|
|
14
|
+
const {
|
|
15
|
+
formState: { errors },
|
|
16
|
+
setValue,
|
|
17
|
+
watch,
|
|
18
|
+
clearErrors,
|
|
19
|
+
} = useFormContext<ProductSetControlValues>()
|
|
20
|
+
const currentProductSet: ProductSetControlValues = watch()
|
|
21
|
+
|
|
22
|
+
const {
|
|
23
|
+
images,
|
|
24
|
+
handleImageRemove,
|
|
25
|
+
handleImageUploading,
|
|
26
|
+
isLoading: isImageUploading,
|
|
27
|
+
setImages,
|
|
28
|
+
} = useImages(null)
|
|
29
|
+
|
|
30
|
+
const onFilesChange = useCallback(
|
|
31
|
+
async (files: File[]) => {
|
|
32
|
+
const uploadedFiles = await handleImageUploading(files, IMAGE_TYPE_IMAGE)
|
|
33
|
+
|
|
34
|
+
if (!uploadedFiles) return
|
|
35
|
+
|
|
36
|
+
setValue('localImageBlobURL', URL.createObjectURL(files[0]) as never)
|
|
37
|
+
},
|
|
38
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
39
|
+
[handleImageUploading],
|
|
40
|
+
)
|
|
41
|
+
|
|
42
|
+
const onImageRemove = useCallback(
|
|
43
|
+
(id, path) => {
|
|
44
|
+
handleImageRemove(id, path)
|
|
45
|
+
setValue('localImageBlobURL', undefined as never)
|
|
46
|
+
},
|
|
47
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
48
|
+
[handleImageRemove],
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
useEffect(() => {
|
|
52
|
+
if (!currentProductSet || !currentProductSet.image) return
|
|
53
|
+
|
|
54
|
+
setImages([
|
|
55
|
+
{
|
|
56
|
+
...currentProductSet.image,
|
|
57
|
+
url:
|
|
58
|
+
currentProductSet.image.url || currentProductSet?.localImageBlobURL,
|
|
59
|
+
},
|
|
60
|
+
])
|
|
61
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
62
|
+
}, [currentProductSet?.image])
|
|
63
|
+
|
|
64
|
+
useEffect(() => {
|
|
65
|
+
if (isEqual(images[0], currentProductSet?.image)) return
|
|
66
|
+
|
|
67
|
+
setValue('image', (images[0] || null) as never)
|
|
68
|
+
|
|
69
|
+
if (images[0]) {
|
|
70
|
+
clearErrors('image')
|
|
71
|
+
}
|
|
72
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
73
|
+
}, [images])
|
|
74
|
+
|
|
75
|
+
return (
|
|
76
|
+
<Form.Group controlId='name'>
|
|
77
|
+
<Form.Control
|
|
78
|
+
isInvalid={HookFormService.isInvalid('image', errors)}
|
|
79
|
+
hidden
|
|
80
|
+
/>
|
|
81
|
+
<FileUpload
|
|
82
|
+
onFilesChange={onFilesChange}
|
|
83
|
+
allowedExtensions={['jpeg', 'jpg', 'png']}
|
|
84
|
+
subTitle='.jpeg .jpg .png'
|
|
85
|
+
enablePreview
|
|
86
|
+
onFileRemove={onImageRemove}
|
|
87
|
+
defaultFiles={images}
|
|
88
|
+
isLoading={isImageUploading}
|
|
89
|
+
withIcon
|
|
90
|
+
title={t('Design:addImage')}
|
|
91
|
+
/>
|
|
92
|
+
<Form.Control.Feedback type='invalid'>
|
|
93
|
+
{HookFormService.getErrors('image', errors)}
|
|
94
|
+
</Form.Control.Feedback>
|
|
95
|
+
</Form.Group>
|
|
96
|
+
)
|
|
97
|
+
}
|
|
@@ -38,7 +38,7 @@ export const Default: Story<ProductSetRecurrences> = (args) => {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
return (
|
|
41
|
-
<div className=
|
|
41
|
+
<div className='product-set-recurrences'>
|
|
42
42
|
<DndContext onDragEnd={onDragEnd}>
|
|
43
43
|
<SortableContext
|
|
44
44
|
items={items.map((menuRecurrence) => ({
|
|
@@ -30,7 +30,7 @@ export const ProductSetRecurrenceControl = ({
|
|
|
30
30
|
|
|
31
31
|
return (
|
|
32
32
|
<div
|
|
33
|
-
className=
|
|
33
|
+
className='sortable-tree-root flex-column'
|
|
34
34
|
style={{
|
|
35
35
|
transform: CSS.Translate.toString(transform),
|
|
36
36
|
transition,
|
|
@@ -38,20 +38,20 @@ export const ProductSetRecurrenceControl = ({
|
|
|
38
38
|
{...attributes}
|
|
39
39
|
{...listeners}
|
|
40
40
|
ref={setNodeRef}
|
|
41
|
-
role=
|
|
41
|
+
role='button'
|
|
42
42
|
tabIndex={0}
|
|
43
43
|
>
|
|
44
44
|
<div
|
|
45
45
|
key={menuRecurrence.rrule}
|
|
46
|
-
className=
|
|
46
|
+
className='product-set-recurrence d-flex flex-column mr-0 mb-3 p-3 px-4 flex-grow-1'
|
|
47
47
|
>
|
|
48
|
-
<span className=
|
|
48
|
+
<span className='d-flex flex-row align-items-center'>
|
|
49
49
|
<FaCalendar
|
|
50
50
|
size={16}
|
|
51
|
-
className=
|
|
51
|
+
className='product-set-recurrence-icon-calendar'
|
|
52
52
|
/>
|
|
53
53
|
|
|
54
|
-
<span className=
|
|
54
|
+
<span className='product-set-recurrence-title d-flex flex-grow-1'>
|
|
55
55
|
{t('from')}{' '}
|
|
56
56
|
{formatDate(menuRecurrence.startDate, {
|
|
57
57
|
dateStyle: 'medium',
|
|
@@ -67,19 +67,19 @@ export const ProductSetRecurrenceControl = ({
|
|
|
67
67
|
</span>
|
|
68
68
|
|
|
69
69
|
<div
|
|
70
|
-
className=
|
|
71
|
-
role=
|
|
70
|
+
className='d-inline-flex'
|
|
71
|
+
role='button'
|
|
72
72
|
tabIndex={0}
|
|
73
73
|
onClick={() => onEdit(menuRecurrence)}
|
|
74
74
|
onKeyDown={() => onEdit(menuRecurrence)}
|
|
75
75
|
>
|
|
76
76
|
<FaEllipsisH
|
|
77
77
|
size={16}
|
|
78
|
-
className=
|
|
78
|
+
className='product-set-recurrence-icon-more'
|
|
79
79
|
/>
|
|
80
80
|
</div>
|
|
81
81
|
</span>
|
|
82
|
-
<span className=
|
|
82
|
+
<span className='product-set-recurrence-description'>
|
|
83
83
|
{getHumanReadableDate(menuRecurrence)}
|
|
84
84
|
</span>
|
|
85
85
|
</div>
|
|
@@ -16,36 +16,36 @@ export const ProductSetRecurrenceOverridesControl = ({
|
|
|
16
16
|
const { formatDate } = useIntl()
|
|
17
17
|
|
|
18
18
|
return (
|
|
19
|
-
<div className=
|
|
19
|
+
<div className='sortable-tree-root flex-column' role='button' tabIndex={0}>
|
|
20
20
|
<div
|
|
21
21
|
key={menuRecurrence.rrule}
|
|
22
|
-
className=
|
|
22
|
+
className='product-set-recurrence d-flex flex-column mr-0 mb-3 p-3 px-4 flex-grow-1'
|
|
23
23
|
>
|
|
24
|
-
<span className=
|
|
24
|
+
<span className='d-flex flex-row align-items-center'>
|
|
25
25
|
<FaCalendar
|
|
26
26
|
size={16}
|
|
27
|
-
className=
|
|
27
|
+
className='product-set-recurrence-icon-calendar'
|
|
28
28
|
/>
|
|
29
|
-
<span className=
|
|
29
|
+
<span className='product-set-recurrence-title d-flex flex-grow-1'>
|
|
30
30
|
{formatDate(menuRecurrence.startDate, {
|
|
31
31
|
dateStyle: 'medium',
|
|
32
32
|
})}{' '}
|
|
33
33
|
</span>
|
|
34
34
|
|
|
35
35
|
<div
|
|
36
|
-
className=
|
|
37
|
-
role=
|
|
36
|
+
className='d-inline-flex'
|
|
37
|
+
role='button'
|
|
38
38
|
tabIndex={0}
|
|
39
39
|
onClick={() => onEdit(menuRecurrence)}
|
|
40
40
|
onKeyDown={() => onEdit(menuRecurrence)}
|
|
41
41
|
>
|
|
42
42
|
<FaEllipsisH
|
|
43
43
|
size={16}
|
|
44
|
-
className=
|
|
44
|
+
className='product-set-recurrence-icon-more'
|
|
45
45
|
/>
|
|
46
46
|
</div>
|
|
47
47
|
</span>
|
|
48
|
-
<span className=
|
|
48
|
+
<span className='product-set-recurrence-description'>
|
|
49
49
|
{formatDate(menuRecurrence.startDate, {
|
|
50
50
|
dateStyle: 'medium',
|
|
51
51
|
})}{' '}
|