@pisell/materials 3.3.87 → 3.3.89

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 (451) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +4 -4
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +25 -25
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +15 -15
  11. package/es/components/PisellBasicGrid/PisellBasicGrid.d.ts +10 -0
  12. package/es/components/PisellBasicGrid/hooks/index.d.ts +1 -0
  13. package/es/components/PisellBasicGrid/hooks/useGridStyle.d.ts +37 -0
  14. package/es/components/PisellBasicGrid/index.d.ts +6 -0
  15. package/es/components/PisellBasicGrid/types.d.ts +221 -0
  16. package/es/components/PisellBasicGrid/utils/index.d.ts +63 -0
  17. package/es/components/PisellCards/PisellCards.d.ts +8 -0
  18. package/es/components/PisellCards/components/MultilevelCard/MultilevelCard.d.ts +19 -0
  19. package/es/components/PisellCards/components/MultilevelCard/components/CardWrapper.d.ts +7 -0
  20. package/es/components/PisellCards/components/MultilevelCard/components/index.d.ts +2 -0
  21. package/es/components/PisellCards/components/MultilevelCard/hooks/index.d.ts +2 -0
  22. package/es/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardExpand.d.ts +32 -0
  23. package/es/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardHover.d.ts +28 -0
  24. package/es/components/PisellCards/components/MultilevelCard/index.d.ts +2 -0
  25. package/es/components/PisellCards/components/MultilevelCard/types.d.ts +202 -0
  26. package/es/components/PisellCards/components/MultilevelCard/utils/index.d.ts +6 -0
  27. package/es/components/PisellCards/components/PisellImageCard/components/index.d.ts +0 -0
  28. package/es/components/PisellCards/components/PisellImageCard/hooks/index.d.ts +5 -0
  29. package/es/components/PisellCards/components/PisellImageCard/hooks/useImageLoad.d.ts +12 -0
  30. package/es/components/PisellCards/components/PisellImageCard/hooks/usePisellImageCardStyle.d.ts +10 -0
  31. package/es/components/PisellCards/components/PisellImageCard/types.d.ts +74 -0
  32. package/es/components/PisellCards/components/PisellImageCard/utils/getImageObjectFit.d.ts +7 -0
  33. package/es/components/PisellCards/components/PisellImageCard/utils/getTruncatedText.d.ts +7 -0
  34. package/es/components/PisellCards/components/PisellImageCard/utils/index.d.ts +5 -0
  35. package/es/components/PisellCards/components/TabCard/TabCard.d.ts +4 -0
  36. package/es/components/PisellCards/components/TabCard/index.d.ts +5 -0
  37. package/es/components/PisellCards/components/TabCard/types.d.ts +70 -0
  38. package/es/components/PisellCards/components/TextCard/hooks/index.d.ts +0 -0
  39. package/es/components/PisellCards/components/TextCard/utils/index.d.ts +0 -0
  40. package/es/components/PisellCards/hooks/index.d.ts +0 -0
  41. package/es/components/PisellCards/types.d.ts +48 -0
  42. package/es/components/PisellCards/utils/index.d.ts +0 -0
  43. package/es/components/PisellProcedure/components/FooterActions.d.ts +24 -0
  44. package/es/components/PisellProcedure/components/ProcedureContent.d.ts +23 -0
  45. package/es/components/PisellProcedure/components/ProcedureSidebar.d.ts +38 -0
  46. package/es/components/PisellProcedure/hooks/index.d.ts +8 -0
  47. package/es/components/PisellProcedure/hooks/useElementSize.d.ts +38 -0
  48. package/es/components/PisellProcedure/hooks/useOverflowActions.d.ts +43 -0
  49. package/es/components/PisellProcedure/hooks/useResponsiveClass.d.ts +6 -0
  50. package/es/components/PisellProcedure/hooks/useSidebarHeight.d.ts +16 -0
  51. package/es/components/PisellProcedure/hooks/useStepManager.d.ts +50 -0
  52. package/es/components/PisellProcedure/types.d.ts +363 -0
  53. package/es/components/PisellProcedure/utils/classNames.d.ts +33 -0
  54. package/es/components/PisellProcedure/utils/extractText.d.ts +20 -0
  55. package/es/components/PisellProcedure/utils/footerPosition.d.ts +41 -0
  56. package/es/components/PisellProcedure/utils/index.d.ts +8 -0
  57. package/es/components/PisellProcedure/utils/layoutRatio.d.ts +42 -0
  58. package/es/components/PisellProcedure/utils/slotHelper.d.ts +27 -0
  59. package/es/components/PisellScrollView/PisellScrollView.d.ts +5 -0
  60. package/es/components/PisellScrollView/PisellScrollView.stories.d.ts +87 -0
  61. package/es/components/PisellScrollView/components/Actions/index.d.ts +12 -0
  62. package/es/components/PisellScrollView/hooks/index.d.ts +3 -0
  63. package/es/components/PisellScrollView/hooks/useIntersection.d.ts +8 -0
  64. package/es/components/PisellScrollView/hooks/useScrollEvents.d.ts +20 -0
  65. package/es/components/PisellScrollView/hooks/useScrollState.d.ts +13 -0
  66. package/es/components/PisellScrollView/index.d.ts +3 -0
  67. package/es/components/PisellScrollView/types.d.ts +203 -0
  68. package/es/components/PisellScrollView/utils/index.d.ts +0 -0
  69. package/es/components/PisellSteps/PisellSteps.stories.d.ts +155 -0
  70. package/es/components/PisellSteps/hooks/index.d.ts +4 -0
  71. package/es/components/PisellSteps/hooks/useAnchor.d.ts +9 -0
  72. package/es/components/PisellSteps/hooks/useResponsive.d.ts +8 -0
  73. package/es/components/PisellSteps/hooks/useStepClick.d.ts +11 -0
  74. package/es/components/PisellSteps/hooks/useStepsState.d.ts +9 -0
  75. package/es/components/PisellSteps/index.d.ts +3 -0
  76. package/es/components/PisellSteps/types.d.ts +257 -0
  77. package/es/components/PisellSteps/utils/index.d.ts +54 -0
  78. package/es/components/PisellSuperTabs/components/index.d.ts +0 -0
  79. package/es/components/PisellSuperTabs/utils/getRowKey.d.ts +8 -0
  80. package/es/components/PisellSuperTabs/utils/index.d.ts +1 -0
  81. package/es/components/PisellTabbar/locales.d.ts +23 -0
  82. package/es/components/PisellTabbar/mock.d.ts +47 -0
  83. package/es/components/PisellTabbar/template/index.d.ts +0 -0
  84. package/es/components/PisellTabbar2/constants.d.ts +46 -0
  85. package/es/components/PisellTabbar2/hooks/index.d.ts +2 -0
  86. package/es/components/PisellTabbar2/hooks/useActiveKey.d.ts +50 -0
  87. package/es/components/PisellTabbar2/hooks/useExpand.d.ts +41 -0
  88. package/es/components/PisellTabbar2/locales.d.ts +23 -0
  89. package/es/components/PisellTabbar2/mock.d.ts +205 -0
  90. package/es/components/PisellTabbar2/types.d.ts +117 -0
  91. package/es/components/PisellTabbar2/utils/index.d.ts +35 -0
  92. package/es/components/PisellTabbar3/locales.d.ts +23 -0
  93. package/es/components/PisellTabbar3/mock.d.ts +47 -0
  94. package/es/components/PisellTabbar3/types.d.ts +111 -0
  95. package/es/components/Template/PisellSteps.d.ts +0 -0
  96. package/es/components/Template/components/index.d.ts +0 -0
  97. package/es/components/Template/hooks/index.d.ts +0 -0
  98. package/es/components/Template/index.d.ts +0 -0
  99. package/es/components/Template/types.d.ts +0 -0
  100. package/es/components/Template/utils/index.d.ts +0 -0
  101. package/es/components/batch-editor/fields/index.d.ts +1 -0
  102. package/es/components/calendar/index.d.ts +1 -0
  103. package/es/components/checkbox/index.d.ts +1 -0
  104. package/es/components/dataSourceComponents/dataSourceForm/urlUtils.d.ts +24 -0
  105. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  106. package/es/components/dataSourceComponents/dataSourceSubForm/index.d.ts +13 -0
  107. package/es/components/dataSourceComponents/dataSourceSubForm/index.js +274 -0
  108. package/es/components/dataSourceComponents/dataSourceSubForm/index.less +19 -0
  109. package/es/components/dataSourceComponents/dataSourceSubForm/schema-full-example.json +544 -0
  110. package/es/components/dataSourceComponents/dataSourceSubForm/schema-simple-example.json +174 -0
  111. package/es/components/dataSourceComponents/dataSourceSubForm/types.d.ts +117 -0
  112. package/es/components/dataSourceComponents/dataSourceSubForm/types.js +1 -0
  113. package/es/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +0 -1
  114. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  115. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +0 -1
  116. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  117. package/es/components/dataSourceComponents/fields/RecordListWrapper/ReadPretty.d.ts +9 -0
  118. package/es/components/dataSourceComponents/fields/RecordListWrapper/ReadPretty.js +61 -0
  119. package/es/components/dataSourceComponents/fields/RecordListWrapper/WithMode.d.ts +4 -0
  120. package/es/components/dataSourceComponents/fields/RecordListWrapper/WithMode.js +176 -0
  121. package/es/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +12 -0
  122. package/es/components/dataSourceComponents/fields/RecordListWrapper/index.js +11 -0
  123. package/es/components/dataSourceComponents/fields/RecordListWrapper/type.d.ts +87 -0
  124. package/es/components/dataSourceComponents/fields/RecordListWrapper/type.js +1 -0
  125. package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  126. package/es/components/dataSourceComponents/fields/Tabs/ReadPretty.d.ts +9 -0
  127. package/es/components/dataSourceComponents/fields/Tabs/ReadPretty.js +16 -0
  128. package/es/components/dataSourceComponents/fields/Tabs/Tabs.d.ts +23 -0
  129. package/es/components/dataSourceComponents/fields/Tabs/Tabs.js +93 -0
  130. package/es/components/dataSourceComponents/fields/Tabs/Tabs.less +64 -0
  131. package/es/components/dataSourceComponents/fields/Tabs/WithMode.d.ts +6 -0
  132. package/es/components/dataSourceComponents/fields/Tabs/WithMode.js +9 -0
  133. package/es/components/dataSourceComponents/fields/Tabs/index.d.ts +13 -0
  134. package/es/components/dataSourceComponents/fields/Tabs/index.js +18 -0
  135. package/es/components/dataSourceComponents/fields/Tabs/type.d.ts +38 -0
  136. package/es/components/dataSourceComponents/fields/Tabs/type.js +1 -0
  137. package/es/components/dataSourceComponents/fields/index.d.ts +44 -6
  138. package/es/components/dataSourceComponents/fields/index.js +5 -1
  139. package/es/components/dataSourceComponents/fields/utils.js +3 -0
  140. package/es/components/dataSourceComponents/hooks/useFormSettingParams.d.ts +7 -0
  141. package/es/components/keyboard/index.d.ts +22 -0
  142. package/es/components/pisellBatchActionBar/types.d.ts +237 -0
  143. package/es/components/pisellDataSourceContainer/hooks/useDataSourceKey.d.ts +0 -1
  144. package/es/components/pisellDataSourceContainer/utils/formatData.d.ts +9 -0
  145. package/es/components/pisellDateTimeDisplay/formats/dateTimeDisplayFormats.d.ts +7 -0
  146. package/es/components/pisellDateTimeDisplay/formats/index.d.ts +1 -0
  147. package/es/components/pisellDateTimeDisplay/types.d.ts +352 -0
  148. package/es/components/pisellDateTimeDisplay/utils/formatTime.d.ts +19 -0
  149. package/es/components/pisellDateTimeDisplay/utils/getRefreshInterval.d.ts +18 -0
  150. package/es/components/pisellEmail/constants/emailDomains.d.ts +5 -0
  151. package/es/components/pisellEmail/constants/emailRegex.d.ts +13 -0
  152. package/es/components/pisellEmail/utils/domainSuggestions.d.ts +15 -0
  153. package/es/components/pisellGridPro/GridPro.d.ts +9 -0
  154. package/es/components/pisellGridPro/GridView/index.d.ts +6 -0
  155. package/es/components/pisellGridPro/GridView/type.d.ts +3 -0
  156. package/es/components/pisellGridPro/ToolBar/index.d.ts +6 -0
  157. package/es/components/pisellGridPro/ToolBar/type.d.ts +10 -0
  158. package/es/components/pisellGridPro/components/DataCard/components/StatCard/index.d.ts +10 -0
  159. package/es/components/pisellGridPro/components/DataCard/index.d.ts +6 -0
  160. package/es/components/pisellGridPro/components/DataCard/types.d.ts +70 -0
  161. package/es/components/pisellGridPro/components/Footer/index.d.ts +9 -0
  162. package/es/components/pisellGridPro/components/Header/index.d.ts +12 -0
  163. package/es/components/pisellLayout/index.d.ts +14 -0
  164. package/es/components/pisellLookup/PisellLookup.d.ts +4 -0
  165. package/es/components/pisellLookup/PisellLookup.js +8 -1
  166. package/es/components/pisellLookup/PisellLookup.stories.d.ts +129 -0
  167. package/es/components/pisellLookup/components/HotWords.d.ts +7 -0
  168. package/es/components/pisellLookup/components/LookupAuxiliary.d.ts +7 -0
  169. package/es/components/pisellLookup/components/LookupResultHost.d.ts +7 -0
  170. package/es/components/pisellLookup/components/SearchHistory.d.ts +7 -0
  171. package/es/components/pisellLookup/components/SuggestWords.d.ts +7 -0
  172. package/es/components/pisellLookup/components/index.d.ts +9 -0
  173. package/es/components/pisellLookup/hooks/index.d.ts +6 -0
  174. package/es/components/pisellLookup/hooks/useDebounceSearch.d.ts +40 -0
  175. package/es/components/pisellLookup/hooks/useSearchHistory.d.ts +48 -0
  176. package/es/components/pisellLookup/hooks/useSearchState.d.ts +80 -0
  177. package/es/components/pisellLookup/index.d.ts +6 -0
  178. package/es/components/pisellLookup/types.d.ts +667 -0
  179. package/es/components/pisellLookup/utils/index.d.ts +5 -0
  180. package/es/components/pisellLookup/utils/storage.d.ts +42 -0
  181. package/es/components/pisellLookup/utils/trigger.d.ts +42 -0
  182. package/es/components/pisellMetricCard/components/MetricTitle.d.ts +12 -0
  183. package/es/components/pisellMetricCard/components/MetricValue.d.ts +12 -0
  184. package/es/components/pisellMetricCard/components/TrendIcon.d.ts +14 -0
  185. package/es/components/pisellMetricCard/types.d.ts +201 -0
  186. package/es/components/pisellMetricCard/utils/calculateTrend.d.ts +14 -0
  187. package/es/components/pisellPercent/utils/rangeConverter.d.ts +36 -0
  188. package/es/components/pisellPhone/utils/phoneFormatter.d.ts +39 -0
  189. package/es/components/pisellRecordBoard/context/RecordBoardContext.d.ts +3 -0
  190. package/es/components/pisellRecordBoard/context/RecordBoardProvider.d.ts +11 -0
  191. package/es/components/pisellRecordBoard/hooks/useRecordBoardContext.d.ts +16 -0
  192. package/es/components/pisellRecordBoard/layouts/CardLayout/CardList.d.ts +12 -0
  193. package/es/components/pisellRecordBoard/layouts/CardLayout/index.d.ts +13 -0
  194. package/es/components/pisellRecordBoard/types.d.ts +315 -0
  195. package/es/components/pisellRecordBoard/utils/withRecordBoard.d.ts +9 -0
  196. package/es/components/pisellShellFrame/PisellShellFrame.d.ts +13 -0
  197. package/es/components/pisellShellFrame/PisellShellFrame.stories.d.ts +15 -0
  198. package/es/components/pisellShellFrame/index.d.ts +2 -0
  199. package/es/components/pisellShellFrame/types.d.ts +56 -0
  200. package/es/components/pisellSort/type.d.ts +7 -0
  201. package/es/components/pisellTimeRangeDisplay/types.d.ts +137 -0
  202. package/es/components/pisellTimeRangeDisplay/utils/formatDuration.d.ts +14 -0
  203. package/es/components/pisellTimeRangeDisplay/utils/parseTimeRange.d.ts +23 -0
  204. package/es/components/pisellUrl/utils/index.d.ts +6 -0
  205. package/es/components/pisellUrl/utils/urlFormatter.d.ts +38 -0
  206. package/es/components/pisellUrl/utils/urlHelper.d.ts +63 -0
  207. package/es/components/pisellUrl/utils/urlValidator.d.ts +46 -0
  208. package/es/components/productCard/components/Packages/utils.d.ts +1 -1
  209. package/es/components/radio/index.d.ts +1 -0
  210. package/es/components/skeleton/index.d.ts +1 -0
  211. package/es/components/sort/types.d.ts +39 -0
  212. package/es/components/table/Table/fields/select/index.d.ts +0 -1
  213. package/es/components/table/Table/fields/treeSelect/index.d.ts +0 -1
  214. package/es/components/table/Table/fields/types/index.d.ts +33 -0
  215. package/es/components/table/Table/utils.d.ts +1 -1
  216. package/es/components/time-picker/index.d.ts +1 -0
  217. package/es/components/upload/index.d.ts +1 -0
  218. package/es/components/virtual-keyboard/Time/utils.d.ts +1 -0
  219. package/es/components/virtualInput/BaseVirtualInput/index.d.ts +44 -0
  220. package/es/components/virtualInput/index.d.ts +29 -0
  221. package/es/hooks/useMobile.d.ts +8 -0
  222. package/es/hooks/useThemeTokens.d.ts +7 -0
  223. package/es/index.d.ts +4 -0
  224. package/es/index.js +3 -0
  225. package/es/theme/tokens.d.ts +22 -0
  226. package/es/utils/tagColor.d.ts +7 -0
  227. package/lib/components/PisellBasicGrid/PisellBasicGrid.d.ts +10 -0
  228. package/lib/components/PisellBasicGrid/hooks/index.d.ts +1 -0
  229. package/lib/components/PisellBasicGrid/hooks/useGridStyle.d.ts +37 -0
  230. package/lib/components/PisellBasicGrid/index.d.ts +6 -0
  231. package/lib/components/PisellBasicGrid/types.d.ts +221 -0
  232. package/lib/components/PisellBasicGrid/utils/index.d.ts +63 -0
  233. package/lib/components/PisellCards/PisellCards.d.ts +8 -0
  234. package/lib/components/PisellCards/components/MultilevelCard/MultilevelCard.d.ts +19 -0
  235. package/lib/components/PisellCards/components/MultilevelCard/components/CardWrapper.d.ts +7 -0
  236. package/lib/components/PisellCards/components/MultilevelCard/components/index.d.ts +2 -0
  237. package/lib/components/PisellCards/components/MultilevelCard/hooks/index.d.ts +2 -0
  238. package/lib/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardExpand.d.ts +32 -0
  239. package/lib/components/PisellCards/components/MultilevelCard/hooks/useMultilevelCardHover.d.ts +28 -0
  240. package/lib/components/PisellCards/components/MultilevelCard/index.d.ts +2 -0
  241. package/lib/components/PisellCards/components/MultilevelCard/types.d.ts +202 -0
  242. package/lib/components/PisellCards/components/MultilevelCard/utils/index.d.ts +6 -0
  243. package/lib/components/PisellCards/components/PisellImageCard/components/index.d.ts +0 -0
  244. package/lib/components/PisellCards/components/PisellImageCard/hooks/index.d.ts +5 -0
  245. package/lib/components/PisellCards/components/PisellImageCard/hooks/useImageLoad.d.ts +12 -0
  246. package/lib/components/PisellCards/components/PisellImageCard/hooks/usePisellImageCardStyle.d.ts +10 -0
  247. package/lib/components/PisellCards/components/PisellImageCard/types.d.ts +74 -0
  248. package/lib/components/PisellCards/components/PisellImageCard/utils/getImageObjectFit.d.ts +7 -0
  249. package/lib/components/PisellCards/components/PisellImageCard/utils/getTruncatedText.d.ts +7 -0
  250. package/lib/components/PisellCards/components/PisellImageCard/utils/index.d.ts +5 -0
  251. package/lib/components/PisellCards/components/TabCard/TabCard.d.ts +4 -0
  252. package/lib/components/PisellCards/components/TabCard/index.d.ts +5 -0
  253. package/lib/components/PisellCards/components/TabCard/types.d.ts +70 -0
  254. package/lib/components/PisellCards/components/TextCard/hooks/index.d.ts +0 -0
  255. package/lib/components/PisellCards/components/TextCard/utils/index.d.ts +0 -0
  256. package/lib/components/PisellCards/hooks/index.d.ts +0 -0
  257. package/lib/components/PisellCards/types.d.ts +48 -0
  258. package/lib/components/PisellCards/utils/index.d.ts +0 -0
  259. package/lib/components/PisellProcedure/components/FooterActions.d.ts +24 -0
  260. package/lib/components/PisellProcedure/components/ProcedureContent.d.ts +23 -0
  261. package/lib/components/PisellProcedure/components/ProcedureSidebar.d.ts +38 -0
  262. package/lib/components/PisellProcedure/hooks/index.d.ts +8 -0
  263. package/lib/components/PisellProcedure/hooks/useElementSize.d.ts +38 -0
  264. package/lib/components/PisellProcedure/hooks/useOverflowActions.d.ts +43 -0
  265. package/lib/components/PisellProcedure/hooks/useResponsiveClass.d.ts +6 -0
  266. package/lib/components/PisellProcedure/hooks/useSidebarHeight.d.ts +16 -0
  267. package/lib/components/PisellProcedure/hooks/useStepManager.d.ts +50 -0
  268. package/lib/components/PisellProcedure/types.d.ts +363 -0
  269. package/lib/components/PisellProcedure/utils/classNames.d.ts +33 -0
  270. package/lib/components/PisellProcedure/utils/extractText.d.ts +20 -0
  271. package/lib/components/PisellProcedure/utils/footerPosition.d.ts +41 -0
  272. package/lib/components/PisellProcedure/utils/index.d.ts +8 -0
  273. package/lib/components/PisellProcedure/utils/layoutRatio.d.ts +42 -0
  274. package/lib/components/PisellProcedure/utils/slotHelper.d.ts +27 -0
  275. package/lib/components/PisellScrollView/PisellScrollView.d.ts +5 -0
  276. package/lib/components/PisellScrollView/PisellScrollView.stories.d.ts +87 -0
  277. package/lib/components/PisellScrollView/components/Actions/index.d.ts +12 -0
  278. package/lib/components/PisellScrollView/hooks/index.d.ts +3 -0
  279. package/lib/components/PisellScrollView/hooks/useIntersection.d.ts +8 -0
  280. package/lib/components/PisellScrollView/hooks/useScrollEvents.d.ts +20 -0
  281. package/lib/components/PisellScrollView/hooks/useScrollState.d.ts +13 -0
  282. package/lib/components/PisellScrollView/index.d.ts +3 -0
  283. package/lib/components/PisellScrollView/types.d.ts +203 -0
  284. package/lib/components/PisellScrollView/utils/index.d.ts +0 -0
  285. package/lib/components/PisellSteps/PisellSteps.stories.d.ts +155 -0
  286. package/lib/components/PisellSteps/hooks/index.d.ts +4 -0
  287. package/lib/components/PisellSteps/hooks/useAnchor.d.ts +9 -0
  288. package/lib/components/PisellSteps/hooks/useResponsive.d.ts +8 -0
  289. package/lib/components/PisellSteps/hooks/useStepClick.d.ts +11 -0
  290. package/lib/components/PisellSteps/hooks/useStepsState.d.ts +9 -0
  291. package/lib/components/PisellSteps/index.d.ts +3 -0
  292. package/lib/components/PisellSteps/types.d.ts +257 -0
  293. package/lib/components/PisellSteps/utils/index.d.ts +54 -0
  294. package/lib/components/PisellSuperTabs/components/index.d.ts +0 -0
  295. package/lib/components/PisellSuperTabs/utils/getRowKey.d.ts +8 -0
  296. package/lib/components/PisellSuperTabs/utils/index.d.ts +1 -0
  297. package/lib/components/PisellTabbar/locales.d.ts +23 -0
  298. package/lib/components/PisellTabbar/mock.d.ts +47 -0
  299. package/lib/components/PisellTabbar/template/index.d.ts +0 -0
  300. package/lib/components/PisellTabbar2/constants.d.ts +46 -0
  301. package/lib/components/PisellTabbar2/hooks/index.d.ts +2 -0
  302. package/lib/components/PisellTabbar2/hooks/useActiveKey.d.ts +50 -0
  303. package/lib/components/PisellTabbar2/hooks/useExpand.d.ts +41 -0
  304. package/lib/components/PisellTabbar2/locales.d.ts +23 -0
  305. package/lib/components/PisellTabbar2/mock.d.ts +205 -0
  306. package/lib/components/PisellTabbar2/types.d.ts +117 -0
  307. package/lib/components/PisellTabbar2/utils/index.d.ts +35 -0
  308. package/lib/components/PisellTabbar3/locales.d.ts +23 -0
  309. package/lib/components/PisellTabbar3/mock.d.ts +47 -0
  310. package/lib/components/PisellTabbar3/types.d.ts +111 -0
  311. package/lib/components/Template/PisellSteps.d.ts +0 -0
  312. package/lib/components/Template/components/index.d.ts +0 -0
  313. package/lib/components/Template/hooks/index.d.ts +0 -0
  314. package/lib/components/Template/index.d.ts +0 -0
  315. package/lib/components/Template/types.d.ts +0 -0
  316. package/lib/components/Template/utils/index.d.ts +0 -0
  317. package/lib/components/batch-editor/fields/index.d.ts +1 -0
  318. package/lib/components/calendar/index.d.ts +1 -0
  319. package/lib/components/checkbox/index.d.ts +1 -0
  320. package/lib/components/dataSourceComponents/dataSourceForm/urlUtils.d.ts +24 -0
  321. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  322. package/lib/components/dataSourceComponents/dataSourceSubForm/index.d.ts +13 -0
  323. package/lib/components/dataSourceComponents/dataSourceSubForm/index.js +229 -0
  324. package/lib/components/dataSourceComponents/dataSourceSubForm/index.less +19 -0
  325. package/lib/components/dataSourceComponents/dataSourceSubForm/schema-full-example.json +544 -0
  326. package/lib/components/dataSourceComponents/dataSourceSubForm/schema-simple-example.json +174 -0
  327. package/lib/components/dataSourceComponents/dataSourceSubForm/types.d.ts +117 -0
  328. package/lib/components/dataSourceComponents/dataSourceSubForm/types.js +17 -0
  329. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +0 -1
  330. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +3 -3
  331. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +0 -1
  332. package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  333. package/lib/components/dataSourceComponents/fields/RecordListWrapper/ReadPretty.d.ts +9 -0
  334. package/lib/components/dataSourceComponents/fields/RecordListWrapper/ReadPretty.js +64 -0
  335. package/lib/components/dataSourceComponents/fields/RecordListWrapper/WithMode.d.ts +4 -0
  336. package/lib/components/dataSourceComponents/fields/RecordListWrapper/WithMode.js +157 -0
  337. package/lib/components/dataSourceComponents/fields/RecordListWrapper/index.d.ts +12 -0
  338. package/lib/components/dataSourceComponents/fields/RecordListWrapper/index.js +40 -0
  339. package/lib/components/dataSourceComponents/fields/RecordListWrapper/type.d.ts +87 -0
  340. package/lib/components/dataSourceComponents/fields/RecordListWrapper/type.js +17 -0
  341. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  342. package/lib/components/dataSourceComponents/fields/Tabs/ReadPretty.d.ts +9 -0
  343. package/lib/components/dataSourceComponents/fields/Tabs/ReadPretty.js +45 -0
  344. package/lib/components/dataSourceComponents/fields/Tabs/Tabs.d.ts +23 -0
  345. package/lib/components/dataSourceComponents/fields/Tabs/Tabs.js +95 -0
  346. package/lib/components/dataSourceComponents/fields/Tabs/Tabs.less +64 -0
  347. package/lib/components/dataSourceComponents/fields/Tabs/WithMode.d.ts +6 -0
  348. package/lib/components/dataSourceComponents/fields/Tabs/WithMode.js +39 -0
  349. package/lib/components/dataSourceComponents/fields/Tabs/index.d.ts +13 -0
  350. package/lib/components/dataSourceComponents/fields/Tabs/index.js +40 -0
  351. package/lib/components/dataSourceComponents/fields/Tabs/type.d.ts +38 -0
  352. package/lib/components/dataSourceComponents/fields/Tabs/type.js +17 -0
  353. package/lib/components/dataSourceComponents/fields/index.d.ts +44 -6
  354. package/lib/components/dataSourceComponents/fields/index.js +5 -1
  355. package/lib/components/dataSourceComponents/fields/utils.js +3 -0
  356. package/lib/components/dataSourceComponents/hooks/useFormSettingParams.d.ts +7 -0
  357. package/lib/components/keyboard/index.d.ts +22 -0
  358. package/lib/components/pisellBatchActionBar/types.d.ts +237 -0
  359. package/lib/components/pisellDataSourceContainer/hooks/useDataSourceKey.d.ts +0 -1
  360. package/lib/components/pisellDataSourceContainer/utils/formatData.d.ts +9 -0
  361. package/lib/components/pisellDateTimeDisplay/formats/dateTimeDisplayFormats.d.ts +7 -0
  362. package/lib/components/pisellDateTimeDisplay/formats/index.d.ts +1 -0
  363. package/lib/components/pisellDateTimeDisplay/types.d.ts +352 -0
  364. package/lib/components/pisellDateTimeDisplay/utils/formatTime.d.ts +19 -0
  365. package/lib/components/pisellDateTimeDisplay/utils/getRefreshInterval.d.ts +18 -0
  366. package/lib/components/pisellEmail/constants/emailDomains.d.ts +5 -0
  367. package/lib/components/pisellEmail/constants/emailRegex.d.ts +13 -0
  368. package/lib/components/pisellEmail/utils/domainSuggestions.d.ts +15 -0
  369. package/lib/components/pisellGridPro/GridPro.d.ts +9 -0
  370. package/lib/components/pisellGridPro/GridView/index.d.ts +6 -0
  371. package/lib/components/pisellGridPro/GridView/type.d.ts +3 -0
  372. package/lib/components/pisellGridPro/ToolBar/index.d.ts +6 -0
  373. package/lib/components/pisellGridPro/ToolBar/type.d.ts +10 -0
  374. package/lib/components/pisellGridPro/components/DataCard/components/StatCard/index.d.ts +10 -0
  375. package/lib/components/pisellGridPro/components/DataCard/index.d.ts +6 -0
  376. package/lib/components/pisellGridPro/components/DataCard/types.d.ts +70 -0
  377. package/lib/components/pisellGridPro/components/Footer/index.d.ts +9 -0
  378. package/lib/components/pisellGridPro/components/Header/index.d.ts +12 -0
  379. package/lib/components/pisellLayout/index.d.ts +14 -0
  380. package/lib/components/pisellLookup/PisellLookup.d.ts +4 -0
  381. package/lib/components/pisellLookup/PisellLookup.js +5 -1
  382. package/lib/components/pisellLookup/PisellLookup.stories.d.ts +129 -0
  383. package/lib/components/pisellLookup/components/HotWords.d.ts +7 -0
  384. package/lib/components/pisellLookup/components/LookupAuxiliary.d.ts +7 -0
  385. package/lib/components/pisellLookup/components/LookupResultHost.d.ts +7 -0
  386. package/lib/components/pisellLookup/components/SearchHistory.d.ts +7 -0
  387. package/lib/components/pisellLookup/components/SuggestWords.d.ts +7 -0
  388. package/lib/components/pisellLookup/components/index.d.ts +9 -0
  389. package/lib/components/pisellLookup/hooks/index.d.ts +6 -0
  390. package/lib/components/pisellLookup/hooks/useDebounceSearch.d.ts +40 -0
  391. package/lib/components/pisellLookup/hooks/useSearchHistory.d.ts +48 -0
  392. package/lib/components/pisellLookup/hooks/useSearchState.d.ts +80 -0
  393. package/lib/components/pisellLookup/index.d.ts +6 -0
  394. package/lib/components/pisellLookup/types.d.ts +667 -0
  395. package/lib/components/pisellLookup/utils/index.d.ts +5 -0
  396. package/lib/components/pisellLookup/utils/storage.d.ts +42 -0
  397. package/lib/components/pisellLookup/utils/trigger.d.ts +42 -0
  398. package/lib/components/pisellMetricCard/components/MetricTitle.d.ts +12 -0
  399. package/lib/components/pisellMetricCard/components/MetricValue.d.ts +12 -0
  400. package/lib/components/pisellMetricCard/components/TrendIcon.d.ts +14 -0
  401. package/lib/components/pisellMetricCard/types.d.ts +201 -0
  402. package/lib/components/pisellMetricCard/utils/calculateTrend.d.ts +14 -0
  403. package/lib/components/pisellPercent/utils/rangeConverter.d.ts +36 -0
  404. package/lib/components/pisellPhone/utils/phoneFormatter.d.ts +39 -0
  405. package/lib/components/pisellRecordBoard/context/RecordBoardContext.d.ts +3 -0
  406. package/lib/components/pisellRecordBoard/context/RecordBoardProvider.d.ts +11 -0
  407. package/lib/components/pisellRecordBoard/hooks/useRecordBoardContext.d.ts +16 -0
  408. package/lib/components/pisellRecordBoard/layouts/CardLayout/CardList.d.ts +12 -0
  409. package/lib/components/pisellRecordBoard/layouts/CardLayout/index.d.ts +13 -0
  410. package/lib/components/pisellRecordBoard/types.d.ts +315 -0
  411. package/lib/components/pisellRecordBoard/utils/withRecordBoard.d.ts +9 -0
  412. package/lib/components/pisellShellFrame/PisellShellFrame.d.ts +13 -0
  413. package/lib/components/pisellShellFrame/PisellShellFrame.stories.d.ts +15 -0
  414. package/lib/components/pisellShellFrame/index.d.ts +2 -0
  415. package/lib/components/pisellShellFrame/types.d.ts +56 -0
  416. package/lib/components/pisellSort/type.d.ts +7 -0
  417. package/lib/components/pisellTimeRangeDisplay/types.d.ts +137 -0
  418. package/lib/components/pisellTimeRangeDisplay/utils/formatDuration.d.ts +14 -0
  419. package/lib/components/pisellTimeRangeDisplay/utils/parseTimeRange.d.ts +23 -0
  420. package/lib/components/pisellUrl/utils/index.d.ts +6 -0
  421. package/lib/components/pisellUrl/utils/urlFormatter.d.ts +38 -0
  422. package/lib/components/pisellUrl/utils/urlHelper.d.ts +63 -0
  423. package/lib/components/pisellUrl/utils/urlValidator.d.ts +46 -0
  424. package/lib/components/productCard/components/Packages/utils.d.ts +1 -1
  425. package/lib/components/radio/index.d.ts +1 -0
  426. package/lib/components/skeleton/index.d.ts +1 -0
  427. package/lib/components/sort/types.d.ts +39 -0
  428. package/lib/components/table/Table/fields/select/index.d.ts +0 -1
  429. package/lib/components/table/Table/fields/treeSelect/index.d.ts +0 -1
  430. package/lib/components/table/Table/fields/types/index.d.ts +33 -0
  431. package/lib/components/table/Table/utils.d.ts +1 -1
  432. package/lib/components/time-picker/index.d.ts +1 -0
  433. package/lib/components/upload/index.d.ts +1 -0
  434. package/lib/components/virtual-keyboard/Time/utils.d.ts +1 -0
  435. package/lib/components/virtualInput/BaseVirtualInput/index.d.ts +44 -0
  436. package/lib/components/virtualInput/index.d.ts +29 -0
  437. package/lib/hooks/useMobile.d.ts +8 -0
  438. package/lib/hooks/useThemeTokens.d.ts +7 -0
  439. package/lib/index.d.ts +4 -0
  440. package/lib/index.js +9 -0
  441. package/lib/theme/tokens.d.ts +22 -0
  442. package/lib/utils/tagColor.d.ts +7 -0
  443. package/lowcode/auto-resize-text/meta.ts +9 -9
  444. package/lowcode/data-source-form/constants.ts +3 -0
  445. package/lowcode/data-source-form/utils.ts +31 -5
  446. package/lowcode/data-source-sub-form/meta.ts +259 -0
  447. package/lowcode/data-source-sub-form/snippets.ts +21 -0
  448. package/lowcode/form-item-record-list-wrapper/meta.ts +180 -0
  449. package/lowcode/form-item-record-list-wrapper/snippets.ts +18 -0
  450. package/lowcode/form-item-tabs/meta.ts +172 -0
  451. package/package.json +1 -1
