@pisell/materials 1.8.41 → 1.8.42

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 (849) 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/meta.js +3 -3
  5. package/build/lowcode/render/default/view.css +1 -1
  6. package/build/lowcode/render/default/view.js +51 -216
  7. package/build/lowcode/view.css +1 -1
  8. package/build/lowcode/view.js +51 -216
  9. package/es/components/Pagination/index.js +43 -9
  10. package/es/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.$tab-dev.md +2 -5
  11. package/es/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.$tab-test.md +171 -169
  12. package/es/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.md +27 -87
  13. package/es/components/PisellCards/components/GraphicTextCard/types.d.ts +7 -18
  14. package/es/components/PisellCards/components/TextCard/TextCard.js +3 -2
  15. package/es/components/PisellCards/components/TextCard/components/BadgeWrapper.js +6 -20
  16. package/es/components/PisellCards/components/TextCard/components/TextContent.js +1 -3
  17. package/es/components/PisellCards/components/TextCard/docs/TextCard.$tab-dev.md +5 -36
  18. package/es/components/PisellCards/components/TextCard/docs/TextCard.$tab-test.md +258 -2434
  19. package/es/components/PisellCards/components/TextCard/docs/TextCard.md +13 -78
  20. package/es/components/PisellCards/index.d.ts +0 -3
  21. package/es/components/PisellCards/index.js +1 -3
  22. package/es/components/PisellLayouts/index.d.ts +1 -1
  23. package/es/components/PisellProcedure/components/ProcedureHeader.js +1 -1
  24. package/es/components/PisellTabbar/PisellTabbar.js +1 -1
  25. package/es/components/PisellTabbar/template/Template1/PisellTabbar.js +1 -1
  26. package/es/components/SafeAreaTop/index.d.ts +6 -0
  27. package/es/components/SafeAreaTop/index.js +112 -0
  28. package/es/components/SafeAreaTop/index.less +11 -0
  29. package/es/components/SafeAreaTop/types.d.ts +13 -0
  30. package/es/components/appVersionControl/index.js +2 -3
  31. package/es/components/dataSourceComponents/dataSourceForm/BaseForm.js +4 -4
  32. package/es/components/dataSourceComponents/dataSourceForm/formItem.js +1 -1
  33. package/es/components/dataSourceComponents/dataSourceForm/index.js +1 -1
  34. package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.js +3 -3
  35. package/es/components/dataSourceComponents/dataSourceForm/utils.js +3 -3
  36. package/es/components/dataSourceComponents/dataSourceShow/dataSourceTypography/index.js +1 -1
  37. package/es/components/dataSourceComponents/dataSourceSubForm/index.js +1 -1
  38. package/es/components/dataSourceComponents/dataSourceTable/BaseTable.js +2 -2
  39. package/es/components/dataSourceComponents/dataSourceTable/filter/index.js +1 -1
  40. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +2 -3
  41. package/es/components/dataSourceComponents/dataSourceTable/type.d.ts +0 -1
  42. package/es/components/dataSourceComponents/dataSourceWrapper/BaseWrapper.js +1 -1
  43. package/es/components/dataSourceComponents/fields/DatePicker/WithMode.js +0 -4
  44. package/es/components/dataSourceComponents/fields/IconSelect/WithMode.js +1 -1
  45. package/es/components/dataSourceComponents/fields/Input/WithMode.js +1 -1
  46. package/es/components/dataSourceComponents/fields/Input.Phone/serve.js +1 -4
  47. package/es/components/dataSourceComponents/fields/Radio/WithMode.js +1 -1
  48. package/es/components/dataSourceComponents/fields/TimePicker/WithMode.js +1 -1
  49. package/es/components/dataSourceComponents/hooks/useActions.js +1 -1
  50. package/es/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +1 -1
  51. package/es/components/drag-sort-tree/index.d.ts +0 -1
  52. package/es/components/drag-sort-tree/index.js +1 -0
  53. package/es/components/drawer/index.js +6 -7
  54. package/es/components/filter/components/Dropdown/index.js +4 -2
  55. package/es/components/filter/components/Dropdown/index.less +186 -0
  56. package/es/components/filter/components/FilterButton/index.js +41 -13
  57. package/es/components/filter/components/FilterButton/index.less +29 -0
  58. package/es/components/filter/components/FilterButton/types.d.ts +5 -0
  59. package/es/components/filter/components/FilterItem/index.js +93 -16
  60. package/es/components/filter/components/QuickFilter/index.js +7 -4
  61. package/es/components/filter/types.d.ts +4 -0
  62. package/es/components/login-and-register/index.js +5 -4
  63. package/es/components/page/index.js +1 -1
  64. package/es/components/pisellAppCard/PisellAppCard.js +1 -1
  65. package/es/components/pisellCardList/index.js +1 -1
  66. package/es/components/pisellCurrency/PisellCurrency.js +6 -13
  67. package/es/components/pisellCurrency/PisellCurrency.less +123 -0
  68. package/es/components/pisellDataSourceContainer/components/Pagination/index.js +9 -3
  69. package/es/components/pisellDataSourceContainer/docs/PisellDataSourceContainer.md +240 -189
  70. package/es/components/pisellDataSourceContainer/type.d.ts +1 -1
  71. package/es/components/pisellDateTimeDisplay/docs/pisellDateTimeDisplay.md +556 -556
  72. package/es/components/pisellEmail/PisellEmail.js +6 -13
  73. package/es/components/pisellEmail/PisellEmail.less +92 -0
  74. package/es/components/pisellEmpty/index.d.ts +1 -1
  75. package/es/components/pisellFilter/docs/PisellFilter.md +2 -2
  76. package/es/components/pisellFilter/index.js +7 -3
  77. package/es/components/pisellFind/docs/pisellFind.md +2 -2
  78. package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.d.ts +2 -1
  79. package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.js +480 -88
  80. package/es/components/pisellFloorMapLayout/PisellFloorMapLayout.less +62 -0
  81. package/es/components/pisellFloorMapLayout/appearance/floorMapAppearance.d.ts +4 -0
  82. package/es/components/pisellFloorMapLayout/appearance/floorMapAppearance.js +22 -0
  83. package/es/components/pisellFloorMapLayout/components/CanvasTabs.js +18 -3
  84. package/es/components/pisellFloorMapLayout/components/CanvasTabs.less +23 -0
  85. package/es/components/pisellFloorMapLayout/components/EditableItemLayer.js +3 -2
  86. package/es/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +2 -2
  87. package/es/components/pisellFloorMapLayout/components/FigmaTableCard.js +209 -74
  88. package/es/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +11 -0
  89. package/es/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.js +123 -0
  90. package/es/components/pisellFloorMapLayout/components/FloorMapEditPanel.js +88 -12
  91. package/es/components/pisellFloorMapLayout/components/FloorMapEditPanel.less +15 -0
  92. package/es/components/pisellFloorMapLayout/components/FloorMapEditTopBar.js +169 -23
  93. package/es/components/pisellFloorMapLayout/components/FloorMapEditTopBar.less +95 -1
  94. package/es/components/pisellFloorMapLayout/components/FloorMapOverview.js +94 -0
  95. package/es/components/pisellFloorMapLayout/components/FloorMapOverview.less +65 -0
  96. package/es/components/pisellFloorMapLayout/components/FloorMapToolbar.js +153 -38
  97. package/es/components/pisellFloorMapLayout/components/FloorMapToolbar.less +178 -4
  98. package/es/components/pisellFloorMapLayout/components/HistoryIcons.js +64 -0
  99. package/es/components/pisellFloorMapLayout/components/ItemLayer.js +32 -10
  100. package/es/components/pisellFloorMapLayout/components/ItemLayer.less +30 -2
  101. package/es/components/pisellFloorMapLayout/components/ViewControls.js +119 -65
  102. package/es/components/pisellFloorMapLayout/components/ViewControls.less +263 -50
  103. package/es/components/pisellFloorMapLayout/components/ViewControlsWithZoom.js +4 -0
  104. package/es/components/pisellFloorMapLayout/context/mergeFloorMapLayoutContext.js +3 -1
  105. package/es/components/pisellFloorMapLayout/docs/pisellFloorMapLayout.md +559 -194
  106. package/es/components/pisellFloorMapLayout/floorMapLayoutConstants.js +21 -0
  107. package/es/components/pisellFloorMapLayout/hooks/floorMapViewportPersistence.js +47 -0
  108. package/es/components/pisellFloorMapLayout/hooks/useDraftConfigHistory.js +95 -0
  109. package/es/components/pisellFloorMapLayout/hooks/useFloorMapEditState.js +105 -25
  110. package/es/components/pisellFloorMapLayout/hooks/useFloorMapTransformMetrics.js +400 -66
  111. package/es/components/pisellFloorMapLayout/index.d.ts +5 -2
  112. package/es/components/pisellFloorMapLayout/locales-ja.js +39 -1
  113. package/es/components/pisellFloorMapLayout/locales-pt.js +39 -1
  114. package/es/components/pisellFloorMapLayout/locales.js +117 -3
  115. package/es/components/pisellFloorMapLayout/types.d.ts +86 -10
  116. package/es/components/pisellFloorMapLayout/types.js +7 -1
  117. package/es/components/pisellFloorMapLayout/utils/floorMapBuiltinShapes.d.ts +46 -0
  118. package/es/components/pisellFloorMapLayout/utils/floorMapBuiltinShapes.js +533 -0
  119. package/es/components/pisellFloorMapLayout/utils/floorMapCanvasStage.js +139 -0
  120. package/es/components/pisellFloorMapLayout/utils/floorMapConfigMerge.js +11 -2
  121. package/es/components/pisellFloorMapLayout/utils/floorMapDropUtils.js +3 -1
  122. package/es/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.d.ts +3 -1
  123. package/es/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.js +31 -7
  124. package/es/components/pisellFloorMapLayout/utils/floorMapElementNameAsTitle.d.ts +52 -0
  125. package/es/components/pisellFloorMapLayout/utils/floorMapElementNameAsTitle.js +61 -0
  126. package/es/components/pisellFloorMapLayout/utils/floorMapFallbackRender.js +12 -1
  127. package/es/components/pisellFloorMapLayout/utils/floorMapOverviewLayout.js +64 -0
  128. package/es/components/pisellFloorMapLayout/utils/floorMapViewConfigDiff.js +3 -2
  129. package/es/components/pisellGoodPassCard/index.less +1 -0
  130. package/es/components/pisellGridPro/GridView/docs/GridView.md +47 -48
  131. package/es/components/pisellGridPro/ToolBar/docs/ToolBar.$tab-dev.md +4 -2
  132. package/es/components/pisellGridPro/ToolBar/docs/ToolBar.md +95 -81
  133. package/es/components/pisellGridPro/ToolBar/index.less +5 -4
  134. package/es/components/pisellGridPro/docs/PisellGridPro.md +173 -262
  135. package/es/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.$tab-dev.md +3 -6
  136. package/es/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.$tab-test.md +3 -4
  137. package/es/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.md +1 -2
  138. package/es/components/pisellLongText/PisellLongText.js +6 -13
  139. package/es/components/pisellLongText/PisellLongText.less +67 -0
  140. package/es/components/pisellLookup/PisellLookup.js +1 -1
  141. package/es/components/pisellLookup/PisellLookup.less +46 -4
  142. package/es/components/pisellLookup/components/LookupResultHost.js +1 -1
  143. package/es/components/pisellLookup/components/LookupTrigger.js +6 -8
  144. package/es/components/pisellLookup/docs/pisellLookup.md +1 -1
  145. package/es/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.d.ts +9 -0
  146. package/es/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.js +149 -0
  147. package/es/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.less +73 -0
  148. package/es/components/pisellMobileDateRangePicker/index.d.ts +2 -0
  149. package/es/components/pisellMobileDateRangePicker/types.d.ts +31 -0
  150. package/es/components/pisellMobileDateRangePicker/types.js +4 -0
  151. package/es/components/pisellMultipleSelect/PisellMultipleSelect.js +5 -7
  152. package/es/components/pisellMultipleSelect/PisellMultipleSelect.less +139 -18
  153. package/es/components/pisellMultipleSelect/components/EditView.js +0 -1
  154. package/es/components/pisellNavigationMenu/PisellNavigationMenu.js +0 -4
  155. package/es/components/pisellNumber/PisellNumber.js +6 -13
  156. package/es/components/pisellNumber/PisellNumber.less +103 -0
  157. package/es/components/pisellPhone/PisellPhone.js +6 -13
  158. package/es/components/pisellPhone/PisellPhone.less +119 -0
  159. package/es/components/pisellPhone/components/EditView.js +19 -37
  160. package/es/components/pisellPhone/constants/countryCodes.js +25 -26
  161. package/es/components/pisellPhone/types.d.ts +2 -2
  162. package/es/components/pisellPhone/utils/countryCodeHelper.js +2 -2
  163. package/es/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.md +1 -1
  164. package/es/components/pisellRating/PisellRating.js +3 -5
  165. package/es/components/pisellRecordBoard/PisellRecordBoard.js +29 -10
  166. package/es/components/pisellRecordBoard/README.md +12 -0
  167. package/es/components/pisellRecordBoard/docs/PisellRecordBoard.md +716 -70
  168. package/es/components/pisellRecordBoard/docs/ShellFrame.md +62 -44
  169. package/es/components/pisellRecordBoard/index.d.ts +8 -1
  170. package/es/components/pisellRecordBoard/index.js +5 -0
  171. package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.js +174 -17
  172. package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.less +79 -0
  173. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.js +758 -0
  174. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.less +313 -0
  175. package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +5 -1
  176. package/es/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.js +10 -8
  177. package/es/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.js +191 -0
  178. package/es/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.js +22 -0
  179. package/es/components/pisellRecordBoard/shellFrame/Calendar/calendarPersistGuard.d.ts +1 -1
  180. package/es/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.js +39 -0
  181. package/es/components/pisellRecordBoard/shellFrame/Calendar/hooks/useBookingCalendarDayOverlayLayout.js +74 -0
  182. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/BookingCalendarBlockPanel.js +61 -0
  183. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/BookingCalendarOverflowListLayer.js +26 -0
  184. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.js +79 -0
  185. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.js +61 -0
  186. package/es/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.js +37 -0
  187. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.js +20 -0
  188. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.js +532 -0
  189. package/es/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarSelectionUtils.js +17 -0
  190. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.js +31 -0
  191. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.js +583 -0
  192. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarGroupRowHeader.js +41 -0
  193. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +111 -0
  194. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarResourceView.js +612 -0
  195. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.js +168 -0
  196. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.js +8 -0
  197. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/day/useBookingCalendarDayHourRemaining.js +33 -0
  198. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/day/useBookingCalendarDaySelection.js +37 -0
  199. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/resource/useBookingCalendarResourceCellToggle.js +18 -0
  200. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/resource/useBookingCalendarResourceDayHeaderRemaining.js +33 -0
  201. package/es/components/pisellRecordBoard/shellFrame/Calendar/view/useBookingCalendarGoToDayFromCell.js +29 -0
  202. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/index.js +2 -1
  203. package/es/components/pisellRecordBoard/shellFrame/Pagination/index.js +7 -1
  204. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.js +43 -0
  205. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.d.ts +14 -0
  206. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.js +436 -0
  207. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/RecordBoardResourceWall.d.ts +11 -0
  208. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/RecordBoardResourceWall.js +9 -0
  209. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.js +179 -0
  210. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.js +62 -0
  211. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.js +57 -0
  212. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewport.less +88 -0
  213. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.js +83 -0
  214. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.js +218 -0
  215. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.less +339 -0
  216. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallMarquee.less +52 -0
  217. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.js +153 -0
  218. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.d.ts +32 -0
  219. package/es/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.js +170 -0
  220. package/es/components/pisellRecordBoard/shellFrame/Search/index.js +1 -1
  221. package/es/components/pisellRecordBoard/shellFrame/ShellBodyMetaContext.d.ts +5 -1
  222. package/es/components/pisellRecordBoard/shellFrame/ToolBar/ToolBarFilter.less +30 -3
  223. package/es/components/pisellRecordBoard/shellFrame/ToolBar/index.js +157 -68
  224. package/es/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolBarConstants.js +11 -0
  225. package/es/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolBarI18n.js +56 -0
  226. package/es/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolbar.less +406 -14
  227. package/es/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.js +14 -4
  228. package/es/components/pisellRecordBoard/shellFrame/index.d.ts +9 -2
  229. package/es/components/pisellRecordBoard/shellFrame/index.js +73 -19
  230. package/es/components/pisellRecordBoard/types.d.ts +413 -8
  231. package/es/components/pisellRecordBoard/types.js +12 -0
  232. package/es/components/pisellRecordBoard/utils/partitionShellFrameChildren.js +16 -0
  233. package/es/components/pisellRecordBoard/utils/recordBoardPhoneGrid.d.ts +22 -0
  234. package/es/components/pisellRecordBoard/utils/recordBoardPhoneGrid.js +46 -0
  235. package/es/components/pisellReservationSchedule/PisellReservationSchedule.js +67 -15
  236. package/es/components/pisellReservationSchedule/PisellReservationSchedule.less +23 -0
  237. package/es/components/pisellReservationSchedule/locales.js +21 -3
  238. package/es/components/pisellReservationSchedule/types.d.ts +5 -0
  239. package/es/components/pisellReservationScheduleBand/PisellReservationScheduleBand.js +11 -6
  240. package/es/components/pisellReservationScheduleBand/PisellReservationScheduleBand.less +37 -4
  241. package/es/components/pisellReservationScheduleBand/index.d.ts +2 -1
  242. package/es/components/pisellReservationScheduleBand/types.d.ts +13 -2
  243. package/es/components/pisellReservationScheduleBand/utils/formatScheduleAtLabel.d.ts +13 -0
  244. package/es/components/pisellReservationScheduleBand/utils/formatScheduleAtLabel.js +17 -0
  245. package/es/components/pisellShellFrame/PisellShellFrame.js +2 -2
  246. package/es/components/pisellShellFrame/PisellShellFrame.less +18 -2
  247. package/es/components/pisellShellFrame/types.d.ts +6 -0
  248. package/es/components/pisellSingleLineText/PisellSingleLineText.js +14 -21
  249. package/es/components/pisellSingleLineText/PisellSingleLineText.less +143 -0
  250. package/es/components/pisellSingleLineText/docs/pisellSingleLineText.md +256 -256
  251. package/es/components/pisellSingleSelect/PisellSingleSelect.js +4 -7
  252. package/es/components/pisellSingleSelect/PisellSingleSelect.less +106 -5
  253. package/es/components/pisellSingleSelect/docs/pisellSingleSelect.md +428 -525
  254. package/es/components/pisellSort/docs/PisellSort.md +131 -67
  255. package/es/components/pisellStatisticList/index.js +0 -1
  256. package/es/components/pisellTimeNavigator/PisellTimeNavigator.js +227 -58
  257. package/es/components/pisellTimeNavigator/PisellTimeNavigator.less +128 -15
  258. package/es/components/pisellTimeNavigator/components/CursorLayer.js +3 -3
  259. package/es/components/pisellTimeNavigator/components/GestureLayer.js +12 -3
  260. package/es/components/pisellTimeNavigator/components/ScaleLayer.js +34 -6
  261. package/es/components/pisellTimeNavigator/docs/pisellTimeNavigator.$tab-dev.md +26 -42
  262. package/es/components/pisellTimeNavigator/docs/pisellTimeNavigator.$tab-test.md +5 -5
  263. package/es/components/pisellTimeNavigator/hooks/useTimeAxis.js +43 -23
  264. package/es/components/pisellTimeNavigator/index.d.ts +1 -1
  265. package/es/components/pisellTimeNavigator/types.d.ts +15 -0
  266. package/es/components/pisellTimeNavigator/utils/index.d.ts +25 -4
  267. package/es/components/pisellTimeNavigator/utils/index.js +85 -17
  268. package/es/components/pisellTimeRangeDisplay/docs/pisellTimeRangeDisplay.md +226 -227
  269. package/es/components/pisellUrl/PisellUrl.js +6 -13
  270. package/es/components/pisellWalletPassCard/index.js +5 -11
  271. package/es/components/productCard/cartSkuCard/components/Gift/index.js +34 -0
  272. package/es/components/productCard/cartSkuCard/components/Gift/index.less +84 -0
  273. package/es/components/productCard/cartSkuCard/components/Promotion/index.js +23 -0
  274. package/es/components/productCard/cartSkuCard/components/Promotion/index.less +16 -0
  275. package/es/components/productCard/cartSkuCard/components/basicInfo/index.js +65 -4
  276. package/es/components/productCard/cartSkuCard/components/basicInfo/index.less +80 -1
  277. package/es/components/productCard/cartSkuCard/components/holders/index.js +1 -1
  278. package/es/components/productCard/cartSkuCard/components/packages/index.js +24 -9
  279. package/es/components/productCard/cartSkuCard/components/specs/index.js +22 -7
  280. package/es/components/productCard/cartSkuCard/components/specs/index.less +11 -0
  281. package/es/components/productCard/cartSkuCard/components/timeRange/index.js +2 -1
  282. package/es/components/productCard/cartSkuCard/components/weighing/index.js +27 -0
  283. package/es/components/productCard/cartSkuCard/components/weighing/index.less +25 -0
  284. package/es/components/productCard/cartSkuCard/index.js +68 -8
  285. package/es/components/productCard/cartSkuCard/locales.js +40 -5
  286. package/es/components/productCard/components/Header/DeleteButton/index.js +2 -2
  287. package/es/components/productCard/components/Header/DeleteButton/index.less +1 -2
  288. package/es/components/productCard/components/Header/EditButton/index.js +2 -1
  289. package/es/components/productCard/components/Header/index.less +1 -1
  290. package/es/components/productCard/components/Time/components/SelectHolder/index.js +2 -3
  291. package/es/components/productCard/components/Time/components/SelectHolderModal/index.js +1 -1
  292. package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.js +2 -2
  293. package/es/components/productCard/components/Time/components/SelectResource/index.js +3 -6
  294. package/es/components/productCard/components/Time/index.js +2 -3
  295. package/es/components/productCard/index.d.ts +1 -0
  296. package/es/components/productCard/index.js +2 -0
  297. package/es/components/productCard/lineItem/BookingLineItem.js +173 -0
  298. package/es/components/productCard/lineItem/index.js +195 -0
  299. package/es/components/productCard/lineItem/index.less +195 -0
  300. package/es/components/productCard/lineItem/locales.js +25 -0
  301. package/es/components/productCard/status.js +3 -0
  302. package/es/components/productCard/types.d.ts +10 -0
  303. package/es/components/productCard/utils.js +1 -1
  304. package/es/components/select/index.js +1 -1
  305. package/es/components/select-time/index.js +1 -0
  306. package/es/components/table/Actions/component/ExportImport/index.js +4 -3
  307. package/es/components/table/Actions/component/GallerySetting/index.js +9 -10
  308. package/es/components/table/Actions/component/ViewMode/index.js +3 -4
  309. package/es/components/table/Actions/index.js +1 -1
  310. package/es/components/table/BasicTable/index.js +3 -4
  311. package/es/components/table/Gallery/components/GalleryItem/components/Title/index.less +1 -1
  312. package/es/components/table/Gallery/components/GalleryItem/index.js +4 -12
  313. package/es/components/table/Gallery/components/GalleryItem/index.less +0 -1
  314. package/es/components/table/Gallery/index.js +3 -11
  315. package/es/components/table/Table/fields/text/Show/index.js +1 -1
  316. package/es/components/table/Table/index.js +1 -2
  317. package/es/components/table/Table/tableConfig/header/index.js +1 -1
  318. package/es/components/table/Table/utils.js +1 -5
  319. package/es/components/table/hooks/useTableSetting.js +0 -3
  320. package/es/components/table/hooks/useTransDataSource.js +3 -4
  321. package/es/components/table/index.js +1 -1
  322. package/es/components/tabs/index.less +1 -1
  323. package/es/components/translation/index.d.ts +0 -1
  324. package/es/components/translation/index.js +10 -36
  325. package/es/components/translation/index.less +0 -12
  326. package/es/components/versionModal/index.d.ts +0 -1
  327. package/es/components/versionModal/index.js +2 -2
  328. package/es/components/versionSelect/index.js +1 -1
  329. package/es/components/virtual-keyboard/Amount/index.js +1 -1
  330. package/es/index.d.ts +101 -106
  331. package/es/index.js +97 -94
  332. package/es/locales/en-US.js +195 -70
  333. package/es/locales/ja.js +196 -13
  334. package/es/locales/pt.js +196 -13
  335. package/es/locales/zh-CN.js +189 -64
  336. package/es/locales/zh-TW.js +194 -69
  337. package/es/pisell-materials.tw.css +0 -1
  338. package/es/tailwind-input.css +3 -1
  339. package/lib/components/Pagination/index.js +42 -8
  340. package/lib/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.$tab-dev.md +2 -5
  341. package/lib/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.$tab-test.md +171 -169
  342. package/lib/components/PisellCards/components/GraphicTextCard/docs/GraphicTextCard.md +27 -87
  343. package/lib/components/PisellCards/components/GraphicTextCard/types.d.ts +7 -18
  344. package/lib/components/PisellCards/components/TextCard/TextCard.js +3 -2
  345. package/lib/components/PisellCards/components/TextCard/components/BadgeWrapper.js +6 -20
  346. package/lib/components/PisellCards/components/TextCard/components/TextContent.js +1 -3
  347. package/lib/components/PisellCards/components/TextCard/docs/TextCard.$tab-dev.md +5 -36
  348. package/lib/components/PisellCards/components/TextCard/docs/TextCard.$tab-test.md +258 -2434
  349. package/lib/components/PisellCards/components/TextCard/docs/TextCard.md +13 -78
  350. package/lib/components/PisellCards/index.d.ts +0 -3
  351. package/lib/components/PisellCards/index.js +1 -3
  352. package/lib/components/PisellLayouts/index.d.ts +1 -1
  353. package/lib/components/PisellProcedure/components/ProcedureHeader.js +1 -1
  354. package/lib/components/PisellTabbar/PisellTabbar.js +6 -6
  355. package/lib/components/PisellTabbar/template/Template1/PisellTabbar.js +6 -6
  356. package/lib/components/SafeAreaTop/index.d.ts +6 -0
  357. package/lib/components/SafeAreaTop/index.js +115 -0
  358. package/lib/components/SafeAreaTop/index.less +11 -0
  359. package/lib/components/SafeAreaTop/types.d.ts +13 -0
  360. package/lib/components/appVersionControl/index.js +11 -12
  361. package/lib/components/dataSourceComponents/dataSourceForm/BaseForm.js +6 -6
  362. package/lib/components/dataSourceComponents/dataSourceForm/formItem.js +1 -1
  363. package/lib/components/dataSourceComponents/dataSourceForm/index.js +1 -1
  364. package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.js +3 -3
  365. package/lib/components/dataSourceComponents/dataSourceForm/utils.js +3 -3
  366. package/lib/components/dataSourceComponents/dataSourceShow/dataSourceTypography/index.js +1 -1
  367. package/lib/components/dataSourceComponents/dataSourceSubForm/index.js +1 -1
  368. package/lib/components/dataSourceComponents/dataSourceTable/BaseTable.js +2 -2
  369. package/lib/components/dataSourceComponents/dataSourceTable/filter/index.js +1 -1
  370. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +2 -3
  371. package/lib/components/dataSourceComponents/dataSourceTable/type.d.ts +0 -1
  372. package/lib/components/dataSourceComponents/dataSourceWrapper/BaseWrapper.js +1 -1
  373. package/lib/components/dataSourceComponents/fields/DatePicker/WithMode.js +0 -4
  374. package/lib/components/dataSourceComponents/fields/IconSelect/WithMode.js +1 -1
  375. package/lib/components/dataSourceComponents/fields/Input/WithMode.js +1 -1
  376. package/lib/components/dataSourceComponents/fields/Input.Phone/serve.js +1 -4
  377. package/lib/components/dataSourceComponents/fields/Radio/WithMode.js +1 -1
  378. package/lib/components/dataSourceComponents/fields/TimePicker/WithMode.js +4 -4
  379. package/lib/components/dataSourceComponents/hooks/useActions.js +1 -1
  380. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +1 -1
  381. package/lib/components/drag-sort-tree/index.d.ts +0 -1
  382. package/lib/components/drag-sort-tree/index.js +1 -0
  383. package/lib/components/drawer/index.js +6 -7
  384. package/lib/components/filter/components/Dropdown/index.js +5 -2
  385. package/lib/components/filter/components/Dropdown/index.less +186 -0
  386. package/lib/components/filter/components/FilterButton/index.js +40 -12
  387. package/lib/components/filter/components/FilterButton/index.less +29 -0
  388. package/lib/components/filter/components/FilterButton/types.d.ts +5 -0
  389. package/lib/components/filter/components/FilterItem/index.js +94 -16
  390. package/lib/components/filter/components/QuickFilter/index.js +7 -4
  391. package/lib/components/filter/types.d.ts +4 -0
  392. package/lib/components/login-and-register/index.js +5 -4
  393. package/lib/components/page/index.js +1 -1
  394. package/lib/components/pisellAppCard/PisellAppCard.js +7 -7
  395. package/lib/components/pisellCardList/index.js +6 -6
  396. package/lib/components/pisellCurrency/PisellCurrency.js +6 -13
  397. package/lib/components/pisellCurrency/PisellCurrency.less +123 -0
  398. package/lib/components/pisellDataSourceContainer/components/Pagination/index.js +9 -3
  399. package/lib/components/pisellDataSourceContainer/docs/PisellDataSourceContainer.md +240 -189
  400. package/lib/components/pisellDataSourceContainer/type.d.ts +1 -1
  401. package/lib/components/pisellDateTimeDisplay/docs/pisellDateTimeDisplay.md +556 -556
  402. package/lib/components/pisellEmail/PisellEmail.js +6 -13
  403. package/lib/components/pisellEmail/PisellEmail.less +92 -0
  404. package/lib/components/pisellEmpty/index.d.ts +1 -1
  405. package/lib/components/pisellFilter/docs/PisellFilter.md +2 -2
  406. package/lib/components/pisellFilter/index.js +7 -3
  407. package/lib/components/pisellFind/docs/pisellFind.md +2 -2
  408. package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.d.ts +2 -1
  409. package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.js +478 -86
  410. package/lib/components/pisellFloorMapLayout/PisellFloorMapLayout.less +62 -0
  411. package/lib/components/pisellFloorMapLayout/appearance/floorMapAppearance.d.ts +4 -0
  412. package/lib/components/pisellFloorMapLayout/appearance/floorMapAppearance.js +22 -0
  413. package/lib/components/pisellFloorMapLayout/components/CanvasTabs.js +18 -3
  414. package/lib/components/pisellFloorMapLayout/components/CanvasTabs.less +23 -0
  415. package/lib/components/pisellFloorMapLayout/components/EditableItemLayer.js +3 -2
  416. package/lib/components/pisellFloorMapLayout/components/FigmaTableCard.d.ts +2 -2
  417. package/lib/components/pisellFloorMapLayout/components/FigmaTableCard.js +209 -74
  418. package/lib/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.d.ts +11 -0
  419. package/lib/components/pisellFloorMapLayout/components/FloorMapBuiltinShapeElement.js +125 -0
  420. package/lib/components/pisellFloorMapLayout/components/FloorMapEditPanel.js +86 -10
  421. package/lib/components/pisellFloorMapLayout/components/FloorMapEditPanel.less +15 -0
  422. package/lib/components/pisellFloorMapLayout/components/FloorMapEditTopBar.js +168 -22
  423. package/lib/components/pisellFloorMapLayout/components/FloorMapEditTopBar.less +95 -1
  424. package/lib/components/pisellFloorMapLayout/components/FloorMapOverview.js +97 -0
  425. package/lib/components/pisellFloorMapLayout/components/FloorMapOverview.less +65 -0
  426. package/lib/components/pisellFloorMapLayout/components/FloorMapToolbar.js +150 -35
  427. package/lib/components/pisellFloorMapLayout/components/FloorMapToolbar.less +178 -4
  428. package/lib/components/pisellFloorMapLayout/components/HistoryIcons.js +67 -0
  429. package/lib/components/pisellFloorMapLayout/components/ItemLayer.js +32 -10
  430. package/lib/components/pisellFloorMapLayout/components/ItemLayer.less +30 -2
  431. package/lib/components/pisellFloorMapLayout/components/ViewControls.js +118 -64
  432. package/lib/components/pisellFloorMapLayout/components/ViewControls.less +263 -50
  433. package/lib/components/pisellFloorMapLayout/components/ViewControlsWithZoom.js +4 -0
  434. package/lib/components/pisellFloorMapLayout/context/mergeFloorMapLayoutContext.js +3 -1
  435. package/lib/components/pisellFloorMapLayout/docs/pisellFloorMapLayout.md +559 -194
  436. package/lib/components/pisellFloorMapLayout/floorMapLayoutConstants.js +25 -0
  437. package/lib/components/pisellFloorMapLayout/hooks/floorMapViewportPersistence.js +52 -0
  438. package/lib/components/pisellFloorMapLayout/hooks/useDraftConfigHistory.js +96 -0
  439. package/lib/components/pisellFloorMapLayout/hooks/useFloorMapEditState.js +104 -24
  440. package/lib/components/pisellFloorMapLayout/hooks/useFloorMapTransformMetrics.js +399 -65
  441. package/lib/components/pisellFloorMapLayout/index.d.ts +5 -2
  442. package/lib/components/pisellFloorMapLayout/locales-ja.js +39 -1
  443. package/lib/components/pisellFloorMapLayout/locales-pt.js +39 -1
  444. package/lib/components/pisellFloorMapLayout/locales.js +117 -3
  445. package/lib/components/pisellFloorMapLayout/types.d.ts +86 -10
  446. package/lib/components/pisellFloorMapLayout/types.js +7 -0
  447. package/lib/components/pisellFloorMapLayout/utils/floorMapBuiltinShapes.d.ts +46 -0
  448. package/lib/components/pisellFloorMapLayout/utils/floorMapBuiltinShapes.js +536 -0
  449. package/lib/components/pisellFloorMapLayout/utils/floorMapCanvasStage.js +140 -0
  450. package/lib/components/pisellFloorMapLayout/utils/floorMapConfigMerge.js +11 -2
  451. package/lib/components/pisellFloorMapLayout/utils/floorMapDropUtils.js +3 -1
  452. package/lib/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.d.ts +3 -1
  453. package/lib/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.js +30 -5
  454. package/lib/components/pisellFloorMapLayout/utils/floorMapElementNameAsTitle.d.ts +52 -0
  455. package/lib/components/pisellFloorMapLayout/utils/floorMapElementNameAsTitle.js +64 -0
  456. package/lib/components/pisellFloorMapLayout/utils/floorMapFallbackRender.js +11 -0
  457. package/lib/components/pisellFloorMapLayout/utils/floorMapOverviewLayout.js +64 -0
  458. package/lib/components/pisellFloorMapLayout/utils/floorMapViewConfigDiff.js +4 -2
  459. package/lib/components/pisellGoodPassCard/index.less +1 -0
  460. package/lib/components/pisellGridPro/GridView/docs/GridView.md +47 -48
  461. package/lib/components/pisellGridPro/ToolBar/docs/ToolBar.$tab-dev.md +4 -2
  462. package/lib/components/pisellGridPro/ToolBar/docs/ToolBar.md +95 -81
  463. package/lib/components/pisellGridPro/ToolBar/index.less +5 -4
  464. package/lib/components/pisellGridPro/docs/PisellGridPro.md +173 -262
  465. package/lib/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.$tab-dev.md +3 -6
  466. package/lib/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.$tab-test.md +3 -4
  467. package/lib/components/pisellHierarchicalSummaryList/docs/pisellHierarchicalSummaryList.md +1 -2
  468. package/lib/components/pisellLongText/PisellLongText.js +6 -13
  469. package/lib/components/pisellLongText/PisellLongText.less +67 -0
  470. package/lib/components/pisellLookup/PisellLookup.js +1 -1
  471. package/lib/components/pisellLookup/PisellLookup.less +46 -4
  472. package/lib/components/pisellLookup/components/LookupResultHost.js +1 -1
  473. package/lib/components/pisellLookup/components/LookupTrigger.js +6 -8
  474. package/lib/components/pisellLookup/docs/pisellLookup.md +1 -1
  475. package/lib/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.d.ts +9 -0
  476. package/lib/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.js +160 -0
  477. package/lib/components/pisellMobileDateRangePicker/PisellMobileDateRangePicker.less +73 -0
  478. package/lib/components/pisellMobileDateRangePicker/index.d.ts +2 -0
  479. package/lib/components/pisellMobileDateRangePicker/types.d.ts +31 -0
  480. package/lib/components/pisellMobileDateRangePicker/types.js +4 -0
  481. package/lib/components/pisellMultipleSelect/PisellMultipleSelect.js +4 -6
  482. package/lib/components/pisellMultipleSelect/PisellMultipleSelect.less +139 -18
  483. package/lib/components/pisellMultipleSelect/components/EditView.js +0 -1
  484. package/lib/components/pisellNavigationMenu/PisellNavigationMenu.js +0 -4
  485. package/lib/components/pisellNumber/PisellNumber.js +6 -13
  486. package/lib/components/pisellNumber/PisellNumber.less +103 -0
  487. package/lib/components/pisellPhone/PisellPhone.js +6 -13
  488. package/lib/components/pisellPhone/PisellPhone.less +119 -0
  489. package/lib/components/pisellPhone/components/EditView.js +19 -37
  490. package/lib/components/pisellPhone/constants/countryCodes.js +25 -26
  491. package/lib/components/pisellPhone/types.d.ts +2 -2
  492. package/lib/components/pisellPhone/utils/countryCodeHelper.js +2 -2
  493. package/lib/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.md +1 -1
  494. package/lib/components/pisellRating/PisellRating.js +2 -4
  495. package/lib/components/pisellRecordBoard/PisellRecordBoard.js +29 -10
  496. package/lib/components/pisellRecordBoard/README.md +12 -0
  497. package/lib/components/pisellRecordBoard/docs/PisellRecordBoard.md +716 -70
  498. package/lib/components/pisellRecordBoard/docs/ShellFrame.md +62 -44
  499. package/lib/components/pisellRecordBoard/index.d.ts +8 -1
  500. package/lib/components/pisellRecordBoard/index.js +5 -0
  501. package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.js +174 -16
  502. package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.less +79 -0
  503. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.js +760 -0
  504. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendar.less +313 -0
  505. package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.d.ts +5 -1
  506. package/lib/components/pisellRecordBoard/shellFrame/Calendar/PisellRecordBoardCalendarView.js +11 -8
  507. package/lib/components/pisellRecordBoard/shellFrame/Calendar/bookingCalendarViewShared.js +197 -0
  508. package/lib/components/pisellRecordBoard/shellFrame/Calendar/calendarI18n.js +23 -0
  509. package/lib/components/pisellRecordBoard/shellFrame/Calendar/calendarPersistGuard.d.ts +1 -1
  510. package/lib/components/pisellRecordBoard/shellFrame/Calendar/const/bookingCalendarConstants.js +44 -0
  511. package/lib/components/pisellRecordBoard/shellFrame/Calendar/hooks/useBookingCalendarDayOverlayLayout.js +75 -0
  512. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/BookingCalendarBlockPanel.js +63 -0
  513. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/BookingCalendarOverflowListLayer.js +28 -0
  514. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/MoveConfirmModal.js +81 -0
  515. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowListModal.js +64 -0
  516. package/lib/components/pisellRecordBoard/shellFrame/Calendar/modal/OverflowPopover.js +39 -0
  517. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/BookingCalendarStyle.js +21 -0
  518. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarDateUtils.js +562 -0
  519. package/lib/components/pisellRecordBoard/shellFrame/Calendar/utils/bookingCalendarSelectionUtils.js +17 -0
  520. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDaySelectionBar.js +33 -0
  521. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarDayView.js +585 -0
  522. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarGroupRowHeader.js +43 -0
  523. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarMonthView.js +113 -0
  524. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarResourceView.js +614 -0
  525. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/BookingCalendarWeekView.js +170 -0
  526. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/bookingCalendarDayViewContext.js +10 -0
  527. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/day/useBookingCalendarDayHourRemaining.js +34 -0
  528. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/day/useBookingCalendarDaySelection.js +38 -0
  529. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/resource/useBookingCalendarResourceCellToggle.js +19 -0
  530. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/resource/useBookingCalendarResourceDayHeaderRemaining.js +34 -0
  531. package/lib/components/pisellRecordBoard/shellFrame/Calendar/view/useBookingCalendarGoToDayFromCell.js +30 -0
  532. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/index.js +2 -1
  533. package/lib/components/pisellRecordBoard/shellFrame/Pagination/index.js +7 -1
  534. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/NoteTicker.js +45 -0
  535. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.d.ts +14 -0
  536. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/PisellRecordBoardResourceWallView.js +439 -0
  537. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/RecordBoardResourceWall.d.ts +11 -0
  538. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/RecordBoardResourceWall.js +9 -0
  539. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanel.js +181 -0
  540. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelColorTab.js +64 -0
  541. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallControlPanelLayoutTab.js +57 -0
  542. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewport.less +88 -0
  543. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/ResourceWallViewportToolbar.js +85 -0
  544. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.js +220 -0
  545. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallCard.less +339 -0
  546. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/VenueWallMarquee.less +52 -0
  547. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallCardPresentation.js +153 -0
  548. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.d.ts +32 -0
  549. package/lib/components/pisellRecordBoard/shellFrame/ResourceWall/venueWallUtils.js +181 -0
  550. package/lib/components/pisellRecordBoard/shellFrame/Search/index.js +1 -1
  551. package/lib/components/pisellRecordBoard/shellFrame/ShellBodyMetaContext.d.ts +5 -1
  552. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/ToolBarFilter.less +30 -3
  553. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/index.js +170 -81
  554. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolBarConstants.js +14 -0
  555. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolBarI18n.js +63 -0
  556. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/recordBoardToolbar.less +406 -14
  557. package/lib/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.js +14 -4
  558. package/lib/components/pisellRecordBoard/shellFrame/index.d.ts +9 -2
  559. package/lib/components/pisellRecordBoard/shellFrame/index.js +73 -19
  560. package/lib/components/pisellRecordBoard/types.d.ts +413 -8
  561. package/lib/components/pisellRecordBoard/types.js +12 -0
  562. package/lib/components/pisellRecordBoard/utils/partitionShellFrameChildren.js +16 -0
  563. package/lib/components/pisellRecordBoard/utils/recordBoardPhoneGrid.d.ts +22 -0
  564. package/lib/components/pisellRecordBoard/utils/recordBoardPhoneGrid.js +50 -0
  565. package/lib/components/pisellReservationSchedule/PisellReservationSchedule.js +67 -15
  566. package/lib/components/pisellReservationSchedule/PisellReservationSchedule.less +23 -0
  567. package/lib/components/pisellReservationSchedule/locales.js +21 -3
  568. package/lib/components/pisellReservationSchedule/types.d.ts +5 -0
  569. package/lib/components/pisellReservationScheduleBand/PisellReservationScheduleBand.js +11 -6
  570. package/lib/components/pisellReservationScheduleBand/PisellReservationScheduleBand.less +37 -4
  571. package/lib/components/pisellReservationScheduleBand/index.d.ts +2 -1
  572. package/lib/components/pisellReservationScheduleBand/types.d.ts +13 -2
  573. package/lib/components/pisellReservationScheduleBand/utils/formatScheduleAtLabel.d.ts +13 -0
  574. package/lib/components/pisellReservationScheduleBand/utils/formatScheduleAtLabel.js +17 -0
  575. package/lib/components/pisellShellFrame/PisellShellFrame.js +2 -2
  576. package/lib/components/pisellShellFrame/PisellShellFrame.less +18 -2
  577. package/lib/components/pisellShellFrame/types.d.ts +6 -0
  578. package/lib/components/pisellSingleLineText/PisellSingleLineText.js +14 -21
  579. package/lib/components/pisellSingleLineText/PisellSingleLineText.less +143 -0
  580. package/lib/components/pisellSingleLineText/docs/pisellSingleLineText.md +256 -256
  581. package/lib/components/pisellSingleSelect/PisellSingleSelect.js +4 -7
  582. package/lib/components/pisellSingleSelect/PisellSingleSelect.less +106 -5
  583. package/lib/components/pisellSingleSelect/docs/pisellSingleSelect.md +428 -525
  584. package/lib/components/pisellSort/docs/PisellSort.md +131 -67
  585. package/lib/components/pisellStatisticList/index.js +0 -1
  586. package/lib/components/pisellTimeNavigator/PisellTimeNavigator.js +226 -57
  587. package/lib/components/pisellTimeNavigator/PisellTimeNavigator.less +128 -15
  588. package/lib/components/pisellTimeNavigator/components/CursorLayer.js +3 -3
  589. package/lib/components/pisellTimeNavigator/components/GestureLayer.js +12 -3
  590. package/lib/components/pisellTimeNavigator/components/ScaleLayer.js +34 -6
  591. package/lib/components/pisellTimeNavigator/docs/pisellTimeNavigator.$tab-dev.md +26 -42
  592. package/lib/components/pisellTimeNavigator/docs/pisellTimeNavigator.$tab-test.md +5 -5
  593. package/lib/components/pisellTimeNavigator/hooks/useTimeAxis.js +42 -22
  594. package/lib/components/pisellTimeNavigator/index.d.ts +1 -1
  595. package/lib/components/pisellTimeNavigator/types.d.ts +15 -0
  596. package/lib/components/pisellTimeNavigator/utils/index.d.ts +25 -4
  597. package/lib/components/pisellTimeNavigator/utils/index.js +88 -17
  598. package/lib/components/pisellTimeRangeDisplay/docs/pisellTimeRangeDisplay.md +226 -227
  599. package/lib/components/pisellUrl/PisellUrl.js +6 -13
  600. package/lib/components/pisellWalletPassCard/index.js +5 -11
  601. package/lib/components/productCard/cartSkuCard/components/Gift/index.js +36 -0
  602. package/lib/components/productCard/cartSkuCard/components/Gift/index.less +84 -0
  603. package/lib/components/productCard/cartSkuCard/components/Promotion/index.js +25 -0
  604. package/lib/components/productCard/cartSkuCard/components/Promotion/index.less +16 -0
  605. package/lib/components/productCard/cartSkuCard/components/basicInfo/index.js +69 -8
  606. package/lib/components/productCard/cartSkuCard/components/basicInfo/index.less +80 -1
  607. package/lib/components/productCard/cartSkuCard/components/holders/index.js +1 -1
  608. package/lib/components/productCard/cartSkuCard/components/packages/index.js +26 -11
  609. package/lib/components/productCard/cartSkuCard/components/specs/index.js +23 -8
  610. package/lib/components/productCard/cartSkuCard/components/specs/index.less +11 -0
  611. package/lib/components/productCard/cartSkuCard/components/timeRange/index.js +2 -1
  612. package/lib/components/productCard/cartSkuCard/components/weighing/index.js +29 -0
  613. package/lib/components/productCard/cartSkuCard/components/weighing/index.less +25 -0
  614. package/lib/components/productCard/cartSkuCard/index.js +68 -8
  615. package/lib/components/productCard/cartSkuCard/locales.js +40 -5
  616. package/lib/components/productCard/components/Header/DeleteButton/index.js +2 -2
  617. package/lib/components/productCard/components/Header/DeleteButton/index.less +1 -2
  618. package/lib/components/productCard/components/Header/EditButton/index.js +2 -1
  619. package/lib/components/productCard/components/Header/index.less +1 -1
  620. package/lib/components/productCard/components/Time/components/SelectHolder/index.js +2 -3
  621. package/lib/components/productCard/components/Time/components/SelectHolderModal/index.js +5 -5
  622. package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.js +2 -2
  623. package/lib/components/productCard/components/Time/components/SelectResource/index.js +3 -6
  624. package/lib/components/productCard/components/Time/index.js +2 -3
  625. package/lib/components/productCard/index.d.ts +1 -0
  626. package/lib/components/productCard/index.js +2 -0
  627. package/lib/components/productCard/lineItem/BookingLineItem.js +177 -0
  628. package/lib/components/productCard/lineItem/index.js +197 -0
  629. package/lib/components/productCard/lineItem/index.less +195 -0
  630. package/lib/components/productCard/lineItem/locales.js +25 -0
  631. package/lib/components/productCard/status.js +3 -0
  632. package/lib/components/productCard/types.d.ts +10 -0
  633. package/lib/components/productCard/utils.js +1 -1
  634. package/lib/components/select/index.js +1 -1
  635. package/lib/components/select-time/index.js +1 -0
  636. package/lib/components/table/Actions/component/ExportImport/index.js +4 -3
  637. package/lib/components/table/Actions/component/GallerySetting/index.js +11 -12
  638. package/lib/components/table/Actions/component/ViewMode/index.js +5 -6
  639. package/lib/components/table/Actions/index.js +1 -1
  640. package/lib/components/table/BasicTable/index.js +3 -4
  641. package/lib/components/table/Gallery/components/GalleryItem/components/Title/index.less +1 -1
  642. package/lib/components/table/Gallery/components/GalleryItem/index.js +9 -17
  643. package/lib/components/table/Gallery/components/GalleryItem/index.less +0 -1
  644. package/lib/components/table/Gallery/index.js +3 -11
  645. package/lib/components/table/Table/fields/text/Show/index.js +1 -1
  646. package/lib/components/table/Table/index.js +1 -2
  647. package/lib/components/table/Table/tableConfig/header/index.js +2 -2
  648. package/lib/components/table/Table/utils.js +1 -5
  649. package/lib/components/table/hooks/useTableSetting.js +0 -3
  650. package/lib/components/table/hooks/useTransDataSource.js +3 -4
  651. package/lib/components/table/index.js +1 -1
  652. package/lib/components/tabs/index.less +1 -1
  653. package/lib/components/translation/index.d.ts +0 -1
  654. package/lib/components/translation/index.js +9 -35
  655. package/lib/components/translation/index.less +0 -12
  656. package/lib/components/versionModal/index.d.ts +0 -1
  657. package/lib/components/versionModal/index.js +2 -2
  658. package/lib/components/versionSelect/index.js +4 -4
  659. package/lib/components/virtual-keyboard/Amount/index.js +4 -4
  660. package/lib/index.d.ts +101 -106
  661. package/lib/index.js +314 -298
  662. package/lib/locales/en-US.js +195 -70
  663. package/lib/locales/ja.js +196 -13
  664. package/lib/locales/pt.js +196 -13
  665. package/lib/locales/zh-CN.js +189 -64
  666. package/lib/locales/zh-TW.js +194 -69
  667. package/lib/pisell-materials.tw.css +0 -1
  668. package/lib/tailwind-input.css +3 -1
  669. package/package.json +1 -1
  670. package/es/components/PisellContactBrief/PisellContactBrief.d.ts +0 -34
  671. package/es/components/PisellContactBrief/PisellContactBrief.js +0 -156
  672. package/es/components/PisellContactBrief/PisellContactBrief.less +0 -192
  673. package/es/components/PisellContactBrief/components/ContactFormModal.js +0 -140
  674. package/es/components/PisellContactBrief/docs/PisellContactBrief.$tab-design.md +0 -109
  675. package/es/components/PisellContactBrief/docs/PisellContactBrief.$tab-dev.md +0 -106
  676. package/es/components/PisellContactBrief/docs/PisellContactBrief.$tab-test.md +0 -125
  677. package/es/components/PisellContactBrief/docs/PisellContactBrief.md +0 -129
  678. package/es/components/PisellContactBrief/index.d.ts +0 -2
  679. package/es/components/PisellContactBrief/locales.js +0 -57
  680. package/es/components/PisellContactBrief/types.d.ts +0 -86
  681. package/es/components/Template/[ComponentName].less +0 -1
  682. package/es/components/Template/docs/[ComponentName].$tab-design.md +0 -7
  683. package/es/components/Template/docs/[ComponentName].$tab-dev.md +0 -1137
  684. package/es/components/Template/docs/[ComponentName].$tab-test.md +0 -7
  685. package/es/components/Template/docs/[ComponentName].md +0 -510
  686. package/es/components/hardwareErrorTip/errorCard/index.d.ts +0 -25
  687. package/es/components/hardwareErrorTip/errorCard/index.js +0 -68
  688. package/es/components/hardwareErrorTip/errorCard/index.less +0 -137
  689. package/es/components/hardwareErrorTip/errorTipStatistics/index.d.ts +0 -10
  690. package/es/components/hardwareErrorTip/errorTipStatistics/index.js +0 -31
  691. package/es/components/hardwareErrorTip/errorTipStatistics/index.less +0 -34
  692. package/es/components/hardwareErrorTip/index.d.ts +0 -20
  693. package/es/components/hardwareErrorTip/index.js +0 -151
  694. package/es/components/hardwareErrorTip/index.less +0 -95
  695. package/es/components/hardwareErrorTip/logCard/index.d.ts +0 -25
  696. package/es/components/hardwareErrorTip/logCard/index.js +0 -72
  697. package/es/components/hardwareErrorTip/logCard/index.less +0 -121
  698. package/es/components/hardwareErrorTip/readme.md +0 -309
  699. package/es/components/hardwareErrorTip/types.js +0 -54
  700. package/es/components/pisellActionPanel/PisellActionPanel.d.ts +0 -24
  701. package/es/components/pisellActionPanel/PisellActionPanel.js +0 -68
  702. package/es/components/pisellActionPanel/PisellActionPanel.less +0 -69
  703. package/es/components/pisellActionPanel/docs/pisellActionPanel.$tab-design.md +0 -148
  704. package/es/components/pisellActionPanel/docs/pisellActionPanel.$tab-dev.md +0 -53
  705. package/es/components/pisellActionPanel/docs/pisellActionPanel.$tab-test.md +0 -64
  706. package/es/components/pisellActionPanel/docs/pisellActionPanel.md +0 -160
  707. package/es/components/pisellActionPanel/index.d.ts +0 -2
  708. package/es/components/pisellActionPanel/types.d.ts +0 -87
  709. package/es/components/pisellBaseCard/PisellBaseCard.d.ts +0 -20
  710. package/es/components/pisellBaseCard/PisellBaseCard.js +0 -73
  711. package/es/components/pisellBaseCard/PisellBaseCard.less +0 -25
  712. package/es/components/pisellBaseCard/docs/pisellBaseCard.$tab-design.md +0 -144
  713. package/es/components/pisellBaseCard/docs/pisellBaseCard.$tab-dev.md +0 -92
  714. package/es/components/pisellBaseCard/docs/pisellBaseCard.$tab-test.md +0 -86
  715. package/es/components/pisellBaseCard/docs/pisellBaseCard.md +0 -165
  716. package/es/components/pisellBaseCard/index.d.ts +0 -2
  717. package/es/components/pisellBaseCard/types.d.ts +0 -49
  718. package/es/components/pisellCustomerBrief/PisellCustomerBrief.d.ts +0 -57
  719. package/es/components/pisellCustomerBrief/PisellCustomerBrief.js +0 -92
  720. package/es/components/pisellCustomerBrief/PisellCustomerBrief.less +0 -8
  721. package/es/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-design.md +0 -115
  722. package/es/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-dev.md +0 -73
  723. package/es/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-test.md +0 -66
  724. package/es/components/pisellCustomerBrief/docs/pisellCustomerBrief.md +0 -132
  725. package/es/components/pisellCustomerBrief/index.d.ts +0 -2
  726. package/es/components/pisellCustomerBrief/types.d.ts +0 -86
  727. package/es/components/pisellEntityCard/PisellEntityCard.d.ts +0 -47
  728. package/es/components/pisellEntityCard/PisellEntityCard.js +0 -315
  729. package/es/components/pisellEntityCard/PisellEntityCard.less +0 -362
  730. package/es/components/pisellEntityCard/docs/pisellEntityCard.$tab-design.md +0 -209
  731. package/es/components/pisellEntityCard/docs/pisellEntityCard.$tab-dev.md +0 -82
  732. package/es/components/pisellEntityCard/docs/pisellEntityCard.$tab-test.md +0 -122
  733. package/es/components/pisellEntityCard/docs/pisellEntityCard.md +0 -176
  734. package/es/components/pisellEntityCard/index.d.ts +0 -2
  735. package/es/components/pisellEntityCard/types.d.ts +0 -148
  736. package/es/components/pisellExport/PisellExport.d.ts +0 -11
  737. package/es/components/pisellExport/PisellExport.js +0 -44
  738. package/es/components/pisellExport/PisellExport.less +0 -141
  739. package/es/components/pisellExport/docs/pisellExport.$tab-design.md +0 -116
  740. package/es/components/pisellExport/docs/pisellExport.$tab-dev.md +0 -132
  741. package/es/components/pisellExport/docs/pisellExport.$tab-test.md +0 -61
  742. package/es/components/pisellExport/docs/pisellExport.md +0 -162
  743. package/es/components/pisellExport/index.d.ts +0 -2
  744. package/es/components/pisellExport/types.d.ts +0 -67
  745. package/es/components/pisellImport/PisellImport.d.ts +0 -11
  746. package/es/components/pisellImport/PisellImport.js +0 -81
  747. package/es/components/pisellImport/PisellImport.less +0 -141
  748. package/es/components/pisellImport/docs/pisellImport.$tab-design.md +0 -121
  749. package/es/components/pisellImport/docs/pisellImport.$tab-dev.md +0 -137
  750. package/es/components/pisellImport/docs/pisellImport.$tab-test.md +0 -69
  751. package/es/components/pisellImport/docs/pisellImport.md +0 -174
  752. package/es/components/pisellImport/index.d.ts +0 -2
  753. package/es/components/pisellImport/types.d.ts +0 -89
  754. package/es/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.js +0 -3811
  755. package/es/components/productCard/components/Header/Actions/index.less +0 -15
  756. package/es/theme/pisell-components.js +0 -76
  757. package/lib/components/PisellContactBrief/PisellContactBrief.d.ts +0 -34
  758. package/lib/components/PisellContactBrief/PisellContactBrief.js +0 -158
  759. package/lib/components/PisellContactBrief/PisellContactBrief.less +0 -192
  760. package/lib/components/PisellContactBrief/components/ContactFormModal.js +0 -139
  761. package/lib/components/PisellContactBrief/docs/PisellContactBrief.$tab-design.md +0 -109
  762. package/lib/components/PisellContactBrief/docs/PisellContactBrief.$tab-dev.md +0 -106
  763. package/lib/components/PisellContactBrief/docs/PisellContactBrief.$tab-test.md +0 -125
  764. package/lib/components/PisellContactBrief/docs/PisellContactBrief.md +0 -129
  765. package/lib/components/PisellContactBrief/index.d.ts +0 -2
  766. package/lib/components/PisellContactBrief/locales.js +0 -57
  767. package/lib/components/PisellContactBrief/types.d.ts +0 -86
  768. package/lib/components/Template/[ComponentName].less +0 -1
  769. package/lib/components/Template/docs/[ComponentName].$tab-design.md +0 -7
  770. package/lib/components/Template/docs/[ComponentName].$tab-dev.md +0 -1137
  771. package/lib/components/Template/docs/[ComponentName].$tab-test.md +0 -7
  772. package/lib/components/Template/docs/[ComponentName].md +0 -510
  773. package/lib/components/hardwareErrorTip/errorCard/index.d.ts +0 -25
  774. package/lib/components/hardwareErrorTip/errorCard/index.js +0 -71
  775. package/lib/components/hardwareErrorTip/errorCard/index.less +0 -137
  776. package/lib/components/hardwareErrorTip/errorTipStatistics/index.d.ts +0 -10
  777. package/lib/components/hardwareErrorTip/errorTipStatistics/index.js +0 -34
  778. package/lib/components/hardwareErrorTip/errorTipStatistics/index.less +0 -34
  779. package/lib/components/hardwareErrorTip/index.d.ts +0 -20
  780. package/lib/components/hardwareErrorTip/index.js +0 -153
  781. package/lib/components/hardwareErrorTip/index.less +0 -95
  782. package/lib/components/hardwareErrorTip/logCard/index.d.ts +0 -25
  783. package/lib/components/hardwareErrorTip/logCard/index.js +0 -75
  784. package/lib/components/hardwareErrorTip/logCard/index.less +0 -121
  785. package/lib/components/hardwareErrorTip/readme.md +0 -309
  786. package/lib/components/hardwareErrorTip/types.js +0 -57
  787. package/lib/components/pisellActionPanel/PisellActionPanel.d.ts +0 -24
  788. package/lib/components/pisellActionPanel/PisellActionPanel.js +0 -71
  789. package/lib/components/pisellActionPanel/PisellActionPanel.less +0 -69
  790. package/lib/components/pisellActionPanel/docs/pisellActionPanel.$tab-design.md +0 -148
  791. package/lib/components/pisellActionPanel/docs/pisellActionPanel.$tab-dev.md +0 -53
  792. package/lib/components/pisellActionPanel/docs/pisellActionPanel.$tab-test.md +0 -64
  793. package/lib/components/pisellActionPanel/docs/pisellActionPanel.md +0 -160
  794. package/lib/components/pisellActionPanel/index.d.ts +0 -2
  795. package/lib/components/pisellActionPanel/types.d.ts +0 -87
  796. package/lib/components/pisellBaseCard/PisellBaseCard.d.ts +0 -20
  797. package/lib/components/pisellBaseCard/PisellBaseCard.js +0 -76
  798. package/lib/components/pisellBaseCard/PisellBaseCard.less +0 -25
  799. package/lib/components/pisellBaseCard/docs/pisellBaseCard.$tab-design.md +0 -144
  800. package/lib/components/pisellBaseCard/docs/pisellBaseCard.$tab-dev.md +0 -92
  801. package/lib/components/pisellBaseCard/docs/pisellBaseCard.$tab-test.md +0 -86
  802. package/lib/components/pisellBaseCard/docs/pisellBaseCard.md +0 -165
  803. package/lib/components/pisellBaseCard/index.d.ts +0 -2
  804. package/lib/components/pisellBaseCard/types.d.ts +0 -49
  805. package/lib/components/pisellCustomerBrief/PisellCustomerBrief.d.ts +0 -57
  806. package/lib/components/pisellCustomerBrief/PisellCustomerBrief.js +0 -94
  807. package/lib/components/pisellCustomerBrief/PisellCustomerBrief.less +0 -8
  808. package/lib/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-design.md +0 -115
  809. package/lib/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-dev.md +0 -73
  810. package/lib/components/pisellCustomerBrief/docs/pisellCustomerBrief.$tab-test.md +0 -66
  811. package/lib/components/pisellCustomerBrief/docs/pisellCustomerBrief.md +0 -132
  812. package/lib/components/pisellCustomerBrief/index.d.ts +0 -2
  813. package/lib/components/pisellCustomerBrief/types.d.ts +0 -86
  814. package/lib/components/pisellEntityCard/PisellEntityCard.d.ts +0 -47
  815. package/lib/components/pisellEntityCard/PisellEntityCard.js +0 -318
  816. package/lib/components/pisellEntityCard/PisellEntityCard.less +0 -362
  817. package/lib/components/pisellEntityCard/docs/pisellEntityCard.$tab-design.md +0 -209
  818. package/lib/components/pisellEntityCard/docs/pisellEntityCard.$tab-dev.md +0 -82
  819. package/lib/components/pisellEntityCard/docs/pisellEntityCard.$tab-test.md +0 -122
  820. package/lib/components/pisellEntityCard/docs/pisellEntityCard.md +0 -176
  821. package/lib/components/pisellEntityCard/index.d.ts +0 -2
  822. package/lib/components/pisellEntityCard/types.d.ts +0 -148
  823. package/lib/components/pisellExport/PisellExport.d.ts +0 -11
  824. package/lib/components/pisellExport/PisellExport.js +0 -47
  825. package/lib/components/pisellExport/PisellExport.less +0 -141
  826. package/lib/components/pisellExport/docs/pisellExport.$tab-design.md +0 -116
  827. package/lib/components/pisellExport/docs/pisellExport.$tab-dev.md +0 -132
  828. package/lib/components/pisellExport/docs/pisellExport.$tab-test.md +0 -61
  829. package/lib/components/pisellExport/docs/pisellExport.md +0 -162
  830. package/lib/components/pisellExport/index.d.ts +0 -2
  831. package/lib/components/pisellExport/types.d.ts +0 -67
  832. package/lib/components/pisellImport/PisellImport.d.ts +0 -11
  833. package/lib/components/pisellImport/PisellImport.js +0 -84
  834. package/lib/components/pisellImport/PisellImport.less +0 -141
  835. package/lib/components/pisellImport/docs/pisellImport.$tab-design.md +0 -121
  836. package/lib/components/pisellImport/docs/pisellImport.$tab-dev.md +0 -137
  837. package/lib/components/pisellImport/docs/pisellImport.$tab-test.md +0 -69
  838. package/lib/components/pisellImport/docs/pisellImport.md +0 -174
  839. package/lib/components/pisellImport/index.d.ts +0 -2
  840. package/lib/components/pisellImport/types.d.ts +0 -89
  841. package/lib/components/pisellRecordBoard/shellFrame/Calendar/BookingCalendarDemo.js +0 -3813
  842. package/lib/components/productCard/components/Header/Actions/index.less +0 -15
  843. package/lib/theme/pisell-components.js +0 -76
  844. /package/es/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-design.md +0 -0
  845. /package/es/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-dev.md +0 -0
  846. /package/es/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-test.md +0 -0
  847. /package/lib/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-design.md +0 -0
  848. /package/lib/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-dev.md +0 -0
  849. /package/lib/components/pisellQuickFilter/{doc → docs}/PisellQuickFilter.$tab-test.md +0 -0
