@pisell/private-materials 6.3.138 → 6.3.140
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 +153 -426
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +8 -8
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +10 -10
- package/es/businessModel/SalesModel/index.d.ts +0 -1
- package/es/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.js +24 -5
- package/es/components/authentication/admin/ChannelAuthSetting/index.js +1 -1
- package/es/components/booking/addons/model.d.ts +10 -1
- package/es/components/booking/components/TabProduct/selectProductItem/index.d.ts +1 -0
- package/es/components/booking/components/collapsibleList/utils.d.ts +1 -0
- package/es/components/booking/components/emptyBooking/index.d.ts +1 -0
- package/es/components/booking/components/footer/FooterMenus/index.d.ts +1 -0
- package/es/components/booking/components/formItemChildrenWrap/index.d.ts +1 -0
- package/es/components/booking/components/reloadResourceModal/index.d.ts +1 -0
- package/es/components/booking/deposit/index.d.ts +0 -1
- package/es/components/booking/forms/model.d.ts +10 -1
- package/es/components/booking/forms/table/index.d.ts +1 -0
- package/es/components/booking/info/addServiceVariant/index.d.ts +0 -1
- package/es/components/booking/info/clientVariant/hooks/useIsLowSpeedNetwork.d.ts +1 -0
- package/es/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
- package/es/components/booking/info/index.d.ts +0 -1
- package/es/components/booking/info/model.d.ts +10 -1
- package/es/components/booking/info/service/Lists.d.ts +0 -1
- package/es/components/booking/info/service/addService/index.d.ts +0 -1
- package/es/components/booking/info/service/addTimeModal/index.d.ts +0 -1
- package/es/components/booking/info/service/like/index.d.ts +1 -0
- package/es/components/booking/info/service/serviceList/index.d.ts +0 -1
- package/es/components/booking/info/service2/Lists.d.ts +0 -1
- package/es/components/booking/info2/service/addTimeModal/index.d.ts +0 -1
- package/es/components/booking/info2/service/serviceList/index.d.ts +0 -1
- package/es/components/booking/materiels/contacts/index.d.ts +1 -0
- package/es/components/booking/model.d.ts +9 -1
- package/es/components/booking/notes/NoteBlock/NoteItem/index.d.ts +1 -0
- package/es/components/booking/notes/model.d.ts +10 -1
- package/es/components/booking/payments/model.d.ts +10 -1
- package/es/components/booking/utils.d.ts +2 -2
- package/es/components/ecocup/components/CupInfoCard/index.d.ts +1 -0
- package/es/components/ecocup/components/CustomerCard/index.d.ts +1 -0
- package/es/components/eftpos/deviceList/index.d.ts +1 -0
- package/es/components/eftpos/form/index.d.ts +1 -0
- package/es/components/eftpos/group/index.d.ts +1 -0
- package/es/components/eftpos/icon/apiKey.d.ts +1 -0
- package/es/components/eftpos/icon/device.d.ts +1 -0
- package/es/components/eftpos/pos.d.ts +1 -0
- package/es/components/eftpos/receipt/index.d.ts +1 -0
- package/es/components/eftposPay/app.d.ts +0 -1
- package/es/components/eftposPay/component/alert/warn.d.ts +1 -0
- package/es/components/eftposPay/component/fail/failCustom.d.ts +0 -1
- package/es/components/eftposPay/component/fail/network.d.ts +1 -0
- package/es/components/eftposPay/component/fail/unknow.d.ts +1 -0
- package/es/components/eftposPay/component/header/titlebar.d.ts +1 -0
- package/es/components/eftposPay/component/signature/index.d.ts +1 -0
- package/es/components/eftposPay/component/step/index.d.ts +1 -0
- package/es/components/eftposPay/component/step/step.d.ts +1 -0
- package/es/components/eftposPay/device.d.ts +0 -1
- package/es/components/eftposPay/index.d.ts +0 -1
- package/es/components/eftposPay/linkly/index.d.ts +0 -1
- package/es/components/eftposPay/pay.d.ts +0 -1
- package/es/components/eftposPay/payo/config.d.ts +1 -0
- package/es/components/eftposPay/tip.d.ts +1 -0
- package/es/components/eftposPay/tyro/hooks.d.ts +1 -0
- package/es/components/eftposPay/windcave/receiptAction.d.ts +1 -0
- package/es/components/eftposPay/windcave/windcave.d.ts +1 -0
- package/es/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateStatus/index.d.ts +1 -0
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/DayItem/index.d.ts +1 -0
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/index.d.ts +1 -0
- package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Status/index.d.ts +1 -0
- package/es/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +1 -0
- package/es/components/eventBooking/index.d.ts +0 -1
- package/es/components/login/index.d.ts +1 -0
- package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +7 -5
- package/es/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +1 -0
- package/es/components/pay/toC/model.d.ts +9 -1
- package/es/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +1 -0
- package/es/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +1 -0
- package/es/components/pisellSelectCustomerModal/RightPanel/Add/PhoneField/index.d.ts +0 -1
- package/es/components/pisellSelectCustomerModal/RightPanel/index.d.ts +0 -1
- package/es/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +1 -0
- package/es/components/productExtension/index.d.ts +0 -1
- package/es/components/ruleSetting/index.d.ts +0 -1
- package/es/components/ruleSetting/ruleBorder/index.d.ts +1 -0
- package/es/components/scanOrder/components/Cart/index.d.ts +2 -0
- package/es/components/scanOrder/components/Cart/index.js +181 -76
- package/es/components/scanOrder/components/Cart/index.less +72 -13
- package/es/components/scanOrder/components/Check/index.js +261 -75
- package/es/components/scanOrder/components/Check/index.less +30 -0
- package/es/components/scanOrder/components/Content/index.js +382 -144
- package/es/components/scanOrder/components/Footer/index.d.ts +2 -0
- package/es/components/scanOrder/components/Footer/index.js +4 -2
- package/es/components/scanOrder/components/Footer/index.less +16 -7
- package/es/components/scanOrder/components/FulfillmentMode/index.d.ts +11 -0
- package/es/components/scanOrder/components/FulfillmentMode/index.js +90 -0
- package/es/components/scanOrder/components/FulfillmentMode/index.less +40 -0
- package/es/components/scanOrder/components/ManualPickupRefModal/index.d.ts +16 -0
- package/es/components/scanOrder/components/ManualPickupRefModal/index.js +87 -0
- package/es/components/scanOrder/components/ManualPickupRefModal/index.less +61 -0
- package/es/components/scanOrder/components/Menu/index.d.ts +11 -0
- package/es/components/scanOrder/components/Menu/index.js +140 -169
- package/es/components/scanOrder/components/Voucher/index.d.ts +8 -0
- package/es/components/scanOrder/components/Voucher/index.js +250 -0
- package/es/components/scanOrder/context.js +123 -3
- package/es/components/scanOrder/hooks.js +4 -1
- package/es/components/scanOrder/locales.d.ts +120 -0
- package/es/components/scanOrder/locales.js +120 -0
- package/es/components/scanOrder/types.d.ts +33 -0
- package/es/components/scanOrder/utils/toShoppingCartProducts.d.ts +1 -0
- package/es/components/scanOrder/utils/toShoppingCartProducts.js +137 -9
- package/es/components/scanOrder/utils/transformProductDetail.js +21 -4
- package/es/components/schedules/calendar/calendarItem.d.ts +1 -0
- package/es/components/schedules/calendar/index.d.ts +1 -0
- package/es/components/schedules/components/CurrentDay/index.d.ts +1 -0
- package/es/components/schedules/components/ScheduleDetailList/index.d.ts +1 -0
- package/es/components/schedules/components/ScheduleList/index.d.ts +1 -0
- package/es/components/schedules/model.d.ts +9 -1
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/ProductDetailByDate/index.d.ts +1 -0
- package/es/components/schedules/products/ProductDetailDrawer/index.d.ts +1 -0
- package/es/components/schedules/products/index.d.ts +1 -0
- package/es/components/schedules/products/list/ProductItem/index.d.ts +1 -0
- package/es/components/schedules/products/list/index.d.ts +1 -0
- package/es/components/schedules/resources/index.d.ts +1 -0
- package/es/components/schedules/resources/list/index.d.ts +1 -0
- package/es/components/schedules/resources/relationProduct/index.d.ts +1 -0
- package/es/components/schedules/schedules/AllSchedules/index.d.ts +1 -0
- package/es/components/schedules/schedules/ScheduleDetailDrawer/index.d.ts +1 -0
- package/es/components/schedules/schedules/index.d.ts +1 -0
- package/es/components/systemSettings/registry/components/GroupModal.js +8 -1
- package/es/components/systemSettings/registry/components/ItemModal.js +3 -0
- package/es/components/systemSettings/registry/index.js +3 -1
- package/es/components/systemSettings/registry/services.d.ts +2 -0
- package/es/components/systemSettings/registry/types.d.ts +3 -0
- package/es/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -1
- package/es/components/venueBooking/components/Addons/index.js +42 -33
- package/es/components/venueBooking/components/Cart/index.js +26 -14
- package/es/components/venueBooking/components/VenueSelection/components/TimeGrid.js +129 -17
- package/es/components/venueBooking/context.js +6 -6
- package/es/components/venueBooking/hooks.d.ts +16 -3
- package/es/components/venueBooking/hooks.js +16 -4
- package/es/components/venueBooking/types.d.ts +19 -2
- package/es/hooks/usePaymentLogger.d.ts +1 -0
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/plus/clientName/index.d.ts +1 -0
- package/es/plus/clinetSearch/Add/BirthdayField/index.d.ts +1 -0
- package/es/plus/clinetSearch/Add/GenderField/index.d.ts +1 -0
- package/es/plus/pisellReservation/floorRoomCard/views/RoomCardIcons.d.ts +1 -0
- package/es/plus/pisellSalesManagement/hooks/useSalesGridData.d.ts +1 -0
- package/es/plus/saasCreateOrganization/components/Header.d.ts +1 -0
- package/es/plus/saasRegister/components/EntryEmail.d.ts +1 -0
- package/es/plus/saasRegister/components/EntryInfo.d.ts +1 -0
- package/es/plus/saasRegister/components/GoLogin.d.ts +1 -0
- package/es/plus/saasRegister/components/Header.d.ts +1 -0
- package/es/plus/saasRegister/components/VerifyError.d.ts +1 -0
- package/es/plus/saasRegister/components/VerifyingLink.d.ts +1 -0
- package/es/plus/skuOptionsSelection/components/NormalCard/index.d.ts +1 -0
- package/es/plus/skuOptionsSelection/components/TitleExtra/index.d.ts +1 -0
- package/es/plus/skuOptionsSelection/components/VariantCard/index.d.ts +1 -0
- package/es/plus/walletEditor/components/relationProduct/index.d.ts +1 -0
- package/es/pro/Selector/demo.d.ts +1 -0
- package/lib/businessModel/SalesModel/index.d.ts +0 -1
- package/lib/components/authentication/admin/ChannelAuthSetting/OnlineShopAuth/index.js +19 -4
- package/lib/components/authentication/admin/ChannelAuthSetting/index.js +1 -1
- package/lib/components/booking/addons/model.d.ts +10 -1
- package/lib/components/booking/components/TabProduct/selectProductItem/index.d.ts +1 -0
- package/lib/components/booking/components/collapsibleList/utils.d.ts +1 -0
- package/lib/components/booking/components/emptyBooking/index.d.ts +1 -0
- package/lib/components/booking/components/footer/FooterMenus/index.d.ts +1 -0
- package/lib/components/booking/components/formItemChildrenWrap/index.d.ts +1 -0
- package/lib/components/booking/components/reloadResourceModal/index.d.ts +1 -0
- package/lib/components/booking/deposit/index.d.ts +0 -1
- package/lib/components/booking/forms/model.d.ts +10 -1
- package/lib/components/booking/forms/table/index.d.ts +1 -0
- package/lib/components/booking/info/addServiceVariant/index.d.ts +0 -1
- package/lib/components/booking/info/clientVariant/hooks/useIsLowSpeedNetwork.d.ts +1 -0
- package/lib/components/booking/info/hooks/useInfoHolder.d.ts +0 -1
- package/lib/components/booking/info/index.d.ts +0 -1
- package/lib/components/booking/info/model.d.ts +10 -1
- package/lib/components/booking/info/service/Lists.d.ts +0 -1
- package/lib/components/booking/info/service/addService/index.d.ts +0 -1
- package/lib/components/booking/info/service/addTimeModal/index.d.ts +0 -1
- package/lib/components/booking/info/service/like/index.d.ts +1 -0
- package/lib/components/booking/info/service/serviceList/index.d.ts +0 -1
- package/lib/components/booking/info/service2/Lists.d.ts +0 -1
- package/lib/components/booking/info2/service/addTimeModal/index.d.ts +0 -1
- package/lib/components/booking/info2/service/serviceList/index.d.ts +0 -1
- package/lib/components/booking/materiels/contacts/index.d.ts +1 -0
- package/lib/components/booking/model.d.ts +9 -1
- package/lib/components/booking/notes/NoteBlock/NoteItem/index.d.ts +1 -0
- package/lib/components/booking/notes/model.d.ts +10 -1
- package/lib/components/booking/payments/model.d.ts +10 -1
- package/lib/components/booking/utils.d.ts +2 -2
- package/lib/components/ecocup/components/CupInfoCard/index.d.ts +1 -0
- package/lib/components/ecocup/components/CustomerCard/index.d.ts +1 -0
- package/lib/components/eftpos/deviceList/index.d.ts +1 -0
- package/lib/components/eftpos/form/index.d.ts +1 -0
- package/lib/components/eftpos/group/index.d.ts +1 -0
- package/lib/components/eftpos/icon/apiKey.d.ts +1 -0
- package/lib/components/eftpos/icon/device.d.ts +1 -0
- package/lib/components/eftpos/pos.d.ts +1 -0
- package/lib/components/eftpos/receipt/index.d.ts +1 -0
- package/lib/components/eftposPay/app.d.ts +0 -1
- package/lib/components/eftposPay/component/alert/warn.d.ts +1 -0
- package/lib/components/eftposPay/component/fail/failCustom.d.ts +0 -1
- package/lib/components/eftposPay/component/fail/network.d.ts +1 -0
- package/lib/components/eftposPay/component/fail/unknow.d.ts +1 -0
- package/lib/components/eftposPay/component/header/titlebar.d.ts +1 -0
- package/lib/components/eftposPay/component/signature/index.d.ts +1 -0
- package/lib/components/eftposPay/component/step/index.d.ts +1 -0
- package/lib/components/eftposPay/component/step/step.d.ts +1 -0
- package/lib/components/eftposPay/device.d.ts +0 -1
- package/lib/components/eftposPay/index.d.ts +0 -1
- package/lib/components/eftposPay/linkly/index.d.ts +0 -1
- package/lib/components/eftposPay/pay.d.ts +0 -1
- package/lib/components/eftposPay/payo/config.d.ts +1 -0
- package/lib/components/eftposPay/tip.d.ts +1 -0
- package/lib/components/eftposPay/tyro/hooks.d.ts +1 -0
- package/lib/components/eftposPay/windcave/receiptAction.d.ts +1 -0
- package/lib/components/eftposPay/windcave/windcave.d.ts +1 -0
- package/lib/components/eventBooking/components/Provider/Content/index.d.ts +0 -1
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/CalenDateStatus/index.d.ts +1 -0
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/DayItem/index.d.ts +1 -0
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Item/index.d.ts +1 -0
- package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/CalendarDate/Status/index.d.ts +1 -0
- package/lib/components/eventBooking/components/scheduleCalendar/ProductItem/index.d.ts +1 -0
- package/lib/components/eventBooking/index.d.ts +0 -1
- package/lib/components/login/index.d.ts +1 -0
- package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +2 -0
- package/lib/components/pay/toC/PaymentMethods/StripePay/Stripe/StripeSDK/index.d.ts +1 -0
- package/lib/components/pay/toC/model.d.ts +9 -1
- package/lib/components/pisellSelectCustomerModal/RightPanel/Add/BirthdayField/index.d.ts +1 -0
- package/lib/components/pisellSelectCustomerModal/RightPanel/Add/GenderField/index.d.ts +1 -0
- package/lib/components/pisellSelectCustomerModal/RightPanel/Add/PhoneField/index.d.ts +0 -1
- package/lib/components/pisellSelectCustomerModal/RightPanel/index.d.ts +0 -1
- package/lib/components/productExtension/fields/SelectProducts/ProductItemPreview/index.d.ts +1 -0
- package/lib/components/productExtension/index.d.ts +0 -1
- package/lib/components/ruleSetting/index.d.ts +0 -1
- package/lib/components/ruleSetting/ruleBorder/index.d.ts +1 -0
- package/lib/components/scanOrder/components/Cart/index.d.ts +2 -0
- package/lib/components/scanOrder/components/Cart/index.js +117 -28
- package/lib/components/scanOrder/components/Cart/index.less +72 -13
- package/lib/components/scanOrder/components/Check/index.js +109 -15
- package/lib/components/scanOrder/components/Check/index.less +30 -0
- package/lib/components/scanOrder/components/Content/index.js +175 -48
- package/lib/components/scanOrder/components/Footer/index.d.ts +2 -0
- package/lib/components/scanOrder/components/Footer/index.js +2 -2
- package/lib/components/scanOrder/components/Footer/index.less +16 -7
- package/lib/components/scanOrder/components/FulfillmentMode/index.d.ts +11 -0
- package/lib/components/scanOrder/components/FulfillmentMode/index.js +96 -0
- package/lib/components/scanOrder/components/FulfillmentMode/index.less +40 -0
- package/lib/components/scanOrder/components/ManualPickupRefModal/index.d.ts +16 -0
- package/lib/components/scanOrder/components/ManualPickupRefModal/index.js +116 -0
- package/lib/components/scanOrder/components/ManualPickupRefModal/index.less +61 -0
- package/lib/components/scanOrder/components/Menu/index.d.ts +11 -0
- package/lib/components/scanOrder/components/Menu/index.js +23 -36
- package/lib/components/scanOrder/components/Voucher/index.d.ts +8 -0
- package/lib/components/scanOrder/components/Voucher/index.js +162 -0
- package/lib/components/scanOrder/context.js +91 -2
- package/lib/components/scanOrder/hooks.js +4 -1
- package/lib/components/scanOrder/locales.d.ts +120 -0
- package/lib/components/scanOrder/locales.js +120 -0
- package/lib/components/scanOrder/types.d.ts +33 -0
- package/lib/components/scanOrder/utils/toShoppingCartProducts.d.ts +1 -0
- package/lib/components/scanOrder/utils/toShoppingCartProducts.js +88 -6
- package/lib/components/scanOrder/utils/transformProductDetail.js +10 -3
- package/lib/components/schedules/calendar/calendarItem.d.ts +1 -0
- package/lib/components/schedules/calendar/index.d.ts +1 -0
- package/lib/components/schedules/components/CurrentDay/index.d.ts +1 -0
- package/lib/components/schedules/components/ScheduleDetailList/index.d.ts +1 -0
- package/lib/components/schedules/components/ScheduleList/index.d.ts +1 -0
- package/lib/components/schedules/model.d.ts +9 -1
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/MaxParticipantsModule/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/ResourcesModule/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetail/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/ProductDetailByDate/index.d.ts +1 -0
- package/lib/components/schedules/products/ProductDetailDrawer/index.d.ts +1 -0
- package/lib/components/schedules/products/index.d.ts +1 -0
- package/lib/components/schedules/products/list/ProductItem/index.d.ts +1 -0
- package/lib/components/schedules/products/list/index.d.ts +1 -0
- package/lib/components/schedules/resources/index.d.ts +1 -0
- package/lib/components/schedules/resources/list/index.d.ts +1 -0
- package/lib/components/schedules/resources/relationProduct/index.d.ts +1 -0
- package/lib/components/schedules/schedules/AllSchedules/index.d.ts +1 -0
- package/lib/components/schedules/schedules/ScheduleDetailDrawer/index.d.ts +1 -0
- package/lib/components/schedules/schedules/index.d.ts +1 -0
- package/lib/components/systemSettings/registry/components/GroupModal.js +71 -72
- package/lib/components/systemSettings/registry/components/ItemModal.js +2 -1
- package/lib/components/systemSettings/registry/index.js +3 -1
- package/lib/components/systemSettings/registry/services.d.ts +2 -0
- package/lib/components/systemSettings/registry/types.d.ts +3 -0
- package/lib/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -1
- package/lib/components/venueBooking/components/Addons/index.js +15 -8
- package/lib/components/venueBooking/components/Cart/index.js +8 -2
- package/lib/components/venueBooking/components/VenueSelection/components/TimeGrid.js +118 -18
- package/lib/components/venueBooking/context.js +2 -1
- package/lib/components/venueBooking/hooks.d.ts +16 -3
- package/lib/components/venueBooking/hooks.js +8 -2
- package/lib/components/venueBooking/types.d.ts +19 -2
- package/lib/hooks/usePaymentLogger.d.ts +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -0
- package/lib/plus/clientName/index.d.ts +1 -0
- package/lib/plus/clinetSearch/Add/BirthdayField/index.d.ts +1 -0
- package/lib/plus/clinetSearch/Add/GenderField/index.d.ts +1 -0
- package/lib/plus/pisellReservation/floorRoomCard/views/RoomCardIcons.d.ts +1 -0
- package/lib/plus/pisellSalesManagement/hooks/useSalesGridData.d.ts +1 -0
- package/lib/plus/saasCreateOrganization/components/Header.d.ts +1 -0
- package/lib/plus/saasRegister/components/EntryEmail.d.ts +1 -0
- package/lib/plus/saasRegister/components/EntryInfo.d.ts +1 -0
- package/lib/plus/saasRegister/components/GoLogin.d.ts +1 -0
- package/lib/plus/saasRegister/components/Header.d.ts +1 -0
- package/lib/plus/saasRegister/components/VerifyError.d.ts +1 -0
- package/lib/plus/saasRegister/components/VerifyingLink.d.ts +1 -0
- package/lib/plus/skuOptionsSelection/components/NormalCard/index.d.ts +1 -0
- package/lib/plus/skuOptionsSelection/components/TitleExtra/index.d.ts +1 -0
- package/lib/plus/skuOptionsSelection/components/VariantCard/index.d.ts +1 -0
- package/lib/plus/walletEditor/components/relationProduct/index.d.ts +1 -0
- package/lib/pro/Selector/demo.d.ts +1 -0
- package/lowcode/admin-auth-channel-auth/meta.ts +116 -0
- package/lowcode/admin-auth-online-shop-auth/meta.ts +81 -5
- package/package.json +1 -1
|
@@ -93,11 +93,12 @@ function Addons() {
|
|
|
93
93
|
}
|
|
94
94
|
};
|
|
95
95
|
const removeOrderProduct = async (params) => {
|
|
96
|
-
const { product_id, product_variant_id, sourceData } = params;
|
|
96
|
+
const { product_id, product_variant_id, identity_key, sourceData } = params;
|
|
97
97
|
try {
|
|
98
98
|
await runModuleAction("removeProductFromOrder", {
|
|
99
99
|
product_id,
|
|
100
|
-
product_variant_id
|
|
100
|
+
product_variant_id,
|
|
101
|
+
...identity_key ? { identity_key } : {}
|
|
101
102
|
});
|
|
102
103
|
await refreshViewModel();
|
|
103
104
|
} catch (error) {
|
|
@@ -105,16 +106,18 @@ function Addons() {
|
|
|
105
106
|
error,
|
|
106
107
|
sourceData,
|
|
107
108
|
product_id,
|
|
108
|
-
product_variant_id
|
|
109
|
+
product_variant_id,
|
|
110
|
+
identity_key
|
|
109
111
|
});
|
|
110
112
|
}
|
|
111
113
|
};
|
|
112
114
|
const updateOrderProduct = async (params) => {
|
|
113
|
-
const { product_id, product_variant_id, updates, sourceData } = params;
|
|
115
|
+
const { product_id, product_variant_id, identity_key, updates, sourceData } = params;
|
|
114
116
|
try {
|
|
115
117
|
await runModuleAction("updateProductInOrder", {
|
|
116
118
|
product_id,
|
|
117
119
|
product_variant_id,
|
|
120
|
+
...identity_key ? { identity_key } : {},
|
|
118
121
|
updates
|
|
119
122
|
});
|
|
120
123
|
await refreshViewModel();
|
|
@@ -124,6 +127,7 @@ function Addons() {
|
|
|
124
127
|
sourceData,
|
|
125
128
|
product_id,
|
|
126
129
|
product_variant_id,
|
|
130
|
+
identity_key,
|
|
127
131
|
updates
|
|
128
132
|
});
|
|
129
133
|
}
|
|
@@ -158,18 +162,20 @@ function Addons() {
|
|
|
158
162
|
return;
|
|
159
163
|
}
|
|
160
164
|
const normalizedQuantity = Number.isNaN(nextQuantity) ? 0 : Math.max(0, Math.floor(nextQuantity));
|
|
165
|
+
const cartItems = Array.isArray(viewModel == null ? void 0 : viewModel.cartItems) ? viewModel.cartItems : [];
|
|
166
|
+
const existedCartItem = cartItems.find((cartItem) => {
|
|
167
|
+
return String((cartItem == null ? void 0 : cartItem.product_id) ?? null) === String((orderProduct == null ? void 0 : orderProduct.product_id) ?? null) && Number((cartItem == null ? void 0 : cartItem.product_variant_id) ?? 0) === productVariantId;
|
|
168
|
+
});
|
|
169
|
+
const existedIdentityKey = typeof (existedCartItem == null ? void 0 : existedCartItem.identity_key) === "string" && existedCartItem.identity_key.length > 0 ? existedCartItem.identity_key : void 0;
|
|
161
170
|
if (normalizedQuantity <= 0) {
|
|
162
171
|
await removeOrderProduct({
|
|
163
172
|
product_id: (orderProduct == null ? void 0 : orderProduct.product_id) ?? null,
|
|
164
173
|
product_variant_id: productVariantId,
|
|
174
|
+
identity_key: existedIdentityKey,
|
|
165
175
|
sourceData: quantityData
|
|
166
176
|
});
|
|
167
177
|
return;
|
|
168
178
|
}
|
|
169
|
-
const cartItems = Array.isArray(viewModel == null ? void 0 : viewModel.cartItems) ? viewModel.cartItems : [];
|
|
170
|
-
const existedCartItem = cartItems.find((cartItem) => {
|
|
171
|
-
return String((cartItem == null ? void 0 : cartItem.product_id) ?? null) === String((orderProduct == null ? void 0 : orderProduct.product_id) ?? null) && Number((cartItem == null ? void 0 : cartItem.product_variant_id) ?? 0) === productVariantId;
|
|
172
|
-
});
|
|
173
179
|
if (!existedCartItem) {
|
|
174
180
|
await addOrderProduct({
|
|
175
181
|
orderProduct: { ...orderProduct, num: normalizedQuantity },
|
|
@@ -180,6 +186,7 @@ function Addons() {
|
|
|
180
186
|
await updateOrderProduct({
|
|
181
187
|
product_id: (orderProduct == null ? void 0 : orderProduct.product_id) ?? null,
|
|
182
188
|
product_variant_id: productVariantId,
|
|
189
|
+
identity_key: existedIdentityKey,
|
|
183
190
|
updates: {
|
|
184
191
|
num: normalizedQuantity,
|
|
185
192
|
_origin: orderProduct == null ? void 0 : orderProduct._origin
|
|
@@ -139,7 +139,7 @@ function Cart(props) {
|
|
|
139
139
|
const isVenueBookingCartItem = (target) => {
|
|
140
140
|
if (!target || typeof target !== "object") return false;
|
|
141
141
|
if ((target == null ? void 0 : target.start_date) && (target == null ? void 0 : target.end_date)) return true;
|
|
142
|
-
const identity = String((target == null ? void 0 : target.identity_key) ||
|
|
142
|
+
const identity = String((target == null ? void 0 : target.identity_key) || "");
|
|
143
143
|
if (identity.startsWith("venue:")) return true;
|
|
144
144
|
return false;
|
|
145
145
|
};
|
|
@@ -157,8 +157,14 @@ function Cart(props) {
|
|
|
157
157
|
}
|
|
158
158
|
const productId = (targetItem == null ? void 0 : targetItem.product_id) ?? (targetItem == null ? void 0 : targetItem.id) ?? null;
|
|
159
159
|
const productVariantId = Number((targetItem == null ? void 0 : targetItem.product_variant_id) ?? 0);
|
|
160
|
-
const identityKey =
|
|
160
|
+
const identityKey = targetItem == null ? void 0 : targetItem.identity_key;
|
|
161
161
|
if (productId === null && Number.isNaN(productVariantId)) return;
|
|
162
|
+
if (typeof identityKey !== "string" || identityKey.length === 0) {
|
|
163
|
+
console.error("[venueBooking] removeProductFromOrder skipped: missing identity_key", {
|
|
164
|
+
item: targetItem
|
|
165
|
+
});
|
|
166
|
+
return;
|
|
167
|
+
}
|
|
162
168
|
try {
|
|
163
169
|
await runModuleAction("removeProductFromOrder", {
|
|
164
170
|
product_id: productId,
|
|
@@ -165,13 +165,17 @@ function TimeGrid() {
|
|
|
165
165
|
scroller.addEventListener("wheel", onWheel, { passive: false });
|
|
166
166
|
return () => scroller.removeEventListener("wheel", onWheel);
|
|
167
167
|
}, []);
|
|
168
|
-
|
|
168
|
+
const [expandedResources, setExpandedResources] = (0, import_react.useState)({});
|
|
169
|
+
const toggleExpanded = (0, import_react.useCallback)((resourceId) => {
|
|
170
|
+
setExpandedResources((prev) => ({ ...prev, [String(resourceId)]: !prev[String(resourceId)] }));
|
|
171
|
+
}, []);
|
|
172
|
+
function handleSlotClick(resourceId, productId, slot) {
|
|
169
173
|
if (dragStateRef.current.moved) {
|
|
170
174
|
dragStateRef.current.moved = false;
|
|
171
175
|
return;
|
|
172
176
|
}
|
|
173
177
|
if (slot.status !== "available") return;
|
|
174
|
-
toggleSlot(resourceId, slot);
|
|
178
|
+
toggleSlot(resourceId, productId, slot);
|
|
175
179
|
}
|
|
176
180
|
if (isGridLoading || !grid || !timeLabels.length) {
|
|
177
181
|
return /* @__PURE__ */ import_react.default.createElement(TimeGridSkeleton, null);
|
|
@@ -246,34 +250,73 @@ function TimeGrid() {
|
|
|
246
250
|
},
|
|
247
251
|
/* @__PURE__ */ import_react.default.createElement("div", { className: "w-full", key: grid.date }, visibleResources.map((resource) => {
|
|
248
252
|
const courtMeta = (0, import_utils2.getResourceCourtMeta)(resource);
|
|
249
|
-
|
|
253
|
+
const isMultiProduct = !!resource.hasMultipleProducts && Array.isArray(resource.products);
|
|
254
|
+
const expanded = !!expandedResources[String(resource.resourceId)];
|
|
255
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, { key: `${resource.resourceId}-${grid.date}` }, /* @__PURE__ */ import_react.default.createElement("div", { className: "grid border-b border-black/6", style: tableGridStyle }, /* @__PURE__ */ import_react.default.createElement("div", { className: `sticky left-0 z-10 border-r border-black/6 px-2 py-2 shadow-[10px_0_16px_-14px_rgba(0,0,0,0.2)] md:px-4 ${courtMeta.soldOut ? "bg-zinc-50" : "bg-white"}` }, /* @__PURE__ */ import_react.default.createElement("div", { className: "flex items-start justify-between gap-2" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "flex items-center gap-1.5" }, isMultiProduct ? /* @__PURE__ */ import_react.default.createElement(
|
|
256
|
+
"button",
|
|
257
|
+
{
|
|
258
|
+
type: "button",
|
|
259
|
+
"data-cart-button": "true",
|
|
260
|
+
onClick: (e) => {
|
|
261
|
+
e.stopPropagation();
|
|
262
|
+
toggleExpanded(resource.resourceId);
|
|
263
|
+
},
|
|
264
|
+
className: "flex h-5 w-5 items-center justify-center rounded text-zinc-500 hover:bg-black/5",
|
|
265
|
+
"aria-label": expanded ? "collapse" : "expand"
|
|
266
|
+
},
|
|
267
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
268
|
+
import_materials.Iconfont,
|
|
269
|
+
{
|
|
270
|
+
type: expanded ? "pisell2-chevron-down" : "pisell2-chevron-right",
|
|
271
|
+
style: { fontSize: 12 }
|
|
272
|
+
}
|
|
273
|
+
)
|
|
274
|
+
) : null, /* @__PURE__ */ import_react.default.createElement("div", { className: `text-[13px] font-extrabold leading-5 md:text-[15px] ${courtMeta.soldOut ? "text-zinc-400" : "text-zinc-900"}` }, resource.resourceName)))), resource.slots.map((slot, slotIndex) => {
|
|
250
275
|
const isAvailable = slot.status === "available";
|
|
251
276
|
const isUnavailable = slot.status === "occupied" || slot.status === "past" || slot.status === "unavailable";
|
|
252
|
-
const
|
|
253
|
-
venueBookingModule,
|
|
254
|
-
resource.resourceId,
|
|
255
|
-
slot.startTime
|
|
256
|
-
);
|
|
277
|
+
const timeLabel = timeLabels[slotIndex] || "";
|
|
257
278
|
const priceInfo = (0, import_utils2.buildSlotPriceInfo)(slot);
|
|
258
279
|
const priceClass = (0, import_utils2.getPriceColor)({ ...priceInfo, courtType: resource.productTitle });
|
|
259
|
-
const timeLabel = timeLabels[slotIndex] || "";
|
|
260
280
|
const tag = (0, import_utils2.getSlotTag)(priceInfo);
|
|
261
281
|
const tagText = (tag == null ? void 0 : tag.text) === "pisell2.venue.label.promo" ? import_utils.locales.getText("pisell2.venue.label.promo") || "促销" : (tag == null ? void 0 : tag.text) === "pisell2.venue.label.off.peak" ? import_utils.locales.getText("pisell2.venue.label.off.peak") || "非高峰" : null;
|
|
282
|
+
const productIdForSingle = resource.productId;
|
|
283
|
+
const disabledBySelection = !isMultiProduct && !isUnavailable ? (0, import_hooks.isSlotDisabledBySelection)(venueBookingModule, {
|
|
284
|
+
resourceId: resource.resourceId,
|
|
285
|
+
productId: productIdForSingle,
|
|
286
|
+
startTime: slot.startTime
|
|
287
|
+
}) : false;
|
|
288
|
+
const isBlocked = isUnavailable || disabledBySelection;
|
|
289
|
+
const selected = !isMultiProduct && isAvailable && (0, import_hooks.isSlotSelected)(
|
|
290
|
+
venueBookingModule,
|
|
291
|
+
resource.resourceId,
|
|
292
|
+
slot.startTime,
|
|
293
|
+
productIdForSingle
|
|
294
|
+
);
|
|
295
|
+
const interactive = !isMultiProduct && !isBlocked;
|
|
296
|
+
const showPlusLabel = isMultiProduct && !isBlocked;
|
|
262
297
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
263
298
|
"button",
|
|
264
299
|
{
|
|
265
300
|
"data-slot-button": "true",
|
|
266
|
-
key: `${resource.resourceId}-${slot.startTime}`,
|
|
267
|
-
onClick: () =>
|
|
268
|
-
|
|
269
|
-
|
|
301
|
+
key: `${resource.resourceId}-outer-${slot.startTime}`,
|
|
302
|
+
onClick: () => {
|
|
303
|
+
if (isMultiProduct) {
|
|
304
|
+
if (isBlocked) return;
|
|
305
|
+
toggleExpanded(resource.resourceId);
|
|
306
|
+
return;
|
|
307
|
+
}
|
|
308
|
+
if (isBlocked) return;
|
|
309
|
+
handleSlotClick(resource.resourceId, productIdForSingle, slot);
|
|
310
|
+
},
|
|
311
|
+
disabled: isBlocked,
|
|
312
|
+
className: `px-1 py-2 text-center transition md:px-2 ${isBlocked ? "cursor-not-allowed bg-zinc-100 text-zinc-400" : selected ? "text-white" : "bg-white hover:bg-[#fff6f6]"}`,
|
|
270
313
|
style: {
|
|
271
314
|
borderLeft: (0, import_utils2.isHourBoundary)(timeLabel) ? "1px solid rgba(0,0,0,0.08)" : "1px solid rgba(0,0,0,0.03)",
|
|
272
315
|
borderBottom: "1px solid rgba(0,0,0,0.04)",
|
|
273
|
-
...selected &&
|
|
316
|
+
...selected && interactive ? { backgroundColor: "var(--vb-primary)" } : null
|
|
274
317
|
}
|
|
275
318
|
},
|
|
276
|
-
|
|
319
|
+
isBlocked ? /* @__PURE__ */ import_react.default.createElement("div", { className: "flex flex-col items-center justify-center gap-1 text-zinc-400" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "text-lg font-bold leading-none" }, "×")) : selected ? /* @__PURE__ */ import_react.default.createElement("div", { className: "space-y-0.5" }, /* @__PURE__ */ import_react.default.createElement(
|
|
277
320
|
import_materials.PisellText.Amount,
|
|
278
321
|
{
|
|
279
322
|
value: Number(slot.price || 0),
|
|
@@ -282,7 +325,7 @@ function TimeGrid() {
|
|
|
282
325
|
showCurrencySymbol: true,
|
|
283
326
|
className: "text-[13px] font-extrabold leading-4 text-white md:text-sm"
|
|
284
327
|
}
|
|
285
|
-
)) : /* @__PURE__ */ import_react.default.createElement("div", { className: "space-y-0.5" }, /* @__PURE__ */ import_react.default.createElement(
|
|
328
|
+
)) : /* @__PURE__ */ import_react.default.createElement("div", { className: "space-y-0.5" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "flex items-baseline justify-center gap-0.5" }, /* @__PURE__ */ import_react.default.createElement(
|
|
286
329
|
import_materials.PisellText.Amount,
|
|
287
330
|
{
|
|
288
331
|
value: Number(slot.price || 0),
|
|
@@ -292,9 +335,66 @@ function TimeGrid() {
|
|
|
292
335
|
hideDecimalForWholeNumbers: true,
|
|
293
336
|
className: `text-[13px] font-normal leading-4 ${priceClass} md:text-sm`
|
|
294
337
|
}
|
|
295
|
-
), tag ? /* @__PURE__ */ import_react.default.createElement("div", { className: `inline-flex rounded-full px-1.5 py-0 text-[8px] font-semibold leading-4 ring-1 md:text-[9px] ${tag.className}` }, tagText) : null)
|
|
338
|
+
), showPlusLabel ? /* @__PURE__ */ import_react.default.createElement("span", { className: `text-[13px] font-semibold leading-4 ${priceClass} md:text-sm` }, "+") : null), tag ? /* @__PURE__ */ import_react.default.createElement("div", { className: `inline-flex rounded-full px-1.5 py-0 text-[8px] font-semibold leading-4 ring-1 md:text-[9px] ${tag.className}` }, tagText) : null)
|
|
296
339
|
);
|
|
297
|
-
}))
|
|
340
|
+
})), isMultiProduct && expanded && resource.products.map((subRow) => /* @__PURE__ */ import_react.default.createElement(
|
|
341
|
+
"div",
|
|
342
|
+
{
|
|
343
|
+
key: `${resource.resourceId}-sub-${subRow.productId}`,
|
|
344
|
+
className: "grid border-b border-black/6 bg-zinc-50/60",
|
|
345
|
+
style: tableGridStyle
|
|
346
|
+
},
|
|
347
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: "sticky left-0 z-10 border-r border-black/6 bg-zinc-50/60 px-2 py-2 pl-8 shadow-[10px_0_16px_-14px_rgba(0,0,0,0.2)] md:px-4 md:pl-10" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "text-[12px] font-semibold leading-5 text-zinc-700 md:text-[13px]" }, subRow.productTitle)),
|
|
348
|
+
subRow.slots.map((slot, slotIndex) => {
|
|
349
|
+
const isAvailable = slot.status === "available";
|
|
350
|
+
const isUnavailable = slot.status === "occupied" || slot.status === "past" || slot.status === "unavailable";
|
|
351
|
+
const timeLabel = timeLabels[slotIndex] || "";
|
|
352
|
+
const disabledBySelection = !isUnavailable && (0, import_hooks.isSlotDisabledBySelection)(venueBookingModule, {
|
|
353
|
+
resourceId: resource.resourceId,
|
|
354
|
+
productId: subRow.productId,
|
|
355
|
+
startTime: slot.startTime
|
|
356
|
+
});
|
|
357
|
+
const isBlocked = isUnavailable || disabledBySelection;
|
|
358
|
+
const selected = isAvailable && (0, import_hooks.isSlotSelected)(
|
|
359
|
+
venueBookingModule,
|
|
360
|
+
resource.resourceId,
|
|
361
|
+
slot.startTime,
|
|
362
|
+
subRow.productId
|
|
363
|
+
);
|
|
364
|
+
const interactive = !isBlocked;
|
|
365
|
+
const priceInfo = (0, import_utils2.buildSlotPriceInfo)(slot);
|
|
366
|
+
const priceClass = (0, import_utils2.getPriceColor)({ ...priceInfo, courtType: subRow.productTitle });
|
|
367
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
368
|
+
"button",
|
|
369
|
+
{
|
|
370
|
+
"data-slot-button": "true",
|
|
371
|
+
key: `${resource.resourceId}-${subRow.productId}-${slot.startTime}`,
|
|
372
|
+
onClick: () => {
|
|
373
|
+
if (!interactive) return;
|
|
374
|
+
handleSlotClick(resource.resourceId, subRow.productId, slot);
|
|
375
|
+
},
|
|
376
|
+
disabled: !interactive,
|
|
377
|
+
className: `px-1 py-2 text-center transition md:px-2 ${isBlocked ? "cursor-not-allowed bg-zinc-100 text-zinc-400" : selected ? "text-white" : "bg-white hover:bg-[#fff6f6]"}`,
|
|
378
|
+
style: {
|
|
379
|
+
borderLeft: (0, import_utils2.isHourBoundary)(timeLabel) ? "1px solid rgba(0,0,0,0.08)" : "1px solid rgba(0,0,0,0.03)",
|
|
380
|
+
borderBottom: "1px solid rgba(0,0,0,0.04)",
|
|
381
|
+
...selected && interactive ? { backgroundColor: "var(--vb-primary)" } : null
|
|
382
|
+
}
|
|
383
|
+
},
|
|
384
|
+
isBlocked ? /* @__PURE__ */ import_react.default.createElement("div", { className: "flex flex-col items-center justify-center gap-1 text-zinc-400" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "text-lg font-bold leading-none" }, "×")) : /* @__PURE__ */ import_react.default.createElement("div", { className: "space-y-0.5" }, /* @__PURE__ */ import_react.default.createElement(
|
|
385
|
+
import_materials.PisellText.Amount,
|
|
386
|
+
{
|
|
387
|
+
value: Number(slot.price || 0),
|
|
388
|
+
symbol,
|
|
389
|
+
precision: 2,
|
|
390
|
+
showCurrencySymbol: true,
|
|
391
|
+
hideDecimalForWholeNumbers: true,
|
|
392
|
+
className: `text-[13px] leading-4 ${selected ? "font-extrabold text-white" : `font-normal ${priceClass}`} md:text-sm`
|
|
393
|
+
}
|
|
394
|
+
))
|
|
395
|
+
);
|
|
396
|
+
})
|
|
397
|
+
)));
|
|
298
398
|
}))
|
|
299
399
|
));
|
|
300
400
|
}
|
|
@@ -239,11 +239,12 @@ function VenueBookingProvider({ entryContext, children }) {
|
|
|
239
239
|
setIsWeekLoading(false);
|
|
240
240
|
}
|
|
241
241
|
}, [venueBookingModule]);
|
|
242
|
-
const toggleSlot = (0, import_react.useCallback)(async (resourceId, slot) => {
|
|
242
|
+
const toggleSlot = (0, import_react.useCallback)(async (resourceId, productId, slot) => {
|
|
243
243
|
if (!venueBookingModule || !slot.price) return;
|
|
244
244
|
try {
|
|
245
245
|
await (0, import_hooks.toggleSlotAction)(venueBookingModule, {
|
|
246
246
|
resourceId,
|
|
247
|
+
productId,
|
|
247
248
|
startTime: slot.startTime,
|
|
248
249
|
endTime: slot.endTime,
|
|
249
250
|
price: slot.price
|
|
@@ -27,15 +27,28 @@ export declare function fetchResourceAvailability(module: any, startDate: string
|
|
|
27
27
|
export declare function getDateRangeSummary(module: any, startDate: string, endDate: string): VenueDateSummaryItem[];
|
|
28
28
|
/** 获取某天的时段网格(纯计算不发请求,切换日期时调用) */
|
|
29
29
|
export declare function getTimeSlotGrid(module: any, date: string): VenueTimeSlotGrid | null;
|
|
30
|
-
/**
|
|
30
|
+
/** 切换选中/取消一个时段(同一资源下多商品场景必须携带 productId) */
|
|
31
31
|
export declare function toggleSlotAction(module: any, params: {
|
|
32
32
|
resourceId: number;
|
|
33
|
+
productId: number;
|
|
33
34
|
startTime: string;
|
|
34
35
|
endTime: string;
|
|
35
36
|
price: string;
|
|
36
37
|
}): Promise<any>;
|
|
37
|
-
/**
|
|
38
|
-
|
|
38
|
+
/**
|
|
39
|
+
* 查询某个时段是否已被选中
|
|
40
|
+
* 不传 productId 时:该资源下任一商品选中即 true;传了则精确匹配
|
|
41
|
+
*/
|
|
42
|
+
export declare function isSlotSelected(module: any, resourceId: number, startTime: string, productId?: number): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* 询问 OS:该 (resourceId, productId, startTime) 格子是否因其它已选项而应禁用
|
|
45
|
+
* 覆盖:同场地多商品互斥、组合资源 ↔ 子资源联动
|
|
46
|
+
*/
|
|
47
|
+
export declare function isSlotDisabledBySelection(module: any, params: {
|
|
48
|
+
resourceId: number;
|
|
49
|
+
productId: number;
|
|
50
|
+
startTime: string;
|
|
51
|
+
}): boolean;
|
|
39
52
|
/** 获取全部已选时段(按资源分组) */
|
|
40
53
|
export declare function getAllSelectedSlots(module: any): any[];
|
|
41
54
|
/** 查询 otherParams */
|
|
@@ -39,6 +39,7 @@ __export(hooks_exports, {
|
|
|
39
39
|
getOtherParams: () => getOtherParams,
|
|
40
40
|
getSelectedDateKeySet: () => getSelectedDateKeySet,
|
|
41
41
|
getTimeSlotGrid: () => getTimeSlotGrid,
|
|
42
|
+
isSlotDisabledBySelection: () => isSlotDisabledBySelection,
|
|
42
43
|
isSlotSelected: () => isSlotSelected,
|
|
43
44
|
loadVenueProducts: () => loadVenueProducts,
|
|
44
45
|
normalizeEntryContext: () => normalizeEntryContext,
|
|
@@ -110,9 +111,13 @@ function getTimeSlotGrid(module2, date) {
|
|
|
110
111
|
async function toggleSlotAction(module2, params) {
|
|
111
112
|
return safeRunModuleAction(module2, "toggleSlot", params);
|
|
112
113
|
}
|
|
113
|
-
function isSlotSelected(module2, resourceId, startTime) {
|
|
114
|
+
function isSlotSelected(module2, resourceId, startTime, productId) {
|
|
114
115
|
if (!module2 || typeof module2.isSlotSelected !== "function") return false;
|
|
115
|
-
return !!module2.isSlotSelected(resourceId, startTime);
|
|
116
|
+
return !!module2.isSlotSelected(resourceId, startTime, productId);
|
|
117
|
+
}
|
|
118
|
+
function isSlotDisabledBySelection(module2, params) {
|
|
119
|
+
if (!module2 || typeof module2.isSlotDisabledBySelection !== "function") return false;
|
|
120
|
+
return !!module2.isSlotDisabledBySelection(params);
|
|
116
121
|
}
|
|
117
122
|
function getAllSelectedSlots(module2) {
|
|
118
123
|
if (!module2 || typeof module2.getAllSelectedSlots !== "function") return [];
|
|
@@ -212,6 +217,7 @@ function useVenueBookingLogin() {
|
|
|
212
217
|
getOtherParams,
|
|
213
218
|
getSelectedDateKeySet,
|
|
214
219
|
getTimeSlotGrid,
|
|
220
|
+
isSlotDisabledBySelection,
|
|
215
221
|
isSlotSelected,
|
|
216
222
|
loadVenueProducts,
|
|
217
223
|
normalizeEntryContext,
|
|
@@ -16,16 +16,33 @@ export interface VenueBookingEntryContext {
|
|
|
16
16
|
export interface VenueResourceSlot {
|
|
17
17
|
startTime: string;
|
|
18
18
|
endTime: string;
|
|
19
|
-
status: 'past' | 'occupied' | 'available';
|
|
19
|
+
status: 'past' | 'occupied' | 'available' | 'partially_occupied' | 'unavailable';
|
|
20
20
|
price: string | null;
|
|
21
|
+
/** per-product 子行的 slot 带 productId;外层合并 slot 不带 */
|
|
22
|
+
productId?: number;
|
|
23
|
+
}
|
|
24
|
+
/** 多商品共享一个 resource 时的子行 */
|
|
25
|
+
export interface VenueResourceSubRow {
|
|
26
|
+
productId: number;
|
|
27
|
+
productTitle: string;
|
|
28
|
+
price: string;
|
|
29
|
+
slots: VenueResourceSlot[];
|
|
21
30
|
}
|
|
22
31
|
/** 单个资源/场地(来自 getTimeSlotGrid) */
|
|
23
32
|
export interface VenueResource {
|
|
24
33
|
resourceId: number;
|
|
25
34
|
resourceName: string;
|
|
35
|
+
/** 单商品时唯一;多商品时取第一个(兼容字段,请优先使用 products) */
|
|
26
36
|
productId: number;
|
|
27
37
|
productTitle: string;
|
|
28
38
|
slots: VenueResourceSlot[];
|
|
39
|
+
/** 多商品子行;仅当 hasMultipleProducts 时存在 */
|
|
40
|
+
products?: VenueResourceSubRow[];
|
|
41
|
+
hasMultipleProducts?: boolean;
|
|
42
|
+
/** 组合资源元信息(combined_resource.status === 1) */
|
|
43
|
+
combinedResource?: {
|
|
44
|
+
resourceIds: Array<number | string>;
|
|
45
|
+
};
|
|
29
46
|
}
|
|
30
47
|
/** 日期时段网格(来自 getTimeSlotGrid) */
|
|
31
48
|
export interface VenueTimeSlotGrid {
|
|
@@ -162,7 +179,7 @@ export interface VenueBookingContextValue {
|
|
|
162
179
|
setMonthCursor: (cursor: Dayjs) => void;
|
|
163
180
|
setFooterActionText: (text: string) => void;
|
|
164
181
|
/** 切换选中/取消某个时段(调用 OS venueBooking.toggleSlot) */
|
|
165
|
-
toggleSlot: (resourceId: number, slot: VenueResourceSlot) => Promise<void>;
|
|
182
|
+
toggleSlot: (resourceId: number, productId: number, slot: VenueResourceSlot) => Promise<void>;
|
|
166
183
|
/** 刷新 OS 模块视图模型(调用 getSummary + 重建 viewModel),可选传入额外字段合并 */
|
|
167
184
|
refreshViewModel: (extraFields?: Partial<VenueBookingViewModel>) => Promise<void>;
|
|
168
185
|
/** 拉取指定周的资源数据并刷新 dateSummary + timeSlotGrid */
|
package/lib/index.d.ts
CHANGED
|
@@ -55,7 +55,7 @@ export { default as SaasRegister } from './plus/saasRegister';
|
|
|
55
55
|
export { default as SaasCreateOrganization } from './plus/saasCreateOrganization';
|
|
56
56
|
export { default as PinModal } from './components/pinModal';
|
|
57
57
|
export { default as PinVerifyModal } from './components/pinVerifyModal';
|
|
58
|
-
export { OAuthConfig, SaaSAdminAuth, OrgAdminAuth, CustomerAuth, CustomerOAuthConfig, DeviceAuth, POSOperatorAuth, OnlineShopAuth, SaaSManagermentAuth, } from './components/authentication/admin';
|
|
58
|
+
export { ChannelAuthSetting, OAuthConfig, SaaSAdminAuth, OrgAdminAuth, CustomerAuth, CustomerOAuthConfig, DeviceAuth, POSOperatorAuth, OnlineShopAuth, SaaSManagermentAuth, } from './components/authentication/admin';
|
|
59
59
|
export type { SaaSAdminAuthProps, OrgAdminAuthProps, DeviceAuthProps, POSOperatorAuthProps, CustomerOAuthConfigProps, } from './components/authentication/admin';
|
|
60
60
|
export { default as ContactInfo } from './plus/contactInfo';
|
|
61
61
|
export { default as ContactInfoModal } from './plus/contactInfoModal';
|
package/lib/index.js
CHANGED
|
@@ -44,6 +44,7 @@ __export(src_exports, {
|
|
|
44
44
|
BookingPayment: () => import_payments.default,
|
|
45
45
|
BookingResources: () => import_resources.default,
|
|
46
46
|
BookingStartTime: () => import_startTime.default,
|
|
47
|
+
ChannelAuthSetting: () => import_admin.ChannelAuthSetting,
|
|
47
48
|
ClientCard: () => import_clientCard.default,
|
|
48
49
|
ClientSearch: () => import_clinetSearch.default,
|
|
49
50
|
ComprehensiveSearch: () => import_comprehensiveSearch.default,
|
|
@@ -231,6 +232,7 @@ import_dayjs.default.extend(import_localeData.default);
|
|
|
231
232
|
BookingPayment,
|
|
232
233
|
BookingResources,
|
|
233
234
|
BookingStartTime,
|
|
235
|
+
ChannelAuthSetting,
|
|
234
236
|
ClientCard,
|
|
235
237
|
ClientSearch,
|
|
236
238
|
ComprehensiveSearch,
|