@@ -0,0 +1,41 @@
1
+ import type { FooterPositionMode } from '../types';
2
+ /**
3
+ * 底部位置判断工具函数
4
+ * @description 用于判断底部操作区的位置模式
5
+ */
6
+ /**
7
+ * 判断底部是否在内容区
8
+ * @param position 底部位置模式
9
+ * @returns 是否在内容区
10
+ */
11
+ export declare const isFooterInContent: (position: FooterPositionMode) => boolean;
12
+ /**
13
+ * 判断底部是否在信息区
14
+ * @param position 底部位置模式
15
+ * @returns 是否在信息区
16
+ */
17
+ export declare const isFooterInSidebar: (position: FooterPositionMode) => boolean;
18
+ /**
19
+ * 判断底部是否全局显示
20
+ * @param position 底部位置模式
21
+ * @returns 是否全局显示
22
+ */
23
+ export declare const isFooterGlobal: (position: FooterPositionMode) => boolean;
24
+ /**
25
+ * 判断底部是否固定模式
26
+ * @param position 底部位置模式
27
+ * @returns 是否固定模式
28
+ */
29
+ export declare const isFooterFixed: (position: FooterPositionMode) => boolean;
30
+ /**
31
+ * 判断底部是否悬浮模式
32
+ * @param position 底部位置模式
33
+ * @returns 是否悬浮模式
34
+ */
35
+ export declare const isFooterFloat: (position: FooterPositionMode) => boolean;
36
+ /**
37
+ * 获取底部位置的目标区域
38
+ * @param position 底部位置模式
39
+ * @returns 目标区域: 'content' | 'sidebar' | 'global'
40
+ */
41
+ export declare const getFooterTargetArea: (position: FooterPositionMode) => 'content' | 'sidebar' | 'global';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * PisellProcedure 工具函数导出
3
+ */
4
+ export { mergeClassNames, prefixClassName, modifierClassName, } from './classNames';
5
+ export { wrapSlotWithClick, isValidSlot, renderSlotOrDefault, } from './slotHelper';
6
+ export { isFooterInContent, isFooterInSidebar, isFooterGlobal, isFooterFixed, isFooterFloat, getFooterTargetArea, } from './footerPosition';
7
+ export { extractTextFromNode, extractButtonLabel, } from './extractText';
8
+ export { parseLayoutRatio, calculateRatioPercent, generateRatioStyles, LAYOUT_RATIO_PRESETS, } from './layoutRatio';
@@ -0,0 +1,42 @@
1
+ import type { BodyLayoutRatio } from '../types';
2
+ /**
3
+ * 布局比例工具函数
4
+ * @description 用于解析和计算内容区与信息区的布局比例
5
+ */
6
+ /**
7
+ * 解析比例字符串
8
+ * @param ratio 比例字符串,如 '7:3'
9
+ * @returns [内容区比例, 信息区比例]
10
+ * @example
11
+ * parseLayoutRatio('7:3') // => [7, 3]
12
+ * parseLayoutRatio('6:4') // => [6, 4]
13
+ */
14
+ export declare const parseLayoutRatio: (ratio: BodyLayoutRatio) => [number, number];
15
+ /**
16
+ * 计算百分比
17
+ * @param ratio 比例字符串,如 '7:3'
18
+ * @returns { contentPercent, sidebarPercent }
19
+ * @example
20
+ * calculateRatioPercent('7:3') // => { contentPercent: 70, sidebarPercent: 30 }
21
+ */
22
+ export declare const calculateRatioPercent: (ratio: BodyLayoutRatio) => {
23
+ contentPercent: number;
24
+ sidebarPercent: number;
25
+ };
26
+ /**
27
+ * 生成 flex 比例样式
28
+ * @param ratio 比例字符串,如 '7:3'
29
+ * @param gap 间距(px)
30
+ * @returns { contentStyle, sidebarStyle }
31
+ */
32
+ export declare const generateRatioStyles: (ratio: BodyLayoutRatio, gap?: number) => {
33
+ contentStyle: React.CSSProperties;
34
+ sidebarStyle: React.CSSProperties;
35
+ };
36
+ /**
37
+ * 预设比例选项
38
+ */
39
+ export declare const LAYOUT_RATIO_PRESETS: {
40
+ label: string;
41
+ value: BodyLayoutRatio;
42
+ }[];
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ /**
3
+ * 插槽包装工具函数
4
+ * @description 用于包装 React 插槽元素,添加额外的事件处理
5
+ */
6
+ /**
7
+ * 包装插槽元素,添加点击事件
8
+ * @param slotContent 插槽内容
9
+ * @param onClick 点击回调
10
+ * @returns 包装后的插槽内容
11
+ * @example
12
+ * wrapSlotWithClick(leftSlot, handleBackClick)
13
+ */
14
+ export declare const wrapSlotWithClick: (slotContent: React.ReactNode, onClick?: () => void | boolean) => React.ReactNode;
15
+ /**
16
+ * 检查插槽是否为有效的 React 元素
17
+ * @param slotContent 插槽内容
18
+ * @returns 是否为有效元素
19
+ */
20
+ export declare const isValidSlot: (slotContent: React.ReactNode) => boolean;
21
+ /**
22
+ * 渲染插槽内容,如果为空则返回默认内容
23
+ * @param slotContent 插槽内容
24
+ * @param defaultContent 默认内容
25
+ * @returns 最终渲染内容
26
+ */
27
+ export declare const renderSlotOrDefault: (slotContent: React.ReactNode, defaultContent?: React.ReactNode) => React.ReactNode;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { PisellScrollViewProps, PisellScrollViewRef } from './types';
3
+ import './PisellScrollView.less';
4
+ declare const PisellScrollView: React.ForwardRefExoticComponent<Omit<PisellScrollViewProps, "ref"> & React.RefAttributes<PisellScrollViewRef>>;
5
+ export default PisellScrollView;
@@ -0,0 +1,87 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import PisellScrollView from './PisellScrollView';
3
+ /**
4
+ * PisellScrollView 滚动视图组件
5
+ *
6
+ * 提供丰富的滚动功能,包括滚动方向控制、滚动条样式、滚动按钮、滚动事件监听、
7
+ * 视图监听、吸附滚动等功能
8
+ */
9
+ declare const meta: Meta<typeof PisellScrollView>;
10
+ export default meta;
11
+ declare type Story = StoryObj<typeof PisellScrollView>;
12
+ /**
13
+ * 基础用法 - 垂直滚动
14
+ */
15
+ export declare const Default: Story;
16
+ /**
17
+ * 水平滚动
18
+ */
19
+ export declare const HorizontalScroll: Story;
20
+ /**
21
+ * 双向滚动
22
+ */
23
+ export declare const BothDirections: Story;
24
+ /**
25
+ * 滚动条样式 - 细滚动条
26
+ */
27
+ export declare const ThinScrollbar: Story;
28
+ /**
29
+ * 滚动条样式 - 隐藏滚动条
30
+ */
31
+ export declare const HiddenScrollbar: Story;
32
+ /**
33
+ * 滚动按钮 - 右侧箭头
34
+ */
35
+ export declare const RightArrows: Story;
36
+ /**
37
+ * 滚动按钮 - 左右箭头
38
+ */
39
+ export declare const LeftRightArrows: Story;
40
+ /**
41
+ * 滚动按钮 - 返回顶部
42
+ */
43
+ export declare const BackToTop: Story;
44
+ /**
45
+ * 滚动事件监听
46
+ */
47
+ export declare const ScrollEvents: Story;
48
+ /**
49
+ * 吸附滚动 - 垂直方向
50
+ */
51
+ export declare const SnapScrollVertical: Story;
52
+ /**
53
+ * 吸附滚动 - 水平方向
54
+ */
55
+ export declare const SnapScrollHorizontal: Story;
56
+ /**
57
+ * 视图监听 - IntersectionObserver
58
+ */
59
+ export declare const IntersectionObserver: Story;
60
+ /**
61
+ * Ref 方法调用
62
+ */
63
+ export declare const RefMethods: Story;
64
+ /**
65
+ * 滚动到指定元素
66
+ */
67
+ export declare const ScrollToElement: Story;
68
+ /**
69
+ * 自定义尺寸
70
+ */
71
+ export declare const CustomSize: Story;
72
+ /**
73
+ * 综合示例 - 商品列表
74
+ */
75
+ export declare const ProductList: Story;
76
+ /**
77
+ * 综合示例 - 横向标签页
78
+ */
79
+ export declare const HorizontalTabs: Story;
80
+ /**
81
+ * 交互测试 - 验证组件渲染
82
+ */
83
+ export declare const RenderTest: Story;
84
+ /**
85
+ * 交互测试 - 滚动按钮点击
86
+ */
87
+ export declare const ScrollButtonTest: Story;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { ScrollEventData, PisellScrollViewProps, ScrollActionsConfig } from '../../types';
3
+ import './index.less';
4
+ interface ActionsContainerProps {
5
+ scrollState: ScrollEventData;
6
+ overflow: PisellScrollViewProps['overflow'];
7
+ scrollActionsConfig: ScrollActionsConfig;
8
+ containerRef: React.RefObject<HTMLDivElement>;
9
+ onClick: (direction: 'left' | 'right' | 'top' | 'bottom') => void;
10
+ }
11
+ declare const ActionsContainer: ({ containerRef, scrollState, overflow, scrollActionsConfig, onClick, }: ActionsContainerProps) => React.JSX.Element | null;
12
+ export default ActionsContainer;
@@ -0,0 +1,3 @@
1
+ export * from './useScrollState';
2
+ export * from './useScrollEvents';
3
+ export * from './useIntersection';
@@ -0,0 +1,8 @@
1
+ import { RefObject } from 'react';
2
+ import { PisellScrollViewProps } from '../types';
3
+ interface UseIntersectionProps {
4
+ containerRef: RefObject<HTMLElement>;
5
+ config?: PisellScrollViewProps['intersection'];
6
+ }
7
+ export declare const useIntersection: ({ containerRef, config }: UseIntersectionProps) => void;
8
+ export {};
@@ -0,0 +1,20 @@
1
+ import { RefObject } from 'react';
2
+ import { ScrollEventData, PisellScrollViewProps } from '../types';
3
+ interface UseScrollEventsProps {
4
+ containerRef: RefObject<HTMLElement>;
5
+ onScroll?: PisellScrollViewProps['onScroll'];
6
+ onScrollStart?: PisellScrollViewProps['onScrollStart'];
7
+ onScrollEnd?: PisellScrollViewProps['onScrollEnd'];
8
+ onReachTop?: PisellScrollViewProps['onReachTop'];
9
+ onReachBottom?: PisellScrollViewProps['onReachBottom'];
10
+ onReachLeft?: PisellScrollViewProps['onReachLeft'];
11
+ onReachRight?: PisellScrollViewProps['onReachRight'];
12
+ reachThreshold?: number;
13
+ scrollEndDelay?: number;
14
+ updateScrollState: () => void;
15
+ scrollState: ScrollEventData;
16
+ }
17
+ export declare const useScrollEvents: ({ containerRef, onScroll, onScrollStart, onScrollEnd, onReachTop, onReachBottom, onReachLeft, onReachRight, reachThreshold, scrollEndDelay, updateScrollState, scrollState, }: UseScrollEventsProps) => {
18
+ handleScroll: () => void;
19
+ };
20
+ export {};
@@ -0,0 +1,13 @@
1
+ import { RefObject } from 'react';
2
+ import { ScrollEventData, PisellScrollViewProps } from '../types';
3
+ /**
4
+ * 滚动状态管理 Hook
5
+ * @description 管理滚动容器的状态,包括滚动位置、溢出检测等
6
+ */
7
+ export declare const useScrollState: ({ containerRef, overflow, }: {
8
+ containerRef: RefObject<HTMLElement>;
9
+ overflow: PisellScrollViewProps['overflow'];
10
+ }) => {
11
+ scrollState: ScrollEventData;
12
+ updateScrollState: () => void;
13
+ };
@@ -0,0 +1,3 @@
1
+ import PisellScrollView from './PisellScrollView';
2
+ export type { PisellScrollViewProps, PisellScrollViewRef } from './types';
3
+ export default PisellScrollView;
@@ -0,0 +1,203 @@
1
+ import React, { ReactNode, CSSProperties } from 'react';
2
+ /**
3
+ * 滚动位置配置
4
+ */
5
+ export interface ScrollPosition {
6
+ /** 竖向滚动位置(像素) */
7
+ scrollTop?: number;
8
+ /** 横向滚动位置(像素) */
9
+ scrollLeft?: number;
10
+ /** 滚动行为 */
11
+ behavior?: 'auto' | 'smooth';
12
+ }
13
+ /**
14
+ * 滚动到元素配置
15
+ */
16
+ export interface ScrollToElementConfig {
17
+ /** 目标元素 ID */
18
+ targetId: string;
19
+ /** 对齐方式 */
20
+ align?: 'start' | 'center' | 'end' | 'nearest';
21
+ /** 滚动行为 */
22
+ behavior?: 'auto' | 'smooth';
23
+ /** 偏移量 */
24
+ offset?: number;
25
+ }
26
+ /**
27
+ * 滚动百分比配置
28
+ */
29
+ export interface ScrollPercentage {
30
+ /** 竖向滚动百分比 (0-100) */
31
+ percentY?: number;
32
+ /** 横向滚动百分比 (0-100) */
33
+ percentX?: number;
34
+ /** 滚动行为 */
35
+ behavior?: 'auto' | 'smooth';
36
+ }
37
+ /**
38
+ * 滚动按钮配置
39
+ */
40
+ export interface ScrollActionsConfig {
41
+ show?: boolean;
42
+ /** 按钮类型 */
43
+ type: "backTop" | "rArrows" | "lrArrows" | "tbArrows" | "custom";
44
+ style?: CSSProperties;
45
+ scrollDistance?: number;
46
+ /** 按钮配置 根据type不同,配置不同 */
47
+ config?: any;
48
+ }
49
+ /**
50
+ * 滚动事件数据
51
+ */
52
+ export interface ScrollEventData {
53
+ /** 当前滚动位置 */
54
+ scrollTop: number;
55
+ scrollLeft: number;
56
+ /** 滚动百分比 */
57
+ percentY: number;
58
+ percentX: number;
59
+ /** 可滚动高度/宽度 */
60
+ scrollHeight: number;
61
+ scrollWidth: number;
62
+ /** 容器尺寸 */
63
+ clientHeight: number;
64
+ clientWidth: number;
65
+ /** 滚动方向 */
66
+ direction: 'up' | 'down' | 'left' | 'right' | null;
67
+ /** 是否滚动到顶部 */
68
+ isScrollToTop: boolean;
69
+ /** 是否滚动到底部 */
70
+ isScrollToBottom: boolean;
71
+ /** 是否滚动到左边 */
72
+ isScrollToLeft: boolean;
73
+ /** 是否滚动到右边 */
74
+ isScrollToRight: boolean;
75
+ /** 是否已经产生滚动条 */
76
+ isOverflows: boolean;
77
+ }
78
+ /**
79
+ * 视图监听配置
80
+ */
81
+ export interface IntersectionConfig {
82
+ /** 是否启用视图监听 */
83
+ enabled?: boolean;
84
+ /** 交叉阈值 (0-1) */
85
+ threshold?: number | number[];
86
+ /** 根边距 */
87
+ rootMargin?: string;
88
+ /** 元素进入视图回调 */
89
+ onEnterViewport?: (entry: IntersectionObserverEntry, element: Element) => void;
90
+ /** 元素离开视图回调 */
91
+ onLeaveViewport?: (entry: IntersectionObserverEntry, element: Element) => void;
92
+ /** 可见度变化回调 */
93
+ onVisibilityChange?: (entry: IntersectionObserverEntry, element: Element) => void;
94
+ /** 需要监听的元素选择器 */
95
+ targetSelector?: string;
96
+ }
97
+ /**
98
+ * 吸附滚动配置
99
+ */
100
+ export interface SnapScrollConfig {
101
+ /** 是否启用吸附滚动 */
102
+ enabled?: boolean;
103
+ /** 吸附类型 */
104
+ type?: 'mandatory' | 'proximity';
105
+ /** 吸附对齐方式 */
106
+ align?: 'start' | 'center' | 'end';
107
+ /** 吸附开始回调 */
108
+ onSnapStart?: (targetIndex: number, targetPosition: number) => void;
109
+ /** 吸附结束回调 */
110
+ onSnapEnd?: (currentIndex: number, currentPosition: number) => void;
111
+ }
112
+ /**
113
+ * PisellScrollView 组件 Props
114
+ */
115
+ export interface PisellScrollViewProps {
116
+ /** 子元素 */
117
+ children?: ReactNode;
118
+ /** 自定义类名 */
119
+ className?: string;
120
+ /** 自定义样式 */
121
+ style?: CSSProperties;
122
+ /** 滚动方向 */
123
+ overflow?: 'auto' | 'scroll' | 'hidden' | 'x' | 'y' | 'both';
124
+ /** 滚动条样式 */
125
+ scrollbarStyle?: 'default' | 'thin' | 'minimal' | 'rounded' | 'overlay' | 'custom' | 'none';
126
+ /** 自定义滚动条类名(当 scrollbarStyle 为 'custom' 时使用) */
127
+ scrollbarClassName?: string;
128
+ /** 是否显示滚动按钮 */
129
+ showScrollButtons?: boolean;
130
+ /** 箭头操作 */
131
+ scrollActionsConfig?: ScrollActionsConfig;
132
+ /** 滚动时触发 */
133
+ onScroll?: (data: ScrollEventData) => void;
134
+ /** 开始滚动时触发 */
135
+ onScrollStart?: (data: ScrollEventData) => void;
136
+ /** 滚动结束时触发(防抖延迟,默认 150ms) */
137
+ onScrollEnd?: (data: ScrollEventData) => void;
138
+ /** 滚动结束防抖延迟时间(ms) */
139
+ scrollEndDelay?: number;
140
+ /** 到达顶部时触发 */
141
+ onReachTop?: (data: ScrollEventData) => void;
142
+ /** 到达底部时触发 */
143
+ onReachBottom?: (data: ScrollEventData) => void;
144
+ /** 到达左边时触发 */
145
+ onReachLeft?: (data: ScrollEventData) => void;
146
+ /** 到达右边时触发 */
147
+ onReachRight?: (data: ScrollEventData) => void;
148
+ /** 边界阈值(到达边界的像素阈值) */
149
+ reachThreshold?: number;
150
+ /** IntersectionObserver 配置 */
151
+ intersection?: IntersectionConfig;
152
+ /** 吸附滚动配置 */
153
+ snapScroll?: SnapScrollConfig;
154
+ /** 容器宽度 */
155
+ width?: number | string;
156
+ /** 容器高度 */
157
+ height?: number | string;
158
+ /** 最大宽度 */
159
+ maxWidth?: number | string;
160
+ /** 最大高度 */
161
+ maxHeight?: number | string;
162
+ /** 最小宽度 */
163
+ minWidth?: number | string;
164
+ /** 最小高度 */
165
+ minHeight?: number | string;
166
+ /** Ref 引用 */
167
+ ref?: React.Ref<PisellScrollViewRef>;
168
+ /** 设计模式 */
169
+ __designMode?: boolean;
170
+ }
171
+ /**
172
+ * 组件暴露的方法
173
+ */
174
+ export interface PisellScrollViewRef {
175
+ /** 滚动到指定位置 */
176
+ scrollTo: (position: ScrollPosition) => void;
177
+ /** 滚动到指定元素 */
178
+ scrollToElement: (config: ScrollToElementConfig) => void;
179
+ /** 滚动到百分比位置 */
180
+ scrollToPercentage: (percentage: ScrollPercentage) => void;
181
+ /** 滚动到顶部 */
182
+ scrollToTop: (behavior?: 'auto' | 'smooth') => void;
183
+ /** 滚动到底部 */
184
+ scrollToBottom: (behavior?: 'auto' | 'smooth') => void;
185
+ /** 滚动到最左侧 */
186
+ scrollToLeft: (behavior?: 'auto' | 'smooth') => void;
187
+ /** 滚动到最右侧 */
188
+ scrollToRight: (behavior?: 'auto' | 'smooth') => void;
189
+ /** 获取当前滚动信息 */
190
+ getScrollData: () => ScrollEventData;
191
+ /** 获取滚动容器 DOM 元素 */
192
+ getScrollContainer: () => HTMLElement | null;
193
+ /** 滚动到指定吸附点(索引) */
194
+ scrollToSnapPoint: (index: number, behavior?: 'auto' | 'smooth') => void;
195
+ /** 获取所有吸附点位置 */
196
+ getSnapPoints: () => number[];
197
+ /** 获取当前吸附点索引 */
198
+ getCurrentSnapIndex: () => number;
199
+ /** 滚动到下一个吸附点 */
200
+ scrollToNextSnap: (behavior?: 'auto' | 'smooth') => void;
201
+ /** 滚动到上一个吸附点 */
202
+ scrollToPrevSnap: (behavior?: 'auto' | 'smooth') => void;
203
+ }
@@ -0,0 +1,155 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import PisellSteps from './PisellSteps';
3
+ /**
4
+ * PisellSteps 步骤条组件
5
+ *
6
+ * 基于 Ant Design Steps 组件进行二次封装和增强
7
+ * 支持多种展示样式、布局方式和丰富的交互功能
8
+ */
9
+ declare const meta: Meta<typeof PisellSteps>;
10
+ export default meta;
11
+ declare type Story = StoryObj<typeof PisellSteps>;
12
+ /**
13
+ * 基础用法 - 默认步骤条
14
+ */
15
+ export declare const Default: Story;
16
+ /**
17
+ * 非受控模式
18
+ * @description 使用 defaultCurrent 设置初始步骤
19
+ */
20
+ export declare const Uncontrolled: Story;
21
+ /**
22
+ * 垂直方向
23
+ */
24
+ export declare const Vertical: Story;
25
+ /**
26
+ * 点状步骤条
27
+ * @description 通过 progressDot 属性启用点状样式
28
+ */
29
+ export declare const Dot: Story;
30
+ /**
31
+ * 自定义点状渲染
32
+ * @description 使用函数自定义点状图标的渲染
33
+ */
34
+ export declare const CustomProgressDot: Story;
35
+ /**
36
+ * 导航步骤条
37
+ */
38
+ export declare const Navigation: Story;
39
+ /**
40
+ * 小尺寸
41
+ */
42
+ export declare const Small: Story;
43
+ /**
44
+ * 大尺寸
45
+ */
46
+ export declare const Large: Story;
47
+ /**
48
+ * 标签垂直布局
49
+ * @description 标签在图标下方显示
50
+ */
51
+ export declare const LabelVertical: Story;
52
+ /**
53
+ * 错误状态
54
+ */
55
+ export declare const ErrorStatus: Story;
56
+ /**
57
+ * 自定义步骤状态
58
+ * @description 每个步骤可以单独设置状态
59
+ */
60
+ export declare const CustomStatus: Story;
61
+ /**
62
+ * 可点击步骤
63
+ */
64
+ export declare const Clickable: Story;
65
+ /**
66
+ * 禁止点击已完成步骤
67
+ * @description 设置 allowClickFinished 为 false
68
+ */
69
+ export declare const DisallowClickFinished: Story;
70
+ /**
71
+ * 禁用特定步骤
72
+ * @description 通过 disabled 属性禁用某个步骤
73
+ */
74
+ export declare const DisabledStep: Story;
75
+ /**
76
+ * 自定义图标
77
+ */
78
+ export declare const CustomIcon: Story;
79
+ /**
80
+ * 完成图标
81
+ */
82
+ export declare const FinishIcon: Story;
83
+ /**
84
+ * 栅格布局
85
+ * @description 启用栅格布局,自定义列数
86
+ */
87
+ export declare const GridLayout: Story;
88
+ /**
89
+ * 自定义图标与文本间距
90
+ * @description 通过 itemGap 属性自定义间距
91
+ */
92
+ export declare const CustomItemGap: Story;
93
+ /**
94
+ * 移动端 - 完整模式
95
+ * @description 移动端显示完整步骤条
96
+ */
97
+ export declare const MobileModeFull: Story;
98
+ /**
99
+ * 移动端 - 当前步骤模式
100
+ * @description 只显示当前步骤信息
101
+ */
102
+ export declare const MobileModeCurrent: Story;
103
+ /**
104
+ * 移动端 - 自动模式
105
+ * @description 根据屏幕宽度自动切换显示模式
106
+ */
107
+ export declare const MobileModeAuto: Story;
108
+ /**
109
+ * 自定义移动端断点
110
+ * @description 通过 mobileBreakpoint 自定义断点宽度
111
+ */
112
+ export declare const CustomMobileBreakpoint: Story;
113
+ /**
114
+ * 自定义起始索引
115
+ * @description 通过 initial 设置起始步骤索引
116
+ */
117
+ export declare const InitialIndex: Story;
118
+ /**
119
+ * 隐藏特定步骤
120
+ * @description 通过 hidden 属性动态隐藏步骤
121
+ */
122
+ export declare const HiddenStep: Story;
123
+ /**
124
+ * 带子标题
125
+ * @description 步骤可以包含子标题
126
+ */
127
+ export declare const WithSubTitle: Story;
128
+ /**
129
+ * 响应式步骤条
130
+ * @description 开启响应式后会自动调整布局
131
+ */
132
+ export declare const Responsive: Story;
133
+ /**
134
+ * 完整功能演示
135
+ * @description 展示多种功能的组合使用
136
+ */
137
+ export declare const FullFeature: Story;
138
+ /**
139
+ * 多步骤流程
140
+ * @description 更多步骤的场景
141
+ */
142
+ export declare const ManySteps: Story;
143
+ /**
144
+ * 购物流程示例
145
+ * @description 模拟真实的购物流程
146
+ */
147
+ export declare const ShoppingFlow: Story;
148
+ /**
149
+ * 交互测试 - 点击步骤
150
+ */
151
+ export declare const InteractionTest: Story;
152
+ /**
153
+ * 交互测试 - 验证组件渲染
154
+ */
155
+ export declare const RenderTest: Story;
@@ -0,0 +1,4 @@
1
+ export { useStepsState } from './useStepsState';
2
+ export { useStepClick } from './useStepClick';
3
+ export { useAnchor } from './useAnchor';
4
+ export { useResponsive } from './useResponsive';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 锚链接功能 Hook
3
+ * 当开启锚链接时,自动滚动到当前步骤对应的锚点
4
+ *
5
+ * @param currentStep - 当前步骤索引
6
+ * @param enableAnchor - 是否启用锚链接
7
+ * @param anchorContainer - 锚链接容器选择器或元素
8
+ */
9
+ export declare function useAnchor(currentStep: number, enableAnchor: boolean, anchorContainer?: string | HTMLElement): void;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 响应式监听 Hook
3
+ * 监听窗口大小变化,返回当前是否为移动端
4
+ *
5
+ * @param breakpoint - 断点宽度(默认 768px)
6
+ * @returns 是否为移动端
7
+ */
8
+ export declare function useResponsive(breakpoint?: number): boolean;
@@ -0,0 +1,11 @@
1
+ import type { PisellStepItem } from '../types';
2
+ /**
3
+ * 处理步骤点击逻辑的 Hook
4
+ *
5
+ * @param currentStep - 当前步骤索引
6
+ * @param clickable - 是否允许点击步骤切换
7
+ * @param allowClickFinished - 是否允许点击已完成的步骤
8
+ * @param onStepChange - 步骤变更回调函数
9
+ * @returns 步骤点击处理函数
10
+ */
11
+ export declare function useStepClick(currentStep: number, clickable: boolean, allowClickFinished: boolean, onStepChange: (step: number) => void): (index: number, item: PisellStepItem) => void;