@@ -5,19 +5,23 @@ const require_ItemLayer = require("./components/ItemLayer.js");
5
5
  const require_EditableItemLayer = require("./components/EditableItemLayer.js");
6
6
  const require_floorMapElementKindUtils = require("./utils/floorMapElementKindUtils.js");
7
7
  const require_floorMapDropUtils = require("./utils/floorMapDropUtils.js");
8
+ const require_floorMapLayoutConstants = require("./floorMapLayoutConstants.js");
8
9
  const require_FloorMapToolbar = require("./components/FloorMapToolbar.js");
9
10
  const require_useEngineContext = require("../../hooks/useEngineContext.js");
10
11
  const require_floorMapCanvasDisplay = require("./utils/floorMapCanvasDisplay.js");
11
12
  const require_CanvasTabs = require("./components/CanvasTabs.js");
12
13
  const require_FloorMapEditTopBar = require("./components/FloorMapEditTopBar.js");
14
+ const require_mergeCanvasesForTabs = require("./utils/mergeCanvasesForTabs.js");
15
+ const require_FloorMapOverview = require("./components/FloorMapOverview.js");
13
16
  const require_FloorMapEditPanel = require("./components/FloorMapEditPanel.js");
14
17
  const require_ViewControlsWithZoom = require("./components/ViewControlsWithZoom.js");
