@licklist/design 0.68.7 → 0.69.1-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierrc +7 -0
- package/dist/affiliate/form/AffiliateForm.d.ts.map +1 -1
- package/dist/auth/Layout/UserNavDropDownToggle.js +1 -1
- package/dist/auth/Login/LoginComponent.js +2 -1
- package/dist/calendar/components/CalendarButtons/CalendarButtons.d.ts.map +1 -1
- package/dist/calendar/components/CalendarButtons/CalendarButtons.js +35 -40
- package/dist/events/edit-event-modal/IntervalInput.js +1 -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 +26 -25
- package/dist/events/edit-event-modal/component/SelectEventProductSet/component/EditEventProductSet.js +1 -1
- 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/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/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 +77 -0
- 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-events/Calendar.scss +0 -1
- package/dist/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
- package/dist/styles/product-set/ProductSetForm.scss +22 -0
- 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 +15 -5
- package/postcss.config.cjs +17 -0
- package/rollup.config.js +1 -0
- 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/Layout/UserNavDropDownToggle.tsx +3 -3
- 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/CalendarButtons/CalendarButtons.tsx +38 -37
- 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 +24 -24
- 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 +85 -88
- 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 +12 -12
- 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 +2 -1
- package/src/layout/DropDownToggle.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 +77 -0
- 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-events/Calendar.scss +0 -1
- package/src/styles/iframe-external-modal/IframeExternalModal.scss +2 -2
- package/src/styles/product-set/ProductSetForm.scss +22 -0
- 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 +14 -0
- package/yarn.lock +1376 -366
- package/dist/assets/iframe/selectArrow.svg.js +0 -17
|
@@ -24,38 +24,38 @@ const TutorialGifCard = ({
|
|
|
24
24
|
return (
|
|
25
25
|
<>
|
|
26
26
|
<Card className={`tutorial-card ${!isVisible && 'hidden'}`}>
|
|
27
|
-
<Card.Header className=
|
|
27
|
+
<Card.Header className='tutorial-card-header'>
|
|
28
28
|
<div>
|
|
29
29
|
<FaCheck
|
|
30
|
-
color=
|
|
31
|
-
className=
|
|
30
|
+
color='white'
|
|
31
|
+
className='rounded product-set-item-icon'
|
|
32
32
|
size={14}
|
|
33
33
|
/>
|
|
34
34
|
<span>{t('bookedTopTip')}</span>
|
|
35
35
|
</div>
|
|
36
36
|
<button
|
|
37
|
-
className=
|
|
37
|
+
className='border-0'
|
|
38
38
|
onClick={() => setIsVisible(false)}
|
|
39
|
-
type=
|
|
39
|
+
type='button'
|
|
40
40
|
>
|
|
41
41
|
<span>{t('gotIt')}</span>
|
|
42
|
-
<FaTimes size={18} className=
|
|
42
|
+
<FaTimes size={18} className='rounded tutorial-close-icon p-1' />
|
|
43
43
|
</button>
|
|
44
44
|
</Card.Header>
|
|
45
|
-
<Card.Body className=
|
|
45
|
+
<Card.Body className='tutorial-card-body'>
|
|
46
46
|
<p>
|
|
47
47
|
{t(isOverrides ? 'buildOverrideProductSet' : 'buildProductSet')}
|
|
48
48
|
</p>
|
|
49
49
|
<span>
|
|
50
50
|
{t(isOverrides ? 'buildOverrideRules' : 'buildProductSetDesc')}
|
|
51
51
|
</span>
|
|
52
|
-
{tutorialAsset && <Image src={tutorialAsset} alt=
|
|
52
|
+
{tutorialAsset && <Image src={tutorialAsset} alt='Tutorial Gif' />}
|
|
53
53
|
</Card.Body>
|
|
54
54
|
</Card>
|
|
55
55
|
<Button
|
|
56
|
-
type=
|
|
56
|
+
type='button'
|
|
57
57
|
onClick={() => setIsVisible(true)}
|
|
58
|
-
className=
|
|
58
|
+
className='mb-4'
|
|
59
59
|
style={{ display: !isVisible ? 'block' : 'none' }}
|
|
60
60
|
>
|
|
61
61
|
<span>{t('hint')}</span>
|
|
@@ -26,7 +26,7 @@ export const Default: Story<ProductSetDepositPaidControlProps> = (args) => {
|
|
|
26
26
|
return (
|
|
27
27
|
<FormProvider {...form}>
|
|
28
28
|
<Form
|
|
29
|
-
className=
|
|
29
|
+
className='d-flex flex-column'
|
|
30
30
|
noValidate
|
|
31
31
|
onSubmit={form.handleSubmit(onSubmit)}
|
|
32
32
|
>
|
|
@@ -47,7 +47,7 @@ export const WithData: Story<ProductSetDepositPaidControlProps> = (args) => {
|
|
|
47
47
|
return (
|
|
48
48
|
<FormProvider {...form}>
|
|
49
49
|
<Form
|
|
50
|
-
className=
|
|
50
|
+
className='d-flex flex-column'
|
|
51
51
|
noValidate
|
|
52
52
|
onSubmit={form.handleSubmit(onSubmit)}
|
|
53
53
|
>
|
|
@@ -38,11 +38,11 @@ export function ProductSetDepositPaidControl(
|
|
|
38
38
|
return (
|
|
39
39
|
<Row>
|
|
40
40
|
<Col xs={12}>
|
|
41
|
-
<div className=
|
|
41
|
+
<div className='form-inline'>
|
|
42
42
|
<Form.Group controlId={depositPaidId}>
|
|
43
43
|
<Form.Label>{t('depositPaid')}</Form.Label>
|
|
44
44
|
|
|
45
|
-
<div className=
|
|
45
|
+
<div className='form-inline-group'>
|
|
46
46
|
<InputGroup hasValidation>
|
|
47
47
|
<InputGroup.Prepend>
|
|
48
48
|
<InputGroup.Text>{t('pay')}</InputGroup.Text>
|
|
@@ -58,7 +58,7 @@ export function ProductSetDepositPaidControl(
|
|
|
58
58
|
/>
|
|
59
59
|
)}
|
|
60
60
|
control={control}
|
|
61
|
-
name=
|
|
61
|
+
name='depositPaidAmount'
|
|
62
62
|
rules={{
|
|
63
63
|
required: t('Validation:fieldRequired', {
|
|
64
64
|
attribute: t('depositPaidAmount'),
|
|
@@ -83,7 +83,7 @@ export function ProductSetDepositPaidControl(
|
|
|
83
83
|
<Controller
|
|
84
84
|
render={({ field: { value, onChange } }) => (
|
|
85
85
|
<Form.Control
|
|
86
|
-
as=
|
|
86
|
+
as='select'
|
|
87
87
|
onChange={onChange}
|
|
88
88
|
isInvalid={Boolean(errors.depositPaidAmountType)}
|
|
89
89
|
disabled={isLoading}
|
|
@@ -100,7 +100,7 @@ export function ProductSetDepositPaidControl(
|
|
|
100
100
|
</Form.Control>
|
|
101
101
|
)}
|
|
102
102
|
control={control}
|
|
103
|
-
name=
|
|
103
|
+
name='depositPaidAmountType'
|
|
104
104
|
rules={{
|
|
105
105
|
required: t('Validation:fieldRequired', {
|
|
106
106
|
attribute: t('depositPaidAmountType'),
|
|
@@ -122,7 +122,7 @@ export function ProductSetDepositPaidControl(
|
|
|
122
122
|
/>
|
|
123
123
|
)}
|
|
124
124
|
control={control}
|
|
125
|
-
name=
|
|
125
|
+
name='depositPaidPeriod'
|
|
126
126
|
rules={{
|
|
127
127
|
required: t('Validation:fieldRequired', {
|
|
128
128
|
attribute: t('depositPaidPeriod'),
|
|
@@ -147,7 +147,7 @@ export function ProductSetDepositPaidControl(
|
|
|
147
147
|
<Controller
|
|
148
148
|
render={({ field: { value, onChange } }) => (
|
|
149
149
|
<Form.Control
|
|
150
|
-
as=
|
|
150
|
+
as='select'
|
|
151
151
|
onChange={onChange}
|
|
152
152
|
isInvalid={Boolean(errors.depositPaidPeriodType)}
|
|
153
153
|
disabled={isLoading}
|
|
@@ -164,7 +164,7 @@ export function ProductSetDepositPaidControl(
|
|
|
164
164
|
</Form.Control>
|
|
165
165
|
)}
|
|
166
166
|
control={control}
|
|
167
|
-
name=
|
|
167
|
+
name='depositPaidPeriodType'
|
|
168
168
|
rules={{
|
|
169
169
|
required: t('Validation:fieldRequired', {
|
|
170
170
|
attribute: t('depositPaidPeriodType'),
|
|
@@ -176,7 +176,7 @@ export function ProductSetDepositPaidControl(
|
|
|
176
176
|
<InputGroup.Text>{t('beforeEvent')}</InputGroup.Text>
|
|
177
177
|
</InputGroup.Append>
|
|
178
178
|
|
|
179
|
-
<Form.Control.Feedback type=
|
|
179
|
+
<Form.Control.Feedback type='invalid'>
|
|
180
180
|
{errors.depositPaidAmount?.message}
|
|
181
181
|
{errors.depositPaidPeriod?.message}
|
|
182
182
|
</Form.Control.Feedback>
|
|
@@ -11,11 +11,11 @@ export function DeleteFieldButton({ onDelete }: DeleteFieldButtonProps) {
|
|
|
11
11
|
return (
|
|
12
12
|
<Button
|
|
13
13
|
onClick={onDelete}
|
|
14
|
-
variant=
|
|
15
|
-
className=
|
|
14
|
+
variant='outline-danger'
|
|
15
|
+
className='d-flex align-items-center'
|
|
16
16
|
>
|
|
17
17
|
<FaTrashAlt size={16} />{' '}
|
|
18
|
-
<span className=
|
|
18
|
+
<span className='d-none d-sm-inline ml-2'>{t('delete')}</span>
|
|
19
19
|
</Button>
|
|
20
20
|
)
|
|
21
21
|
}
|
|
@@ -5,12 +5,11 @@ export function MobileFooter() {
|
|
|
5
5
|
const { t } = useTranslation('Design')
|
|
6
6
|
|
|
7
7
|
return (
|
|
8
|
-
<div className=
|
|
8
|
+
<div className='container product-set-mobile-footer'>
|
|
9
9
|
<div
|
|
10
|
-
className={`d-block d-sm-none bg-white border-top fixed-bottom
|
|
11
|
-
py-4 px-5 d-flex justify-content-between flex-row-reverse`}
|
|
10
|
+
className={`d-block d-sm-none bg-white border-top fixed-bottom py-4 px-5 d-flex justify-content-between flex-row-reverse`}
|
|
12
11
|
>
|
|
13
|
-
<Button type=
|
|
12
|
+
<Button type='submit'>{t('save')}</Button>
|
|
14
13
|
</div>
|
|
15
14
|
</div>
|
|
16
15
|
)
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
useFormContext,
|
|
9
9
|
useWatch,
|
|
10
10
|
} from 'react-hook-form'
|
|
11
|
+
import { FaBars, FaBowlingBall, FaCalendar, FaTicketAlt } from 'react-icons/fa'
|
|
11
12
|
import { useTranslation } from 'react-i18next'
|
|
12
13
|
import { useSensor, MouseSensor } from '@dnd-kit/core'
|
|
13
14
|
import {
|
|
@@ -25,7 +26,11 @@ import { ProductCategoryControl } from '../product-category'
|
|
|
25
26
|
import { ProductCategory } from '../types'
|
|
26
27
|
import { ProductsControl } from './ProductsControl'
|
|
27
28
|
import { ProductSetFormValues, WithIsLoading } from './ProductSetForm'
|
|
28
|
-
import {
|
|
29
|
+
import {
|
|
30
|
+
SelectCategoryModal,
|
|
31
|
+
CATEGORY_TYPES_NAMES,
|
|
32
|
+
CategoryConfig,
|
|
33
|
+
} from './SelectCategoryModal'
|
|
29
34
|
import { ProductSetLoadingContext } from './context'
|
|
30
35
|
import { VenueMapSetModal } from './VenueMapSetModal'
|
|
31
36
|
import { moveArrayElements, sortArrayByIndex } from '../utils'
|
|
@@ -33,6 +38,29 @@ import { useSortableTreeFunctions } from '../hooks/useSortableTreeFunctions'
|
|
|
33
38
|
// @TODO not for first release
|
|
34
39
|
// import Popover from "./ProductSetFormPopover";
|
|
35
40
|
|
|
41
|
+
const CATEGORIES_TYPE: Partial<Record<CategoryType, CategoryConfig>> = {
|
|
42
|
+
[CATEGORY_TYPES_NAMES.tickets]: {
|
|
43
|
+
label: 'tickets',
|
|
44
|
+
icon: <FaTicketAlt color='#0e8ce2' size={10} />,
|
|
45
|
+
},
|
|
46
|
+
[CATEGORY_TYPES_NAMES.bookings]: {
|
|
47
|
+
label: 'bookings',
|
|
48
|
+
icon: <FaCalendar color='#0e8ce2' size={10} />,
|
|
49
|
+
},
|
|
50
|
+
[CATEGORY_TYPES_NAMES.menuItems]: {
|
|
51
|
+
label: 'menuItems',
|
|
52
|
+
icon: <FaBars color='#0e8ce2' size={10} />,
|
|
53
|
+
},
|
|
54
|
+
[CATEGORY_TYPES_NAMES.game]: {
|
|
55
|
+
label: 'game',
|
|
56
|
+
icon: <FaBowlingBall color='#0e8ce2' size={10} />,
|
|
57
|
+
},
|
|
58
|
+
[CATEGORY_TYPES_NAMES.fixedDuration]: {
|
|
59
|
+
label: 'fixedDuration',
|
|
60
|
+
icon: <FaCalendar color='#0e8ce2' size={10} />,
|
|
61
|
+
},
|
|
62
|
+
}
|
|
63
|
+
|
|
36
64
|
interface ProductCategoriesControlProps extends WithIsLoading {
|
|
37
65
|
stepIndex: number
|
|
38
66
|
isOverrides?: boolean
|
|
@@ -228,6 +256,8 @@ export function ProductCategoriesControl({
|
|
|
228
256
|
setIsExpanded(productCategoryId)
|
|
229
257
|
}
|
|
230
258
|
|
|
259
|
+
const categoryType = CATEGORIES_TYPE[productCategory.type]
|
|
260
|
+
|
|
231
261
|
return (
|
|
232
262
|
<Controller
|
|
233
263
|
key={`product-category-${productCategory._id}`}
|
|
@@ -248,14 +278,14 @@ export function ProductCategoriesControl({
|
|
|
248
278
|
cancelChanges={() => cancelChanges(index)}
|
|
249
279
|
isInvalid={!!productCategoriesErrors}
|
|
250
280
|
badge={
|
|
251
|
-
<Badge className=
|
|
281
|
+
<Badge className='category-badge'>
|
|
252
282
|
{t('productCategory')}
|
|
253
283
|
</Badge>
|
|
254
284
|
}
|
|
255
285
|
isIconInHeader={false}
|
|
256
286
|
subTitle={
|
|
257
|
-
<div className=
|
|
258
|
-
<div className=
|
|
287
|
+
<div className='product-set-badges-container'>
|
|
288
|
+
<div className='product-set-subtitle-dot product-set-subtitle-category-dot' />
|
|
259
289
|
<span>
|
|
260
290
|
{productCategoryState[
|
|
261
291
|
productCategory?.id ?? productCategory.uniqueId
|
|
@@ -264,7 +294,7 @@ export function ProductCategoriesControl({
|
|
|
264
294
|
</span>
|
|
265
295
|
</div>
|
|
266
296
|
}
|
|
267
|
-
treeLineIconColor=
|
|
297
|
+
treeLineIconColor='#1A93AA'
|
|
268
298
|
modalLabel={t('addNewCategory')}
|
|
269
299
|
secondaryBadge={getBadgeConfig(
|
|
270
300
|
productCategory.type,
|
|
@@ -272,6 +302,12 @@ export function ProductCategoriesControl({
|
|
|
272
302
|
)}
|
|
273
303
|
modalClass={ProductSetModalClasses.category}
|
|
274
304
|
isNewAdded={showCategoryModal}
|
|
305
|
+
itemButton={
|
|
306
|
+
<div className='btn-outline-primary item-icon sm border border-primary rounded-sm'>
|
|
307
|
+
{categoryType.icon}
|
|
308
|
+
<span className='ml-2'>{t(categoryType.label)}</span>
|
|
309
|
+
</div>
|
|
310
|
+
}
|
|
275
311
|
body={
|
|
276
312
|
<ProductCategoryControl
|
|
277
313
|
isLoading={isLoading}
|
|
@@ -353,7 +389,7 @@ export function ProductCategoriesControl({
|
|
|
353
389
|
)}
|
|
354
390
|
/>
|
|
355
391
|
{showVenueMapSetError && (
|
|
356
|
-
<div className=
|
|
392
|
+
<div className='manual-form-error'>
|
|
357
393
|
{venueMapSetIdError &&
|
|
358
394
|
t('Validation:fieldRequired', {
|
|
359
395
|
attribute: t('Design:venueMapSet'),
|
|
@@ -373,7 +409,7 @@ export function ProductCategoriesControl({
|
|
|
373
409
|
</>
|
|
374
410
|
)}
|
|
375
411
|
|
|
376
|
-
<div className=
|
|
412
|
+
<div className='manual-form-error'>
|
|
377
413
|
{productCategoriesErrors && productCategoriesErrors.message}
|
|
378
414
|
</div>
|
|
379
415
|
</>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useEffect } from 'react'
|
|
1
|
+
import { useEffect, useState } from 'react'
|
|
2
2
|
import { FormValues } from '@licklist/plugins/dist/types/services/Form/hook-form-service'
|
|
3
3
|
import { Button, Form, Col, Row } from 'react-bootstrap'
|
|
4
4
|
import { FormProvider, useForm } from 'react-hook-form'
|
|
@@ -12,6 +12,7 @@ import { isEqual } from 'lodash'
|
|
|
12
12
|
import { ProviderBookingManagementSetting } from '@licklist/core/dist/DataMapper/Provider/ProviderBookingManagementSettingDataMapper'
|
|
13
13
|
import { Zone } from '@licklist/core/dist/DataMapper/Provider/ZoneDataMapper'
|
|
14
14
|
import { WorkHour } from '@licklist/core/dist/DataMapper/Provider/WorkHourDataMapper'
|
|
15
|
+
import { transformErrorToMessage } from '@licklist/plugins'
|
|
15
16
|
import { Dialog, useDialogContext } from '../../modals/dialog'
|
|
16
17
|
import {
|
|
17
18
|
ProductSetControl,
|
|
@@ -22,16 +23,21 @@ import { Step } from '../types'
|
|
|
22
23
|
import { ProductSetContextProvider, ProductSetLoadingContext } from './context'
|
|
23
24
|
import { SelectItem } from '../../types/generic/SelectItem'
|
|
24
25
|
import { checkAvailableTimesErrors, getFilteredTemplates } from '../utils'
|
|
26
|
+
import { ErrorModal } from '../../iframe/order-process/components/ErrorModal'
|
|
25
27
|
|
|
26
28
|
export interface WithIsLoading {
|
|
27
29
|
isLoading: boolean
|
|
28
30
|
}
|
|
31
|
+
export interface WithIdOptional {
|
|
32
|
+
id?: number
|
|
33
|
+
}
|
|
34
|
+
|
|
29
35
|
export interface WithId {
|
|
30
36
|
id: number
|
|
31
37
|
}
|
|
32
38
|
export interface ProductSetFormValues
|
|
33
39
|
extends FormValues,
|
|
34
|
-
|
|
40
|
+
WithIdOptional,
|
|
35
41
|
ProductSetControlValues {
|
|
36
42
|
steps: Step[]
|
|
37
43
|
isOverrides?: boolean
|
|
@@ -84,6 +90,7 @@ export function ProductSetForm({
|
|
|
84
90
|
onApproveDialog,
|
|
85
91
|
onDeclineDialog,
|
|
86
92
|
} = useDialogContext()
|
|
93
|
+
const [errorMessage, setErrorMessage] = useState('')
|
|
87
94
|
|
|
88
95
|
const form = useForm<ProductSetFormValues>({
|
|
89
96
|
defaultValues,
|
|
@@ -121,6 +128,15 @@ export function ProductSetForm({
|
|
|
121
128
|
if (!serverErrors) {
|
|
122
129
|
return
|
|
123
130
|
}
|
|
131
|
+
if (!Array.isArray(serverErrors)) {
|
|
132
|
+
setErrorMessage(transformErrorToMessage(serverErrors))
|
|
133
|
+
return
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
if (Array.isArray(serverErrors) && serverErrors[0]) {
|
|
137
|
+
setErrorMessage(serverErrors[0])
|
|
138
|
+
}
|
|
139
|
+
|
|
124
140
|
FormErrorService.handleServerErrors(serverErrors, setError)
|
|
125
141
|
}, [serverErrors, setError])
|
|
126
142
|
|
|
@@ -156,6 +172,12 @@ export function ProductSetForm({
|
|
|
156
172
|
onDecline={onDeclineDialog}
|
|
157
173
|
/>
|
|
158
174
|
|
|
175
|
+
<ErrorModal
|
|
176
|
+
message={errorMessage}
|
|
177
|
+
isOpen={!!errorMessage}
|
|
178
|
+
onClose={() => setErrorMessage('')}
|
|
179
|
+
/>
|
|
180
|
+
|
|
159
181
|
<FormProvider {...form}>
|
|
160
182
|
<Form onSubmit={form.handleSubmit(submitHandler(onSubmitAndRedirect))}>
|
|
161
183
|
<ProductSetLoadingContext.Consumer>
|
|
@@ -185,13 +207,13 @@ export function ProductSetForm({
|
|
|
185
207
|
<Row>
|
|
186
208
|
<Col md={6} sm={12} />
|
|
187
209
|
<Col
|
|
188
|
-
className=
|
|
210
|
+
className='product-set-save-btn-wrapper p-0 pl-4 d-flex mw-100'
|
|
189
211
|
md={6}
|
|
190
212
|
sm={12}
|
|
191
213
|
>
|
|
192
214
|
{onSubmitNoRedirect && (
|
|
193
215
|
<Button
|
|
194
|
-
className=
|
|
216
|
+
className='product-set-save-btn mt-5 ml-5 d-no dne d-md-block'
|
|
195
217
|
onClick={form.handleSubmit(
|
|
196
218
|
submitHandler(onSubmitNoRedirect),
|
|
197
219
|
)}
|
|
@@ -203,8 +225,8 @@ export function ProductSetForm({
|
|
|
203
225
|
</Button>
|
|
204
226
|
)}
|
|
205
227
|
<Button
|
|
206
|
-
className=
|
|
207
|
-
type=
|
|
228
|
+
className='product-set-save-btn mt-5 ml-5 d-no dne d-md-block'
|
|
229
|
+
type='submit'
|
|
208
230
|
disabled={
|
|
209
231
|
isLoading || contextIsLoading || !formValues.name
|
|
210
232
|
}
|
|
@@ -14,18 +14,18 @@ function ProductSetFormPopover({ className = '' }: ProductSetFormPopoverProps) {
|
|
|
14
14
|
|
|
15
15
|
return (
|
|
16
16
|
<ProductSetPopover
|
|
17
|
-
placement=
|
|
17
|
+
placement='bottom'
|
|
18
18
|
ref={popoverRef}
|
|
19
19
|
onClick={() => setIsVisible(true)}
|
|
20
20
|
isVisible={isVisible}
|
|
21
21
|
className={className}
|
|
22
22
|
>
|
|
23
|
-
<Tabs defaultActiveKey=
|
|
24
|
-
<Tabs.Tab eventKey=
|
|
23
|
+
<Tabs defaultActiveKey='first'>
|
|
24
|
+
<Tabs.Tab eventKey='first' title='Add item'>
|
|
25
25
|
<p>Add new sub product item</p>
|
|
26
26
|
<p>Add new sub product modifier</p>
|
|
27
27
|
</Tabs.Tab>
|
|
28
|
-
<Tabs.Tab eventKey=
|
|
28
|
+
<Tabs.Tab eventKey='second' title='Reusable subsets'>
|
|
29
29
|
<p>Add new sub product item 1</p>
|
|
30
30
|
<p>Add new sub product modifier 2</p>
|
|
31
31
|
</Tabs.Tab>
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Form } from 'react-bootstrap'
|
|
2
|
+
import { useTranslation } from 'react-i18next'
|
|
3
|
+
|
|
4
|
+
export const ProductSetNameControl = ({
|
|
5
|
+
value,
|
|
6
|
+
onChange,
|
|
7
|
+
error,
|
|
8
|
+
}: {
|
|
9
|
+
value: string
|
|
10
|
+
onChange: (value: string) => void
|
|
11
|
+
error?: string
|
|
12
|
+
}) => {
|
|
13
|
+
const { t } = useTranslation(['Design'])
|
|
14
|
+
return (
|
|
15
|
+
<Form.Group>
|
|
16
|
+
<Form.Label>{t('Design:ProductSetName')}*</Form.Label>
|
|
17
|
+
<Form.Control
|
|
18
|
+
value={value}
|
|
19
|
+
maxLength={255}
|
|
20
|
+
onChange={(e) => onChange(e.target.value)}
|
|
21
|
+
placeholder={t('Design:placeholderProductSetName')}
|
|
22
|
+
isInvalid={Boolean(error)}
|
|
23
|
+
/>
|
|
24
|
+
<Form.Control.Feedback type='invalid'>{error}</Form.Control.Feedback>
|
|
25
|
+
</Form.Group>
|
|
26
|
+
)
|
|
27
|
+
}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
// @ts-nocheck
|
|
3
|
-
import React, { useContext, useState } from 'react'
|
|
4
|
-
|
|
1
|
+
import { useContext, useState } from 'react'
|
|
5
2
|
import {
|
|
6
3
|
ArrayPath,
|
|
7
4
|
Controller,
|
|
@@ -125,14 +122,14 @@ export const ProductZonesControl = <T extends FormValues>({
|
|
|
125
122
|
id={String(productZones._id)}
|
|
126
123
|
title={zones.find((zone) => zone.id === Number(value))?.name}
|
|
127
124
|
badge={
|
|
128
|
-
<Badge className=
|
|
125
|
+
<Badge className='product-zone-badge'>{t('productZone')}</Badge>
|
|
129
126
|
}
|
|
130
127
|
isIconInHeader={false}
|
|
131
128
|
cancelChanges={() => cancelChanges(index)}
|
|
132
129
|
edit={() => edit(index)}
|
|
133
130
|
subTitle={
|
|
134
|
-
<div className=
|
|
135
|
-
<div className=
|
|
131
|
+
<div className='product-set-badges-container'>
|
|
132
|
+
<div className='product-set-subtitle-dot product-set-subtitle-product-dot' />
|
|
136
133
|
<span>
|
|
137
134
|
{zoneCapacity[index] &&
|
|
138
135
|
`${t('Cap')}: ${zoneCapacity[index]}; `}
|
|
@@ -175,7 +172,7 @@ export const ProductZonesControl = <T extends FormValues>({
|
|
|
175
172
|
}
|
|
176
173
|
}}
|
|
177
174
|
/>
|
|
178
|
-
<div className=
|
|
175
|
+
<div className='manual-form-error'>{productZonesError}</div>
|
|
179
176
|
</>
|
|
180
177
|
)
|
|
181
178
|
}
|
|
@@ -219,15 +219,15 @@ export function ProductsControl({
|
|
|
219
219
|
title={value}
|
|
220
220
|
isOverride={isOverrides}
|
|
221
221
|
badge={
|
|
222
|
-
<Badge className=
|
|
222
|
+
<Badge className='product-badge'>{t('product')}</Badge>
|
|
223
223
|
}
|
|
224
224
|
isIconInHeader={false}
|
|
225
225
|
cancelChanges={() => cancelChanges(index)}
|
|
226
226
|
edit={() => edit(index)}
|
|
227
227
|
secondaryBadge={getBadgeConfig(categoryType, t(categoryType))}
|
|
228
228
|
subTitle={
|
|
229
|
-
<div className=
|
|
230
|
-
<div className=
|
|
229
|
+
<div className='product-set-badges-container'>
|
|
230
|
+
<div className='product-set-subtitle-dot product-set-subtitle-product-dot' />
|
|
231
231
|
<span>
|
|
232
232
|
{`£${prices[index]} ${t('each')} - ${t('qty')}:${
|
|
233
233
|
!isUnlimitedQuantities[index]
|
|
@@ -295,7 +295,7 @@ export function ProductsControl({
|
|
|
295
295
|
}
|
|
296
296
|
}}
|
|
297
297
|
/>
|
|
298
|
-
<div className=
|
|
298
|
+
<div className='manual-form-error'>
|
|
299
299
|
{categoryProductErrors && categoryProductErrors.message}
|
|
300
300
|
</div>
|
|
301
301
|
</>
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
} from 'react-icons/fa'
|
|
26
26
|
import { ProductSetLoadingContext } from './context'
|
|
27
27
|
|
|
28
|
-
const CATEGORY_TYPES_NAMES = {
|
|
28
|
+
export const CATEGORY_TYPES_NAMES = {
|
|
29
29
|
menuItems: CATEGORY_TYPE_MENU_ITEMS,
|
|
30
30
|
tickets: CATEGORY_TYPE_TICKETS,
|
|
31
31
|
bookings: CATEGORY_TYPE_BOOKINGS,
|
|
@@ -33,31 +33,31 @@ const CATEGORY_TYPES_NAMES = {
|
|
|
33
33
|
fixedDuration: CATEGORY_TYPE_FIXED_DURATION,
|
|
34
34
|
} as const
|
|
35
35
|
|
|
36
|
-
type CategoryConfig = { label: string; icon: ReactElement }
|
|
36
|
+
export type CategoryConfig = { label: string; icon: ReactElement }
|
|
37
37
|
|
|
38
38
|
const MAIN_CATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
|
|
39
39
|
[CATEGORY_TYPES_NAMES.tickets]: {
|
|
40
40
|
label: 'tickets',
|
|
41
|
-
icon: <FaTicketAlt color=
|
|
41
|
+
icon: <FaTicketAlt color='#0e8ce2' size={32} />,
|
|
42
42
|
},
|
|
43
43
|
[CATEGORY_TYPES_NAMES.bookings]: {
|
|
44
44
|
label: 'bookings',
|
|
45
|
-
icon: <FaCalendar color=
|
|
45
|
+
icon: <FaCalendar color='#0e8ce2' size={32} />,
|
|
46
46
|
},
|
|
47
47
|
[CATEGORY_TYPES_NAMES.menuItems]: {
|
|
48
48
|
label: 'menuItems',
|
|
49
|
-
icon: <FaBars color=
|
|
49
|
+
icon: <FaBars color='#0e8ce2' size={32} />,
|
|
50
50
|
},
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
const BOOKING_SUBCATEGORIES: Partial<Record<CategoryType, CategoryConfig>> = {
|
|
54
54
|
[CATEGORY_TYPES_NAMES.game]: {
|
|
55
55
|
label: 'game',
|
|
56
|
-
icon: <FaBowlingBall color=
|
|
56
|
+
icon: <FaBowlingBall color='#0e8ce2' size={32} />,
|
|
57
57
|
},
|
|
58
58
|
[CATEGORY_TYPES_NAMES.fixedDuration]: {
|
|
59
59
|
label: 'fixedDuration',
|
|
60
|
-
icon: <FaCalendar color=
|
|
60
|
+
icon: <FaCalendar color='#0e8ce2' size={32} />,
|
|
61
61
|
},
|
|
62
62
|
}
|
|
63
63
|
|
|
@@ -102,18 +102,18 @@ export function SelectCategoryModal({
|
|
|
102
102
|
|
|
103
103
|
return (
|
|
104
104
|
<Modal
|
|
105
|
-
size=
|
|
105
|
+
size='lg'
|
|
106
106
|
centered
|
|
107
107
|
show={isVisible}
|
|
108
108
|
onHide={onHide}
|
|
109
|
-
className=
|
|
109
|
+
className='p-3 border-0'
|
|
110
110
|
animation={false}
|
|
111
|
-
contentClassName=
|
|
111
|
+
contentClassName='rounded'
|
|
112
112
|
>
|
|
113
|
-
<ModalHeader className=
|
|
114
|
-
<ModalTitle as=
|
|
113
|
+
<ModalHeader className='align-items-center border-0'>
|
|
114
|
+
<ModalTitle as='h5'>{t('Design:selectCategory')}</ModalTitle>
|
|
115
115
|
|
|
116
|
-
<Button variant=
|
|
116
|
+
<Button variant='danger' className='btn-sm rounded' onClick={onHide}>
|
|
117
117
|
<FaTimes size={20} />
|
|
118
118
|
</Button>
|
|
119
119
|
</ModalHeader>
|
|
@@ -127,22 +127,22 @@ export function SelectCategoryModal({
|
|
|
127
127
|
controls={false}
|
|
128
128
|
>
|
|
129
129
|
<Carousel.Item>
|
|
130
|
-
<div className=
|
|
130
|
+
<div className='d-flex flex-row flex-wrap p-4 justify-content-between mb-6'>
|
|
131
131
|
{mainCategories.map((categoryType) => {
|
|
132
132
|
const { label, icon } = MAIN_CATEGORIES[categoryType]
|
|
133
133
|
|
|
134
134
|
return (
|
|
135
135
|
<Col key={label}>
|
|
136
136
|
<Button
|
|
137
|
-
variant=
|
|
138
|
-
className=
|
|
139
|
-
role=
|
|
137
|
+
variant='outline-light'
|
|
138
|
+
className='d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded'
|
|
139
|
+
role='button'
|
|
140
140
|
tabIndex={0}
|
|
141
141
|
onClick={() => categorySelectHandler(categoryType)}
|
|
142
142
|
active={selectedCategory === categoryType}
|
|
143
143
|
>
|
|
144
144
|
{icon}
|
|
145
|
-
<h6 className=
|
|
145
|
+
<h6 className='text-dark mt-3'>{t(label)}</h6>
|
|
146
146
|
</Button>
|
|
147
147
|
</Col>
|
|
148
148
|
)
|
|
@@ -150,22 +150,22 @@ export function SelectCategoryModal({
|
|
|
150
150
|
</div>
|
|
151
151
|
</Carousel.Item>
|
|
152
152
|
<Carousel.Item>
|
|
153
|
-
<div className=
|
|
153
|
+
<div className='d-flex flex-row flex-wrap p-4 justify-content-between mb-6'>
|
|
154
154
|
{bookingSubcategories.map((categoryType) => {
|
|
155
155
|
const { label, icon } = BOOKING_SUBCATEGORIES[categoryType]
|
|
156
156
|
|
|
157
157
|
return (
|
|
158
158
|
<Col key={label}>
|
|
159
159
|
<Button
|
|
160
|
-
variant=
|
|
161
|
-
className=
|
|
162
|
-
role=
|
|
160
|
+
variant='outline-light'
|
|
161
|
+
className='d-flex justify-content-center align-items-center flex-column w-100 py-6 rounded'
|
|
162
|
+
role='button'
|
|
163
163
|
tabIndex={0}
|
|
164
164
|
onClick={() => categorySelectHandler(categoryType)}
|
|
165
165
|
active={selectedCategory === categoryType}
|
|
166
166
|
>
|
|
167
167
|
{icon}
|
|
168
|
-
<h6 className=
|
|
168
|
+
<h6 className='text-dark mt-3'>{t(label)}</h6>
|
|
169
169
|
</Button>
|
|
170
170
|
</Col>
|
|
171
171
|
)
|
|
@@ -176,7 +176,7 @@ export function SelectCategoryModal({
|
|
|
176
176
|
|
|
177
177
|
{isBookingsSelected && (
|
|
178
178
|
<Button
|
|
179
|
-
size=
|
|
179
|
+
size='sm'
|
|
180
180
|
className={`carousel-control-button ${
|
|
181
181
|
activeCarouselIndex ? 'left' : 'right'
|
|
182
182
|
}`}
|