@pisell/materials 6.11.37 → 6.11.38

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.
Files changed (512) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +1 -1
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +26 -56
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +26 -56
  11. package/es/components/Pagination/index.d.ts +1 -0
  12. package/es/components/PisellBasicGrid/PisellBasicGrid.d.ts +1 -0
  13. package/es/components/PisellCards/components/GraphicTextCard/GraphicTextCard.d.ts +1 -0
  14. package/es/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardExpand.d.ts +1 -0
  15. package/es/components/PisellCards/components/PisellImageCard/PisellImageCard.d.ts +1 -0
  16. package/es/components/PisellCards/components/PisellImageCard/hooks/useImageLoad.d.ts +1 -0
  17. package/es/components/PisellCards/components/TabCard/TabCard.d.ts +1 -0
  18. package/es/components/PisellCards/components/TextCard/TextCard.d.ts +1 -0
  19. package/es/components/PisellCards/index.d.ts +1 -0
  20. package/es/components/PisellFields/index.d.ts +1 -0
  21. package/es/components/PisellLayouts/index.d.ts +2 -1
  22. package/es/components/appVersionControl/index.d.ts +1 -0
  23. package/es/components/auto-complete-number/index.d.ts +1 -0
  24. package/es/components/badge/index.d.ts +1 -0
  25. package/es/components/batch-editor/fields/index.d.ts +1 -0
  26. package/es/components/batch-editor/index.d.ts +1 -0
  27. package/es/components/calendar/index.d.ts +1 -0
  28. package/es/components/cardPro/index.d.ts +1 -0
  29. package/es/components/checkbox/index.d.ts +1 -0
  30. package/es/components/classicLayout/index.d.ts +1 -0
  31. package/es/components/config-provider/index.d.ts +1 -0
  32. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  33. package/es/components/dataSourceComponents/dataSourceTable/hooks/useDrawerState.d.ts +1 -0
  34. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  35. package/es/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +1 -1
  36. package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  37. package/es/components/dataSourceComponents/fields/Tabs/index.d.ts +1 -1
  38. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -0
  39. package/es/components/dataSourceComponents/fields/index.d.ts +6 -6
  40. package/es/components/date-picker/datePickerCpt.d.ts +1 -0
  41. package/es/components/date-picker/index.d.ts +1 -0
  42. package/es/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
  43. package/es/components/drag-sort-tree/index.d.ts +1 -0
  44. package/es/components/dropdown/index.d.ts +1 -0
  45. package/es/components/filter/index.d.ts +1 -0
  46. package/es/components/list/index.d.ts +1 -0
  47. package/es/components/lowCodePage/index.d.ts +1 -0
  48. package/es/components/page/index.d.ts +1 -0
  49. package/es/components/pisellAdjustPrice/index.d.ts +1 -0
  50. package/es/components/pisellCard/index.d.ts +1 -0
  51. package/es/components/pisellDatePicker/datePickerCpt.d.ts +1 -0
  52. package/es/components/pisellFilter/index.d.ts +1 -0
  53. package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.d.ts +2 -1
  54. package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.js +47 -3
  55. package/es/components/pisellFloorMapLayout/types.d.ts +7 -7
  56. package/es/components/pisellFloorMapLayout/types.js +2 -2
  57. package/es/components/pisellGridPro/GridView/index.d.ts +1 -0
  58. package/es/components/pisellGridPro/components/DataCard/index.d.ts +1 -0
  59. package/es/components/pisellInformationEntry/Scan/index.d.ts +1 -0
  60. package/es/components/pisellInput/components/BankCard/index.d.ts +1 -0
  61. package/es/components/pisellInput/components/Copy/index.d.ts +1 -0
  62. package/es/components/pisellInput/components/SecurityCode/index.d.ts +1 -0
  63. package/es/components/pisellInput/index.d.ts +1 -0
  64. package/es/components/pisellLoading/index.d.ts +1 -0
  65. package/es/components/pisellModal/components/IpadModal/index.d.ts +1 -0
  66. package/es/components/pisellModal/components/MobileModal/index.d.ts +1 -0
  67. package/es/components/pisellModal/components/index.d.ts +1 -0
  68. package/es/components/pisellRecordBoard/index.d.ts +1 -1
  69. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.d.ts +5 -0
  70. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.js +1039 -0
  71. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.less +323 -0
  72. package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +5 -1
  73. package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.js +10 -10
  74. package/es/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.d.ts +23 -0
  75. package/es/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.js +287 -0
  76. package/es/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.d.ts +4 -0
  77. package/es/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.js +28 -0
  78. package/es/components/pisellRecordBoard/shellFrame/Calendar/calendarPersistGuard.d.ts +1 -1
  79. package/es/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.d.ts +36 -0
  80. package/es/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.js +38 -0
  81. package/es/components/pisellRecordBoard/shellFrame/Calendar/index.d.ts +3 -0
  82. package/es/components/pisellRecordBoard/shellFrame/Calendar/index.js +3 -0
  83. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.d.ts +17 -0
  84. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.js +197 -0
  85. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.d.ts +17 -0
  86. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.js +65 -0
  87. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.d.ts +9 -0
  88. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.js +52 -0
  89. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.d.ts +10 -0
  90. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.js +58 -0
  91. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.d.ts +232 -0
  92. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.js +735 -0
  93. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.d.ts +13 -0
  94. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.js +37 -0
  95. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.d.ts +56 -0
  96. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.js +682 -0
  97. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.d.ts +18 -0
  98. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +155 -0
  99. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.d.ts +27 -0
  100. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.js +259 -0
  101. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.d.ts +12 -0
  102. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.js +19 -0
  103. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.d.ts +2 -1
  104. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.js +44 -14
  105. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.d.ts +4 -2
  106. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.js +100 -112
  107. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.d.ts +3 -3
  108. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.js +41 -234
  109. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.d.ts +17 -0
  110. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.js +143 -0
  111. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.d.ts +28 -0
  112. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.js +128 -0
  113. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewport.less +8 -0
  114. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.d.ts +18 -0
  115. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.js +115 -0
  116. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.d.ts +6 -4
  117. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.js +63 -120
  118. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/resourceWallConstants.d.ts +2 -0
  119. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/resourceWallConstants.js +2 -0
  120. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.d.ts +42 -0
  121. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.js +114 -0
  122. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.d.ts +26 -0
  123. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.js +52 -0
  124. package/es/components/pisellRecordBoard/shellFrame/ToolBar/index.js +60 -11
  125. package/es/components/pisellRecordBoard/shellFrame/index.js +34 -7
  126. package/es/components/pisellRecordBoard/types.d.ts +95 -3
  127. package/es/components/pisellRecordBoard/types.js +16 -1
  128. package/es/components/pisellReservationScheduleBand/PisellReservationScheduleBand.less +34 -2
  129. package/es/components/pisellShellFrame/PisellShellFrame.less +5 -2
  130. package/es/components/pisellSort/index.d.ts +1 -0
  131. package/es/components/pisellTooltip/index.d.ts +1 -0
  132. package/es/components/pisellUpload/index.d.ts +1 -0
  133. package/es/components/productCard/cartSkuCard/components/AmountFooter/index.d.ts +1 -0
  134. package/es/components/productCard/cartSkuCard/components/Gift/index.d.ts +1 -0
  135. package/es/components/productCard/cartSkuCard/components/MultiDay/index.d.ts +1 -0
  136. package/es/components/productCard/cartSkuCard/components/Note/index.d.ts +1 -0
  137. package/es/components/productCard/cartSkuCard/components/Promotion/index.d.ts +1 -0
  138. package/es/components/productCard/cartSkuCard/components/discountReason/index.d.ts +1 -0
  139. package/es/components/productCard/cartSkuCard/components/holders/index.d.ts +1 -0
  140. package/es/components/productCard/cartSkuCard/components/packages/index.d.ts +1 -0
  141. package/es/components/productCard/cartSkuCard/components/resources/index.d.ts +1 -0
  142. package/es/components/productCard/cartSkuCard/components/sales/index.d.ts +1 -0
  143. package/es/components/productCard/cartSkuCard/components/specs/index.d.ts +1 -0
  144. package/es/components/productCard/cartSkuCard/components/timeRange/index.d.ts +1 -0
  145. package/es/components/productCard/cartSkuCard/index.d.ts +1 -0
  146. package/es/components/productCard/components/Action/index.d.ts +1 -0
  147. package/es/components/productCard/components/AmountFooter/index.d.ts +1 -0
  148. package/es/components/productCard/components/Divider/index.d.ts +1 -0
  149. package/es/components/productCard/components/Header/DeleteButton/index.d.ts +1 -0
  150. package/es/components/productCard/components/Header/EditButton/index.d.ts +1 -0
  151. package/es/components/productCard/components/Header/index.d.ts +1 -0
  152. package/es/components/productCard/components/MultiDay/index.d.ts +1 -0
  153. package/es/components/productCard/components/Note/index.d.ts +1 -0
  154. package/es/components/productCard/components/Packages/components/collapsibleList/utils.d.ts +1 -0
  155. package/es/components/productCard/components/Packages/components/options/index.d.ts +1 -0
  156. package/es/components/productCard/components/Packages/index.d.ts +1 -0
  157. package/es/components/productCard/components/Sales/index.d.ts +1 -0
  158. package/es/components/productCard/components/Time/components/Like/index.d.ts +1 -0
  159. package/es/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -0
  160. package/es/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +1 -0
  161. package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +1 -0
  162. package/es/components/productCard/components/Time/components/SelectResource/index.d.ts +1 -0
  163. package/es/components/productCard/components/Time/index.d.ts +1 -0
  164. package/es/components/qrcode/index.d.ts +1 -0
  165. package/es/components/radio/index.d.ts +1 -0
  166. package/es/components/segmented/index.d.ts +1 -0
  167. package/es/components/select-time/RightPanel/index.d.ts +1 -0
  168. package/es/components/select-time/index.d.ts +1 -0
  169. package/es/components/skeleton/index.d.ts +1 -0
  170. package/es/components/slider/index.d.ts +1 -0
  171. package/es/components/sort/components/InlineMenu/index.d.ts +1 -0
  172. package/es/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
  173. package/es/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
  174. package/es/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
  175. package/es/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
  176. package/es/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
  177. package/es/components/table/Actions/component/ExportImport/index.d.ts +1 -0
  178. package/es/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
  179. package/es/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
  180. package/es/components/table/Actions/component/Group/index.d.ts +1 -0
  181. package/es/components/table/Actions/component/ViewMode/index.d.ts +1 -0
  182. package/es/components/table/Actions/index.d.ts +1 -0
  183. package/es/components/table/BasicTable/index.d.ts +1 -0
  184. package/es/components/table/Gallery/components/GalleryItem/components/Cover/index.d.ts +1 -0
  185. package/es/components/table/Gallery/components/GalleryItem/components/RenderFields/index.d.ts +1 -0
  186. package/es/components/table/Gallery/components/GalleryItem/components/Title/index.d.ts +1 -0
  187. package/es/components/table/Summary/index.d.ts +1 -0
  188. package/es/components/table/Table/fields/date/Config/index.d.ts +1 -0
  189. package/es/components/table/Table/fields/date/Show/index.d.ts +1 -0
  190. package/es/components/table/Table/fields/date/Sort/index.d.ts +1 -0
  191. package/es/components/table/Table/fields/date/index.d.ts +1 -0
  192. package/es/components/table/Table/fields/image/Config/index.d.ts +1 -0
  193. package/es/components/table/Table/fields/image/Show/index.d.ts +1 -0
  194. package/es/components/table/Table/fields/image/Sort/index.d.ts +1 -0
  195. package/es/components/table/Table/fields/image/index.d.ts +1 -0
  196. package/es/components/table/Table/fields/index.d.ts +1 -0
  197. package/es/components/table/Table/fields/link/Config/index.d.ts +1 -0
  198. package/es/components/table/Table/fields/link/Show/index.d.ts +1 -0
  199. package/es/components/table/Table/fields/link/Sort/index.d.ts +1 -0
  200. package/es/components/table/Table/fields/link/index.d.ts +1 -0
  201. package/es/components/table/Table/fields/number/Config/index.d.ts +1 -0
  202. package/es/components/table/Table/fields/number/Show/index.d.ts +1 -0
  203. package/es/components/table/Table/fields/number/Sort/index.d.ts +1 -0
  204. package/es/components/table/Table/fields/number/index.d.ts +1 -0
  205. package/es/components/table/Table/fields/numberRange/Config/index.d.ts +1 -0
  206. package/es/components/table/Table/fields/numberRange/Show/index.d.ts +1 -0
  207. package/es/components/table/Table/fields/numberRange/Sort/index.d.ts +1 -0
  208. package/es/components/table/Table/fields/numberRange/index.d.ts +1 -0
  209. package/es/components/table/Table/fields/oldRangePicker/Config/index.d.ts +1 -0
  210. package/es/components/table/Table/fields/oldRangePicker/Show/index.d.ts +1 -0
  211. package/es/components/table/Table/fields/oldRangePicker/Sort/index.d.ts +1 -0
  212. package/es/components/table/Table/fields/oldRangePicker/index.d.ts +1 -0
  213. package/es/components/table/Table/fields/pSwitch/Config/index.d.ts +1 -0
  214. package/es/components/table/Table/fields/pSwitch/Show/index.d.ts +1 -0
  215. package/es/components/table/Table/fields/pSwitch/Sort/index.d.ts +1 -0
  216. package/es/components/table/Table/fields/pSwitch/index.d.ts +1 -0
  217. package/es/components/table/Table/fields/rangePicker/Config/index.d.ts +1 -0
  218. package/es/components/table/Table/fields/rangePicker/Show/index.d.ts +1 -0
  219. package/es/components/table/Table/fields/rangePicker/Sort/index.d.ts +1 -0
  220. package/es/components/table/Table/fields/rangePicker/index.d.ts +1 -0
  221. package/es/components/table/Table/fields/search/Config/index.d.ts +1 -0
  222. package/es/components/table/Table/fields/search/Show/index.d.ts +1 -0
  223. package/es/components/table/Table/fields/search/Sort/index.d.ts +1 -0
  224. package/es/components/table/Table/fields/search/index.d.ts +1 -0
  225. package/es/components/table/Table/fields/select/Config/index.d.ts +1 -0
  226. package/es/components/table/Table/fields/select/Show/index.d.ts +1 -0
  227. package/es/components/table/Table/fields/select/Sort/index.d.ts +1 -0
  228. package/es/components/table/Table/fields/select/index.d.ts +1 -0
  229. package/es/components/table/Table/fields/text/Config/index.d.ts +1 -0
  230. package/es/components/table/Table/fields/text/Show/index.d.ts +1 -0
  231. package/es/components/table/Table/fields/text/Sort/index.d.ts +1 -0
  232. package/es/components/table/Table/fields/text/index.d.ts +1 -0
  233. package/es/components/table/Table/fields/treeSelect/Config/index.d.ts +1 -0
  234. package/es/components/table/Table/fields/treeSelect/Show/index.d.ts +1 -0
  235. package/es/components/table/Table/fields/treeSelect/Sort/index.d.ts +1 -0
  236. package/es/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  237. package/es/components/table/Table/tableConfig/SortRow/index.d.ts +1 -0
  238. package/es/components/table/Table/utils.d.ts +1 -1
  239. package/es/components/table/TableFilter/SortIcon.d.ts +1 -0
  240. package/es/components/table/View/index.d.ts +1 -0
  241. package/es/components/time-picker/index.d.ts +1 -0
  242. package/es/components/upload/index.d.ts +1 -0
  243. package/es/components/virtual-keyboard/Amount/index.d.ts +1 -0
  244. package/es/components/virtual-keyboard/Number/index.d.ts +1 -0
  245. package/es/components/virtual-keyboard/Time/utils.d.ts +1 -0
  246. package/es/components/walletCard/Guest/index.d.ts +1 -0
  247. package/es/components/walletCard/Guide/index.d.ts +1 -0
  248. package/es/hooks/useResponsive.d.ts +1 -1
  249. package/es/index.d.ts +1 -1
  250. package/es/locales/en-US.d.ts +74 -0
  251. package/es/locales/en-US.js +75 -0
  252. package/es/locales/ja.d.ts +74 -0
  253. package/es/locales/ja.js +75 -0
  254. package/es/locales/pt.d.ts +74 -0
  255. package/es/locales/pt.js +75 -0
  256. package/es/locales/zh-CN.d.ts +74 -0
  257. package/es/locales/zh-CN.js +75 -0
  258. package/es/locales/zh-TW.d.ts +74 -0
  259. package/es/locales/zh-TW.js +75 -0
  260. package/es/pisell-materials.tw.css +1 -1
  261. package/lib/components/Pagination/index.d.ts +1 -0
  262. package/lib/components/PisellBasicGrid/PisellBasicGrid.d.ts +1 -0
  263. package/lib/components/PisellCards/components/GraphicTextCard/GraphicTextCard.d.ts +1 -0
  264. package/lib/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardExpand.d.ts +1 -0
  265. package/lib/components/PisellCards/components/PisellImageCard/PisellImageCard.d.ts +1 -0
  266. package/lib/components/PisellCards/components/PisellImageCard/hooks/useImageLoad.d.ts +1 -0
  267. package/lib/components/PisellCards/components/TabCard/TabCard.d.ts +1 -0
  268. package/lib/components/PisellCards/components/TextCard/TextCard.d.ts +1 -0
  269. package/lib/components/PisellCards/index.d.ts +1 -0
  270. package/lib/components/PisellFields/index.d.ts +1 -0
  271. package/lib/components/PisellLayouts/index.d.ts +2 -1
  272. package/lib/components/appVersionControl/index.d.ts +1 -0
  273. package/lib/components/auto-complete-number/index.d.ts +1 -0
  274. package/lib/components/badge/index.d.ts +1 -0
  275. package/lib/components/batch-editor/fields/index.d.ts +1 -0
  276. package/lib/components/batch-editor/index.d.ts +1 -0
  277. package/lib/components/calendar/index.d.ts +1 -0
  278. package/lib/components/cardPro/index.d.ts +1 -0
  279. package/lib/components/checkbox/index.d.ts +1 -0
  280. package/lib/components/classicLayout/index.d.ts +1 -0
  281. package/lib/components/config-provider/index.d.ts +1 -0
  282. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  283. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useDrawerState.d.ts +1 -0
  284. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  285. package/lib/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +1 -1
  286. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  287. package/lib/components/dataSourceComponents/fields/Tabs/index.d.ts +1 -1
  288. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -0
  289. package/lib/components/dataSourceComponents/fields/index.d.ts +6 -6
  290. package/lib/components/date-picker/datePickerCpt.d.ts +1 -0
  291. package/lib/components/date-picker/index.d.ts +1 -0
  292. package/lib/components/drag-sort-tree/TreeItem/index.d.ts +1 -0
  293. package/lib/components/drag-sort-tree/index.d.ts +1 -0
  294. package/lib/components/dropdown/index.d.ts +1 -0
  295. package/lib/components/filter/index.d.ts +1 -0
  296. package/lib/components/list/index.d.ts +1 -0
  297. package/lib/components/lowCodePage/index.d.ts +1 -0
  298. package/lib/components/page/index.d.ts +1 -0
  299. package/lib/components/pisellAdjustPrice/index.d.ts +1 -0
  300. package/lib/components/pisellCard/index.d.ts +1 -0
  301. package/lib/components/pisellDatePicker/datePickerCpt.d.ts +1 -0
  302. package/lib/components/pisellFilter/index.d.ts +1 -0
  303. package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.d.ts +2 -1
  304. package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.js +1 -1
  305. package/lib/components/pisellFloorMapLayout/types.d.ts +7 -7
  306. package/lib/components/pisellGridPro/GridView/index.d.ts +1 -0
  307. package/lib/components/pisellGridPro/components/DataCard/index.d.ts +1 -0
  308. package/lib/components/pisellInformationEntry/Scan/index.d.ts +1 -0
  309. package/lib/components/pisellInput/components/BankCard/index.d.ts +1 -0
  310. package/lib/components/pisellInput/components/Copy/index.d.ts +1 -0
  311. package/lib/components/pisellInput/components/SecurityCode/index.d.ts +1 -0
  312. package/lib/components/pisellInput/index.d.ts +1 -0
  313. package/lib/components/pisellLoading/index.d.ts +1 -0
  314. package/lib/components/pisellModal/components/IpadModal/index.d.ts +1 -0
  315. package/lib/components/pisellModal/components/MobileModal/index.d.ts +1 -0
  316. package/lib/components/pisellModal/components/index.d.ts +1 -0
  317. package/lib/components/pisellRecordBoard/index.d.ts +1 -1
  318. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.d.ts +5 -0
  319. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.js +892 -0
  320. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.less +323 -0
  321. package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +5 -1
  322. package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.js +7 -6
  323. package/lib/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.d.ts +23 -0
  324. package/lib/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.js +268 -0
  325. package/lib/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.d.ts +4 -0
  326. package/lib/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.js +53 -0
  327. package/lib/components/pisellRecordBoard/shellFrame/Calendar/calendarPersistGuard.d.ts +1 -1
  328. package/lib/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.d.ts +36 -0
  329. package/lib/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.js +98 -0
  330. package/lib/components/pisellRecordBoard/shellFrame/Calendar/index.d.ts +3 -0
  331. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.d.ts +17 -0
  332. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.js +306 -0
  333. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.d.ts +17 -0
  334. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.js +111 -0
  335. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.d.ts +9 -0
  336. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.js +96 -0
  337. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.d.ts +10 -0
  338. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.js +92 -0
  339. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.d.ts +232 -0
  340. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.js +666 -0
  341. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.d.ts +13 -0
  342. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.js +90 -0
  343. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.d.ts +56 -0
  344. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.js +812 -0
  345. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.d.ts +18 -0
  346. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +219 -0
  347. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.d.ts +27 -0
  348. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.js +352 -0
  349. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.d.ts +12 -0
  350. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.js +57 -0
  351. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.d.ts +2 -1
  352. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.js +44 -9
  353. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.d.ts +4 -2
  354. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.js +54 -129
  355. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.d.ts +3 -3
  356. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.js +36 -178
  357. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.d.ts +17 -0
  358. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.js +163 -0
  359. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.d.ts +28 -0
  360. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.js +136 -0
  361. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewport.less +8 -0
  362. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.d.ts +18 -0
  363. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.js +175 -0
  364. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.d.ts +6 -4
  365. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.js +61 -88
  366. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/resourceWallConstants.d.ts +2 -0
  367. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/resourceWallConstants.js +29 -0
  368. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.d.ts +42 -0
  369. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.js +139 -0
  370. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.d.ts +26 -0
  371. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.js +30 -2
  372. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/index.js +47 -4
  373. package/lib/components/pisellRecordBoard/shellFrame/index.js +29 -13
  374. package/lib/components/pisellRecordBoard/types.d.ts +95 -3
  375. package/lib/components/pisellReservationScheduleBand/PisellReservationScheduleBand.less +34 -2
  376. package/lib/components/pisellShellFrame/PisellShellFrame.less +5 -2
  377. package/lib/components/pisellSort/index.d.ts +1 -0
  378. package/lib/components/pisellTooltip/index.d.ts +1 -0
  379. package/lib/components/pisellUpload/index.d.ts +1 -0
  380. package/lib/components/productCard/cartSkuCard/components/AmountFooter/index.d.ts +1 -0
  381. package/lib/components/productCard/cartSkuCard/components/Gift/index.d.ts +1 -0
  382. package/lib/components/productCard/cartSkuCard/components/MultiDay/index.d.ts +1 -0
  383. package/lib/components/productCard/cartSkuCard/components/Note/index.d.ts +1 -0
  384. package/lib/components/productCard/cartSkuCard/components/Promotion/index.d.ts +1 -0
  385. package/lib/components/productCard/cartSkuCard/components/discountReason/index.d.ts +1 -0
  386. package/lib/components/productCard/cartSkuCard/components/holders/index.d.ts +1 -0
  387. package/lib/components/productCard/cartSkuCard/components/packages/index.d.ts +1 -0
  388. package/lib/components/productCard/cartSkuCard/components/resources/index.d.ts +1 -0
  389. package/lib/components/productCard/cartSkuCard/components/sales/index.d.ts +1 -0
  390. package/lib/components/productCard/cartSkuCard/components/specs/index.d.ts +1 -0
  391. package/lib/components/productCard/cartSkuCard/components/timeRange/index.d.ts +1 -0
  392. package/lib/components/productCard/cartSkuCard/index.d.ts +1 -0
  393. package/lib/components/productCard/components/Action/index.d.ts +1 -0
  394. package/lib/components/productCard/components/AmountFooter/index.d.ts +1 -0
  395. package/lib/components/productCard/components/Divider/index.d.ts +1 -0
  396. package/lib/components/productCard/components/Header/DeleteButton/index.d.ts +1 -0
  397. package/lib/components/productCard/components/Header/EditButton/index.d.ts +1 -0
  398. package/lib/components/productCard/components/Header/index.d.ts +1 -0
  399. package/lib/components/productCard/components/MultiDay/index.d.ts +1 -0
  400. package/lib/components/productCard/components/Note/index.d.ts +1 -0
  401. package/lib/components/productCard/components/Packages/components/collapsibleList/utils.d.ts +1 -0
  402. package/lib/components/productCard/components/Packages/components/options/index.d.ts +1 -0
  403. package/lib/components/productCard/components/Packages/index.d.ts +1 -0
  404. package/lib/components/productCard/components/Sales/index.d.ts +1 -0
  405. package/lib/components/productCard/components/Time/components/Like/index.d.ts +1 -0
  406. package/lib/components/productCard/components/Time/components/SelectHolder/index.d.ts +1 -0
  407. package/lib/components/productCard/components/Time/components/SelectHolderModal/index.d.ts +1 -0
  408. package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +1 -0
  409. package/lib/components/productCard/components/Time/components/SelectResource/index.d.ts +1 -0
  410. package/lib/components/productCard/components/Time/index.d.ts +1 -0
  411. package/lib/components/qrcode/index.d.ts +1 -0
  412. package/lib/components/radio/index.d.ts +1 -0
  413. package/lib/components/segmented/index.d.ts +1 -0
  414. package/lib/components/select-time/RightPanel/index.d.ts +1 -0
  415. package/lib/components/select-time/index.d.ts +1 -0
  416. package/lib/components/skeleton/index.d.ts +1 -0
  417. package/lib/components/slider/index.d.ts +1 -0
  418. package/lib/components/sort/components/InlineMenu/index.d.ts +1 -0
  419. package/lib/components/table/Actions/component/ColumnsSetting/index.d.ts +1 -0
  420. package/lib/components/table/Actions/component/ExportImport/components/ExportFile/index.d.ts +1 -0
  421. package/lib/components/table/Actions/component/ExportImport/components/ExportTable/index.d.ts +1 -0
  422. package/lib/components/table/Actions/component/ExportImport/components/ImportLog/index.d.ts +1 -0
  423. package/lib/components/table/Actions/component/ExportImport/components/ImportTable/index.d.ts +1 -0
  424. package/lib/components/table/Actions/component/ExportImport/index.d.ts +1 -0
  425. package/lib/components/table/Actions/component/GallerySetting/index.d.ts +1 -0
  426. package/lib/components/table/Actions/component/Group/PopoverContent.d.ts +1 -0
  427. package/lib/components/table/Actions/component/Group/index.d.ts +1 -0
  428. package/lib/components/table/Actions/component/ViewMode/index.d.ts +1 -0
  429. package/lib/components/table/Actions/index.d.ts +1 -0
  430. package/lib/components/table/BasicTable/index.d.ts +1 -0
  431. package/lib/components/table/Gallery/components/GalleryItem/components/Cover/index.d.ts +1 -0
  432. package/lib/components/table/Gallery/components/GalleryItem/components/RenderFields/index.d.ts +1 -0
  433. package/lib/components/table/Gallery/components/GalleryItem/components/Title/index.d.ts +1 -0
  434. package/lib/components/table/Summary/index.d.ts +1 -0
  435. package/lib/components/table/Table/fields/date/Config/index.d.ts +1 -0
  436. package/lib/components/table/Table/fields/date/Show/index.d.ts +1 -0
  437. package/lib/components/table/Table/fields/date/Sort/index.d.ts +1 -0
  438. package/lib/components/table/Table/fields/date/index.d.ts +1 -0
  439. package/lib/components/table/Table/fields/image/Config/index.d.ts +1 -0
  440. package/lib/components/table/Table/fields/image/Show/index.d.ts +1 -0
  441. package/lib/components/table/Table/fields/image/Sort/index.d.ts +1 -0
  442. package/lib/components/table/Table/fields/image/index.d.ts +1 -0
  443. package/lib/components/table/Table/fields/index.d.ts +1 -0
  444. package/lib/components/table/Table/fields/link/Config/index.d.ts +1 -0
  445. package/lib/components/table/Table/fields/link/Show/index.d.ts +1 -0
  446. package/lib/components/table/Table/fields/link/Sort/index.d.ts +1 -0
  447. package/lib/components/table/Table/fields/link/index.d.ts +1 -0
  448. package/lib/components/table/Table/fields/number/Config/index.d.ts +1 -0
  449. package/lib/components/table/Table/fields/number/Show/index.d.ts +1 -0
  450. package/lib/components/table/Table/fields/number/Sort/index.d.ts +1 -0
  451. package/lib/components/table/Table/fields/number/index.d.ts +1 -0
  452. package/lib/components/table/Table/fields/numberRange/Config/index.d.ts +1 -0
  453. package/lib/components/table/Table/fields/numberRange/Show/index.d.ts +1 -0
  454. package/lib/components/table/Table/fields/numberRange/Sort/index.d.ts +1 -0
  455. package/lib/components/table/Table/fields/numberRange/index.d.ts +1 -0
  456. package/lib/components/table/Table/fields/oldRangePicker/Config/index.d.ts +1 -0
  457. package/lib/components/table/Table/fields/oldRangePicker/Show/index.d.ts +1 -0
  458. package/lib/components/table/Table/fields/oldRangePicker/Sort/index.d.ts +1 -0
  459. package/lib/components/table/Table/fields/oldRangePicker/index.d.ts +1 -0
  460. package/lib/components/table/Table/fields/pSwitch/Config/index.d.ts +1 -0
  461. package/lib/components/table/Table/fields/pSwitch/Show/index.d.ts +1 -0
  462. package/lib/components/table/Table/fields/pSwitch/Sort/index.d.ts +1 -0
  463. package/lib/components/table/Table/fields/pSwitch/index.d.ts +1 -0
  464. package/lib/components/table/Table/fields/rangePicker/Config/index.d.ts +1 -0
  465. package/lib/components/table/Table/fields/rangePicker/Show/index.d.ts +1 -0
  466. package/lib/components/table/Table/fields/rangePicker/Sort/index.d.ts +1 -0
  467. package/lib/components/table/Table/fields/rangePicker/index.d.ts +1 -0
  468. package/lib/components/table/Table/fields/search/Config/index.d.ts +1 -0
  469. package/lib/components/table/Table/fields/search/Show/index.d.ts +1 -0
  470. package/lib/components/table/Table/fields/search/Sort/index.d.ts +1 -0
  471. package/lib/components/table/Table/fields/search/index.d.ts +1 -0
  472. package/lib/components/table/Table/fields/select/Config/index.d.ts +1 -0
  473. package/lib/components/table/Table/fields/select/Show/index.d.ts +1 -0
  474. package/lib/components/table/Table/fields/select/Sort/index.d.ts +1 -0
  475. package/lib/components/table/Table/fields/select/index.d.ts +1 -0
  476. package/lib/components/table/Table/fields/text/Config/index.d.ts +1 -0
  477. package/lib/components/table/Table/fields/text/Show/index.d.ts +1 -0
  478. package/lib/components/table/Table/fields/text/Sort/index.d.ts +1 -0
  479. package/lib/components/table/Table/fields/text/index.d.ts +1 -0
  480. package/lib/components/table/Table/fields/treeSelect/Config/index.d.ts +1 -0
  481. package/lib/components/table/Table/fields/treeSelect/Show/index.d.ts +1 -0
  482. package/lib/components/table/Table/fields/treeSelect/Sort/index.d.ts +1 -0
  483. package/lib/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  484. package/lib/components/table/Table/tableConfig/SortRow/index.d.ts +1 -0
  485. package/lib/components/table/Table/utils.d.ts +1 -1
  486. package/lib/components/table/TableFilter/SortIcon.d.ts +1 -0
  487. package/lib/components/table/View/index.d.ts +1 -0
  488. package/lib/components/time-picker/index.d.ts +1 -0
  489. package/lib/components/upload/index.d.ts +1 -0
  490. package/lib/components/virtual-keyboard/Amount/index.d.ts +1 -0
  491. package/lib/components/virtual-keyboard/Number/index.d.ts +1 -0
  492. package/lib/components/virtual-keyboard/Time/utils.d.ts +1 -0
  493. package/lib/components/walletCard/Guest/index.d.ts +1 -0
  494. package/lib/components/walletCard/Guide/index.d.ts +1 -0
  495. package/lib/hooks/useResponsive.d.ts +1 -1
  496. package/lib/index.d.ts +1 -1
  497. package/lib/locales/en-US.d.ts +74 -0
  498. package/lib/locales/en-US.js +75 -0
  499. package/lib/locales/ja.d.ts +74 -0
  500. package/lib/locales/ja.js +75 -0
  501. package/lib/locales/pt.d.ts +74 -0
  502. package/lib/locales/pt.js +75 -0
  503. package/lib/locales/zh-CN.d.ts +74 -0
  504. package/lib/locales/zh-CN.js +75 -0
  505. package/lib/locales/zh-TW.d.ts +74 -0
  506. package/lib/locales/zh-TW.js +75 -0
  507. package/lib/pisell-materials.tw.css +1 -1
  508. package/package.json +1 -2
  509. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.d.ts +0 -3
  510. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.js +0 -6233
  511. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.d.ts +0 -3
  512. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.js +0 -7079