15
18
  const require_layoutMeasurements = require("./utils/layoutMeasurements.js");
16
19
  const require_useFloorMapEditState = require("./hooks/useFloorMapEditState.js");
17
20
  const require_useFloorMapTransformMetrics = require("./hooks/useFloorMapTransformMetrics.js");
18
21
  const require_floorMapFallbackRender = require("./utils/floorMapFallbackRender.js");
22
+ const require_floorMapAppearance = require("./appearance/floorMapAppearance.js");
19
23
  const require_useFloorMapPaletteTouchDrag = require("./hooks/useFloorMapPaletteTouchDrag.js");
20
- const require_mergeCanvasesForTabs = require("./utils/mergeCanvasesForTabs.js");
24
+ const require_floorMapOverviewLayout = require("./utils/floorMapOverviewLayout.js");
21
25
  const require_FloorMapLayoutContext = require("./context/FloorMapLayoutContext.js");
22
26
  const require_mergeFloorMapLayoutContext = require("./context/mergeFloorMapLayoutContext.js");
23
27
  let react = require("react");
@@ -33,10 +37,13 @@ require("./PisellFloorMapLayout.less");
33
37
  * PisellFloorMapLayout - 空间布局视图
34
38
  * 支持两种用法:1) 仅传入 items + renderItem(原有用法);2) 传入 floorMapConfig + dataSources + mode 使用平面图视图(含多画布/编辑态)
