@pisell/private-materials 6.7.9 → 6.8.1
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/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +2 -2
- package/build/lowcode/preview.js +7 -7
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +9 -9
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +9 -9
- package/es/components/appointmentBooking/components/Voucher/index.js +2 -1
- package/es/components/booking/addons/index.js +25 -17
- package/es/components/booking/components/footer/amount.d.ts +1 -0
- package/es/components/booking/components/footer/amount.js +548 -84
- package/es/components/booking/components/footer/index.js +77 -56
- package/es/components/booking/components/footer/utils.d.ts +19 -0
- package/es/components/booking/components/footer/utils.js +194 -73
- package/es/components/booking/components/voucher/index.js +23 -7
- package/es/components/booking/hooks/useQuotation.js +4 -1
- package/es/components/booking/info/clientVariant/hooks/useIsLowSpeedNetwork.d.ts +0 -1
- package/es/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
- package/es/components/booking/info/service2/utils.js +1 -0
- package/es/components/booking/info2/cartClientCard/index.js +30 -6
- package/es/components/booking/info2/index.js +1 -1
- package/es/components/booking/info2/service/addService/index.js +2 -3
- package/es/components/booking/info2/service/editNormalService/index.js +6 -0
- package/es/components/booking/info2/service/editService/index.js +16 -6
- package/es/components/booking/info2/service/editService/utils.d.ts +15 -0
- package/es/components/booking/info2/service/editService/utils.js +66 -0
- package/es/components/booking/utils.d.ts +1 -0
- package/es/components/booking/utils.js +16 -3
- package/es/components/checkout/PaymentModal.d.ts +13 -5
- package/es/components/checkout/PaymentModal.js +304 -252
- package/es/components/checkout/components/AdditionalModule/index.d.ts +3 -1
- package/es/components/checkout/components/AdditionalModule/index.js +52 -12
- package/es/components/checkout/components/AmountSummary/index.js +9 -76
- package/es/components/checkout/components/AmountSummary/index.less +5 -6
- package/es/components/checkout/components/CashPaymentModule/index.d.ts +3 -1
- package/es/components/checkout/components/CashPaymentModule/index.js +5 -2
- package/es/components/checkout/components/PaymentDetailModal/index.js +2 -2
- package/es/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.d.ts +2 -0
- package/es/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.js +6 -1
- package/es/components/checkout/components/PaymentOptionsModule/index.d.ts +1 -0
- package/es/components/checkout/components/PaymentOptionsModule/index.js +2 -1
- package/es/components/checkout/components/PaymentOptionsModule/index.less +4 -0
- package/es/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.d.ts +4 -0
- package/es/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.js +31 -8
- package/es/components/checkout/components/PaymentResultToast/index.js +6 -6
- package/es/components/checkout/components/PaymentResultToast/index.less +94 -33
- package/es/components/checkout/components/SearchAndClientModule/index.js +39 -40
- package/es/components/checkout/index.less +1 -1
- package/es/components/checkout/locales.d.ts +6 -0
- package/es/components/checkout/locales.js +6 -0
- package/es/components/checkout/plugin.d.ts +2 -0
- package/es/components/checkout/plugin.js +303 -0
- package/es/components/checkout/utils/PaymentResultToastUtils.d.ts +0 -1
- package/es/components/checkout/utils/PaymentResultToastUtils.js +11 -1
- package/es/components/eftpos/hooks.d.ts +0 -1
- package/es/components/eftposPay/hooks.d.ts +1 -1
- package/es/components/eftposPay/linkly/hooks/useTimeQuery.js +14 -6
- package/es/components/eftposPay/payo/config.js +70 -32
- package/es/components/eftposPay/payo/payment.d.ts +66 -0
- package/es/components/eftposPay/payo/payment.js +579 -0
- package/es/components/eftposPay/store/index.d.ts +4 -4
- package/es/components/eftposPay/tyro/hooks.d.ts +0 -1
- package/es/components/eftposPay/tyro/index.js +12 -0
- package/es/components/eftposPay/utils/log/index.d.ts +110 -0
- package/es/components/eftposPay/utils/log/index.js +371 -0
- package/es/components/eventBooking/components/ErrorTip/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateStatus/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/DayItem/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Status/index.d.ts +0 -1
- package/es/components/index.d.ts +2 -1
- package/es/components/index.js +2 -1
- package/es/components/list/List.js +99 -56
- package/es/components/list/hooks/useListState.d.ts +5 -3
- package/es/components/list/hooks/useListState.js +10 -2
- package/es/components/list/styles/base.less +4 -0
- package/es/components/list/styles/content.less +1 -1
- package/es/components/list/styles/header.less +4 -4
- package/es/components/list/types.d.ts +1 -0
- package/es/components/list/utils/index.d.ts +13 -1
- package/es/components/list/utils/index.js +43 -1
- package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +14 -12
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/Finish/index.d.ts +0 -1
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/components/PageLoading/index.d.ts +0 -1
- package/es/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +6 -0
- package/es/components/pay/toC/PaymentMethods/WalletPass/utils.js +4 -2
- package/es/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.js +2 -0
- package/es/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.less +13 -3
- package/es/components/pay/toC/index.js +7 -4
- package/es/components/pay/toC/locales.d.ts +3 -0
- package/es/components/pay/toC/locales.js +6 -3
- package/es/components/pay/toC/status.d.ts +1 -0
- package/es/components/pay/toC/status.js +3 -0
- package/es/components/shoppingCart/components/Empty/index.d.ts +0 -1
- package/es/components/subTotal/index.js +1 -1
- package/es/components/systemSettings/registry/components/GroupModal.d.ts +4 -0
- package/es/components/{checkout/PaymentPlugin.js → systemSettings/registry/components/GroupModal.js} +132 -171
- package/es/components/systemSettings/registry/components/ItemModal.d.ts +4 -0
- package/es/components/systemSettings/registry/components/ItemModal.js +547 -0
- package/es/components/systemSettings/registry/components/ModuleList.d.ts +4 -0
- package/es/components/systemSettings/registry/components/ModuleList.js +54 -0
- package/es/components/systemSettings/registry/components/SectionList.d.ts +4 -0
- package/es/components/systemSettings/registry/components/SectionList.js +174 -0
- package/es/components/systemSettings/registry/components/SettingsTable.d.ts +4 -0
- package/es/components/systemSettings/registry/components/SettingsTable.js +765 -0
- package/es/components/systemSettings/registry/components/index.d.ts +4 -0
- package/es/components/systemSettings/registry/components/index.js +4 -0
- package/es/components/systemSettings/registry/index.d.ts +5 -0
- package/es/components/systemSettings/registry/index.js +1059 -0
- package/es/components/systemSettings/registry/index.less +410 -0
- package/es/components/systemSettings/registry/locales.d.ts +272 -0
- package/es/components/systemSettings/registry/locales.js +300 -0
- package/es/components/systemSettings/registry/services.d.ts +77 -0
- package/es/components/systemSettings/registry/services.js +472 -0
- package/es/components/systemSettings/registry/types.d.ts +126 -0
- package/es/components/systemSettings/registry/types.js +1 -0
- package/es/components/systemSettings/registry/utils/typeValidation.d.ts +16 -0
- package/es/components/systemSettings/registry/utils/typeValidation.js +284 -0
- package/es/components/systemSettings/registry/utils/validators.d.ts +8 -0
- package/es/components/systemSettings/registry/utils/validators.js +44 -0
- package/es/components/ticketBooking/components/ProductDisplayAdapter/ProductDisplayAdapter.js +58 -11
- package/es/components/ticketBooking/components/ProductDisplayAdapter/index.less +28 -1
- package/es/components/ticketBooking/components/ProductDisplayAdapter/utils.d.ts +35 -2
- package/es/components/ticketBooking/components/ProductDisplayAdapter/utils.js +149 -36
- package/es/components/ticketBooking/components/addServiceVariant/addService.js +2 -86
- package/es/components/ticketBooking/components/menuBar/index.js +109 -12
- package/es/components/ticketBooking/components/ticketBooking/index.js +2 -2
- package/es/components/ticketBooking/components/timeBar/index.js +112 -7
- package/es/components/ticketBooking/components/timeBar/index.less +59 -0
- package/es/components/ticketBooking/hooks/pisellos/useProducts.js +29 -18
- package/es/components/ticketBooking/locales.d.ts +9 -0
- package/es/components/ticketBooking/locales.js +12 -3
- package/es/components/ticketBooking/utils/index.d.ts +3 -0
- package/es/components/ticketBooking/utils/index.js +36 -13
- package/es/components/wallet/Detail/index.js +34 -2
- package/es/components/wallet/Detail/index.less +11 -0
- package/es/components/wallet/Detail/locales.d.ts +6 -0
- package/es/components/wallet/Detail/locales.js +14 -2
- package/es/components/wallet/Voucher/index.js +11 -10
- package/es/components/wallet/components/WalletCard.js +5 -1
- package/es/components/wallet/index.js +4 -2
- package/es/components/wallet/serve.d.ts +7 -0
- package/es/components/wallet/utils.d.ts +48 -0
- package/es/components/wallet/utils.js +342 -0
- package/es/index.d.ts +5 -0
- package/es/index.js +6 -1
- package/es/plus/clientCard/locales.js +3 -3
- package/es/plus/clinetSearch/index.js +28 -30
- package/es/plus/clinetSearch/locales.d.ts +3 -0
- package/es/plus/clinetSearch/locales.js +7 -4
- package/es/plus/clinetSearch/types.d.ts +12 -0
- package/es/plus/productSelect/CategoryTabs/index.d.ts +1 -0
- package/es/plus/productSelect/CategoryTabs/index.js +2 -1
- package/es/plus/walletPassGallery/components/footerButton/index.js +2 -4
- package/es/plus/walletPassGallery/components/footerButton/index.less +14 -59
- package/es/plus/walletPassGallery/components/passDetail/index.d.ts +1 -0
- package/es/plus/walletPassGallery/components/passDetail/index.js +84 -31
- package/es/plus/walletPassGallery/components/passDetail/index.less +4 -0
- package/es/plus/walletPassGallery/components/recharge/index.js +19 -8
- package/es/plus/walletPassGallery/index.js +7 -3
- package/es/plus/walletPassGallery/serve.d.ts +3 -0
- package/es/plus/walletPassGallery/serve.js +4 -2
- package/es/pro/Login2.0/index.less +15 -8
- package/es/pro/Selector/BatchSelectorDemo.d.ts +3 -0
- package/es/pro/Selector/BatchSelectorDemo.js +470 -0
- package/es/pro/Selector/Selector.d.ts +5 -0
- package/es/pro/Selector/Selector.js +283 -0
- package/es/pro/Selector/SelectorGroup.d.ts +11 -0
- package/es/pro/Selector/SelectorGroup.js +537 -0
- package/es/pro/Selector/components/Card/index.d.ts +27 -0
- package/es/pro/Selector/components/Card/index.js +96 -0
- package/es/pro/Selector/components/Card/index.less +132 -0
- package/es/pro/Selector/components/IntersectionObserver.d.ts +105 -0
- package/es/pro/Selector/components/IntersectionObserver.js +384 -0
- package/es/pro/Selector/components/NumericStepper/index.d.ts +41 -0
- package/es/pro/Selector/components/NumericStepper/index.js +198 -0
- package/es/pro/Selector/components/NumericStepper/index.less +221 -0
- package/es/pro/Selector/components/index.d.ts +2 -0
- package/es/pro/Selector/components/index.js +2 -0
- package/es/pro/Selector/demo.d.ts +3 -0
- package/es/pro/Selector/demo.js +158 -0
- package/es/pro/Selector/hooks/useSelectionController.d.ts +42 -0
- package/es/pro/Selector/hooks/useSelectionController.js +414 -0
- package/es/pro/Selector/index.d.ts +8 -0
- package/es/pro/Selector/index.js +5 -0
- package/es/pro/Selector/locales.d.ts +42 -0
- package/es/pro/Selector/locales.js +80 -0
- package/es/pro/Selector/selector.less +3 -0
- package/es/pro/Selector/selectorGroup.less +8 -0
- package/es/pro/Selector/types.d.ts +114 -0
- package/es/pro/Selector/types.js +1 -0
- package/es/pro/Selector/utils/index.d.ts +49 -0
- package/es/pro/Selector/utils/index.js +229 -0
- package/es/pro/comprehensiveSearch/components/searchSection/locales.js +3 -3
- package/es/pro/comprehensiveSearch/locales.js +1 -1
- package/es/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.js +45 -36
- package/es/pro/priceKeyboard/components/cashKeyboard/index.d.ts +1 -0
- package/es/pro/priceKeyboard/components/cashKeyboard/index.js +4 -2
- package/es/pro/priceKeyboard/components/cashKeyboard/types.d.ts +1 -0
- package/es/pro/priceKeyboard/components/discountKeyboard/index.js +10 -1
- package/es/pro/priceKeyboard/components/discountKeyboard/index.less +14 -0
- package/es/pro/priceKeyboard/components/shortcuts/index.d.ts +1 -0
- package/es/pro/priceKeyboard/components/shortcuts/index.js +5 -2
- package/es/pro/priceKeyboard/components/shortcuts/index.less +4 -0
- package/lib/components/appointmentBooking/components/Voucher/index.js +2 -1
- package/lib/components/booking/addons/index.js +15 -7
- package/lib/components/booking/components/footer/amount.d.ts +1 -0
- package/lib/components/booking/components/footer/amount.js +293 -41
- package/lib/components/booking/components/footer/index.js +30 -11
- package/lib/components/booking/components/footer/utils.d.ts +19 -0
- package/lib/components/booking/components/footer/utils.js +138 -41
- package/lib/components/booking/components/voucher/index.js +25 -9
- package/lib/components/booking/hooks/useQuotation.js +2 -1
- package/lib/components/booking/info/clientVariant/hooks/useIsLowSpeedNetwork.d.ts +0 -1
- package/lib/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
- package/lib/components/booking/info/service2/utils.js +1 -0
- package/lib/components/booking/info2/cartClientCard/index.js +25 -5
- package/lib/components/booking/info2/index.js +7 -2
- package/lib/components/booking/info2/service/addService/index.js +1 -2
- package/lib/components/booking/info2/service/editNormalService/index.js +6 -0
- package/lib/components/booking/info2/service/editService/index.js +12 -3
- package/lib/components/booking/info2/service/editService/utils.d.ts +15 -0
- package/lib/components/booking/info2/service/editService/utils.js +40 -3
- package/lib/components/booking/utils.d.ts +1 -0
- package/lib/components/booking/utils.js +11 -0
- package/lib/components/checkout/PaymentModal.d.ts +13 -5
- package/lib/components/checkout/PaymentModal.js +190 -147
- package/lib/components/checkout/components/AdditionalModule/index.d.ts +3 -1
- package/lib/components/checkout/components/AdditionalModule/index.js +52 -11
- package/lib/components/checkout/components/AmountSummary/index.js +5 -46
- package/lib/components/checkout/components/AmountSummary/index.less +5 -6
- package/lib/components/checkout/components/CashPaymentModule/index.d.ts +3 -1
- package/lib/components/checkout/components/CashPaymentModule/index.js +5 -2
- package/lib/components/checkout/components/PaymentDetailModal/index.js +2 -2
- package/lib/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.d.ts +2 -0
- package/lib/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.js +5 -1
- package/lib/components/checkout/components/PaymentOptionsModule/index.d.ts +1 -0
- package/lib/components/checkout/components/PaymentOptionsModule/index.js +6 -0
- package/lib/components/checkout/components/PaymentOptionsModule/index.less +4 -0
- package/lib/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.d.ts +4 -0
- package/lib/components/checkout/components/PaymentResultToast/PaymentResultToastProvider.js +23 -5
- package/lib/components/checkout/components/PaymentResultToast/index.js +4 -4
- package/lib/components/checkout/components/PaymentResultToast/index.less +94 -33
- package/lib/components/checkout/components/SearchAndClientModule/index.js +29 -3
- package/lib/components/checkout/index.less +1 -1
- package/lib/components/checkout/locales.d.ts +6 -0
- package/lib/components/checkout/locales.js +6 -0
- package/lib/components/checkout/plugin.d.ts +2 -0
- package/lib/components/checkout/plugin.js +263 -0
- package/lib/components/checkout/utils/PaymentResultToastUtils.d.ts +0 -1
- package/lib/components/checkout/utils/PaymentResultToastUtils.js +11 -1
- package/lib/components/eftpos/hooks.d.ts +0 -1
- package/lib/components/eftposPay/hooks.d.ts +1 -1
- package/lib/components/eftposPay/linkly/hooks/useTimeQuery.js +12 -6
- package/lib/components/eftposPay/payo/config.js +98 -73
- package/lib/components/eftposPay/payo/payment.d.ts +66 -0
- package/lib/components/eftposPay/payo/payment.js +357 -0
- package/lib/components/eftposPay/store/index.d.ts +4 -4
- package/lib/components/eftposPay/tyro/hooks.d.ts +0 -1
- package/lib/components/eftposPay/tyro/index.js +12 -0
- package/lib/components/eftposPay/utils/log/index.d.ts +110 -0
- package/lib/components/eftposPay/utils/log/index.js +294 -0
- package/lib/components/eventBooking/components/ErrorTip/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateStatus/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/CallToBook/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/WeekItem/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateWeek/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/DayItem/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Status/index.d.ts +0 -1
- package/lib/components/index.d.ts +2 -1
- package/lib/components/index.js +3 -0
- package/lib/components/list/List.js +58 -36
- package/lib/components/list/hooks/useListState.d.ts +5 -3
- package/lib/components/list/hooks/useListState.js +9 -1
- package/lib/components/list/styles/base.less +4 -0
- package/lib/components/list/styles/content.less +1 -1
- package/lib/components/list/styles/header.less +4 -4
- package/lib/components/list/types.d.ts +1 -0
- package/lib/components/list/utils/index.d.ts +13 -1
- package/lib/components/list/utils/index.js +27 -0
- package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +14 -12
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/Finish/index.d.ts +0 -1
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +0 -1
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/components/PageLoading/index.d.ts +0 -1
- package/lib/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +6 -0
- package/lib/components/pay/toC/PaymentMethods/WalletPass/utils.js +4 -2
- package/lib/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.js +1 -1
- package/lib/components/pay/toC/PaymentMethods/components/PaymentReturnContent/index.less +13 -3
- package/lib/components/pay/toC/index.js +4 -1
- package/lib/components/pay/toC/locales.d.ts +3 -0
- package/lib/components/pay/toC/locales.js +6 -3
- package/lib/components/pay/toC/status.d.ts +1 -0
- package/lib/components/pay/toC/status.js +5 -0
- package/lib/components/shoppingCart/components/Empty/index.d.ts +0 -1
- package/lib/components/subTotal/index.js +1 -1
- package/lib/components/systemSettings/registry/components/GroupModal.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/GroupModal.js +177 -0
- package/lib/components/systemSettings/registry/components/ItemModal.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/ItemModal.js +508 -0
- package/lib/components/systemSettings/registry/components/ModuleList.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/ModuleList.js +71 -0
- package/lib/components/systemSettings/registry/components/SectionList.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/SectionList.js +181 -0
- package/lib/components/systemSettings/registry/components/SettingsTable.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/SettingsTable.js +575 -0
- package/lib/components/systemSettings/registry/components/index.d.ts +4 -0
- package/lib/components/systemSettings/registry/components/index.js +48 -0
- package/lib/components/systemSettings/registry/index.d.ts +5 -0
- package/lib/components/systemSettings/registry/index.js +529 -0
- package/lib/components/systemSettings/registry/index.less +410 -0
- package/lib/components/systemSettings/registry/locales.d.ts +272 -0
- package/lib/components/systemSettings/registry/locales.js +324 -0
- package/lib/components/systemSettings/registry/services.d.ts +77 -0
- package/lib/components/systemSettings/registry/services.js +290 -0
- package/lib/components/systemSettings/registry/types.d.ts +126 -0
- package/lib/components/systemSettings/registry/types.js +17 -0
- package/lib/components/systemSettings/registry/utils/typeValidation.d.ts +16 -0
- package/lib/components/systemSettings/registry/utils/typeValidation.js +228 -0
- package/lib/components/systemSettings/registry/utils/validators.d.ts +8 -0
- package/lib/components/systemSettings/registry/utils/validators.js +54 -0
- package/lib/components/ticketBooking/components/ProductDisplayAdapter/ProductDisplayAdapter.js +40 -5
- package/lib/components/ticketBooking/components/ProductDisplayAdapter/index.less +28 -1
- package/lib/components/ticketBooking/components/ProductDisplayAdapter/utils.d.ts +35 -2
- package/lib/components/ticketBooking/components/ProductDisplayAdapter/utils.js +93 -24
- package/lib/components/ticketBooking/components/addServiceVariant/addService.js +0 -1
- package/lib/components/ticketBooking/components/menuBar/index.js +42 -6
- package/lib/components/ticketBooking/components/ticketBooking/index.js +2 -2
- package/lib/components/ticketBooking/components/timeBar/index.js +105 -4
- package/lib/components/ticketBooking/components/timeBar/index.less +59 -0
- package/lib/components/ticketBooking/hooks/pisellos/useProducts.js +17 -13
- package/lib/components/ticketBooking/locales.d.ts +9 -0
- package/lib/components/ticketBooking/locales.js +12 -3
- package/lib/components/ticketBooking/utils/index.d.ts +3 -0
- package/lib/components/ticketBooking/utils/index.js +20 -6
- package/lib/components/wallet/Detail/index.js +31 -3
- package/lib/components/wallet/Detail/index.less +11 -0
- package/lib/components/wallet/Detail/locales.d.ts +6 -0
- package/lib/components/wallet/Detail/locales.js +14 -2
- package/lib/components/wallet/Voucher/index.js +8 -8
- package/lib/components/wallet/components/WalletCard.js +4 -0
- package/lib/components/wallet/index.js +2 -2
- package/lib/components/wallet/serve.d.ts +7 -0
- package/lib/components/wallet/utils.d.ts +48 -0
- package/lib/components/wallet/utils.js +287 -0
- package/lib/index.d.ts +5 -0
- package/lib/index.js +15 -0
- package/lib/plus/clientCard/locales.js +3 -3
- package/lib/plus/clinetSearch/index.js +17 -8
- package/lib/plus/clinetSearch/locales.d.ts +3 -0
- package/lib/plus/clinetSearch/locales.js +7 -4
- package/lib/plus/clinetSearch/types.d.ts +12 -0
- package/lib/plus/productSelect/CategoryTabs/index.d.ts +1 -0
- package/lib/plus/productSelect/CategoryTabs/index.js +2 -1
- package/lib/plus/walletPassGallery/components/footerButton/index.js +2 -2
- package/lib/plus/walletPassGallery/components/footerButton/index.less +14 -59
- package/lib/plus/walletPassGallery/components/passDetail/index.d.ts +1 -0
- package/lib/plus/walletPassGallery/components/passDetail/index.js +54 -15
- package/lib/plus/walletPassGallery/components/passDetail/index.less +4 -0
- package/lib/plus/walletPassGallery/components/recharge/index.js +7 -1
- package/lib/plus/walletPassGallery/index.js +7 -3
- package/lib/plus/walletPassGallery/serve.d.ts +3 -0
- package/lib/plus/walletPassGallery/serve.js +3 -2
- package/lib/pro/Login2.0/index.less +15 -8
- package/lib/pro/Selector/BatchSelectorDemo.d.ts +3 -0
- package/lib/pro/Selector/BatchSelectorDemo.js +376 -0
- package/lib/pro/Selector/Selector.d.ts +5 -0
- package/lib/pro/Selector/Selector.js +264 -0
- package/lib/pro/Selector/SelectorGroup.d.ts +11 -0
- package/lib/pro/Selector/SelectorGroup.js +463 -0
- package/lib/pro/Selector/components/Card/index.d.ts +27 -0
- package/lib/pro/Selector/components/Card/index.js +114 -0
- package/lib/pro/Selector/components/Card/index.less +132 -0
- package/lib/pro/Selector/components/IntersectionObserver.d.ts +105 -0
- package/lib/pro/Selector/components/IntersectionObserver.js +281 -0
- package/lib/pro/Selector/components/NumericStepper/index.d.ts +41 -0
- package/lib/pro/Selector/components/NumericStepper/index.js +221 -0
- package/lib/pro/Selector/components/NumericStepper/index.less +221 -0
- package/lib/pro/Selector/components/index.d.ts +2 -0
- package/lib/pro/Selector/components/index.js +42 -0
- package/lib/pro/Selector/demo.d.ts +3 -0
- package/lib/pro/Selector/demo.js +102 -0
- package/lib/pro/Selector/hooks/useSelectionController.d.ts +42 -0
- package/lib/pro/Selector/hooks/useSelectionController.js +338 -0
- package/lib/pro/Selector/index.d.ts +8 -0
- package/lib/pro/Selector/index.js +39 -0
- package/lib/pro/Selector/locales.d.ts +42 -0
- package/lib/pro/Selector/locales.js +80 -0
- package/lib/pro/Selector/selector.less +3 -0
- package/lib/pro/Selector/selectorGroup.less +8 -0
- package/lib/pro/Selector/types.d.ts +114 -0
- package/lib/pro/Selector/types.js +17 -0
- package/lib/pro/Selector/utils/index.d.ts +49 -0
- package/lib/pro/Selector/utils/index.js +221 -0
- package/lib/pro/comprehensiveSearch/components/searchSection/locales.js +3 -3
- package/lib/pro/comprehensiveSearch/locales.js +1 -1
- package/lib/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.js +42 -43
- package/lib/pro/priceKeyboard/components/cashKeyboard/index.d.ts +1 -0
- package/lib/pro/priceKeyboard/components/cashKeyboard/index.js +3 -2
- package/lib/pro/priceKeyboard/components/cashKeyboard/types.d.ts +1 -0
- package/lib/pro/priceKeyboard/components/discountKeyboard/index.js +8 -1
- package/lib/pro/priceKeyboard/components/discountKeyboard/index.less +14 -0
- package/lib/pro/priceKeyboard/components/shortcuts/index.d.ts +1 -0
- package/lib/pro/priceKeyboard/components/shortcuts/index.js +3 -2
- package/lib/pro/priceKeyboard/components/shortcuts/index.less +4 -0
- package/lowcode/payment-modal/meta.ts +135 -0
- package/lowcode/selector/meta.ts +352 -0
- package/lowcode/selector.group/meta.ts +200 -0
- package/lowcode/settings-registry/meta.ts +29 -0
- package/lowcode/wallet-pass-detail/meta.ts +89 -0
- package/package.json +4 -4
- package/es/components/checkout/PaymentPlugin.d.ts +0 -3
- package/lib/components/checkout/PaymentPlugin.d.ts +0 -3
- package/lib/components/checkout/PaymentPlugin.js +0 -181
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/components/systemSettings/registry/utils/validators.ts
|
|
20
|
+
var validators_exports = {};
|
|
21
|
+
__export(validators_exports, {
|
|
22
|
+
createPrefixedAppIdentifierValidator: () => createPrefixedAppIdentifierValidator
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(validators_exports);
|
|
25
|
+
var createPrefixedAppIdentifierValidator = (sectionCode) => {
|
|
26
|
+
return (_, value) => {
|
|
27
|
+
if (!value) {
|
|
28
|
+
return Promise.resolve();
|
|
29
|
+
}
|
|
30
|
+
const expectedPrefix = `${sectionCode}.`;
|
|
31
|
+
if (!value.startsWith(expectedPrefix)) {
|
|
32
|
+
return Promise.reject(new Error(`键必须以 "${expectedPrefix}" 开头`));
|
|
33
|
+
}
|
|
34
|
+
const remainingPart = value.substring(expectedPrefix.length);
|
|
35
|
+
if (!remainingPart) {
|
|
36
|
+
return Promise.reject(new Error("键不能只包含前缀"));
|
|
37
|
+
}
|
|
38
|
+
const validPattern = /^[a-z0-9._]+$/;
|
|
39
|
+
if (!validPattern.test(remainingPart)) {
|
|
40
|
+
return Promise.reject(new Error("键只能包含小写字母、数字、点、下划线"));
|
|
41
|
+
}
|
|
42
|
+
if (remainingPart.startsWith(".") || remainingPart.startsWith("_") || remainingPart.endsWith(".") || remainingPart.endsWith("_")) {
|
|
43
|
+
return Promise.reject(new Error("键不能以点或下划线开头或结尾"));
|
|
44
|
+
}
|
|
45
|
+
if (remainingPart.includes("..") || remainingPart.includes("__") || remainingPart.includes("._") || remainingPart.includes("_.")) {
|
|
46
|
+
return Promise.reject(new Error("键不能包含连续的点或下划线"));
|
|
47
|
+
}
|
|
48
|
+
return Promise.resolve();
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
52
|
+
0 && (module.exports = {
|
|
53
|
+
createPrefixedAppIdentifierValidator
|
|
54
|
+
});
|
package/lib/components/ticketBooking/components/ProductDisplayAdapter/ProductDisplayAdapter.js
CHANGED
|
@@ -39,6 +39,9 @@ var import_List = __toESM(require("../../../list/List"));
|
|
|
39
39
|
var import_SkuCard = __toESM(require("../../../../plus/productSelect/ProductCard/SkuCard"));
|
|
40
40
|
var import_utils = require("./utils");
|
|
41
41
|
var import_index = require("./index.less");
|
|
42
|
+
var import_materials = require("@pisell/materials");
|
|
43
|
+
var import_SearchLg = __toESM(require("@pisell/icon/es/SearchLg"));
|
|
44
|
+
var import_utils2 = require("@pisell/utils");
|
|
42
45
|
var ProductDisplayAdapter = (props) => {
|
|
43
46
|
const {
|
|
44
47
|
config,
|
|
@@ -52,6 +55,7 @@ var ProductDisplayAdapter = (props) => {
|
|
|
52
55
|
} = props;
|
|
53
56
|
const { displayMode = "product-select" } = config;
|
|
54
57
|
const listRef = (0, import_react.useRef)(null);
|
|
58
|
+
const [keyword, setKeyword] = (0, import_react.useState)("");
|
|
55
59
|
const size = (0, import_ahooks.useSize)(listRef);
|
|
56
60
|
const renderProductSelect = (0, import_react.useMemo)(() => {
|
|
57
61
|
const {
|
|
@@ -91,6 +95,34 @@ var ProductDisplayAdapter = (props) => {
|
|
|
91
95
|
emptyDescription,
|
|
92
96
|
style
|
|
93
97
|
]);
|
|
98
|
+
const _filteredList = (0, import_react.useMemo)(() => {
|
|
99
|
+
if (!keyword) return dataSource;
|
|
100
|
+
return dataSource.filter((product) => {
|
|
101
|
+
if (typeof (product == null ? void 0 : product.title) !== "string") return false;
|
|
102
|
+
return product.title.toLowerCase().indexOf(keyword.toLowerCase()) !== -1;
|
|
103
|
+
});
|
|
104
|
+
}, [keyword, dataSource]);
|
|
105
|
+
const searchDom = (0, import_react.useMemo)(() => {
|
|
106
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { className: `pisell-product-display-adapter__search-wrapper` }, /* @__PURE__ */ import_react.default.createElement(
|
|
107
|
+
import_materials.Input,
|
|
108
|
+
{
|
|
109
|
+
prefix: /* @__PURE__ */ import_react.default.createElement(import_SearchLg.default, null),
|
|
110
|
+
style: { height: 44 },
|
|
111
|
+
placeholder: import_utils2.locales.getText("pisell2.product-select.search"),
|
|
112
|
+
allowClear: true,
|
|
113
|
+
value: keyword,
|
|
114
|
+
onChange: (e) => {
|
|
115
|
+
setKeyword(e.target.value);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
));
|
|
119
|
+
}, [keyword]);
|
|
120
|
+
const tabData = (0, import_react.useMemo)(() => {
|
|
121
|
+
const { listConfig = {} } = config.skuListConfig || {};
|
|
122
|
+
const enableTab = listConfig.showTab || false;
|
|
123
|
+
const tabStyle = listConfig.tabStyle || "switch";
|
|
124
|
+
return enableTab ? (0, import_utils.generateProductTabs)(_filteredList, tabStyle) : void 0;
|
|
125
|
+
}, [_filteredList]);
|
|
94
126
|
const renderSkuList = (0, import_react.useMemo)(() => {
|
|
95
127
|
const { listConfig = {}, skuCardAllConfig = {} } = config.skuListConfig || {};
|
|
96
128
|
const displayStyle = listConfig.layout || "grid";
|
|
@@ -99,14 +131,14 @@ var ProductDisplayAdapter = (props) => {
|
|
|
99
131
|
const enableTab = listConfig.showTab || false;
|
|
100
132
|
const tabStyle = listConfig.tabStyle || "switch";
|
|
101
133
|
const stickyTop = listConfig.stickyTop !== void 0 ? listConfig.stickyTop : true;
|
|
102
|
-
const
|
|
103
|
-
const filteredData = dataSource.map((item) => {
|
|
134
|
+
const filteredData = _filteredList.map((item) => {
|
|
104
135
|
var _a, _b;
|
|
105
136
|
return {
|
|
106
137
|
...item,
|
|
107
138
|
category: ((_b = (_a = item.category) == null ? void 0 : _a.map) == null ? void 0 : _b.call(_a, (category) => `${category.id}`)) || []
|
|
108
139
|
};
|
|
109
140
|
});
|
|
141
|
+
console.log(tabData, "tabData123");
|
|
110
142
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
111
143
|
"div",
|
|
112
144
|
{
|
|
@@ -120,11 +152,12 @@ var ProductDisplayAdapter = (props) => {
|
|
|
120
152
|
className: "sku-list",
|
|
121
153
|
style: { maxHeight: size == null ? void 0 : size.height, overflow: "auto" },
|
|
122
154
|
data: filteredData,
|
|
123
|
-
|
|
155
|
+
renderSearch: () => searchDom,
|
|
156
|
+
loading: false,
|
|
124
157
|
displayStyle,
|
|
125
158
|
columns,
|
|
126
159
|
paginationType,
|
|
127
|
-
layoutDirection: "
|
|
160
|
+
layoutDirection: "horizontal",
|
|
128
161
|
tabStyle: enableTab ? tabStyle : "none",
|
|
129
162
|
tabData,
|
|
130
163
|
tabGroup: "category",
|
|
@@ -155,7 +188,9 @@ var ProductDisplayAdapter = (props) => {
|
|
|
155
188
|
emptyDescription,
|
|
156
189
|
style,
|
|
157
190
|
className,
|
|
158
|
-
size == null ? void 0 : size.height
|
|
191
|
+
size == null ? void 0 : size.height,
|
|
192
|
+
_filteredList,
|
|
193
|
+
tabData
|
|
159
194
|
]);
|
|
160
195
|
if (displayMode === "sku-list") {
|
|
161
196
|
return renderSkuList;
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
.list-item {
|
|
22
22
|
height: 100% !important;
|
|
23
23
|
.pisell-product-sku__card-wrapper {
|
|
24
|
-
height: 100
|
|
24
|
+
height: 100%;
|
|
25
25
|
.pisell-lowcode-card {
|
|
26
26
|
height: 100% !important;
|
|
27
27
|
}
|
|
@@ -51,3 +51,30 @@
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
+
|
|
55
|
+
.pisell-product-display-adapter__search-wrapper {
|
|
56
|
+
padding: 0;
|
|
57
|
+
margin-bottom: 12px;
|
|
58
|
+
--ps-color-primary: #8157d5;
|
|
59
|
+
--ps-color-text: #1b1b1b;
|
|
60
|
+
--ps-color-text-secondary: #4e4e4e;
|
|
61
|
+
--ps-container-bg: #4e4e4e;
|
|
62
|
+
--ps-search-input-color: #98a2b3;
|
|
63
|
+
--ps-tab-item-bg: #ffffff;
|
|
64
|
+
--ps-tab-item-hover-bg: #ffffff;
|
|
65
|
+
--ps-tab-item-active-bg: #8157d5;
|
|
66
|
+
--ps-category-text-color: #ffffff;
|
|
67
|
+
--ps-card-bg: #ffffff;
|
|
68
|
+
--ps-card-hover-bg: #eaecf0;
|
|
69
|
+
--ps-card-selected-bg: #8157d5;
|
|
70
|
+
--ps-card-selected-text-color: #ffffff;
|
|
71
|
+
--ps-card-selected-secondary-text-color: rgba(255, 255, 255, 0.7);
|
|
72
|
+
&> span {
|
|
73
|
+
background: var(--ps-container-bg, #fff);
|
|
74
|
+
color: var(--ps-search-input-color, #98a2b3);
|
|
75
|
+
}
|
|
76
|
+
input {
|
|
77
|
+
background: transparent;
|
|
78
|
+
color: var(--ps-search-input-color, #98a2b3);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
@@ -28,6 +28,8 @@ interface ProductCategory {
|
|
|
28
28
|
icon?: string;
|
|
29
29
|
slug?: string;
|
|
30
30
|
sort?: number;
|
|
31
|
+
/** 父级分类 ID,0 或 null/undefined 表示一级分类 */
|
|
32
|
+
parent_id?: number | null;
|
|
31
33
|
}
|
|
32
34
|
/**
|
|
33
35
|
* 产品项接口
|
|
@@ -38,13 +40,44 @@ interface Product {
|
|
|
38
40
|
category?: ProductCategory[];
|
|
39
41
|
[key: string]: any;
|
|
40
42
|
}
|
|
43
|
+
/**
|
|
44
|
+
* 分类树节点接口(Switch 模式返回值)
|
|
45
|
+
*/
|
|
46
|
+
export interface CategoryTreeNode {
|
|
47
|
+
/** 分类 ID,All 节点为 '{父级路径}_all' 格式 */
|
|
48
|
+
id: number | string;
|
|
49
|
+
/** 分类唯一标识 兼容 List 组件的 key 字段 */
|
|
50
|
+
key: number | string;
|
|
51
|
+
/** 分类名称 兼容 List 组件的 label 字段 */
|
|
52
|
+
label: string;
|
|
53
|
+
/** 分类分组 兼容 List 组件的 group 字段 */
|
|
54
|
+
group: number | string;
|
|
55
|
+
/** 分类名称 */
|
|
56
|
+
name: string;
|
|
57
|
+
/** 分类图标 */
|
|
58
|
+
icon?: string;
|
|
59
|
+
/**
|
|
60
|
+
* 路径式父级标识
|
|
61
|
+
* - 一级分类:无此字段
|
|
62
|
+
* - 二级分类:'1'(父级 id)
|
|
63
|
+
* - 三级分类:'1_2'(路径格式)
|
|
64
|
+
* - 以此类推
|
|
65
|
+
*/
|
|
66
|
+
pid?: string;
|
|
67
|
+
/** 该分类下所有商品的 ID 数组(包含子分类的商品) */
|
|
68
|
+
productIds: number[];
|
|
69
|
+
/** 子分类列表,如果有子分类,第一个为 All 节点 */
|
|
70
|
+
children?: CategoryTreeNode[];
|
|
71
|
+
/** 子分类最大层级 */
|
|
72
|
+
childrenMaxLevel: number;
|
|
73
|
+
}
|
|
41
74
|
/**
|
|
42
75
|
* 根据产品数据生成分类 Tabs(Switch 模式)
|
|
43
76
|
* 参考 TestResponsiveWrapper 的 generateSimpleTabItems 函数
|
|
44
77
|
*
|
|
45
78
|
* @param products 产品列表
|
|
46
79
|
* @param tabStyle tab 样式类型
|
|
47
|
-
* @returns TabItem
|
|
80
|
+
* @returns Switch 模式返回 CategoryTreeNode[],Anchor 模式返回 TabItem[]
|
|
48
81
|
*/
|
|
49
|
-
export declare const generateProductTabs: (products: Product[], tabStyle?: 'switch' | 'anchor') => TabItem[];
|
|
82
|
+
export declare const generateProductTabs: (products: Product[], tabStyle?: 'switch' | 'anchor') => CategoryTreeNode[] | TabItem[];
|
|
50
83
|
export {};
|
|
@@ -38,33 +38,13 @@ var formatSkuDataSource = (dataSource) => {
|
|
|
38
38
|
};
|
|
39
39
|
var generateProductTabs = (products, tabStyle = "switch") => {
|
|
40
40
|
if (!products || products.length === 0) {
|
|
41
|
+
if (tabStyle === "switch") {
|
|
42
|
+
return [];
|
|
43
|
+
}
|
|
41
44
|
return [{ key: "all", label: import_utils.locales.getText("pisell2.ticket-booking.all") }];
|
|
42
45
|
}
|
|
43
46
|
if (tabStyle === "switch") {
|
|
44
|
-
|
|
45
|
-
products.forEach((product) => {
|
|
46
|
-
if (product.category && Array.isArray(product.category)) {
|
|
47
|
-
product.category.forEach((cat) => {
|
|
48
|
-
if (!categoryMap.has(cat.id)) {
|
|
49
|
-
categoryMap.set(cat.id, cat);
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
const sortedCategories = Array.from(categoryMap.values()).sort(
|
|
55
|
-
(a, b) => (b.sort || 0) - (a.sort || 0)
|
|
56
|
-
);
|
|
57
|
-
const tabs = [
|
|
58
|
-
{ key: "all", label: import_utils.locales.getText("pisell2.ticket-booking.all") }
|
|
59
|
-
];
|
|
60
|
-
sortedCategories.forEach((category) => {
|
|
61
|
-
tabs.push({
|
|
62
|
-
key: String(category.id),
|
|
63
|
-
label: category.name,
|
|
64
|
-
group: String(category.id)
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
return tabs;
|
|
47
|
+
return buildCategoryTree(products);
|
|
68
48
|
} else {
|
|
69
49
|
const categoryCount = products.reduce((acc, product) => {
|
|
70
50
|
if (product.category && Array.isArray(product.category)) {
|
|
@@ -94,6 +74,95 @@ var generateProductTabs = (products, tabStyle = "switch") => {
|
|
|
94
74
|
return tabs;
|
|
95
75
|
}
|
|
96
76
|
};
|
|
77
|
+
var buildCategoryTree = (products) => {
|
|
78
|
+
const categoryMap = /* @__PURE__ */ new Map();
|
|
79
|
+
const categoryProductMap = /* @__PURE__ */ new Map();
|
|
80
|
+
products.forEach((product) => {
|
|
81
|
+
if (product.category && Array.isArray(product.category)) {
|
|
82
|
+
product.category.forEach((cat) => {
|
|
83
|
+
if (!categoryMap.has(cat.id)) {
|
|
84
|
+
categoryMap.set(cat.id, cat);
|
|
85
|
+
}
|
|
86
|
+
if (!categoryProductMap.has(cat.id)) {
|
|
87
|
+
categoryProductMap.set(cat.id, /* @__PURE__ */ new Set());
|
|
88
|
+
}
|
|
89
|
+
categoryProductMap.get(cat.id).add(product.id);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
const childrenMap = /* @__PURE__ */ new Map();
|
|
94
|
+
const rootCategories = [];
|
|
95
|
+
categoryMap.forEach((category, id) => {
|
|
96
|
+
const parentId = category.parent_id;
|
|
97
|
+
if (!parentId || parentId === 0) {
|
|
98
|
+
rootCategories.push(id);
|
|
99
|
+
} else {
|
|
100
|
+
if (!childrenMap.has(parentId)) {
|
|
101
|
+
childrenMap.set(parentId, []);
|
|
102
|
+
}
|
|
103
|
+
childrenMap.get(parentId).push(id);
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
const sortBySort = (ids) => {
|
|
107
|
+
return ids.sort((a, b) => {
|
|
108
|
+
const catA = categoryMap.get(a);
|
|
109
|
+
const catB = categoryMap.get(b);
|
|
110
|
+
return ((catB == null ? void 0 : catB.sort) || 0) - ((catA == null ? void 0 : catA.sort) || 0);
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
const buildNode = (categoryId, parentPath) => {
|
|
114
|
+
const category = categoryMap.get(categoryId);
|
|
115
|
+
const childIds = childrenMap.get(categoryId) || [];
|
|
116
|
+
const sortedChildIds = sortBySort([...childIds]);
|
|
117
|
+
const directProductIds = Array.from(categoryProductMap.get(categoryId) || []);
|
|
118
|
+
const currentPath = parentPath ? `${parentPath}_${categoryId}` : String(categoryId);
|
|
119
|
+
const pid = parentPath || void 0;
|
|
120
|
+
const node = {
|
|
121
|
+
id: categoryId,
|
|
122
|
+
key: categoryId,
|
|
123
|
+
group: categoryId,
|
|
124
|
+
label: category.name,
|
|
125
|
+
name: category.name,
|
|
126
|
+
icon: category.icon,
|
|
127
|
+
productIds: directProductIds,
|
|
128
|
+
childrenMaxLevel: 0
|
|
129
|
+
// 默认无子分类时为 0
|
|
130
|
+
};
|
|
131
|
+
if (pid) {
|
|
132
|
+
node.pid = pid;
|
|
133
|
+
}
|
|
134
|
+
if (sortedChildIds.length > 0) {
|
|
135
|
+
const childNodes = sortedChildIds.map(
|
|
136
|
+
(childId) => buildNode(childId, currentPath)
|
|
137
|
+
);
|
|
138
|
+
const allChildProductIds = childNodes.reduce((acc, child) => {
|
|
139
|
+
return acc.concat(child.productIds);
|
|
140
|
+
}, []);
|
|
141
|
+
const mergedProductIds = Array.from(
|
|
142
|
+
/* @__PURE__ */ new Set([...directProductIds, ...allChildProductIds])
|
|
143
|
+
);
|
|
144
|
+
node.productIds = mergedProductIds;
|
|
145
|
+
node.children = [...childNodes];
|
|
146
|
+
let maxChildLevel = 0;
|
|
147
|
+
for (let i = 0; i < childNodes.length; i++) {
|
|
148
|
+
if (childNodes[i].childrenMaxLevel > maxChildLevel) {
|
|
149
|
+
maxChildLevel = childNodes[i].childrenMaxLevel;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
node.childrenMaxLevel = maxChildLevel + 1;
|
|
153
|
+
}
|
|
154
|
+
return node;
|
|
155
|
+
};
|
|
156
|
+
const sortedRootIds = sortBySort([...rootCategories]);
|
|
157
|
+
const rootNodes = sortedRootIds.map((rootId) => buildNode(rootId, ""));
|
|
158
|
+
if (rootNodes.length > 0) {
|
|
159
|
+
const allProductIds = Array.from(
|
|
160
|
+
new Set(rootNodes.flatMap((node) => node.productIds))
|
|
161
|
+
);
|
|
162
|
+
return [...rootNodes];
|
|
163
|
+
}
|
|
164
|
+
return rootNodes;
|
|
165
|
+
};
|
|
97
166
|
// Annotate the CommonJS export names for ESM import in node:
|
|
98
167
|
0 && (module.exports = {
|
|
99
168
|
formatSkuDataSource,
|
|
@@ -76,7 +76,6 @@ var AddSerivce = (props) => {
|
|
|
76
76
|
const context = (0, import_useEngineContext.default)();
|
|
77
77
|
const platform = (0, import_useEngineContext.usePlatform)();
|
|
78
78
|
const notAvailableRef = (0, import_react.useRef)(null);
|
|
79
|
-
const isLoadedServiceRef = (0, import_react.useRef)(false);
|
|
80
79
|
import_utils2.request.setRequest(context.appHelper.utils.request);
|
|
81
80
|
const isActive = (0, import_IsActiveContext.useIsActive)();
|
|
82
81
|
const Toast = (0, import_materials.useToast)();
|
|
@@ -39,20 +39,43 @@ var import_antd = require("antd");
|
|
|
39
39
|
var import_icons = require("@ant-design/icons");
|
|
40
40
|
var import_utils = require("@pisell/utils");
|
|
41
41
|
var import_materials = require("@pisell/materials");
|
|
42
|
+
var import_serve = require("../../serve");
|
|
43
|
+
var import_hooks = require("../../../../hooks");
|
|
42
44
|
var index = (props) => {
|
|
43
45
|
const { activeNavKey = "ticket", onNavChange } = props;
|
|
44
46
|
const status = (0, import_useNetworkStatus.useNetworkStatus)();
|
|
47
|
+
const [showFoodMenu, setShowFoodMenu] = (0, import_react.useState)(false);
|
|
48
|
+
const context = (0, import_hooks.useEngineContext)();
|
|
49
|
+
(0, import_react.useEffect)(() => {
|
|
50
|
+
const checkFoodConfig = async () => {
|
|
51
|
+
try {
|
|
52
|
+
const data = await (0, import_serve.getBookingConfig)({
|
|
53
|
+
item_type: "appointment_booking",
|
|
54
|
+
sub_type: "food",
|
|
55
|
+
source_type: "pos"
|
|
56
|
+
});
|
|
57
|
+
if (data) {
|
|
58
|
+
setShowFoodMenu(true);
|
|
59
|
+
}
|
|
60
|
+
} catch (error) {
|
|
61
|
+
console.error("获取 food 配置失败:", error);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
checkFoodConfig();
|
|
65
|
+
}, []);
|
|
45
66
|
const navItems = [
|
|
46
67
|
{
|
|
47
68
|
key: "ticket",
|
|
48
69
|
icon: /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-ticket", style: { fontSize: 32 } }),
|
|
49
70
|
label: ""
|
|
50
71
|
},
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
72
|
+
...showFoodMenu ? [
|
|
73
|
+
{
|
|
74
|
+
key: "food",
|
|
75
|
+
label: "",
|
|
76
|
+
icon: /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-food", style: { fontSize: 32 } })
|
|
77
|
+
}
|
|
78
|
+
] : []
|
|
56
79
|
];
|
|
57
80
|
const items = [
|
|
58
81
|
{
|
|
@@ -87,8 +110,21 @@ var index = (props) => {
|
|
|
87
110
|
return "Offline";
|
|
88
111
|
}
|
|
89
112
|
};
|
|
90
|
-
const handleClick = ({ key }) => {
|
|
113
|
+
const handleClick = async ({ key }) => {
|
|
114
|
+
var _a, _b;
|
|
91
115
|
if (key === "reload") {
|
|
116
|
+
try {
|
|
117
|
+
const { getApp } = ((_a = context.appHelper) == null ? void 0 : _a.utils) || {};
|
|
118
|
+
const app = getApp();
|
|
119
|
+
if (app) {
|
|
120
|
+
app.logger.addLog({
|
|
121
|
+
type: "info",
|
|
122
|
+
title: "Reload App"
|
|
123
|
+
});
|
|
124
|
+
await ((_b = app == null ? void 0 : app.logger) == null ? void 0 : _b.storeLog());
|
|
125
|
+
}
|
|
126
|
+
} catch (err) {
|
|
127
|
+
}
|
|
92
128
|
window.location.reload();
|
|
93
129
|
}
|
|
94
130
|
if (key === "logout") {
|
|
@@ -448,12 +448,12 @@ var TicketBooking = (props) => {
|
|
|
448
448
|
};
|
|
449
449
|
}, []);
|
|
450
450
|
const _getProducts = (date) => {
|
|
451
|
-
var _a2, _b2, _c2, _d2, _e2, _f;
|
|
451
|
+
var _a2, _b2, _c2, _d2, _e2, _f, _g;
|
|
452
452
|
const currentDate2 = date.format("YYYY-MM-DD");
|
|
453
453
|
const currentDatetime = date.format("YYYY-MM-DD HH:mm:ss");
|
|
454
454
|
const customerId = (_c2 = (_b2 = (_a2 = state.modalState) == null ? void 0 : _a2.client) == null ? void 0 : _b2.value) == null ? void 0 : _c2.id;
|
|
455
455
|
const menuList = ((_f = (_e2 = (_d2 = state.bookingConfig) == null ? void 0 : _d2.config) == null ? void 0 : _e2.menu_list_tab) == null ? void 0 : _f.menu_list) || [];
|
|
456
|
-
getProductsRef.current({
|
|
456
|
+
(_g = getProductsRef == null ? void 0 : getProductsRef.current) == null ? void 0 : _g.call(getProductsRef, {
|
|
457
457
|
schedule_date: currentDate2,
|
|
458
458
|
customer_id: customerId,
|
|
459
459
|
menu_list_ids: menuList,
|
|
@@ -41,9 +41,43 @@ var import_dayjs = __toESM(require("dayjs"));
|
|
|
41
41
|
var import_classnames = __toESM(require("classnames"));
|
|
42
42
|
var import_utils = require("@pisell/utils");
|
|
43
43
|
var import_index = require("./index.less");
|
|
44
|
+
var import_materials2 = require("@pisell/materials");
|
|
44
45
|
var TimeBar = (props) => {
|
|
45
46
|
var _a, _b;
|
|
46
47
|
const { globalState: state, setGlobalState, locale, onCreateClick, setNowTime } = props;
|
|
48
|
+
const [collapsed, setCollapsed] = (0, import_react.useState)(true);
|
|
49
|
+
const [scaleCompensation, setScaleCompensation] = (0, import_react.useState)(1);
|
|
50
|
+
(0, import_react.useEffect)(() => {
|
|
51
|
+
const getBodyScale = () => {
|
|
52
|
+
const body = document.body;
|
|
53
|
+
const computedStyle = window.getComputedStyle(body);
|
|
54
|
+
const transform = computedStyle.transform;
|
|
55
|
+
if (transform && transform !== "none") {
|
|
56
|
+
const matrix = transform.match(/matrix\(([^)]+)\)/);
|
|
57
|
+
if (matrix) {
|
|
58
|
+
const values = matrix[1].split(",").map((v) => parseFloat(v.trim()));
|
|
59
|
+
const scale = values[0] || 1;
|
|
60
|
+
return scale;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return 1;
|
|
64
|
+
};
|
|
65
|
+
const updateScale = () => {
|
|
66
|
+
const scale = getBodyScale();
|
|
67
|
+
setScaleCompensation(scale);
|
|
68
|
+
};
|
|
69
|
+
updateScale();
|
|
70
|
+
const observer = new MutationObserver(updateScale);
|
|
71
|
+
observer.observe(document.body, {
|
|
72
|
+
attributes: true,
|
|
73
|
+
attributeFilter: ["style", "class"]
|
|
74
|
+
});
|
|
75
|
+
window.addEventListener("resize", updateScale);
|
|
76
|
+
return () => {
|
|
77
|
+
observer.disconnect();
|
|
78
|
+
window.removeEventListener("resize", updateScale);
|
|
79
|
+
};
|
|
80
|
+
}, []);
|
|
47
81
|
const _onClickNext = (0, import_ahooks.useMemoizedFn)(() => {
|
|
48
82
|
var _a2, _b2, _c, _d;
|
|
49
83
|
const currentTime = (_b2 = (_a2 = state.modalState) == null ? void 0 : _a2.date) == null ? void 0 : _b2.value;
|
|
@@ -79,8 +113,62 @@ var TimeBar = (props) => {
|
|
|
79
113
|
});
|
|
80
114
|
(_d = props.setIntervalTime) == null ? void 0 : _d.call(props, timeString === (0, import_dayjs.default)().format("HH:mm"));
|
|
81
115
|
});
|
|
116
|
+
const _onToggleCollapse = (0, import_ahooks.useMemoizedFn)(() => {
|
|
117
|
+
setCollapsed(!collapsed);
|
|
118
|
+
});
|
|
82
119
|
return (0, import_react.useMemo)(() => {
|
|
83
|
-
var _a2, _b2, _c, _d;
|
|
120
|
+
var _a2, _b2, _c, _d, _e, _f;
|
|
121
|
+
if (collapsed) {
|
|
122
|
+
const currentDate = (_b2 = (_a2 = state == null ? void 0 : state.modalState) == null ? void 0 : _a2.date) == null ? void 0 : _b2.value;
|
|
123
|
+
const isToday = currentDate && currentDate.isSame((0, import_dayjs.default)(), "day");
|
|
124
|
+
const displayText = isToday ? import_utils.locales.getText("pisell2.ticket-booking.today") : (currentDate == null ? void 0 : currentDate.format("YYYY-MM-DD")) || "";
|
|
125
|
+
const targetHeight = 40;
|
|
126
|
+
const compensatedHeight = targetHeight / scaleCompensation;
|
|
127
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
128
|
+
"div",
|
|
129
|
+
{
|
|
130
|
+
className: (0, import_classnames.default)("pisell-ticket-booking-time-bar", "collapsed"),
|
|
131
|
+
style: {
|
|
132
|
+
height: `${compensatedHeight}px`,
|
|
133
|
+
minHeight: `${compensatedHeight}px`,
|
|
134
|
+
maxHeight: `${compensatedHeight}px`
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
138
|
+
"div",
|
|
139
|
+
{
|
|
140
|
+
className: "pisell-ticket-booking-time-bar-collapsed-content",
|
|
141
|
+
style: {
|
|
142
|
+
height: `${compensatedHeight}px`
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
146
|
+
"span",
|
|
147
|
+
{
|
|
148
|
+
className: "pisell-ticket-booking-time-bar-collapsed-today",
|
|
149
|
+
style: {
|
|
150
|
+
lineHeight: `${compensatedHeight}px`
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
displayText
|
|
154
|
+
),
|
|
155
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
156
|
+
import_antd.Button,
|
|
157
|
+
{
|
|
158
|
+
type: "link",
|
|
159
|
+
size: "small",
|
|
160
|
+
className: "pisell-ticket-booking-time-bar-collapsed-expand",
|
|
161
|
+
onClick: _onToggleCollapse,
|
|
162
|
+
style: {
|
|
163
|
+
lineHeight: `${compensatedHeight}px`
|
|
164
|
+
}
|
|
165
|
+
},
|
|
166
|
+
/* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell2.ticket-booking.expand")),
|
|
167
|
+
/* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-chevron-right-double" })
|
|
168
|
+
)
|
|
169
|
+
)
|
|
170
|
+
);
|
|
171
|
+
}
|
|
84
172
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
85
173
|
"div",
|
|
86
174
|
{
|
|
@@ -116,7 +204,7 @@ var TimeBar = (props) => {
|
|
|
116
204
|
import_materials.DatePicker,
|
|
117
205
|
{
|
|
118
206
|
inputReadOnly: true,
|
|
119
|
-
value: (
|
|
207
|
+
value: (_d = (_c = state == null ? void 0 : state.modalState) == null ? void 0 : _c.date) == null ? void 0 : _d.value,
|
|
120
208
|
format: locale === "en" ? "dddd, DD MMM YYYY" : "YYYY年MM月DD日",
|
|
121
209
|
onChange: props == null ? void 0 : props.onDateChange,
|
|
122
210
|
size: "large",
|
|
@@ -142,7 +230,7 @@ var TimeBar = (props) => {
|
|
|
142
230
|
/* @__PURE__ */ import_react.default.createElement(
|
|
143
231
|
import_materials.SelectTime,
|
|
144
232
|
{
|
|
145
|
-
value: (
|
|
233
|
+
value: (_f = (_e = state == null ? void 0 : state.modalState) == null ? void 0 : _e.date) == null ? void 0 : _f.value.format("HH:mm"),
|
|
146
234
|
onChange: _onDateTimeChange,
|
|
147
235
|
popoverProps: {
|
|
148
236
|
style: { zoom: 0.8 }
|
|
@@ -172,14 +260,27 @@ var TimeBar = (props) => {
|
|
|
172
260
|
type: "primary"
|
|
173
261
|
},
|
|
174
262
|
import_utils.locales.getText("pisell2.ticket-booking.create-new")
|
|
263
|
+
),
|
|
264
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
265
|
+
import_antd.Button,
|
|
266
|
+
{
|
|
267
|
+
type: "link",
|
|
268
|
+
style: { marginLeft: "auto" },
|
|
269
|
+
onClick: _onToggleCollapse
|
|
270
|
+
},
|
|
271
|
+
/* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell2.ticket-booking.collapse")),
|
|
272
|
+
/* @__PURE__ */ import_react.default.createElement(import_materials2.Iconfont, { type: "pisell2-chevron-left-double" })
|
|
175
273
|
)
|
|
176
274
|
);
|
|
177
275
|
}, [
|
|
276
|
+
collapsed,
|
|
178
277
|
(_b = (_a = state.modalState) == null ? void 0 : _a.date) == null ? void 0 : _b.value,
|
|
179
278
|
state.intervalSetTime,
|
|
180
279
|
state.isTimeChange,
|
|
181
280
|
state.isDateChange,
|
|
182
|
-
locale
|
|
281
|
+
locale,
|
|
282
|
+
_onToggleCollapse,
|
|
283
|
+
scaleCompensation
|
|
183
284
|
]);
|
|
184
285
|
};
|
|
185
286
|
var timeBar_default = TimeBar;
|