@@ -0,0 +1,892 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.tsx
30
+ var BookingCalendar_exports = {};
31
+ __export(BookingCalendar_exports, {
32
+ default: () => BookingCalendar
33
+ });
34
+ module.exports = __toCommonJS(BookingCalendar_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_antd = require("antd");
37
+ var import_icons = require("@ant-design/icons");
38
+ var import_utils = require("../../../pisellTimeNavigator/utils");
39
+ var import_calendarPersistGuard = require("./calendarPersistGuard");
40
+ var import_bookingCalendarConstants = require("./const/bookingCalendarConstants");
41
+ var import_bookingCalendarDateUtils = require("./utils/bookingCalendarDateUtils");
42
+ var import_MoveConfirmModal = require("./modal/MoveConfirmModal");
43
+ var import_OverflowListModal = require("./modal/OverflowListModal");
44
+ var import_bookingCalendarViewShared = require("./bookingCalendarViewShared");
45
+ var import_calendarI18n = require("./calendarI18n");
46
+ var import_BookingCalendarMonthView = require("./view/BookingCalendarMonthView");
47
+ var import_BookingCalendarWeekView = require("./view/BookingCalendarWeekView");
48
+ var import_BookingCalendarDayView = require("./view/BookingCalendarDayView");
49
+ var import_BookingCalendar = require("./BookingCalendar.less");
50
+ var { RangePicker } = import_antd.DatePicker;
51
+ function BookingCalendar(props = {}) {
52
+ const allowPersist = (0, import_calendarPersistGuard.useCalendarPersist)();
53
+ const courts = (0, import_react.useMemo)(() => {
54
+ const r = props.resources;
55
+ if (Array.isArray(r) && r.length > 0) {
56
+ const mapped = r.filter(
57
+ (x) => x && x.id !== void 0 && x.id !== null && String(x.id).trim() !== ""
58
+ ).map((x) => ({
59
+ id: String(x.id),
60
+ name: x.name != null && String(x.name).trim() !== "" ? String(x.name) : String(x.id),
61
+ type: x.groupType && String(x.groupType).trim() !== "" ? String(x.groupType) : (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.resourceFallback")
62
+ }));
63
+ if (mapped.length > 0) return mapped;
64
+ }
65
+ return [];
66
+ }, [props.resources]);
67
+ const isLight = props.appearance === "light";
68
+ const [internalView, setInternalView] = (0, import_react.useState)("month");
69
+ const [internalAnchor, setInternalAnchor] = (0, import_react.useState)(() => /* @__PURE__ */ new Date());
70
+ const view = props.calendarView != null ? props.calendarView : internalView;
71
+ const linkedAnchorMs = props.anchorDate != null ? props.anchorDate.getTime() : null;
72
+ const anchorDate = (0, import_react.useMemo)(() => {
73
+ if (props.anchorDate != null) {
74
+ return new Date(props.anchorDate);
75
+ }
76
+ return internalAnchor;
77
+ }, [linkedAnchorMs, internalAnchor]);
78
+ const resolvedSlotMinutes = (0, import_react.useMemo)(() => {
79
+ const raw = props.slotStepMinutes ?? 60;
80
+ const n = Math.round(Number(raw));
81
+ if (!Number.isFinite(n) || n < 1) return 60;
82
+ return Math.min(24 * 60, n);
83
+ }, [props.slotStepMinutes]);
84
+ const slotStepHours = resolvedSlotMinutes / 60;
85
+ const slotColWidth = import_bookingCalendarConstants.dayColWidth;
86
+ const timelinePxPerHour = import_bookingCalendarConstants.dayColWidth / slotStepHours;
87
+ const commitView = (v) => {
88
+ var _a;
89
+ (_a = props.onCalendarViewChange) == null ? void 0 : _a.call(props, v);
90
+ if (!props.onCalendarViewChange) {
91
+ setInternalView(v);
92
+ }
93
+ };
94
+ const commitAnchor = (d) => {
95
+ var _a;
96
+ (_a = props.onAnchorDateChange) == null ? void 0 : _a.call(props, d);
97
+ if (!props.onAnchorDateChange) {
98
+ setInternalAnchor(d);
99
+ }
100
+ };
101
+ const [internalBookings, setBookings] = (0, import_react.useState)([]);
102
+ const isControlledBookings = props.bookings != null;
103
+ const bookings = isControlledBookings ? props.bookings : internalBookings;
104
+ (0, import_react.useEffect)(() => {
105
+ if (!props.onViewportChange) return;
106
+ const a = new Date(anchorDate);
107
+ let rangeStart;
108
+ let rangeEnd;
109
+ if (view === "month") {
110
+ rangeStart = new Date(a.getFullYear(), a.getMonth(), 1);
111
+ rangeEnd = new Date(a.getFullYear(), a.getMonth() + 1, 0);
112
+ } else if (view === "week") {
113
+ rangeStart = (0, import_bookingCalendarDateUtils.startOfWeek)(a);
114
+ rangeEnd = (0, import_bookingCalendarDateUtils.addDays)(rangeStart, 6);
115
+ } else {
116
+ rangeStart = new Date(a);
117
+ rangeEnd = new Date(a);
118
+ }
119
+ props.onViewportChange({
120
+ view,
121
+ anchorDate: a,
122
+ rangeStart,
123
+ rangeEnd
124
+ });
125
+ }, [view, anchorDate, props.onViewportChange]);
126
+ const [selectedFreeSlots, setSelectedFreeSlots] = (0, import_react.useState)([]);
127
+ const [selectedBlockSlots, setSelectedBlockSlots] = (0, import_react.useState)([]);
128
+ const [focusedCourtId, setFocusedCourtId] = (0, import_react.useState)(null);
129
+ const [showBlockPanel, setShowBlockPanel] = (0, import_react.useState)(false);
130
+ const [blockFormName, setBlockFormName] = (0, import_react.useState)(
131
+ () => (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.defaultTitle")
132
+ );
133
+ const [blockModalNote, setBlockModalNote] = (0, import_react.useState)("");
134
+ const [blockResourceId, setBlockResourceId] = (0, import_react.useState)("");
135
+ const [blockTimeRange, setBlockTimeRange] = (0, import_react.useState)(null);
136
+ const [blockSaving, setBlockSaving] = (0, import_react.useState)(false);
137
+ const [transitioningToDay, setTransitioningToDay] = (0, import_react.useState)(null);
138
+ const [navDirection, setNavDirection] = (0, import_react.useState)(0);
139
+ const [overflowPopover, setOverflowPopover] = (0, import_react.useState)(null);
140
+ const [overflowListModal, setOverflowListModal] = (0, import_react.useState)(null);
141
+ const [draggingItem, setDraggingItem] = (0, import_react.useState)(null);
142
+ const [moveConfirm, setMoveConfirm] = (0, import_react.useState)(null);
143
+ const [moveDraft, setMoveDraft] = (0, import_react.useState)(null);
144
+ const [collapsedGroups, setCollapsedGroups] = (0, import_react.useState)({
145
+ VIP: false,
146
+ Standard: false
147
+ });
148
+ const blockPanelRef = (0, import_react.useRef)(null);
149
+ const overflowPanelRef = (0, import_react.useRef)(null);
150
+ const moveConfirmRef = (0, import_react.useRef)(null);
151
+ const visibleCourts = (0, import_react.useMemo)(() => courts, [courts]);
152
+ const visibleCourtRows = (0, import_react.useMemo)(
153
+ () => (0, import_bookingCalendarViewShared.buildGroupedCourtRows)(visibleCourts, collapsedGroups),
154
+ [visibleCourts, collapsedGroups]
155
+ );
156
+ const dayKey = (0, import_bookingCalendarDateUtils.fmtDate)(anchorDate);
157
+ const hourSlots = (0, import_react.useMemo)(
158
+ () => (0, import_utils.buildCalendarTimelineSlotStartsFromRange)(
159
+ props.timelineRange ?? import_bookingCalendarConstants.DEFAULT_CALENDAR_TIMELINE,
160
+ anchorDate,
161
+ resolvedSlotMinutes
162
+ ),
163
+ [props.timelineRange, anchorDate, resolvedSlotMinutes]
164
+ );
165
+ const {
166
+ dayRowHeights,
167
+ dayRowTopMap,
168
+ overlayBookings,
169
+ courtDayDisplayLaneCount,
170
+ hiddenDayOverlayIdSet,
171
+ dayOverlayOverflowPluses
172
+ } = (0, import_react.useMemo)(() => {
173
+ const defaultHeights = visibleCourtRows.map(
174
+ (row) => row.kind === "group" ? import_bookingCalendarConstants.groupRowHeight : import_bookingCalendarConstants.dayRowHeight
175
+ );
176
+ let tops = (0, import_bookingCalendarDateUtils.buildDayRowTopMap)(visibleCourtRows, defaultHeights);
177
+ let overlays = (0, import_bookingCalendarDateUtils.buildOverlayBookings)(
178
+ visibleCourtRows,
179
+ dayKey,
180
+ bookings,
181
+ tops,
182
+ hourSlots,
183
+ defaultHeights,
184
+ slotStepHours
185
+ );
186
+ const expandedHeights = visibleCourtRows.map(
187
+ (row, i) => {
188
+ if (row.kind !== "court") return defaultHeights[i];
189
+ const lc = (0, import_bookingCalendarDateUtils.maxConcurrentBookingsOnCourt)(overlays, row.id);
190
+ const displayLc = (0, import_bookingCalendarDateUtils.effectiveDayOverlayDisplayLaneCount)(lc);
191
+ if (displayLc <= 1) return import_bookingCalendarConstants.dayRowHeight;
192
+ const need = import_bookingCalendarConstants.DAY_OVERLAY_INNER_TOP + import_bookingCalendarConstants.DAY_OVERLAY_INNER_BOTTOM + displayLc * import_bookingCalendarConstants.DAY_OVERLAY_LANE_MIN_PX + (displayLc - 1) * import_bookingCalendarConstants.DAY_OVERLAY_LANE_GAP;
193
+ return Math.max(import_bookingCalendarConstants.dayRowHeight, need);
194
+ }
195
+ );
196
+ const tops2 = (0, import_bookingCalendarDateUtils.buildDayRowTopMap)(visibleCourtRows, expandedHeights);
197
+ overlays = (0, import_bookingCalendarDateUtils.buildOverlayBookings)(
198
+ visibleCourtRows,
199
+ dayKey,
200
+ bookings,
201
+ tops2,
202
+ hourSlots,
203
+ expandedHeights,
204
+ slotStepHours
205
+ );
206
+ const courtDayDisplayLaneCount2 = {};
207
+ const hiddenDayOverlayIdSet2 = /* @__PURE__ */ new Set();
208
+ const dayOverlayOverflowPluses2 = [];
209
+ for (const row of visibleCourtRows) {
210
+ if (row.kind !== "court") continue;
211
+ const cid = row.id;
212
+ const rawLc = (0, import_bookingCalendarDateUtils.maxConcurrentBookingsOnCourt)(overlays, cid);
213
+ courtDayDisplayLaneCount2[cid] = (0, import_bookingCalendarDateUtils.effectiveDayOverlayDisplayLaneCount)(rawLc);
214
+ const clusters = (0, import_bookingCalendarDateUtils.clusterDayCourtOverlaysByOverlap)(overlays, cid);
215
+ for (const cluster of clusters) {
216
+ if (cluster.length <= import_bookingCalendarConstants.DAY_OVERLAY_VISIBLE_BOOKING_CAP) continue;
217
+ const sortedByLane = [...cluster].sort(
218
+ (a, b) => (a.lane ?? 0) - (b.lane ?? 0) || a.start - b.start
219
+ );
220
+ for (let i = import_bookingCalendarConstants.DAY_OVERLAY_VISIBLE_BOOKING_CAP; i < sortedByLane.length; i++) {
221
+ const o = sortedByLane[i];
222
+ hiddenDayOverlayIdSet2.add(
223
+ (0, import_bookingCalendarDateUtils.dayOverlayHiddenKey)(o.item, dayKey, o.courtId)
224
+ );
225
+ }
226
+ const hidden = sortedByLane.slice(import_bookingCalendarConstants.DAY_OVERLAY_VISIBLE_BOOKING_CAP);
227
+ let minS = Infinity;
228
+ let maxE = -Infinity;
229
+ for (const o of cluster) {
230
+ minS = Math.min(minS, o.start);
231
+ maxE = Math.max(maxE, o.start + o.span);
232
+ }
233
+ const anchor = hidden[0];
234
+ dayOverlayOverflowPluses2.push({
235
+ key: `${cid}-${minS}-${maxE}-${dayKey}`,
236
+ courtId: cid,
237
+ rowTop: anchor.rowTop,
238
+ rowHeight: anchor.rowHeight,
239
+ start: minS,
240
+ span: maxE - minS,
241
+ plusCount: hidden.length,
242
+ overflowItems: hidden.map((o) => o.item)
243
+ });
244
+ }
245
+ }
246
+ return {
247
+ dayRowHeights: expandedHeights,
248
+ dayRowTopMap: tops2,
249
+ overlayBookings: overlays,
250
+ courtDayDisplayLaneCount: courtDayDisplayLaneCount2,
251
+ hiddenDayOverlayIdSet: hiddenDayOverlayIdSet2,
252
+ dayOverlayOverflowPluses: dayOverlayOverflowPluses2
253
+ };
254
+ }, [visibleCourtRows, dayKey, bookings, hourSlots, slotStepHours]);
255
+ const weekDays = (0, import_react.useMemo)(() => (0, import_bookingCalendarDateUtils.rangeDays)(anchorDate), [anchorDate]);
256
+ const selectedWeekKeys = (0, import_react.useMemo)(
257
+ () => new Set(weekDays.map((d) => (0, import_bookingCalendarDateUtils.fmtDate)(d))),
258
+ [weekDays]
259
+ );
260
+ const firstTimelineHour = hourSlots[0] ?? 0;
261
+ const endTimelineExclusive = hourSlots.length ? hourSlots[hourSlots.length - 1] + slotStepHours : 24;
262
+ const isBusinessHour = (h) => (0, import_bookingCalendarDateUtils.isHourInTimelineSlots)(h, hourSlots);
263
+ const monthDays = (0, import_react.useMemo)(
264
+ () => (0, import_bookingCalendarDateUtils.monthGrid)(anchorDate, bookings, courts, hourSlots, slotStepHours),
265
+ [anchorDate, bookings, courts, hourSlots, slotStepHours]
266
+ );
267
+ const dayRowRemainingByCourt = (0, import_react.useMemo)(() => {
268
+ const total = hourSlots.length;
269
+ return Object.fromEntries(
270
+ visibleCourtRows.filter((row) => row.kind === "court").map((court) => {
271
+ const occupied = hourSlots.filter(
272
+ (hour) => isBusinessHour(hour) && (0, import_bookingCalendarDateUtils.dayOccupancy)(
273
+ court.id,
274
+ dayKey,
275
+ bookings,
276
+ hourSlots,
277
+ slotStepHours
278
+ )[hour]
279
+ ).length;
280
+ const remaining = Math.max(0, total - occupied);
281
+ const ratio = total > 0 ? remaining / total : 0;
282
+ return [court.id, { remaining, total, ratio }];
283
+ })
284
+ );
285
+ }, [visibleCourtRows, dayKey, bookings, hourSlots, slotStepHours]);
286
+ const dayHourRemaining = (0, import_react.useMemo)(() => {
287
+ const total = visibleCourts.length;
288
+ return Object.fromEntries(
289
+ hourSlots.map((hour) => {
290
+ if (!isBusinessHour(hour))
291
+ return [hour, { remaining: 0, total, ratio: 0 }];
292
+ const remaining = visibleCourts.filter(
293
+ (court) => !(0, import_bookingCalendarDateUtils.dayOccupancy)(
294
+ court.id,
295
+ dayKey,
296
+ bookings,
297
+ hourSlots,
298
+ slotStepHours
299
+ )[hour]
300
+ ).length;
301
+ const ratio = total > 0 ? remaining / total : 0;
302
+ return [hour, { remaining, total, ratio }];
303
+ })
304
+ );
305
+ }, [visibleCourts, dayKey, bookings, hourSlots, slotStepHours]);
306
+ const dayContentHeight = import_bookingCalendarConstants.dayHeaderHeight + dayRowHeights.reduce((sum, h) => sum + h, 0);
307
+ (0, import_react.useEffect)(() => {
308
+ function handleOutside(e) {
309
+ const target = e.target;
310
+ if (!(target instanceof Node)) return;
311
+ if (showBlockPanel && blockPanelRef.current && !blockPanelRef.current.contains(target))
312
+ setShowBlockPanel(false);
313
+ if (overflowPopover && overflowPanelRef.current && !overflowPanelRef.current.contains(target))
314
+ setOverflowPopover(null);
315
+ if (overflowListModal && overflowPanelRef.current && !overflowPanelRef.current.contains(target))
316
+ setOverflowListModal(null);
317
+ if (moveConfirm && moveConfirmRef.current && !moveConfirmRef.current.contains(target))
318
+ setMoveConfirm(null);
319
+ }
320
+ document.addEventListener("mousedown", handleOutside);
321
+ return () => document.removeEventListener("mousedown", handleOutside);
322
+ }, [showBlockPanel, overflowPopover, overflowListModal, moveConfirm]);
323
+ (0, import_react.useEffect)(() => {
324
+ if (!showBlockPanel) return;
325
+ if (!(0, import_bookingCalendarDateUtils.isFreeSelectionContiguousSameResource)(selectedFreeSlots, slotStepHours)) {
326
+ setShowBlockPanel(false);
327
+ }
328
+ }, [showBlockPanel, selectedFreeSlots, slotStepHours]);
329
+ (0, import_react.useEffect)(() => {
330
+ if (props.onBlockedTimePanelRequest) return;
331
+ if (!showBlockPanel || selectedFreeSlots.length === 0) return;
332
+ const groups = (0, import_bookingCalendarDateUtils.groupSelectedSlots)(selectedFreeSlots, slotStepHours);
333
+ const g = groups[0];
334
+ if (!g) return;
335
+ setBlockResourceId(String(g.courtId));
336
+ setBlockTimeRange([
337
+ (0, import_bookingCalendarDateUtils.dayAndHourToDayjs)(g.date, g.startHour),
338
+ (0, import_bookingCalendarDateUtils.dayAndHourToDayjs)(g.date, g.endHour)
339
+ ]);
340
+ setBlockFormName((0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.defaultTitle"));
341
+ setBlockModalNote("");
342
+ }, [showBlockPanel, selectedFreeSlots, slotStepHours]);
343
+ (0, import_react.useEffect)(() => {
344
+ if (!transitioningToDay) return;
345
+ const timer = setTimeout(() => setTransitioningToDay(null), 280);
346
+ return () => clearTimeout(timer);
347
+ }, [transitioningToDay]);
348
+ function isFreeSelected(courtId, hour) {
349
+ return selectedFreeSlots.some(
350
+ (slot) => slot.courtId === courtId && slot.date === dayKey && slot.hour === hour
351
+ );
352
+ }
353
+ function isBlockSelected(courtId, hour) {
354
+ return selectedBlockSlots.some(
355
+ (slot) => slot.courtId === courtId && slot.date === dayKey && slot.hour === hour
356
+ );
357
+ }
358
+ function goToDayFromCell(day, courtId, source) {
359
+ setNavDirection(day > anchorDate ? 1 : -1);
360
+ setTransitioningToDay({ source });
361
+ commitAnchor(day);
362
+ setFocusedCourtId(courtId || null);
363
+ commitView("day");
364
+ }
365
+ function openBookingDetail(item) {
366
+ var _a;
367
+ if (((_a = props.onBookingClick) == null ? void 0 : _a.call(props, item)) === true) {
368
+ return;
369
+ }
370
+ setOverflowPopover(null);
371
+ }
372
+ function toggleSlot(courtId, hour) {
373
+ const existing = (0, import_bookingCalendarDateUtils.dayOccupancy)(
374
+ courtId,
375
+ dayKey,
376
+ bookings,
377
+ hourSlots,
378
+ slotStepHours
379
+ )[hour];
380
+ const court = courts.find((c) => c.id === courtId);
381
+ const slot = {
382
+ courtId,
383
+ court: court == null ? void 0 : court.name,
384
+ date: dayKey,
385
+ hour
386
+ };
387
+ if (!existing) {
388
+ setSelectedFreeSlots(
389
+ (prev) => prev.some((s) => (0, import_bookingCalendarDateUtils.sameSlot)(s, slot)) ? prev.filter((s) => !(0, import_bookingCalendarDateUtils.sameSlot)(s, slot)) : [...prev, slot]
390
+ );
391
+ return;
392
+ }
393
+ if (existing.kind === "block") {
394
+ setSelectedBlockSlots(
395
+ (prev) => prev.some((s) => (0, import_bookingCalendarDateUtils.sameSlot)(s, slot)) ? prev.filter((s) => !(0, import_bookingCalendarDateUtils.sameSlot)(s, slot)) : [...prev, slot]
396
+ );
397
+ }
398
+ }
399
+ function deselectAll() {
400
+ setSelectedFreeSlots([]);
401
+ setSelectedBlockSlots([]);
402
+ }
403
+ function createBookingFromSelection() {
404
+ if (!allowPersist("createBooking")) return;
405
+ if (selectedFreeSlots.length === 0) return;
406
+ const groups = (0, import_bookingCalendarDateUtils.groupSelectedSlots)(selectedFreeSlots, slotStepHours);
407
+ const newBookings = groups.map(
408
+ (slot, idx) => ({
409
+ id: `new-${slot.courtId}-${slot.date}-${slot.startHour}-${idx}`,
410
+ courtId: slot.courtId,
411
+ date: slot.date,
412
+ startHour: slot.startHour,
413
+ endHour: slot.endHour,
414
+ name: (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.newBookingName"),
415
+ kind: "booking"
416
+ })
417
+ );
418
+ setBookings((prev) => [...newBookings, ...prev]);
419
+ setSelectedFreeSlots([]);
420
+ }
421
+ function openSelectedBlocks() {
422
+ if (!allowPersist("removeBlocks")) return;
423
+ if (selectedBlockSlots.length === 0) return;
424
+ const selectedSet = new Set(
425
+ selectedBlockSlots.map((s) => `${s.courtId}-${s.date}-${s.hour}`)
426
+ );
427
+ setBookings(
428
+ (prev) => prev.filter((item) => {
429
+ if (item.kind !== "block") return true;
430
+ const seg = (0, import_bookingCalendarDateUtils.getBookingSegmentForDate)(item, item.date);
431
+ const hoursInItem = hourSlots.filter(
432
+ (slotStart) => slotStart >= item.startHour - 1e-9 && slotStart < item.endHour - 1e-9
433
+ );
434
+ return !hoursInItem.some(
435
+ (h) => selectedSet.has(`${item.courtId}-${item.date}-${h}`)
436
+ );
437
+ })
438
+ );
439
+ setSelectedBlockSlots([]);
440
+ }
441
+ const handleOpenBlockPanelFromSelection = (0, import_react.useCallback)(async () => {
442
+ if (!(0, import_bookingCalendarDateUtils.isFreeSelectionContiguousSameResource)(selectedFreeSlots, slotStepHours)) {
443
+ return;
444
+ }
445
+ const groups = (0, import_bookingCalendarDateUtils.groupSelectedSlots)(selectedFreeSlots, slotStepHours);
446
+ const g = groups[0];
447
+ if (!g) return;
448
+ if (props.onBlockedTimePanelRequest) {
449
+ try {
450
+ const slotsPayload = selectedFreeSlots.map((s) => {
451
+ const slot = {
452
+ courtId: s.courtId,
453
+ date: s.date,
454
+ hour: s.hour
455
+ };
456
+ const extra = s;
457
+ if (extra.court !== void 0 && extra.court !== "") {
458
+ slot.court = extra.court;
459
+ }
460
+ return slot;
461
+ });
462
+ const payload = {
463
+ slotStepHours,
464
+ slotStepMinutes: resolvedSlotMinutes,
465
+ dayKey,
466
+ selectedFreeSlots: slotsPayload,
467
+ mergedRange: {
468
+ courtId: g.courtId,
469
+ date: g.date,
470
+ startHour: g.startHour,
471
+ endHour: g.endHour
472
+ }
473
+ };
474
+ const ok = await props.onBlockedTimePanelRequest(payload);
475
+ if (ok !== false) {
476
+ setSelectedFreeSlots([]);
477
+ }
478
+ } catch {
479
+ }
480
+ return;
481
+ }
482
+ setShowBlockPanel(true);
483
+ }, [
484
+ selectedFreeSlots,
485
+ slotStepHours,
486
+ resolvedSlotMinutes,
487
+ dayKey,
488
+ props.onBlockedTimePanelRequest
489
+ ]);
490
+ async function saveBlockedTime() {
491
+ if (!(blockTimeRange == null ? void 0 : blockTimeRange[0]) || !(blockTimeRange == null ? void 0 : blockTimeRange[1])) {
492
+ import_antd.message.warning(
493
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.warnSelectTime")
494
+ );
495
+ return;
496
+ }
497
+ const [start, end] = blockTimeRange;
498
+ if (!end.isAfter(start)) {
499
+ import_antd.message.warning(
500
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.warnEndAfterStart")
501
+ );
502
+ return;
503
+ }
504
+ const rid = Number(blockResourceId);
505
+ if (!Number.isFinite(rid) || rid <= 0) {
506
+ import_antd.message.warning(
507
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.warnSelectResource")
508
+ );
509
+ return;
510
+ }
511
+ const channels = props.blockedTimeSalesChannels ?? ["online_store"];
512
+ const payload = {
513
+ name: (blockFormName || "").trim() || (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.defaultTitle"),
514
+ note: (blockModalNote || "").trim(),
515
+ resource_ids: [rid],
516
+ blocked_sales_channels: channels,
517
+ start_time: start.format("YYYY-MM-DD HH:mm"),
518
+ end_time: end.format("YYYY-MM-DD HH:mm")
519
+ };
520
+ if (props.onBlockedTimeSave) {
521
+ setBlockSaving(true);
522
+ try {
523
+ const ok = await props.onBlockedTimeSave(payload);
524
+ if (ok === false) return;
525
+ setShowBlockPanel(false);
526
+ setSelectedFreeSlots([]);
527
+ setBlockModalNote("");
528
+ } finally {
529
+ setBlockSaving(false);
530
+ }
531
+ return;
532
+ }
533
+ const courtId = String(blockResourceId);
534
+ const date = start.format("YYYY-MM-DD");
535
+ const endDate = end.format("YYYY-MM-DD");
536
+ const startHour = start.hour() + start.minute() / 60;
537
+ const endHour = end.hour() + end.minute() / 60;
538
+ const nextBlock = {
539
+ id: `block-local-${courtId}-${date}-${startHour}-${Date.now()}`,
540
+ courtId,
541
+ date,
542
+ endDate: endDate !== date ? endDate : void 0,
543
+ startHour,
544
+ endHour,
545
+ name: payload.name,
546
+ note: payload.note,
547
+ blockedAt: date,
548
+ kind: "block"
549
+ };
550
+ if (!allowPersist("createBlock")) return;
551
+ setBookings((prev) => [nextBlock, ...prev]);
552
+ setSelectedFreeSlots([]);
553
+ setShowBlockPanel(false);
554
+ setBlockModalNote("");
555
+ }
556
+ function handleDropMove(targetCourtId, targetDate, targetHour) {
557
+ if (!draggingItem) return;
558
+ const duration = draggingItem.endHour - draggingItem.startHour;
559
+ const nextStart = targetHour;
560
+ const nextEnd = targetHour + duration;
561
+ if (!isBusinessHour(nextStart) || nextEnd > endTimelineExclusive) return;
562
+ const targetCourt = targetCourtId ?? draggingItem.courtId;
563
+ const itemSnapshot = draggingItem;
564
+ const draft = {
565
+ targetCourtId: targetCourt,
566
+ targetDate,
567
+ targetHour
568
+ };
569
+ setDraggingItem(null);
570
+ if (props.onBookingMoveRequest) {
571
+ void Promise.resolve(
572
+ props.onBookingMoveRequest({ item: itemSnapshot, draft })
573
+ ).catch(() => {
574
+ });
575
+ return;
576
+ }
577
+ setMoveConfirm({
578
+ item: itemSnapshot,
579
+ targetCourtId: targetCourt,
580
+ targetDate,
581
+ targetHour
582
+ });
583
+ setMoveDraft(draft);
584
+ }
585
+ function handleGridDropMove(targetDate, targetCourtId = null) {
586
+ if (!draggingItem || draggingItem.kind === "block") return;
587
+ handleDropMove(
588
+ targetCourtId ?? draggingItem.courtId,
589
+ targetDate,
590
+ draggingItem.startHour
591
+ );
592
+ }
593
+ function confirmMove() {
594
+ if (!moveConfirm || !moveDraft) return;
595
+ if (!allowPersist("moveBooking")) return;
596
+ const { item } = moveConfirm;
597
+ const { targetCourtId, targetDate, targetHour } = moveDraft;
598
+ const duration = item.endHour - item.startHour;
599
+ setBookings(
600
+ (prev) => prev.map(
601
+ (b) => b.id === item.id ? {
602
+ ...b,
603
+ courtId: targetCourtId,
604
+ date: targetDate,
605
+ startHour: targetHour,
606
+ endHour: targetHour + duration
607
+ } : b
608
+ )
609
+ );
610
+ setMoveConfirm(null);
611
+ setMoveDraft(null);
612
+ }
613
+ return /* @__PURE__ */ import_react.default.createElement(
614
+ import_antd.Spin,
615
+ {
616
+ spinning: Boolean(props.loading),
617
+ wrapperClassName: "pisell-rb-cal-spin-wrap flex min-h-0 flex-1 flex-col"
618
+ },
619
+ /* @__PURE__ */ import_react.default.createElement(
620
+ "div",
621
+ {
622
+ className: `theme-root theme-app flex h-full min-h-0 flex-col p-2 md:p-3 ${isLight ? "theme-light" : "theme-dark"}`
623
+ },
624
+ /* @__PURE__ */ import_react.default.createElement(
625
+ "div",
626
+ {
627
+ className: "theme-shell soft-shadow mx-0 flex h-full min-h-0 w-full max-w-none flex-1 flex-col rounded-[28px] border overflow-hidden transition-[padding-right] duration-200",
628
+ style: { paddingRight: 0 }
629
+ },
630
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "flex min-h-0 flex-1 flex-col" }, view === "month" && /* @__PURE__ */ import_react.default.createElement(
631
+ import_BookingCalendarMonthView.BookingCalendarMonthView,
632
+ {
633
+ isLight,
634
+ anchorDate,
635
+ monthDays,
636
+ bookings,
637
+ goToDayFromCell,
638
+ handleGridDropMove,
639
+ setDraggingItem,
640
+ openBookingDetail,
641
+ overflowPopover,
642
+ setOverflowPopover,
643
+ overflowListModal,
644
+ setOverflowListModal,
645
+ overflowPanelRef,
646
+ renderMonthWeekBooking: props.renderMonthWeekBooking
647
+ }
648
+ ), view === "week" && /* @__PURE__ */ import_react.default.createElement(
649
+ import_BookingCalendarWeekView.BookingCalendarWeekView,
650
+ {
651
+ calendarProps: props,
652
+ isLight,
653
+ weekDays,
654
+ bookings,
655
+ courts,
656
+ hourSlots,
657
+ slotStepHours,
658
+ visibleCourts,
659
+ visibleCourtRows,
660
+ isBusinessHour,
661
+ goToDayFromCell,
662
+ handleGridDropMove,
663
+ openBookingDetail,
664
+ setDraggingItem,
665
+ setCollapsedGroups,
666
+ overflowPopover,
667
+ setOverflowPopover,
668
+ overflowListModal,
669
+ setOverflowListModal,
670
+ overflowPanelRef
671
+ }
672
+ ), view === "day" && /* @__PURE__ */ import_react.default.createElement(
673
+ import_BookingCalendarDayView.BookingCalendarDayView,
674
+ {
675
+ calendarProps: props,
676
+ isLight,
677
+ view,
678
+ anchorDate,
679
+ dayKey,
680
+ hourSlots,
681
+ resolvedSlotMinutes,
682
+ slotColWidth,
683
+ firstTimelineHour,
684
+ endTimelineExclusive,
685
+ isBusinessHour,
686
+ dayHourRemaining,
687
+ timelinePxPerHour,
688
+ dayContentHeight,
689
+ dayRowHeights,
690
+ visibleCourtRows,
691
+ overlayBookings,
692
+ dayOverlayOverflowPluses,
693
+ setCollapsedGroups,
694
+ visibleCourts,
695
+ bookings,
696
+ slotStepHours,
697
+ isFreeSelected,
698
+ isBlockSelected,
699
+ toggleSlot,
700
+ handleDropMove,
701
+ hiddenDayOverlayIdSet,
702
+ courtDayDisplayLaneCount,
703
+ openBookingDetail,
704
+ setDraggingItem,
705
+ setNavDirection,
706
+ commitAnchor,
707
+ setFocusedCourtId,
708
+ setOverflowListModal,
709
+ selectedFreeSlots,
710
+ selectedBlockSlots,
711
+ deselectAll,
712
+ openSelectedBlocks,
713
+ onOpenBlockPanel: handleOpenBlockPanelFromSelection,
714
+ createBookingFromSelection,
715
+ focusedCourtId,
716
+ dayRowRemainingByCourt
717
+ }
718
+ ))
719
+ ),
720
+ showBlockPanel && !props.onBlockedTimePanelRequest && selectedFreeSlots.length > 0 && (0, import_bookingCalendarDateUtils.isFreeSelectionContiguousSameResource)(
721
+ selectedFreeSlots,
722
+ slotStepHours
723
+ ) && /* @__PURE__ */ import_react.default.createElement("div", { className: "fixed inset-0 z-50 bg-black/55 backdrop-blur-sm flex items-end md:items-center justify-center p-2 md:p-4" }, /* @__PURE__ */ import_react.default.createElement(
724
+ "div",
725
+ {
726
+ ref: blockPanelRef,
727
+ className: `w-full max-w-[720px] max-h-[92vh] overflow-y-auto rounded-t-3xl md:rounded-3xl border p-4 md:p-6 shadow-2xl ${isLight ? "theme-panel theme-border soft-shadow" : "border-zinc-700 bg-[#121217]"}`
728
+ },
729
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "mb-4 flex items-center justify-between gap-3" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "text-xl font-semibold" }, (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.panelTitle")), /* @__PURE__ */ import_react.default.createElement(
730
+ "button",
731
+ {
732
+ type: "button",
733
+ "aria-label": (0, import_calendarI18n.tCal)(
734
+ "pisell2.recordBoard.calendar.block.closeAria"
735
+ ),
736
+ onClick: () => setShowBlockPanel(false),
737
+ className: `rounded-xl p-2 ${isLight ? "btn-neutral" : "border border-zinc-700 text-zinc-300 hover:bg-zinc-800"}`
738
+ },
739
+ /* @__PURE__ */ import_react.default.createElement(import_icons.CloseOutlined, { style: { fontSize: 20 } })
740
+ )),
741
+ /* @__PURE__ */ import_react.default.createElement(
742
+ "div",
743
+ {
744
+ className: `space-y-4 rounded-2xl border p-4 ${isLight ? "theme-panel-alt theme-border" : "border-zinc-700 bg-[#171820]"}`
745
+ },
746
+ /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
747
+ "label",
748
+ {
749
+ className: `mb-2 block text-sm ${isLight ? "theme-text-muted" : "text-zinc-400"}`
750
+ },
751
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.fieldTitle")
752
+ ), /* @__PURE__ */ import_react.default.createElement(
753
+ "input",
754
+ {
755
+ value: blockFormName,
756
+ onChange: (e) => setBlockFormName(e.target.value),
757
+ placeholder: (0, import_calendarI18n.tCal)(
758
+ "pisell2.recordBoard.calendar.block.placeholderTitle"
759
+ ),
760
+ className: `w-full rounded-xl px-3 py-2 outline-none ${isLight ? "theme-input theme-text" : "border border-zinc-700 bg-[#111218] text-white"}`
761
+ }
762
+ )),
763
+ /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
764
+ "label",
765
+ {
766
+ className: `mb-2 block text-sm ${isLight ? "theme-text-muted" : "text-zinc-400"}`
767
+ },
768
+ "备注"
769
+ ), /* @__PURE__ */ import_react.default.createElement(
770
+ "input",
771
+ {
772
+ value: blockModalNote,
773
+ onChange: (e) => setBlockModalNote(e.target.value),
774
+ placeholder: "选填",
775
+ className: `w-full rounded-xl px-3 py-2 outline-none ${isLight ? "theme-input theme-text" : "border border-zinc-700 bg-[#111218] text-white"}`
776
+ }
777
+ )),
778
+ /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
779
+ "label",
780
+ {
781
+ className: `mb-2 block text-sm ${isLight ? "theme-text-muted" : "text-zinc-400"}`
782
+ },
783
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.fieldResource")
784
+ ), /* @__PURE__ */ import_react.default.createElement(
785
+ "select",
786
+ {
787
+ value: blockResourceId,
788
+ onChange: (e) => setBlockResourceId(e.target.value),
789
+ className: `w-full rounded-xl px-3 py-2 outline-none ${isLight ? "theme-input theme-text" : "border border-zinc-700 bg-[#111218] text-white"}`
790
+ },
791
+ /* @__PURE__ */ import_react.default.createElement("option", { value: "" }, (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.block.noResource")),
792
+ visibleCourts.map((c) => /* @__PURE__ */ import_react.default.createElement("option", { key: c.id, value: String(c.id) }, c.name))
793
+ )),
794
+ /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(
795
+ "label",
796
+ {
797
+ className: `mb-2 block text-sm ${isLight ? "theme-text-muted" : "text-zinc-400"}`
798
+ },
799
+ (0, import_calendarI18n.tCal)(
800
+ "pisell2.recordBoard.calendar.block.fieldTimeRange"
801
+ )
802
+ ), /* @__PURE__ */ import_react.default.createElement(
803
+ RangePicker,
804
+ {
805
+ ...{
806
+ style: { width: "100%" },
807
+ showTime: {
808
+ format: "HH:mm",
809
+ minuteStep: resolvedSlotMinutes >= 60 ? 60 : Math.max(1, resolvedSlotMinutes)
810
+ },
811
+ format: "YYYY-MM-DD HH:mm",
812
+ value: blockTimeRange ?? void 0,
813
+ onChange: (v) => setBlockTimeRange(v ?? null)
814
+ }
815
+ }
816
+ ))
817
+ ),
818
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "mt-6 flex flex-col-reverse sm:flex-row items-stretch sm:items-center justify-end gap-3" }, /* @__PURE__ */ import_react.default.createElement(
819
+ "button",
820
+ {
821
+ type: "button",
822
+ disabled: blockSaving,
823
+ onClick: () => setShowBlockPanel(false),
824
+ className: `rounded-xl px-4 py-2 ${isLight ? "btn-neutral" : "border border-zinc-700 text-zinc-300 hover:bg-zinc-800"}`
825
+ },
826
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.cancel")
827
+ ), /* @__PURE__ */ import_react.default.createElement(
828
+ "button",
829
+ {
830
+ type: "button",
831
+ disabled: blockSaving,
832
+ onClick: () => void saveBlockedTime(),
833
+ className: `rounded-xl px-5 py-3 text-sm font-semibold disabled:opacity-50 ${isLight ? "btn-brand" : "bg-violet-600 text-white hover:bg-violet-500"}`
834
+ },
835
+ blockSaving ? (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.saving") : (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.save")
836
+ ))
837
+ )),
838
+ overflowListModal && /* @__PURE__ */ import_react.default.createElement("div", { className: "fixed inset-0 z-[69] bg-black/45 backdrop-blur-sm flex items-center justify-center p-4" }, /* @__PURE__ */ import_react.default.createElement(
839
+ "div",
840
+ {
841
+ ref: overflowPanelRef,
842
+ className: `flex w-full max-w-[520px] max-h-[72vh] flex-col overflow-hidden rounded-3xl border p-5 shadow-2xl ${isLight ? "theme-panel theme-border soft-shadow" : "border-zinc-700 bg-[#121217]"}`
843
+ },
844
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "mb-4 flex shrink-0 items-start justify-between" }, /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", { className: "text-xl font-semibold" }, (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.overflow.bookingsForDay")), /* @__PURE__ */ import_react.default.createElement("div", { className: "mt-1 text-sm text-zinc-400" }, overflowListModal.title)), /* @__PURE__ */ import_react.default.createElement(
845
+ "button",
846
+ {
847
+ onClick: () => setOverflowListModal(null),
848
+ className: "rounded-xl border border-zinc-700 px-3 py-2 text-zinc-300 hover:bg-zinc-800"
849
+ },
850
+ (0, import_calendarI18n.tCal)("pisell2.recordBoard.calendar.common.close")
851
+ )),
852
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "min-h-0 flex-1 overflow-hidden px-0.5" }, /* @__PURE__ */ import_react.default.createElement(
853
+ import_OverflowListModal.OverflowListModalVirtualList,
854
+ {
855
+ items: overflowListModal.items,
856
+ dateKey: overflowListModal.date,
857
+ listWidth: 468,
858
+ onPickItem: openBookingDetail,
859
+ onClose: () => setOverflowListModal(null),
860
+ showStatusUi: Boolean(
861
+ overflowListModal.scope && String(overflowListModal.scope).startsWith(
862
+ "day-lane-overflow-"
863
+ )
864
+ )
865
+ }
866
+ ))
867
+ )),
868
+ moveConfirm && /* @__PURE__ */ import_react.default.createElement(
869
+ import_MoveConfirmModal.MoveConfirmModal,
870
+ {
871
+ moveConfirm,
872
+ moveDraft,
873
+ setMoveDraft,
874
+ panelRef: moveConfirmRef,
875
+ isLight,
876
+ courts,
877
+ visibleCourts,
878
+ hourSlots,
879
+ isBusinessHour,
880
+ firstTimelineHour,
881
+ endTimelineExclusive,
882
+ onConfirm: confirmMove,
883
+ onClose: () => {
884
+ setMoveConfirm(null);
885
+ setMoveDraft(null);
886
+ }
887
+ }
888
+ ),
889
+ transitioningToDay && /* @__PURE__ */ import_react.default.createElement("div", { className: "fixed inset-6 z-[60] rounded-[28px] border border-violet-400/20 bg-[#151220] pointer-events-none" })
890
+ )
891
+ );
892
+ }