35
39
  */
36
- const PREFIX = "pisell-floor-map-layout";
40
+ /**
41
+ * 布局根实现(由 {@link PisellFloorMapLayout} forwardRef 包裹)。
42
+ * 负责:上下文与 props 合并、编辑态/阅读态分支、Transform 视口、图元层与工具栏联动。
43
+ */
37
44
  function PisellFloorMapLayoutInner(props, ref) {
38
- var _engineCtx$engine, _config$sceneElements;
39
- const { className, style, items: itemsProp, renderItem, rowKey, renderItemByKind, getMergedItemWrapperStyle, mapLayer, cellSize: cellSizeProp, itemUnit = "cell", zoom = {}, pan = {}, controls = {}, enableHover = true, onItemClick, onItemHover, onItemLeave, mode = "read", floorMapConfig: floorMapConfigProp, dataSources, onSave, onDataSourceRecordSave, dataSourceLabels, dataSourceFormColumns, dataSourceRecordForm, loading, saveError, onElementRenderError, toolbarShowSave = true, floorMapFullscreenMode, showDataSourceRecordFormBlock, floorMapViewportOverlay, viewportOverlayPlacement = "top-start", viewportOverlayClassName, canvasTabsBarTrailing, viewportDockTrailing } = require_mergeFloorMapLayoutContext.mergeFloorMapLayoutPropsFromContext(props, require_FloorMapLayoutContext.useFloorMapLayoutContext());
45
+ var _ref, _currentCanvas$mapLay2, _currentCanvas$mapLay3, _mapLayer$backgroundC, _engineCtx$engine, _mapLayer$boundingPad, _config$sceneElements;
46
+ const { className, style, items: itemsProp, renderItem, rowKey, renderItemByKind, getMergedItemWrapperStyle, mapLayer, cellSize: cellSizeProp, itemUnit = "cell", zoom = {}, pan = {}, controls = {}, enableHover = true, readModeSelectedItemId, onItemClick, onItemHover, onItemLeave, mode = "read", floorMapConfig: floorMapConfigProp, dataSources, onSave, onExitEdit, onDataSourceRecordSave, dataSourceLabels, dataSourceFormColumns, dataSourceRecordForm, loading, saveError, onElementRenderError, toolbarShowSave = true, floorMapFullscreenMode, appearanceMode = "light", showDataSourceRecordFormBlock, floorMapViewportOverlay, viewportOverlayPlacement = "top-start", viewportOverlayClassName, editTopBarPhoneLayout = false, canvasTabsBarTrailing, viewportDockToolButtons, viewportDockTrailing, viewportPersist = true, viewportPersistNamespace } = require_mergeFloorMapLayoutContext.mergeFloorMapLayoutPropsFromContext(props, require_FloorMapLayoutContext.useFloorMapLayoutContext());
40
47
  const { token } = antd.theme.useToken();
41
48
  const isFloorMapView = Boolean(floorMapConfigProp);
42
49
  const contentOffsetRef = (0, react.useRef)({
@@ -45,7 +52,7 @@ function PisellFloorMapLayoutInner(props, ref) {
45
52
  });
46
53
  const mapDropLayerRef = (0, react.useRef)(null);
47
54
  const transformRef = (0, react.useRef)(null);
48
- const { config, currentCanvasId, setCurrentCanvasId, selectedId, setSelectedId, placeMode, setPlaceMode, items, saving, savingRecord, handleAddCanvas, handleRemoveCanvas, handleRenameCanvas, handleUpdateItem, handleCanvasPlaceClick, handleSave, placeSceneElementFromPaletteDrop, editPanelParams, placeOverlayClass, isLayoutDirty, toggleDraftCanvasShowGrid, toggleSelectedLayoutLock, duplicateSelectedElement, deleteSelectedElement } = require_useFloorMapEditState.useFloorMapEditState({
55
+ const { config, currentCanvasId, setCurrentCanvasId, selectedId, setSelectedId, placeMode, setPlaceMode, items, saving, savingRecord, handleAddCanvas, handleRemoveCanvas, handleRenameCanvas, handleUpdateItem, handleCanvasPlaceClick, handleSave, placeSceneElementFromPaletteDrop, editPanelParams, placeOverlayClass, isLayoutDirty, toggleDraftCanvasShowGrid, toggleSelectedLayoutLock, duplicateSelectedElement, deleteSelectedElement, undoDraft, redoDraft, canUndo, canRedo, discardDraft } = require_useFloorMapEditState.useFloorMapEditState({
49
56
  floorMapConfigProp,
50
57
  isFloorMapView,
51
58
  itemsProp,
@@ -56,42 +63,130 @@ function PisellFloorMapLayoutInner(props, ref) {
56
63
  dataSourceFormColumns,
57
64
  dataSourceRecordForm,
58
65
  dataSourceLabels,
59
- layoutPrefix: PREFIX,
66
+ layoutPrefix: require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX,
60
67
  contentOffsetRef,
61
68
  showDataSourceRecordFormBlock
62
69
  });
63
- const effectiveMapLayer = (0, react.useMemo)(() => {
64
- var _canvas$mapLayer;
65
- if (!isFloorMapView || !config || !currentCanvasId) return mapLayer;
66
- const canvas = config.canvases.find((c) => c.id === currentCanvasId);
67
- return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, mapLayer !== null && mapLayer !== void 0 ? mapLayer : {}), (_canvas$mapLayer = canvas === null || canvas === void 0 ? void 0 : canvas.mapLayer) !== null && _canvas$mapLayer !== void 0 ? _canvas$mapLayer : {});
70
+ /**
71
+ * 当前选中的画布配置:用于提取当前画布级 mapLayer 显式配置。
72
+ */
73
+ const currentCanvas = (0, react.useMemo)(() => {
74
+ var _config$canvases$find;
75
+ if (!isFloorMapView || !config || !currentCanvasId) return null;
76
+ return (_config$canvases$find = config.canvases.find((canvas) => canvas.id === currentCanvasId)) !== null && _config$canvases$find !== void 0 ? _config$canvases$find : null;
68
77
  }, [
69
78
  isFloorMapView,
70
79
  config,
71
- currentCanvasId,
80
+ currentCanvasId
81
+ ]);
82
+ /**
83
+ * 「取消编辑」组合:先丢弃 draft(同步把 draftConfig replace 回上游 props 的值),
84
+ * 再调用业务侧 onExitEdit 退出编辑模式。
85
+ *
86
+ * 不在 onExitEdit 本身做 discard,是因为「完成」按钮链路也会调 onExitEdit,
87
+ * 完成时草稿应保留等 props 回写(参考 useFloorMapEditState.handleSave 的 baseline 处理),
88
+ * 一旦在 onExitEdit 里 discard 会把保存中的视觉态闪回旧值。
89
+ */
90
+ const handleCancelEdit = (0, react.useCallback)(() => {
91
+ discardDraft();
92
+ onExitEdit === null || onExitEdit === void 0 || onExitEdit();
93
+ }, [discardDraft, onExitEdit]);
94
+ /** 当前画布下的 mapLayer:全局 `mapLayer` 与画布级配置合并,供 MapLayer / 吸附等读取 */
95
+ const effectiveMapLayer = (0, react.useMemo)(() => {
96
+ var _currentCanvas$mapLay;
97
+ if (!isFloorMapView || !currentCanvas) return mapLayer;
98
+ return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, mapLayer !== null && mapLayer !== void 0 ? mapLayer : {}), (_currentCanvas$mapLay = currentCanvas.mapLayer) !== null && _currentCanvas$mapLay !== void 0 ? _currentCanvas$mapLay : {});
99
+ }, [
100
+ isFloorMapView,
101
+ currentCanvas,
72
102
  mapLayer
73
103
  ]);
104
+ const appearanceTokens = (0, react.useMemo)(() => require_floorMapAppearance.getFloorMapAppearanceTokens(appearanceMode), [appearanceMode]);
105
+ const canvasBackgroundColor = (_ref = (_currentCanvas$mapLay2 = currentCanvas === null || currentCanvas === void 0 || (_currentCanvas$mapLay3 = currentCanvas.mapLayer) === null || _currentCanvas$mapLay3 === void 0 ? void 0 : _currentCanvas$mapLay3.backgroundColor) !== null && _currentCanvas$mapLay2 !== void 0 ? _currentCanvas$mapLay2 : mapLayer === null || mapLayer === void 0 ? void 0 : mapLayer.backgroundColor) !== null && _ref !== void 0 ? _ref : appearanceTokens.fallbackCanvasBackgroundColor;
106
+ /**
107
+ * All 视图整体背景色:不再按各画布区域分别取色(用户明确要求「不要按区域来」),
108
+ * 改成跟单画布同一套**根级 + appearance 兜底**链。这样:
109
+ * - root `mapLayer.backgroundColor` 配的深色背景,All 视图整张背景都吃到;
110
+ * - 没显式配色时按 `appearanceMode`(dark/light)兜底;
111
+ * - 画布级的 `canvas.mapLayer.backgroundColor` 在 All 视图刻意不读,避免某张画布
112
+ * 的私有背景污染整体 All 视图。
113
+ */
114
+ const overviewBackgroundColor = (_mapLayer$backgroundC = mapLayer === null || mapLayer === void 0 ? void 0 : mapLayer.backgroundColor) !== null && _mapLayer$backgroundC !== void 0 ? _mapLayer$backgroundC : appearanceTokens.fallbackCanvasBackgroundColor;
74
115
  /**
75
116
  * 必须与下方 TransformWrapper 的 `key` 完全一致。
76
117
  * 远程/合并配置落地后 boundingPadding 等会变 → Wrapper 重挂载 → 若 autoFit 仍按旧「仅 canvasId」帧认为已 done,首屏会停在初始 transform;切换画布才因 id 变化再次 fit。
77
118
  */
119
+ /**
120
+ * 「全览」状态:仅阅读态下、启用画布 ≥ 2 时通过画布 Tab 最前的「All」入口进入。
121
+ * 不写入 `currentCanvasId`,避免:
122
+ * - useFloorMapEditState 内的「画布存在性同步」effect 把当前 id 立刻 reset 掉;
123
+ * - 触发 transformWrapperKey 变化导致单画布视角缓存被清。
124
+ * 仅由本组件根据 mode/画布数量切换;外部不感知。
125
+ */
126
+ const [isOverview, setIsOverview] = (0, react.useState)(false);
127
+ /**
128
+ * 与下方 TransformWrapper `key` 完全一致;远程合并 padding/默认缩放回包后变化触发重挂载,
129
+ * 单画布 ↔ 全览(All)切换也通过本 key 切换,避免视角与缓存交叉污染。
130
+ */
78
131
  const transformWrapperKey = (0, react.useMemo)(() => {
79
- var _effectiveMapLayer$bo, _zoom$defaultScale;
132
+ var _ref2, _zoom$defaultScale;
80
133
  if (!isFloorMapView) return "fmap-layout";
81
- const bp = (_effectiveMapLayer$bo = effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.boundingPadding) !== null && _effectiveMapLayer$bo !== void 0 ? _effectiveMapLayer$bo : "d";
134
+ const bp = (_ref2 = isOverview ? mapLayer === null || mapLayer === void 0 ? void 0 : mapLayer.boundingPadding : effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.boundingPadding) !== null && _ref2 !== void 0 ? _ref2 : "d";
82
135
  const z = (_zoom$defaultScale = zoom.defaultScale) !== null && _zoom$defaultScale !== void 0 ? _zoom$defaultScale : 1;
136
+ if (isOverview) return `fmap-overview-bp${bp}-z${z}`;
83
137
  return `fmap-${currentCanvasId !== null && currentCanvasId !== void 0 ? currentCanvasId : "na"}-bp${bp}-z${z}`;
84
138
  }, [
85
139
  isFloorMapView,
140
+ isOverview,
86
141
  currentCanvasId,
87
142
  effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.boundingPadding,
143
+ mapLayer === null || mapLayer === void 0 ? void 0 : mapLayer.boundingPadding,
88
144
  zoom.defaultScale
89
145
  ]);
90
- const canvasesForTabs = (0, react.useMemo)(() => config ? require_mergeCanvasesForTabs.mergeCanvasesForTabs(config) : [], [config]);
146
+ /** 供顶栏 Tab 使用:合并草稿画布等后的画布列表(基础列表,不含「全览」) */
147
+ const canvasesForTabsBase = (0, react.useMemo)(() => config ? require_mergeCanvasesForTabs.mergeCanvasesForTabs(config) : [], [config]);
91
148
  const engineCtx = require_useEngineContext.default();
92
149
  const engineLocale = (engineCtx === null || engineCtx === void 0 || (_engineCtx$engine = engineCtx.engine) === null || _engineCtx$engine === void 0 || (_engineCtx$engine = _engineCtx$engine.props) === null || _engineCtx$engine === void 0 ? void 0 : _engineCtx$engine.locale) || "zh-CN";
93
150
  const hasCanvasTabsBarTrailing = canvasTabsBarTrailing != null && canvasTabsBarTrailing !== false;
94
- const enabledCanvasCount = (0, react.useMemo)(() => canvasesForTabs.filter((c) => c.enabled).length, [canvasesForTabs]);
151
+ const enabledCanvasCount = (0, react.useMemo)(() => canvasesForTabsBase.filter((c) => c.enabled).length, [canvasesForTabsBase]);
152
+ /** 仅阅读态、启用画布 > 1 时,在 Tab 列表最前插入「All」伪 tab */
153
+ const showOverviewTab = isFloorMapView && mode === "read" && enabledCanvasCount > 1;
154
+ const overviewTabLabel = (0, react.useMemo)(() => {
155
+ require_floorMapCanvasDisplay.initFloorMapLayoutLocales(engineLocale);
156
+ return _pisell_utils.locales.getText("pisell-floor-map-layout.canvas-tabs.overview");
157
+ }, [engineLocale]);
158
+ /**
159
+ * 给 CanvasTabs 渲染用的最终列表:阅读态多画布时在列表最前插入「All」伪 tab。
160
+ * order 取当前最小 order - 1,保证排序后位于第一个;其它字段留空。
161
+ */
162
+ const canvasesForTabs = (0, react.useMemo)(() => {
163
+ if (!showOverviewTab) return canvasesForTabsBase;
164
+ const minOrder = canvasesForTabsBase.reduce((min, c) => c.order < min ? c.order : min, Number.POSITIVE_INFINITY);
165
+ return [{
166
+ id: require_floorMapLayoutConstants.FLOOR_MAP_OVERVIEW_TAB_ID,
167
+ name: overviewTabLabel,
168
+ order: Number.isFinite(minOrder) ? minOrder - 1 : -1,
169
+ enabled: true
170
+ }, ...canvasesForTabsBase];
171
+ }, [
172
+ canvasesForTabsBase,
173
+ showOverviewTab,
174
+ overviewTabLabel
175
+ ]);
176
+ /** 编辑态强制退出全览(多画布编辑流程不应进入只读全览界面) */
177
+ (0, react.useEffect)(() => {
178
+ if (mode !== "read") {
179
+ if (isOverview) setIsOverview(false);
180
+ return;
181
+ }
182
+ /** 阅读态下若启用画布回落到 1 张以内,全览 Tab 已不再展示,需自动退出 */
183
+ if (isOverview && enabledCanvasCount <= 1) setIsOverview(false);
184
+ }, [
185
+ mode,
186
+ isOverview,
187
+ enabledCanvasCount
188
+ ]);
189
+ /** 阅读态是否展示画布 Tab:多启用画布或配置了 `canvasTabsBarTrailing` 时出现 */
95
190
  const showReadModeCanvasTabsBar = (0, react.useMemo)(() => {
96
191
  if (!isFloorMapView || mode !== "read" || !config) return false;
97
192
  if (hasCanvasTabsBarTrailing) return true;
@@ -103,12 +198,12 @@ function PisellFloorMapLayoutInner(props, ref) {
103
198
  hasCanvasTabsBarTrailing,
104
199
  enabledCanvasCount
105
200
  ]);
201
+ /** 阅读态画布 Tab 工具条的无障碍标签(随引擎语言初始化文案) */
106
202
  const readCanvasTabsAriaLabel = (0, react.useMemo)(() => {
107
203
  require_floorMapCanvasDisplay.initFloorMapLayoutLocales(engineLocale);
108
204
  return _pisell_utils.locales.getText("pisell-floor-map-layout.read-canvas-tabs.aria");
109
205
  }, [engineLocale]);
110
- /** 编辑态始终保留顶栏 Tab(单画布也要能「添加画布」);仅阅读态在单画布时可隐藏 Tab 行 */
111
- const showEditCompactTopBar = isFloorMapView && mode === "edit" && Boolean(config) && !useFullTopChrome;
206
+ /** 加载遮罩上的文案 */
112
207
  const loadingLabel = (0, react.useMemo)(() => {
113
208
  require_floorMapCanvasDisplay.initFloorMapLayoutLocales(engineLocale);
114
209
  return _pisell_utils.locales.getText("pisell-floor-map-layout.loading");
@@ -148,42 +243,205 @@ function PisellFloorMapLayoutInner(props, ref) {
148
243
  deleteSelectedElement
149
244
  ]);
150
245
  const cellSize = cellSizeProp !== null && cellSizeProp !== void 0 ? cellSizeProp : 64;
246
+ /** 图元间距(像素):由 mapLayer.gap 解析 */
151
247
  const itemGap = (0, react.useMemo)(() => require_layoutMeasurements.gapToPx(effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.gap), [effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.gap]);
248
+ /** 平面图坐标始终按像素;非平面图沿用 props `itemUnit` */
152
249
  const effectiveItemUnit = isFloorMapView ? "pixel" : itemUnit;
153
- const { containerRef, mapAreaRef, mapAreaSize, contentWidth, contentHeight, contentOffsetX, contentOffsetY, initialPositionX, initialPositionY, zoomConfig, scale, setScale, isFullscreen, toggleFullscreen, fitBounds, lastTransformRef, isInteractingWithElement, setIsInteractingWithElement } = require_useFloorMapTransformMetrics.useFloorMapTransformMetrics({
154
- items,
250
+ /**
251
+ * 「全览」视图布局:把所有启用画布按各自原始尺寸(同一比例尺)紧凑装箱,
252
+ * 主 TransformWrapper 用整体 totalWidth/Height 作为 stage 尺寸,
253
+ * FloorMapOverview 按 areas[].x/y 把对应画布的图元绝对定位渲染。
254
+ * 与单画布共用同一套缩放/平移/锁定/全屏/fitBounds。
255
+ */
256
+ const overviewLayout = (0, react.useMemo)(() => {
257
+ if (!isFloorMapView || !isOverview || !config) return null;
258
+ return require_floorMapOverviewLayout.buildFloorMapOverviewLayout({
259
+ config,
260
+ globalMapLayer: mapLayer,
261
+ cellSize,
262
+ itemUnit: effectiveItemUnit,
263
+ areaGap: 32
264
+ });
265
+ }, [
266
+ isFloorMapView,
267
+ isOverview,
268
+ config,
269
+ mapLayer,
270
+ cellSize,
271
+ effectiveItemUnit
272
+ ]);
273
+ /**
274
+ * 视口持久化 key:
275
+ * - 仅平面图模式启用(其它模式没有「画布」概念)
276
+ * - `viewportPersist === false` 或无 currentCanvasId 时关闭
277
+ * - 有 namespace 时拼成 `${ns}:${canvasId}`,隔离不同业务场景(店铺 / 平面图)
278
+ * - 未传 namespace 时 fallback 为仅 `${canvasId}`,小心跨场景可能共享视角
279
+ * - 不感知 boundingPadding / defaultScale 等渲染参数变化,避免 padding 调整导致缓存失效
280
+ * - 「全览」模式使用独立的 `__overview__` key,与单画布缓存互不影响
281
+ */
282
+ const viewportPersistKey = (0, react.useMemo)(() => {
283
+ if (viewportPersist === false) return void 0;
284
+ if (!isFloorMapView) return void 0;
285
+ if (isOverview) return viewportPersistNamespace ? `${viewportPersistNamespace}:__overview__` : "__overview__";
286
+ if (!currentCanvasId) return void 0;
287
+ return viewportPersistNamespace ? `${viewportPersistNamespace}:${currentCanvasId}` : currentCanvasId;
288
+ }, [
289
+ viewportPersist,
290
+ viewportPersistNamespace,
291
+ isFloorMapView,
292
+ isOverview,
293
+ currentCanvasId
294
+ ]);
295
+ /**
296
+ * 全览模式下喂给 metrics 的虚拟 item:让 stage / fitBounds 把整体当作一张
297
+ * 0,0,totalWidth,totalHeight 的大图元处理;不参与渲染(渲染走 FloorMapOverview)。
298
+ * 类型上仅需 FloorMapItemBase,metrics 内部不读 `_sceneElement` 等扩展字段。
299
+ */
300
+ const overviewMetricsItems = (0, react.useMemo)(() => {
301
+ if (!overviewLayout) return [];
302
+ return [{
303
+ id: "__pisell_floor_map_overview_stage__",
304
+ x: 0,
305
+ y: 0,
306
+ width: overviewLayout.totalWidth,
307
+ height: overviewLayout.totalHeight,
308
+ shape: "rect"
309
+ }];
310
+ }, [overviewLayout]);
311
+ const { containerRef, mapAreaRef, mapAreaSize, contentWidth, contentHeight, contentOffsetX, contentOffsetY, initialPositionX, initialPositionY, zoomConfig, scale, setScale, isFullscreen, toggleFullscreen, fitBounds, isAtFitBounds, notifyTransformed, persistCurrentViewport, attachTransformContext, isInteractingWithElement, setIsInteractingWithElement, viewportLocked, toggleViewportLocked } = require_useFloorMapTransformMetrics.useFloorMapTransformMetrics({
312
+ items: isOverview && overviewLayout ? overviewMetricsItems : items,
155
313
  cellSize,
156
- itemGap,
314
+ itemGap: isOverview ? 0 : itemGap,
157
315
  effectiveItemUnit,
158
316
  isFloorMapView,
159
317
  mode,
160
318
  zoom,
161
319
  transformRef,
162
320
  contentOffsetRef,
163
- boundingPadding: effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.boundingPadding,
164
- frameResetKey: isFloorMapView ? transformWrapperKey : void 0
321
+ boundingPadding: isOverview ? (_mapLayer$boundingPad = mapLayer === null || mapLayer === void 0 ? void 0 : mapLayer.boundingPadding) !== null && _mapLayer$boundingPad !== void 0 ? _mapLayer$boundingPad : 56 : effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.boundingPadding,
322
+ frameResetKey: isFloorMapView ? transformWrapperKey : void 0,
323
+ viewportPersistKey
165
324
  });
166
- /** 编辑态全屏策略:toggle 可切换;locked 始终全屏顶栏且不可在组件内退出;disabled 无全屏按钮 */
325
+ /** 手机:选中图元种类后一键落在当前视口中心(与点击画布落点坐标换算一致) */
326
+ const handlePlaceActiveAtViewportCenter = (0, react.useCallback)(() => {
327
+ if (!placeMode || placeMode.type !== "scene") return;
328
+ const w = mapAreaSize.width;
329
+ const h = mapAreaSize.height;
330
+ if (w <= 0 || h <= 0) return;
331
+ const { x: ox, y: oy } = contentOffsetRef.current;
332
+ placeSceneElementFromPaletteDrop(Math.round(w / 2 - ox), Math.round(h / 2 - oy), placeMode);
333
+ }, [
334
+ placeMode,
335
+ mapAreaSize.width,
336
+ mapAreaSize.height,
337
+ placeSceneElementFromPaletteDrop
338
+ ]);
339
+ /** 编辑态全屏策略:toggle 全屏与编辑态强绑定;locked 始终全屏顶栏;disabled 无全屏 */
167
340
  const fsMode = floorMapFullscreenMode !== null && floorMapFullscreenMode !== void 0 ? floorMapFullscreenMode : "toggle";
168
341
  const useFullTopChrome = isFloorMapView && mode === "edit" && (fsMode === "locked" || fsMode === "toggle" && isFullscreen);
169
- /** toggle 时左下 Dock 展示全屏;locked/disabled 不传 API */
170
- const dockToggleFullscreen = isFloorMapView && fsMode === "toggle" ? toggleFullscreen : void 0;
342
+ /**
343
+ * 平面图编辑态:全屏与编辑模式强绑定(用户需求:"编辑的时候就是全屏,非编辑模式就不是全屏")。
344
+ * 因此 toggle 策略下不再展示左下角 Dock 的进出全屏按钮——
345
+ * 退出全屏 = 退出编辑,由顶栏「保存 / 退出编辑」入口承担。
346
+ * locked / disabled 行为保持原样:locked 也无按钮;disabled 不允许全屏。
347
+ */
348
+ const dockToggleFullscreen = void 0;
349
+ /**
350
+ * 平面图编辑态全屏与编辑模式双向同步:
351
+ * - 进 edit → 自动进入伪全屏
352
+ * - 退出 edit → 自动退出伪全屏
353
+ * - 仅 toggle 策略下生效(locked 已由 useFullTopChrome 强制;disabled 不允许全屏)
354
+ * 强同步:依赖中包含 isFullscreen,万一被外部 / 副作用切到不一致状态会被纠正回来。
355
+ * ESC 退出全屏的监听已在 metrics hook 中移除,避免按 ESC 后被本 effect 强制拉回来导致闪烁。
356
+ */
357
+ (0, react.useEffect)(() => {
358
+ if (!isFloorMapView) return;
359
+ if (fsMode !== "toggle") return;
360
+ if (mode === "edit" !== isFullscreen) toggleFullscreen();
361
+ }, [
362
+ mode,
363
+ isFloorMapView,
364
+ fsMode,
365
+ isFullscreen,
366
+ toggleFullscreen
367
+ ]);
368
+ /** 编辑态始终保留顶栏 Tab(单画布也要能「添加画布」);仅阅读态在单画布时可隐藏 Tab 行 */
369
+ const showEditCompactTopBar = isFloorMapView && mode === "edit" && Boolean(config) && !useFullTopChrome;
370
+ /**
371
+ * 右下角视口控件:平面图下默认带出全屏按钮(若当前策略允许 toggle),
372
+ * 并默认带出「视口锁定」按钮(与是否将视口保存到本地解耦;无持久化 key 时仅内存态,默认未锁定)。
373
+ */
171
374
  const viewControlsConfig = (0, react.useMemo)(() => {
172
- var _controls$showFullscr;
375
+ var _controls$showFullscr, _controls$showViewpor;
173
376
  if (!isFloorMapView) return controls;
174
- return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, controls), {}, { showFullscreen: (_controls$showFullscr = controls.showFullscreen) !== null && _controls$showFullscr !== void 0 ? _controls$showFullscr : Boolean(dockToggleFullscreen) });
377
+ return require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, controls), {}, {
378
+ showFullscreen: (_controls$showFullscr = controls.showFullscreen) !== null && _controls$showFullscr !== void 0 ? _controls$showFullscr : Boolean(dockToggleFullscreen),
379
+ showViewportLock: (_controls$showViewpor = controls.showViewportLock) !== null && _controls$showViewpor !== void 0 ? _controls$showViewpor : true
380
+ });
175
381
  }, [
176
382
  isFloorMapView,
177
383
  controls,
178
384
  dockToggleFullscreen
179
385
  ]);
180
386
  const topBarExtraActions = null;
387
+ /** 从侧栏/调色板拖入画布时,地图区高亮态(用于 dragleave/over 判定) */
181
388
  const [mapPaletteDragActive, setMapPaletteDragActive] = (0, react.useState)(false);
389
+ /** 全局 dragend 时清除调色板拖入高亮,避免松手在画布外仍保持 active */
182
390
  (0, react.useEffect)(() => {
183
391
  const clear = () => setMapPaletteDragActive(false);
184
392
  window.addEventListener("dragend", clear);
185
393
  return () => window.removeEventListener("dragend", clear);
186
394
  }, []);
395
+ /**
396
+ * 编辑态下的撤销 / 重做键盘快捷键:
397
+ * - Ctrl/⌘ + Z → undo
398
+ * - Ctrl/⌘ + Shift + Z 或 Ctrl/⌘ + Y → redo
399
+ * 在 input/textarea/contenteditable 聚焦时跳过,避免抢走表单原生撤销。
400
+ * 仅在容器内或容器获得焦点时响应,避免页面其它编辑区被劫持。
401
+ */
402
+ (0, react.useEffect)(() => {
403
+ if (!isFloorMapView || mode !== "edit" || !(config === null || config === void 0 ? void 0 : config.canvasUi.canEdit)) return;
404
+ const onKeyDown = (e) => {
405
+ if (!(e.ctrlKey || e.metaKey)) return;
406
+ const key = e.key.toLowerCase();
407
+ const isUndoCombo = key === "z" && !e.shiftKey && !e.altKey;
408
+ const isRedoCombo = key === "z" && e.shiftKey && !e.altKey || key === "y" && !e.shiftKey && !e.altKey;
409
+ if (!isUndoCombo && !isRedoCombo) return;
410
+ const target = e.target;
411
+ if (target) {
412
+ const tag = target.tagName;
413
+ if (tag === "INPUT" || tag === "TEXTAREA") return;
414
+ if (target.isContentEditable) return;
415
+ }
416
+ const root = containerRef.current;
417
+ if (!root) return;
418
+ const active = document.activeElement;
419
+ const focusInside = active ? root.contains(active) : false;
420
+ const targetInside = target ? root.contains(target) : false;
421
+ if (!focusInside && !targetInside) return;
422
+ if (isUndoCombo && canUndo) {
423
+ e.preventDefault();
424
+ undoDraft();
425
+ } else if (isRedoCombo && canRedo) {
426
+ e.preventDefault();
427
+ redoDraft();
428
+ }
429
+ };
430
+ window.addEventListener("keydown", onKeyDown);
431
+ return () => window.removeEventListener("keydown", onKeyDown);
432
+ }, [
433
+ isFloorMapView,
434
+ mode,
435
+ config === null || config === void 0 ? void 0 : config.canvasUi.canEdit,
436
+ canUndo,
437
+ canRedo,
438
+ undoDraft,
439
+ redoDraft,
440
+ containerRef
441
+ ]);
442
+ /**
443
+ * 桌面端:在画布 drop 层释放拖拽时,解析 dataTransfer 并在场景坐标下落位图元。
444
+ */
187
445
  const handlePaletteDropOnCanvas = (0, react.useCallback)((e) => {
188
446
  e.preventDefault();
189
447
  e.stopPropagation();
@@ -197,13 +455,17 @@ function PisellFloorMapLayoutInner(props, ref) {
197
455
  elementKind: payload.elementKind,
198
456
  dataSourceKey: payload.dataSourceKey,
199
457
  recordId: payload.recordId,
200
- recordIds: payload.recordIds
458
+ recordIds: payload.recordIds,
459
+ builtinShapeKey: payload.builtinShapeKey
201
460
  });
202
461
  }, [
203
462
  isFloorMapView,
204
463
  mode,
205
464
  placeSceneElementFromPaletteDrop
206
465
  ]);
466
+ /**
467
+ * 触摸拖拽模拟 drop:由 {@link useFloorMapPaletteTouchDrag} 在松手时调用,逻辑同桌面 drop。
468
+ */
207
469
  const applyPaletteTouchDropInScene = (0, react.useCallback)((payload, cx, cy) => {
208
470
  if (!isFloorMapView || mode !== "edit") return;
209
471
  placeSceneElementFromPaletteDrop(cx, cy, {
@@ -211,7 +473,8 @@ function PisellFloorMapLayoutInner(props, ref) {
211
473
  elementKind: payload.elementKind,
212
474
  dataSourceKey: payload.dataSourceKey,
213
475
  recordId: payload.recordId,
214
- recordIds: payload.recordIds
476
+ recordIds: payload.recordIds,
477
+ builtinShapeKey: payload.builtinShapeKey
215
478
  });
216
479
  }, [
217
480
  isFloorMapView,
@@ -227,9 +490,13 @@ function PisellFloorMapLayoutInner(props, ref) {
227
490
  setMapPaletteDragActive,
228
491
  onDropInScene: applyPaletteTouchDropInScene
229
492
  });
493
+ /** 平面图下未配置对应 kind 的 `renderItemByKind` 时的占位渲染 */
230
494
  const fallbackPlaceholderRender = (0, react.useCallback)((item) => {
231
495
  return require_floorMapFallbackRender.renderFloorMapFallbackPlaceholder(item);
232
496
  }, []);
497
+ /**
498
+ * 统一图元渲染入口:平面图优先按 kind 查 `renderItemByKind`,校验绑定/配置问题后回退占位或 `renderItem`。
499
+ */
233
500
  const effectiveRenderItem = (0, react.useCallback)((item, index, options) => {
234
501
  const merged = item;
235
502
  const kind = merged === null || merged === void 0 ? void 0 : merged.elementKind;
@@ -255,6 +522,7 @@ function PisellFloorMapLayoutInner(props, ref) {
255
522
  fallbackPlaceholderRender,
256
523
  onElementRenderError
257
524
  ]);
525
+ /** 点击图元:编辑态同步选中 id,并透传业务 `onItemClick` */
258
526
  const handleItemClick = (0, react.useCallback)((item, index, e) => {
259
527
  if (isFloorMapView && mode === "edit") setSelectedId(item.id);
260
528
  onItemClick === null || onItemClick === void 0 || onItemClick(item, index, e);
@@ -264,6 +532,7 @@ function PisellFloorMapLayoutInner(props, ref) {
264
532
  onItemClick,
265
533
  setSelectedId
266
534
  ]);
535
+ /** 对外 ref:缩放/复位/套合视口/保存布局,见 {@link PisellFloorMapLayoutRef} */
267
536
  (0, react.useImperativeHandle)(ref, () => ({
268
537
  zoomIn: () => {
269
538
  var _transformRef$current;
@@ -290,23 +559,59 @@ function PisellFloorMapLayoutInner(props, ref) {
290
559
  const handleMapAreaBackgroundClick = (0, react.useCallback)((e) => {
291
560
  if (!isFloorMapView || mode !== "edit") return;
292
561
  const t = e.target;
293
- if (t.closest(`.${PREFIX}-editable-item`)) return;
294
- if (t.closest(`.${PREFIX}-edit-panel-wrap`)) return;
295
- if (t.closest(`.${PREFIX}-view-controls`)) return;
296
- if (t.closest(`.${PREFIX}-viewport-overlay`)) return;
297
- if (t.closest(`.${PREFIX}-place-overlay`)) return;
298
- if (t.closest(`.${PREFIX}-map-drop-layer`)) return;
562
+ if (t.closest(`.pisell-floor-map-layout-editable-item`)) return;
563
+ if (t.closest(`.pisell-floor-map-layout-edit-panel-wrap`)) return;
564
+ if (t.closest(`.pisell-floor-map-layout-view-controls`)) return;
565
+ if (t.closest(`.pisell-floor-map-layout-viewport-overlay`)) return;
566
+ if (t.closest(`.pisell-floor-map-layout-place-overlay`)) return;
567
+ if (t.closest(`.pisell-floor-map-layout-map-drop-layer`)) return;
299
568
  setSelectedId(null);
300
569
  }, [
301
570
  isFloorMapView,
302
571
  mode,
303
572
  setSelectedId
304
573
  ]);
305
- return /* @__PURE__ */ react.default.createElement("div", {
574
+ /** 右侧手机 Drawer:open props 驱动关闭动画,选中清除延后到 afterOpenChange(false) */
575
+ const [phoneEditDrawerOpen, setPhoneEditDrawerOpen] = (0, react.useState)(false);
576
+ (0, react.useLayoutEffect)(() => {
577
+ if (editTopBarPhoneLayout && (editPanelParams === null || editPanelParams === void 0 ? void 0 : editPanelParams.itemId)) setPhoneEditDrawerOpen(true);
578
+ }, [editTopBarPhoneLayout, editPanelParams === null || editPanelParams === void 0 ? void 0 : editPanelParams.itemId]);
579
+ (0, react.useEffect)(() => {
580
+ if (!editTopBarPhoneLayout || !editPanelParams) setPhoneEditDrawerOpen(false);
581
+ }, [editTopBarPhoneLayout, editPanelParams]);
582
+ const handlePhoneEditDrawerClose = (0, react.useCallback)(() => {
583
+ setPhoneEditDrawerOpen(false);
584
+ }, []);
585
+ const handlePhoneEditDrawerAfterOpenChange = (0, react.useCallback)((open) => {
586
+ if (!open) setSelectedId(null);
587
+ }, [setSelectedId]);
588
+ const handleCanvasTabChange = (0, react.useCallback)((id) => {
589
+ if (id === "__pisell_floor_map_overview__") {
590
+ /**
591
+ * 进入全览:保留 `currentCanvasId`(用户上次浏览的画布),
592
+ * 这样全览中点回某画布或退出后还能继承视角缓存。
593
+ */
594
+ setIsOverview(true);
595
+ setSelectedId(null);
596
+ return;
597
+ }
598
+ setIsOverview(false);
599
+ setCurrentCanvasId(id);
600
+ setSelectedId(null);
601
+ }, [setCurrentCanvasId, setSelectedId]);
602
+ /** 全览态下 CanvasTabs 高亮的 id;非全览态用真实当前画布 id */
603
+ const tabsCurrentCanvasId = isOverview ? require_floorMapLayoutConstants.FLOOR_MAP_OVERVIEW_TAB_ID : currentCanvasId;
604
+ /**
605
+ * 新版 All 视图为「单画布平铺所有画布区域」,区域单击/双击不再切换画布;
606
+ * 切回单画布仅通过顶部 Tab,handleCanvasTabChange 负责退出全览。
607
+ */
608
+ return /* @__PURE__ */ react.default.createElement(react.default.Fragment, null, /* @__PURE__ */ react.default.createElement("div", {
306
609
  ref: containerRef,
307
- className: (0, classnames.default)(PREFIX, className, {
308
- [`${PREFIX}-floor-map-view`]: isFloorMapView,
309
- [`${PREFIX}-mode-edit`]: isFloorMapView && mode === "edit"
610
+ "data-appearance-mode": appearanceMode,
611
+ className: (0, classnames.default)(require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX, className, {
612
+ [`${require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX}-floor-map-view`]: isFloorMapView,
613
+ [`${require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX}-mode-edit`]: isFloorMapView && mode === "edit",
614
+ [`${require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX}--pseudo-fullscreen`]: isFullscreen
310
615
  }),
311
616
  style: require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({
312
617
  display: "flex",
@@ -317,25 +622,24 @@ function PisellFloorMapLayoutInner(props, ref) {
317
622
  config,
318
623
  canvases: canvasesForTabs,
319
624
  currentCanvasId,
320
- onTabChange: (id) => {
321
- setCurrentCanvasId(id);
322
- setSelectedId(null);
323
- },
625
+ onTabChange: handleCanvasTabChange,
324
626
  canEditTabs: config.canvasUi.canEdit,
325
627
  onAddCanvas: handleAddCanvas,
326
628
  onRemoveCanvas: handleRemoveCanvas,
327
629
  onRenameCanvas: handleRenameCanvas,
328
630
  controls,
329
- canvasTabsBarTrailing
631
+ canvasTabsBarTrailing,
632
+ phoneLayout: editTopBarPhoneLayout,
633
+ onUndo: config.canvasUi.canEdit ? undoDraft : void 0,
634
+ onRedo: config.canvasUi.canEdit ? redoDraft : void 0,
635
+ canUndo,
636
+ canRedo
330
637
  }), isFloorMapView && mode === "edit" && config && useFullTopChrome && /* @__PURE__ */ react.default.createElement(require_FloorMapEditTopBar.default, {
331
638
  mode: "full",
332
639
  config,
333
640
  canvases: canvasesForTabs,
334
641
  currentCanvasId,
335
- onTabChange: (id) => {
336
- setCurrentCanvasId(id);
337
- setSelectedId(null);
338
- },
642
+ onTabChange: handleCanvasTabChange,
339
643
  canEditTabs: config.canvasUi.canEdit,
340
644
  onAddCanvas: handleAddCanvas,
341
645
  onRemoveCanvas: handleRemoveCanvas,
@@ -347,25 +651,30 @@ function PisellFloorMapLayoutInner(props, ref) {
347
651
  isFullscreen,
348
652
  controls,
349
653
  extraActions: topBarExtraActions,
350
- canvasTabsBarTrailing
654
+ canvasTabsBarTrailing,
655
+ onUndo: config.canvasUi.canEdit ? undoDraft : void 0,
656
+ onRedo: config.canvasUi.canEdit ? redoDraft : void 0,
657
+ canUndo,
658
+ canRedo,
659
+ onExitEdit,
660
+ onCancelEdit: onExitEdit ? handleCancelEdit : void 0,
661
+ phoneLayout: editTopBarPhoneLayout
351
662
  }), showReadModeCanvasTabsBar && /* @__PURE__ */ react.default.createElement("div", {
352
- className: `${PREFIX}-edit-top-bar ${PREFIX}-read-canvas-tabs-bar`,
663
+ className: `pisell-floor-map-layout-edit-top-bar pisell-floor-map-layout-read-canvas-tabs-bar`,
353
664
  role: "toolbar",
354
665
  "aria-label": readCanvasTabsAriaLabel
355
- }, /* @__PURE__ */ react.default.createElement("div", { className: `${PREFIX}-edit-top-bar-tabs` }, /* @__PURE__ */ react.default.createElement(require_CanvasTabs.default, {
666
+ }, /* @__PURE__ */ react.default.createElement("div", { className: `pisell-floor-map-layout-edit-top-bar-tabs` }, /* @__PURE__ */ react.default.createElement(require_CanvasTabs.default, {
356
667
  canvases: canvasesForTabs,
357
- currentCanvasId,
358
- onTabChange: (id) => {
359
- setCurrentCanvasId(id);
360
- setSelectedId(null);
361
- },
668
+ currentCanvasId: tabsCurrentCanvasId,
669
+ onTabChange: handleCanvasTabChange,
362
670
  canEdit: false,
363
- className: `${PREFIX}-edit-top-bar-canvas-tabs`
364
- })), hasCanvasTabsBarTrailing ? /* @__PURE__ */ react.default.createElement("div", { className: `${PREFIX}-edit-top-bar-actions` }, canvasTabsBarTrailing) : null), loading && /* @__PURE__ */ react.default.createElement("div", { className: `${PREFIX}-loading` }, /* @__PURE__ */ react.default.createElement("span", null, loadingLabel)), saveError && !(isFloorMapView && mode === "edit" && config) && /* @__PURE__ */ react.default.createElement("div", { className: `${PREFIX}-save-error` }, typeof saveError === "string" ? saveError : saveError === null || saveError === void 0 ? void 0 : saveError.message), /* @__PURE__ */ react.default.createElement("div", {
365
- className: showSidebar ? `${PREFIX}-edit-layout` : void 0,
671
+ className: `pisell-floor-map-layout-edit-top-bar-canvas-tabs`
672
+ })), hasCanvasTabsBarTrailing ? /* @__PURE__ */ react.default.createElement("div", { className: `pisell-floor-map-layout-edit-top-bar-actions` }, canvasTabsBarTrailing) : null), loading && /* @__PURE__ */ react.default.createElement("div", { className: `pisell-floor-map-layout-loading` }, /* @__PURE__ */ react.default.createElement("span", null, loadingLabel)), saveError && !(isFloorMapView && mode === "edit" && config) && /* @__PURE__ */ react.default.createElement("div", { className: `pisell-floor-map-layout-save-error` }, typeof saveError === "string" ? saveError : saveError === null || saveError === void 0 ? void 0 : saveError.message), /* @__PURE__ */ react.default.createElement("div", {
673
+ className: (0, classnames.default)(showSidebar && `pisell-floor-map-layout-edit-layout`, showSidebar && editTopBarPhoneLayout && `pisell-floor-map-layout-edit-layout--phone-toolbar`),
366
674
  style: {
367
675
  flex: 1,
368
- display: "flex",
676
+ display: showSidebar && editTopBarPhoneLayout ? "block" : "flex",
677
+ flexDirection: showSidebar && !editTopBarPhoneLayout ? "row" : void 0,
369
678
  minHeight: 0
370
679
  }
371
680
  }, showSidebar && /* @__PURE__ */ react.default.createElement(require_FloorMapToolbar.default, {
@@ -387,16 +696,26 @@ function PisellFloorMapLayoutInner(props, ref) {
387
696
  saveError,
388
697
  layoutDirty: isLayoutDirty,
389
698
  onPaletteCardPointerDown: paletteTouchDrag.handlePaletteCardPointerDown,
390
- consumeToolbarClickIfTouchDrag: paletteTouchDrag.consumeToolbarClickIfTouchDrag
699
+ consumeToolbarClickIfTouchDrag: paletteTouchDrag.consumeToolbarClickIfTouchDrag,
700
+ phoneLayout: editTopBarPhoneLayout,
701
+ defaultCollapsed: editTopBarPhoneLayout,
702
+ onRequestPlaceAtCanvasCenter: editTopBarPhoneLayout ? handlePlaceActiveAtViewportCenter : void 0
391
703
  }), /* @__PURE__ */ react.default.createElement("div", {
392
704
  ref: mapAreaRef,
393
- className: (0, classnames.default)(showSidebar && `${PREFIX}-map-area`, editPanelVisible && `${PREFIX}-map-area--edit-panel-inset`),
394
- style: {
705
+ className: (0, classnames.default)(showSidebar && `pisell-floor-map-layout-map-area`, editTopBarPhoneLayout && showSidebar && `pisell-floor-map-layout-map-area--phone-fill`, editPanelVisible && !editTopBarPhoneLayout && `pisell-floor-map-layout-map-area--edit-panel-inset`),
706
+ style: require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, editTopBarPhoneLayout && showSidebar ? {
707
+ position: "absolute",
708
+ left: 0,
709
+ right: 0,
710
+ top: 0,
711
+ bottom: 0
712
+ } : {
395
713
  flex: 1,
396
- position: "relative",
714
+ position: "relative"
715
+ }), {}, {
397
716
  minWidth: 0,
398
717
  overflow: "hidden"
399
- },
718
+ }),
400
719
  onClick: handleMapAreaBackgroundClick,
401
720
  onDragEnter: (e) => {
402
721
  if (!isFloorMapView || mode !== "edit") return;
@@ -414,6 +733,8 @@ function PisellFloorMapLayoutInner(props, ref) {
414
733
  var _mapAreaRef$current;
415
734
  if (!mapPaletteDragActive) return;
416
735
  const related = e.relatedTarget;
736
+ /** 图元侧栏经 Portal 挂到 body 时,移入侧栏不算离开「有效拖放区」链 */
737
+ if (related && related instanceof Element && (related.closest(`.pisell-floor-map-layout-toolbar`) || related.closest(`.pisell-floor-map-layout-edit-panel-wrap`) || related.closest(`.pisell-floor-map-layout-toolbar-phone-drawer-root`) || related.closest(`.pisell-floor-map-layout-edit-panel-phone-drawer-root`) || related.closest(".ant-drawer") || related.closest(".pisell-lowcode-drawer"))) return;
417
738
  if (!((_mapAreaRef$current = mapAreaRef.current) === null || _mapAreaRef$current === void 0 ? void 0 : _mapAreaRef$current.contains(related))) setMapPaletteDragActive(false);
418
739
  }
419
740
  }, /* @__PURE__ */ react.default.createElement(react_zoom_pan_pinch.TransformWrapper, require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({
@@ -427,26 +748,40 @@ function PisellFloorMapLayoutInner(props, ref) {
427
748
  limitToBounds: pan.boundary !== "none"
428
749
  }, { step: zoomConfig.step }), {}, {
429
750
  panning: {
430
- disabled: pan.enabled === false || isInteractingWithElement,
751
+ disabled: pan.enabled === false || isInteractingWithElement || viewportLocked,
431
752
  velocityDisabled: true
432
753
  },
754
+ wheel: { disabled: viewportLocked },
755
+ pinch: { disabled: viewportLocked },
433
756
  doubleClick: { disabled: true },
434
757
  onTransformed: (_, state) => {
435
758
  setScale(state.scale);
436
- lastTransformRef.current = {
437
- x: state.positionX,
438
- y: state.positionY,
439
- scale: state.scale
440
- };
441
- }
759
+ /**
760
+ * 由 hook 内部写 lastTransformRef、判定 fitBounds 激活态。
761
+ * 不在 onTransformed 持久化:挂载/重挂载会触发一次「初始 transform」回调,
762
+ * 写到 localStorage 会覆盖用户上次保存的视角;
763
+ * 持久化改由 onPanningStop / onZoomStop / onPinchingStop / onWheelStop 触发。
764
+ */
765
+ notifyTransformed(state.positionX, state.positionY, state.scale);
766
+ },
767
+ onPanningStop: persistCurrentViewport,
768
+ onZoomStop: persistCurrentViewport,
769
+ onPinchingStop: persistCurrentViewport,
770
+ onWheelStop: persistCurrentViewport
442
771
  }), (ctx) => {
443
772
  var _effectiveMapLayer$sn;
444
- transformRef.current = ctx;
773
+ /**
774
+ * 不直接 transformRef.current = ctx:
775
+ * attachTransformContext 内部会比对 ctx 实例并在每次 wrapper 重挂载时
776
+ * 立即 schedule 一次 restore,避免「namespace 异步 → autoFit 抢跑 →
777
+ * restore 被 autoFit 动画吃掉」导致首屏不应用缓存的时序坑。
778
+ */
779
+ attachTransformContext(ctx);
445
780
  return /* @__PURE__ */ react.default.createElement(react.default.Fragment, null, /* @__PURE__ */ react.default.createElement(react_zoom_pan_pinch.TransformComponent, {
446
781
  wrapperStyle: {
447
782
  width: "100%",
448
783
  height: "100%",
449
- backgroundColor: "#F2F4F7",
784
+ backgroundColor: isOverview ? overviewBackgroundColor : canvasBackgroundColor,
450
785
  overflow: "visible"
451
786
  },
452
787
  contentStyle: {
@@ -456,9 +791,36 @@ function PisellFloorMapLayoutInner(props, ref) {
456
791
  minHeight: contentHeight,
457
792
  position: "relative",
458
793
  overflow: "visible",
459
- backgroundColor: "#F2F4F7"
794
+ backgroundColor: isOverview ? overviewBackgroundColor : canvasBackgroundColor
460
795
  }
461
- }, /* @__PURE__ */ react.default.createElement(require_MapLayer.default, {
796
+ }, isOverview && overviewLayout && config ? /* @__PURE__ */ react.default.createElement(
797
+ "div",
798
+ /**
799
+ * 全览模式:不渲染 MapLayer 背景 / 网格 / placeOverlay / dropLayer;
800
+ * 每个画布的图元由 FloorMapOverview 在 contentOffset 的内部绝对定位渲染,
801
+ * 缩放/平移/锁定/全屏/fitBounds 由外层 TransformWrapper + ViewControls 接管。
802
+ */
803
+ { style: {
804
+ position: "absolute",
805
+ left: contentOffsetX,
806
+ top: contentOffsetY,
807
+ width: overviewLayout.totalWidth,
808
+ height: overviewLayout.totalHeight
809
+ } },
810
+ /* @__PURE__ */ react.default.createElement(require_FloorMapOverview.default, {
811
+ overviewLayout,
812
+ config,
813
+ itemUnit: effectiveItemUnit,
814
+ renderItem: effectiveRenderItem,
815
+ viewportScale: scale,
816
+ enableHover,
817
+ onItemClick: handleItemClick,
818
+ onItemHover,
819
+ onItemLeave,
820
+ getMergedItemWrapperStyle,
821
+ readModeSelectedItemId
822
+ })
823
+ ) : /* @__PURE__ */ react.default.createElement(react.default.Fragment, null, /* @__PURE__ */ react.default.createElement(require_MapLayer.default, {
462
824
  config: effectiveMapLayer,
463
825
  contentWidth,
464
826
  contentHeight,
@@ -487,6 +849,7 @@ function PisellFloorMapLayoutInner(props, ref) {
487
849
  }) : /* @__PURE__ */ react.default.createElement(require_ItemLayer.default, {
488
850
  items,
489
851
  renderItem: effectiveRenderItem,
852
+ viewportScale: scale,
490
853
  rowKey,
491
854
  cellSize,
492
855
  itemUnit: effectiveItemUnit,
@@ -501,7 +864,8 @@ function PisellFloorMapLayoutInner(props, ref) {
501
864
  onItemHover,
502
865
  onItemLeave,
503
866
  getMergedItemWrapperStyle,
504
- onInteractionChange: setIsInteractingWithElement
867
+ onInteractionChange: setIsInteractingWithElement,
868
+ readModeSelectedItemId
505
869
  }), isFloorMapView && mode === "edit" && (placeMode === null || placeMode === void 0 ? void 0 : placeMode.type) === "scene" && /* @__PURE__ */ react.default.createElement("div", {
506
870
  className: placeOverlayClass,
507
871
  style: {
@@ -511,7 +875,7 @@ function PisellFloorMapLayoutInner(props, ref) {
511
875
  onClick: handleCanvasPlaceClick
512
876
  }), isFloorMapView && mode === "edit" && /* @__PURE__ */ react.default.createElement("div", {
513
877
  ref: mapDropLayerRef,
514
- className: (0, classnames.default)(`${PREFIX}-map-drop-layer`, { [`${PREFIX}-map-drop-layer-active`]: mapPaletteDragActive }),
878
+ className: (0, classnames.default)(`pisell-floor-map-layout-map-drop-layer`, { [`pisell-floor-map-layout-map-drop-layer-active`]: mapPaletteDragActive }),
515
879
  style: {
516
880
  width: contentWidth,
517
881
  height: contentHeight
@@ -521,24 +885,28 @@ function PisellFloorMapLayoutInner(props, ref) {
521
885
  ev.stopPropagation();
522
886
  },
523
887
  onDrop: handlePaletteDropOnCanvas
524
- })), /* @__PURE__ */ react.default.createElement(require_ViewControlsWithZoom.ViewControlsWithZoom, {
888
+ }))), /* @__PURE__ */ react.default.createElement(require_ViewControlsWithZoom.ViewControlsWithZoom, {
525
889
  config: viewControlsConfig,
526
890
  scale,
527
891
  isFullscreen,
892
+ fitBoundsActive: isAtFitBounds,
528
893
  fitBounds,
529
894
  toggleFullscreen: dockToggleFullscreen,
530
- mapGridVisible: Boolean(effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.showGrid),
531
- onToggleMapGrid: isFloorMapView ? toggleDraftCanvasShowGrid : void 0,
895
+ mapGridVisible: isOverview ? false : Boolean(effectiveMapLayer === null || effectiveMapLayer === void 0 ? void 0 : effectiveMapLayer.showGrid),
896
+ onToggleMapGrid: isFloorMapView && !isOverview ? toggleDraftCanvasShowGrid : void 0,
897
+ viewportLocked,
898
+ onToggleViewportLock: isFloorMapView ? toggleViewportLocked : void 0,
532
899
  dockChrome: isFloorMapView,
900
+ dockExpandedToolButtons: viewportDockToolButtons,
533
901
  dockExpandedTrailing: viewportDockTrailing,
534
902
  autoCollapseDockMs: 1e4
535
- }), isFloorMapView && floorMapViewportOverlay != null ? /* @__PURE__ */ react.default.createElement("div", { className: (0, classnames.default)(`${PREFIX}-viewport-overlay`, { [`${PREFIX}-viewport-overlay--bottom-start`]: viewportOverlayPlacement === "bottom-start" }, viewportOverlayClassName) }, typeof floorMapViewportOverlay === "function" ? floorMapViewportOverlay({
903
+ }), isFloorMapView && floorMapViewportOverlay != null ? /* @__PURE__ */ react.default.createElement("div", { className: (0, classnames.default)(`${require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX}-viewport-overlay`, { [`${require_floorMapLayoutConstants.FLOOR_MAP_LAYOUT_CLASS_PREFIX}-viewport-overlay--bottom-start`]: viewportOverlayPlacement === "bottom-start" }, viewportOverlayClassName) }, typeof floorMapViewportOverlay === "function" ? floorMapViewportOverlay({
536
904
  items,
537
905
  dataSources,
538
906
  currentCanvasId,
539
907
  mode
540
- }) : floorMapViewportOverlay) : null, isFloorMapView && mode === "edit" && editPanelParams && config && dataSources && /* @__PURE__ */ react.default.createElement("div", {
541
- className: (0, classnames.default)(`${PREFIX}-edit-panel-wrap`, mapAreaSize.height > 0 && `${PREFIX}-edit-panel-wrap-constrained`),
908
+ }) : floorMapViewportOverlay) : null, isFloorMapView && mode === "edit" && editPanelParams && config && dataSources && !editTopBarPhoneLayout && /* @__PURE__ */ react.default.createElement("div", {
909
+ className: (0, classnames.default)(`pisell-floor-map-layout-edit-panel-wrap`, mapAreaSize.height > 0 && `pisell-floor-map-layout-edit-panel-wrap-constrained`),
542
910
  style: mapAreaSize.height > 0 ? {
543
911
  height: mapAreaSize.height - 32,
544
912
  maxHeight: mapAreaSize.height - 32,
@@ -551,8 +919,32 @@ function PisellFloorMapLayoutInner(props, ref) {
551
919
  dataSources,
552
920
  savingRecord
553
921
  }))));
554
- }))));
922
+ })))), editTopBarPhoneLayout && editPanelParams && config && dataSources && /* @__PURE__ */ react.default.createElement(antd.Drawer, {
923
+ placement: "right",
924
+ open: phoneEditDrawerOpen,
925
+ onClose: handlePhoneEditDrawerClose,
926
+ afterOpenChange: handlePhoneEditDrawerAfterOpenChange,
927
+ width: "min(320px, 88vw)",
928
+ zIndex: 2002,
929
+ maskClosable: true,
930
+ destroyOnClose: false,
931
+ closable: false,
932
+ rootClassName: `pisell-floor-map-layout-edit-panel-phone-drawer-root`,
933
+ classNames: { body: `pisell-floor-map-layout-edit-panel-phone-drawer-body` },
934
+ styles: { body: {
935
+ padding: 0,
936
+ overflow: "auto",
937
+ height: "100%"
938
+ } },
939
+ getContainer: typeof document !== "undefined" ? () => document.body : void 0
940
+ }, /* @__PURE__ */ react.default.createElement("div", { className: (0, classnames.default)(`pisell-floor-map-layout-edit-panel-wrap`, `pisell-floor-map-layout-edit-panel-wrap--phone-drawer`) }, /* @__PURE__ */ react.default.createElement(require_FloorMapEditPanel.default, require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, editPanelParams), {}, {
941
+ config,
942
+ dataSources,
943
+ savingRecord,
944
+ className: `pisell-floor-map-layout-edit-panel--phone-drawer`
945
+ })))));
555
946
  }
947
+ /** 空间布局根组件:阅读/编辑、列表与平面图双模式,ref 见 {@link PisellFloorMapLayoutRef} */
556
948
  const PisellFloorMapLayout = react.default.forwardRef(PisellFloorMapLayoutInner);
557
949
  //#endregion
558
950
  exports.default = PisellFloorMapLayout;