@pisell/materials 3.3.85 → 3.3.87

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 (392) 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 +6 -6
  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 +21 -21
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +21 -21
  11. package/es/components/Pagination/index.d.ts +4 -5
  12. package/es/components/Pagination/index.js +77 -59
  13. package/es/components/Pagination/index.less +13 -7
  14. package/es/components/PisellFields/index.d.ts +2 -2
  15. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  16. package/es/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +1 -0
  17. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +1 -0
  18. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  19. package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  20. package/es/components/dataSourceComponents/fields/Translation/BaseTranslation.d.ts +5 -0
  21. package/es/components/dataSourceComponents/fields/Translation/type.d.ts +21 -0
  22. package/es/components/dataSourceComponents/fields/index.d.ts +7 -7
  23. package/es/components/filter/components/Dropdown/index.js +6 -2
  24. package/es/components/filter/components/FilterButton/index.js +19 -4
  25. package/es/components/filter/components/FilterButton/types.d.ts +8 -0
  26. package/es/components/filter/components/FilterItem/AsyncOptionsSelectWrapper.d.ts +21 -0
  27. package/es/components/filter/components/FilterItem/AsyncOptionsSelectWrapper.js +90 -0
  28. package/es/components/filter/components/FilterItem/index.d.ts +3 -3
  29. package/es/components/filter/components/FilterItem/index.js +138 -7
  30. package/es/components/filter/components/FilterItem/index.less +90 -0
  31. package/es/components/filter/types.d.ts +4 -2
  32. package/es/components/pisellBatchActionBar/PisellBatchActionBar.js +38 -29
  33. package/es/components/pisellCurrency/PisellCurrency.less +163 -25
  34. package/es/components/pisellCurrency/PisellCurrency.stories.js +1 -1
  35. package/es/components/pisellCurrency/index.d.ts +2 -1
  36. package/es/components/pisellCurrency/index.js +16 -1
  37. package/es/components/pisellDataSourceContainer/components/ColumnsSetting/index.d.ts +7 -1
  38. package/es/components/pisellDataSourceContainer/components/ColumnsSetting/index.js +30 -3
  39. package/es/components/pisellDataSourceContainer/components/ColumnsSetting/utils.d.ts +28 -0
  40. package/es/components/pisellDataSourceContainer/components/ColumnsSetting/utils.js +68 -0
  41. package/es/components/pisellDataSourceContainer/components/Table/index.d.ts +1 -0
  42. package/es/components/pisellDataSourceContainer/components/Table/index.js +5 -3
  43. package/es/components/pisellDataSourceContainer/components/Table/useColumns.d.ts +1 -0
  44. package/es/components/pisellDataSourceContainer/components/Table/useColumns.js +37 -15
  45. package/es/components/pisellDataSourceContainer/hooks/useDataSourceKey.d.ts +1 -0
  46. package/es/components/pisellDateTimeDisplay/PisellDateTimeDisplay.js +21 -15
  47. package/es/components/pisellDateTimeDisplay/PisellDateTimeDisplay.less +2 -1
  48. package/es/components/pisellDateTimeDisplay/hooks/useCurrentTime.js +6 -4
  49. package/es/components/pisellDateTimeDisplay/utils/localeUtils.d.ts +2 -2
  50. package/es/components/pisellDateTimeDisplay/utils/localeUtils.js +15 -4
  51. package/es/components/pisellDateTimeDisplay/utils/relativeDay.d.ts +1 -0
  52. package/es/components/pisellDateTimeDisplay/utils/relativeDay.js +4 -2
  53. package/es/components/pisellEmail/PisellEmail.less +119 -10
  54. package/es/components/pisellEmail/PisellEmail.stories.js +1 -1
  55. package/es/components/pisellEmail/index.d.ts +3 -1
  56. package/es/components/pisellEmail/index.js +17 -1
  57. package/es/components/pisellFilter/index.js +76 -10
  58. package/es/components/pisellFind/index.js +11 -2
  59. package/es/components/pisellGridPro/ToolBar/index.less +23 -0
  60. package/es/components/pisellGridPro/index.d.ts +4 -0
  61. package/es/components/pisellLongText/PisellLongText.less +72 -4
  62. package/es/components/pisellLongText/PisellLongText.stories.js +1 -1
  63. package/es/components/pisellLongText/index.d.ts +2 -1
  64. package/es/components/pisellLongText/index.js +16 -1
  65. package/es/components/pisellLookup/PisellLookup.js +18 -9
  66. package/es/components/pisellLookup/PisellLookup.less +39 -16
  67. package/es/components/pisellLookup/components/LookupTrigger.js +14 -4
  68. package/es/components/pisellMultipleSelect/PisellMultipleSelect.less +159 -124
  69. package/es/components/pisellMultipleSelect/PisellMultipleSelect.stories.js +1 -1
  70. package/es/components/pisellMultipleSelect/components/EditView.js +8 -2
  71. package/es/components/pisellMultipleSelect/components/ReadOnlyView.d.ts +1 -1
  72. package/es/components/pisellMultipleSelect/components/ReadOnlyView.js +15 -11
  73. package/es/components/pisellMultipleSelect/index.d.ts +2 -1
  74. package/es/components/pisellMultipleSelect/index.js +16 -1
  75. package/es/components/pisellNumber/PisellNumber.less +135 -17
  76. package/es/components/pisellNumber/PisellNumber.stories.js +1 -1
  77. package/es/components/pisellNumber/index.d.ts +2 -1
  78. package/es/components/pisellNumber/index.js +16 -1
  79. package/es/components/pisellPercent/PisellPercent.less +142 -24
  80. package/es/components/pisellPercent/PisellPercent.stories.js +1 -1
  81. package/es/components/pisellPercent/index.d.ts +2 -1
  82. package/es/components/pisellPercent/index.js +16 -1
  83. package/es/components/pisellPhone/PisellPhone.less +122 -27
  84. package/es/components/pisellPhone/PisellPhone.stories.js +1 -1
  85. package/es/components/pisellPhone/components/EditView.js +1 -1
  86. package/es/components/pisellPhone/components/ReadOnlyView.js +15 -6
  87. package/es/components/pisellPhone/index.d.ts +2 -1
  88. package/es/components/pisellPhone/index.js +16 -1
  89. package/es/components/pisellRating/PisellRating.less +20 -12
  90. package/es/components/pisellRating/PisellRating.stories.js +1 -1
  91. package/es/components/pisellRating/index.d.ts +2 -1
  92. package/es/components/pisellRating/index.js +16 -1
  93. package/es/components/pisellRecordBoard/PisellRecordBoard.d.ts +8 -0
  94. package/es/components/pisellRecordBoard/PisellRecordBoard.js +243 -0
  95. package/es/components/pisellRecordBoard/PisellRecordBoard.stories.d.ts +81 -0
  96. package/es/components/pisellRecordBoard/PisellRecordBoard.stories.js +2358 -0
  97. package/es/components/pisellRecordBoard/context/RecordBoardContext.js +2 -0
  98. package/es/components/pisellRecordBoard/context/RecordBoardProvider.js +13 -0
  99. package/es/components/pisellRecordBoard/hooks/useRecordBoardContext.js +29 -0
  100. package/es/components/pisellRecordBoard/index.d.ts +35 -0
  101. package/es/components/pisellRecordBoard/index.js +23 -0
  102. package/es/components/pisellRecordBoard/layouts/CardLayout/CardList.js +36 -0
  103. package/es/components/pisellRecordBoard/layouts/CardLayout/index.js +20 -0
  104. package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.d.ts +14 -0
  105. package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.js +242 -0
  106. package/es/components/pisellRecordBoard/layouts/GridLayout/Grid.less +100 -0
  107. package/es/components/pisellRecordBoard/layouts/GridLayout/index.d.ts +13 -0
  108. package/es/components/pisellRecordBoard/layouts/GridLayout/index.js +20 -0
  109. package/es/components/pisellRecordBoard/shellFrame/BatchActionBar/index.d.ts +8 -0
  110. package/es/components/pisellRecordBoard/shellFrame/BatchActionBar/index.js +90 -0
  111. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/ColumnSettingPopover.d.ts +15 -0
  112. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/ColumnSettingPopover.js +138 -0
  113. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/index.d.ts +8 -0
  114. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/index.js +66 -0
  115. package/es/components/pisellRecordBoard/shellFrame/ColumnSetting/index.less +2 -0
  116. package/es/components/pisellRecordBoard/shellFrame/Pagination/index.d.ts +14 -0
  117. package/es/components/pisellRecordBoard/shellFrame/Pagination/index.js +66 -0
  118. package/es/components/pisellRecordBoard/shellFrame/Pagination/index.less +78 -0
  119. package/es/components/pisellRecordBoard/shellFrame/Search/index.d.ts +10 -0
  120. package/es/components/pisellRecordBoard/shellFrame/Search/index.js +41 -0
  121. package/es/components/pisellRecordBoard/shellFrame/ToolBar/ToolBarFilter.less +112 -0
  122. package/es/components/pisellRecordBoard/shellFrame/ToolBar/index.d.ts +11 -0
  123. package/es/components/pisellRecordBoard/shellFrame/ToolBar/index.js +215 -0
  124. package/es/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.d.ts +17 -0
  125. package/es/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.js +77 -0
  126. package/es/components/pisellRecordBoard/shellFrame/ToolBarReset/index.d.ts +16 -0
  127. package/es/components/pisellRecordBoard/shellFrame/ToolBarReset/index.js +65 -0
  128. package/es/components/pisellRecordBoard/shellFrame/ToolBarReset/index.less +41 -0
  129. package/es/components/pisellRecordBoard/shellFrame/index.d.ts +26 -0
  130. package/es/components/pisellRecordBoard/shellFrame/index.js +104 -0
  131. package/es/components/pisellRecordBoard/types.js +1 -0
  132. package/es/components/pisellRecordBoard/utils/recordBoardColumns.d.ts +41 -0
  133. package/es/components/pisellRecordBoard/utils/recordBoardColumns.js +508 -0
  134. package/es/components/pisellRecordBoard/utils/withRecordBoard.js +27 -0
  135. package/es/components/pisellShellFrame/PisellShellFrame.js +107 -0
  136. package/es/components/pisellShellFrame/PisellShellFrame.less +78 -0
  137. package/es/components/pisellShellFrame/PisellShellFrame.stories.js +195 -0
  138. package/es/components/pisellShellFrame/index.js +1 -0
  139. package/es/components/pisellShellFrame/types.js +1 -0
  140. package/es/components/pisellSingleLineText/PisellSingleLineText.stories.js +1 -1
  141. package/es/components/pisellSingleLineText/index.d.ts +2 -1
  142. package/es/components/pisellSingleLineText/index.js +16 -1
  143. package/es/components/pisellSingleSelect/PisellSingleSelect.less +103 -46
  144. package/es/components/pisellSingleSelect/PisellSingleSelect.stories.js +1 -1
  145. package/es/components/pisellSingleSelect/components/EditView.js +8 -2
  146. package/es/components/pisellSingleSelect/components/ReadOnlyView.d.ts +1 -1
  147. package/es/components/pisellSingleSelect/components/ReadOnlyView.js +10 -6
  148. package/es/components/pisellSingleSelect/index.d.ts +2 -1
  149. package/es/components/pisellSingleSelect/index.js +16 -1
  150. package/es/components/pisellTimeRangeDisplay/PisellTimeRangeDisplay.js +6 -3
  151. package/es/components/pisellUrl/PisellUrl.less +120 -11
  152. package/es/components/pisellUrl/PisellUrl.stories.js +1 -1
  153. package/es/components/pisellUrl/index.d.ts +3 -1
  154. package/es/components/pisellUrl/index.js +17 -1
  155. package/es/components/pisellWalletPassCard/index.js +1 -1
  156. package/es/components/productCard/components/Packages/utils.d.ts +1 -1
  157. package/es/components/select/index.less +18 -2
  158. package/es/components/sort/index.js +25 -3
  159. package/es/components/table/Table/fields/text/index.d.ts +1 -0
  160. package/es/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  161. package/es/components/table/Table/utils.d.ts +1 -1
  162. package/es/index.d.ts +6 -2
  163. package/es/index.js +2 -0
  164. package/es/locales/en-US.d.ts +36 -0
  165. package/es/locales/en-US.js +50 -2
  166. package/es/locales/index.js +2 -2
  167. package/es/locales/ja.d.ts +2 -0
  168. package/es/locales/ja.js +2 -0
  169. package/es/locales/pt.d.ts +2 -0
  170. package/es/locales/pt.js +2 -0
  171. package/es/locales/zh-CN.d.ts +36 -0
  172. package/es/locales/zh-CN.js +54 -6
  173. package/es/locales/zh-TW.d.ts +36 -0
  174. package/es/locales/zh-TW.js +54 -6
  175. package/es/utils/tagColor.js +39 -0
  176. package/lib/components/Pagination/index.d.ts +4 -5
  177. package/lib/components/Pagination/index.js +44 -21
  178. package/lib/components/Pagination/index.less +13 -7
  179. package/lib/components/PisellFields/index.d.ts +2 -2
  180. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +1 -1
  181. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +1 -0
  182. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +1 -0
  183. package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  184. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -1
  185. package/lib/components/dataSourceComponents/fields/Translation/BaseTranslation.d.ts +5 -0
  186. package/lib/components/dataSourceComponents/fields/Translation/type.d.ts +21 -0
  187. package/lib/components/dataSourceComponents/fields/index.d.ts +7 -7
  188. package/lib/components/filter/components/Dropdown/index.js +9 -2
  189. package/lib/components/filter/components/FilterButton/index.js +14 -3
  190. package/lib/components/filter/components/FilterButton/types.d.ts +8 -0
  191. package/lib/components/filter/components/FilterItem/AsyncOptionsSelectWrapper.d.ts +21 -0
  192. package/lib/components/filter/components/FilterItem/AsyncOptionsSelectWrapper.js +69 -0
  193. package/lib/components/filter/components/FilterItem/index.d.ts +3 -3
  194. package/lib/components/filter/components/FilterItem/index.js +133 -4
  195. package/lib/components/filter/components/FilterItem/index.less +90 -0
  196. package/lib/components/filter/types.d.ts +4 -2
  197. package/lib/components/pisellBatchActionBar/PisellBatchActionBar.js +26 -23
  198. package/lib/components/pisellCurrency/PisellCurrency.less +163 -25
  199. package/lib/components/pisellCurrency/PisellCurrency.stories.js +1 -1
  200. package/lib/components/pisellCurrency/index.d.ts +2 -1
  201. package/lib/components/pisellCurrency/index.js +7 -0
  202. package/lib/components/pisellDataSourceContainer/components/ColumnsSetting/index.d.ts +7 -1
  203. package/lib/components/pisellDataSourceContainer/components/ColumnsSetting/index.js +18 -2
  204. package/lib/components/pisellDataSourceContainer/components/ColumnsSetting/utils.d.ts +28 -0
  205. package/lib/components/pisellDataSourceContainer/components/ColumnsSetting/utils.js +81 -0
  206. package/lib/components/pisellDataSourceContainer/components/Table/index.d.ts +1 -0
  207. package/lib/components/pisellDataSourceContainer/components/Table/index.js +3 -1
  208. package/lib/components/pisellDataSourceContainer/components/Table/useColumns.d.ts +1 -0
  209. package/lib/components/pisellDataSourceContainer/components/Table/useColumns.js +25 -14
  210. package/lib/components/pisellDataSourceContainer/hooks/useDataSourceKey.d.ts +1 -0
  211. package/lib/components/pisellDateTimeDisplay/PisellDateTimeDisplay.js +17 -11
  212. package/lib/components/pisellDateTimeDisplay/PisellDateTimeDisplay.less +2 -1
  213. package/lib/components/pisellDateTimeDisplay/hooks/useCurrentTime.js +7 -1
  214. package/lib/components/pisellDateTimeDisplay/utils/localeUtils.d.ts +2 -2
  215. package/lib/components/pisellDateTimeDisplay/utils/localeUtils.js +10 -2
  216. package/lib/components/pisellDateTimeDisplay/utils/relativeDay.d.ts +1 -0
  217. package/lib/components/pisellDateTimeDisplay/utils/relativeDay.js +2 -1
  218. package/lib/components/pisellEmail/PisellEmail.less +119 -10
  219. package/lib/components/pisellEmail/PisellEmail.stories.js +1 -1
  220. package/lib/components/pisellEmail/index.d.ts +3 -1
  221. package/lib/components/pisellEmail/index.js +10 -2
  222. package/lib/components/pisellFilter/index.js +79 -8
  223. package/lib/components/pisellFind/index.js +11 -2
  224. package/lib/components/pisellGridPro/ToolBar/index.less +23 -0
  225. package/lib/components/pisellGridPro/index.d.ts +4 -0
  226. package/lib/components/pisellLongText/PisellLongText.less +72 -4
  227. package/lib/components/pisellLongText/PisellLongText.stories.js +1 -1
  228. package/lib/components/pisellLongText/index.d.ts +2 -1
  229. package/lib/components/pisellLongText/index.js +7 -0
  230. package/lib/components/pisellLookup/PisellLookup.js +12 -6
  231. package/lib/components/pisellLookup/PisellLookup.less +39 -16
  232. package/lib/components/pisellLookup/components/LookupTrigger.js +9 -3
  233. package/lib/components/pisellMultipleSelect/PisellMultipleSelect.less +159 -124
  234. package/lib/components/pisellMultipleSelect/PisellMultipleSelect.stories.js +1 -1
  235. package/lib/components/pisellMultipleSelect/components/EditView.js +4 -1
  236. package/lib/components/pisellMultipleSelect/components/ReadOnlyView.d.ts +1 -1
  237. package/lib/components/pisellMultipleSelect/components/ReadOnlyView.js +29 -1
  238. package/lib/components/pisellMultipleSelect/index.d.ts +2 -1
  239. package/lib/components/pisellMultipleSelect/index.js +7 -0
  240. package/lib/components/pisellNumber/PisellNumber.less +135 -17
  241. package/lib/components/pisellNumber/PisellNumber.stories.js +1 -1
  242. package/lib/components/pisellNumber/index.d.ts +2 -1
  243. package/lib/components/pisellNumber/index.js +7 -0
  244. package/lib/components/pisellPercent/PisellPercent.less +142 -24
  245. package/lib/components/pisellPercent/PisellPercent.stories.js +1 -1
  246. package/lib/components/pisellPercent/index.d.ts +2 -1
  247. package/lib/components/pisellPercent/index.js +7 -0
  248. package/lib/components/pisellPhone/PisellPhone.less +122 -27
  249. package/lib/components/pisellPhone/PisellPhone.stories.js +1 -1
  250. package/lib/components/pisellPhone/components/EditView.js +1 -1
  251. package/lib/components/pisellPhone/components/ReadOnlyView.js +18 -4
  252. package/lib/components/pisellPhone/index.d.ts +2 -1
  253. package/lib/components/pisellPhone/index.js +7 -0
  254. package/lib/components/pisellRating/PisellRating.less +20 -12
  255. package/lib/components/pisellRating/PisellRating.stories.js +1 -1
  256. package/lib/components/pisellRating/index.d.ts +2 -1
  257. package/lib/components/pisellRating/index.js +7 -0
  258. package/lib/components/pisellRecordBoard/PisellRecordBoard.d.ts +8 -0
  259. package/lib/components/pisellRecordBoard/PisellRecordBoard.js +263 -0
  260. package/lib/components/pisellRecordBoard/PisellRecordBoard.stories.d.ts +81 -0
  261. package/lib/components/pisellRecordBoard/PisellRecordBoard.stories.js +1673 -0
  262. package/lib/components/pisellRecordBoard/context/RecordBoardContext.js +30 -0
  263. package/lib/components/pisellRecordBoard/context/RecordBoardProvider.js +46 -0
  264. package/lib/components/pisellRecordBoard/hooks/useRecordBoardContext.js +47 -0
  265. package/lib/components/pisellRecordBoard/index.d.ts +35 -0
  266. package/lib/components/pisellRecordBoard/index.js +59 -0
  267. package/lib/components/pisellRecordBoard/layouts/CardLayout/CardList.js +46 -0
  268. package/lib/components/pisellRecordBoard/layouts/CardLayout/index.js +46 -0
  269. package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.d.ts +14 -0
  270. package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.js +264 -0
  271. package/lib/components/pisellRecordBoard/layouts/GridLayout/Grid.less +100 -0
  272. package/lib/components/pisellRecordBoard/layouts/GridLayout/index.d.ts +13 -0
  273. package/lib/components/pisellRecordBoard/layouts/GridLayout/index.js +46 -0
  274. package/lib/components/pisellRecordBoard/shellFrame/BatchActionBar/index.d.ts +8 -0
  275. package/lib/components/pisellRecordBoard/shellFrame/BatchActionBar/index.js +108 -0
  276. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/ColumnSettingPopover.d.ts +15 -0
  277. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/ColumnSettingPopover.js +173 -0
  278. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/index.d.ts +8 -0
  279. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/index.js +100 -0
  280. package/lib/components/pisellRecordBoard/shellFrame/ColumnSetting/index.less +2 -0
  281. package/lib/components/pisellRecordBoard/shellFrame/Pagination/index.d.ts +14 -0
  282. package/lib/components/pisellRecordBoard/shellFrame/Pagination/index.js +90 -0
  283. package/lib/components/pisellRecordBoard/shellFrame/Pagination/index.less +78 -0
  284. package/lib/components/pisellRecordBoard/shellFrame/Search/index.d.ts +10 -0
  285. package/lib/components/pisellRecordBoard/shellFrame/Search/index.js +53 -0
  286. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/ToolBarFilter.less +112 -0
  287. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/index.d.ts +11 -0
  288. package/lib/components/pisellRecordBoard/shellFrame/ToolBar/index.js +247 -0
  289. package/lib/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.d.ts +17 -0
  290. package/lib/components/pisellRecordBoard/shellFrame/ToolBarQuickFilter/index.js +93 -0
  291. package/lib/components/pisellRecordBoard/shellFrame/ToolBarReset/index.d.ts +16 -0
  292. package/lib/components/pisellRecordBoard/shellFrame/ToolBarReset/index.js +85 -0
  293. package/lib/components/pisellRecordBoard/shellFrame/ToolBarReset/index.less +41 -0
  294. package/lib/components/pisellRecordBoard/shellFrame/index.d.ts +26 -0
  295. package/lib/components/pisellRecordBoard/shellFrame/index.js +137 -0
  296. package/lib/components/pisellRecordBoard/types.js +17 -0
  297. package/lib/components/pisellRecordBoard/utils/recordBoardColumns.d.ts +41 -0
  298. package/lib/components/pisellRecordBoard/utils/recordBoardColumns.js +365 -0
  299. package/lib/components/pisellRecordBoard/utils/withRecordBoard.js +49 -0
  300. package/lib/components/pisellShellFrame/PisellShellFrame.js +113 -0
  301. package/lib/components/pisellShellFrame/PisellShellFrame.less +78 -0
  302. package/lib/components/pisellShellFrame/PisellShellFrame.stories.js +129 -0
  303. package/lib/components/pisellShellFrame/index.js +40 -0
  304. package/lib/components/pisellShellFrame/types.js +17 -0
  305. package/lib/components/pisellSingleLineText/PisellSingleLineText.stories.js +1 -1
  306. package/lib/components/pisellSingleLineText/index.d.ts +2 -1
  307. package/lib/components/pisellSingleLineText/index.js +7 -0
  308. package/lib/components/pisellSingleSelect/PisellSingleSelect.less +103 -46
  309. package/lib/components/pisellSingleSelect/PisellSingleSelect.stories.js +1 -1
  310. package/lib/components/pisellSingleSelect/components/EditView.js +4 -1
  311. package/lib/components/pisellSingleSelect/components/ReadOnlyView.d.ts +1 -1
  312. package/lib/components/pisellSingleSelect/components/ReadOnlyView.js +12 -9
  313. package/lib/components/pisellSingleSelect/index.d.ts +2 -1
  314. package/lib/components/pisellSingleSelect/index.js +7 -0
  315. package/lib/components/pisellTimeRangeDisplay/PisellTimeRangeDisplay.js +6 -2
  316. package/lib/components/pisellUrl/PisellUrl.less +120 -11
  317. package/lib/components/pisellUrl/PisellUrl.stories.js +1 -1
  318. package/lib/components/pisellUrl/index.d.ts +3 -1
  319. package/lib/components/pisellUrl/index.js +10 -2
  320. package/lib/components/pisellWalletPassCard/index.js +9 -2
  321. package/lib/components/productCard/components/Packages/utils.d.ts +1 -1
  322. package/lib/components/select/index.less +18 -2
  323. package/lib/components/sort/index.js +13 -3
  324. package/lib/components/table/Table/fields/text/index.d.ts +1 -0
  325. package/lib/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  326. package/lib/components/table/Table/utils.d.ts +1 -1
  327. package/lib/index.d.ts +6 -2
  328. package/lib/index.js +6 -0
  329. package/lib/locales/en-US.d.ts +36 -0
  330. package/lib/locales/en-US.js +42 -2
  331. package/lib/locales/index.js +2 -2
  332. package/lib/locales/ja.d.ts +2 -0
  333. package/lib/locales/ja.js +2 -0
  334. package/lib/locales/pt.d.ts +2 -0
  335. package/lib/locales/pt.js +2 -0
  336. package/lib/locales/zh-CN.d.ts +36 -0
  337. package/lib/locales/zh-CN.js +46 -6
  338. package/lib/locales/zh-TW.d.ts +36 -0
  339. package/lib/locales/zh-TW.js +46 -6
  340. package/lib/utils/tagColor.js +60 -0
  341. package/lowcode/auto-resize-text/meta.ts +1 -1
  342. package/package.json +3 -3
  343. package/es/components/pisellDateTimeDisplay/formats/dateTimeDisplayFormats.d.ts +0 -7
  344. package/es/components/pisellDateTimeDisplay/formats/index.d.ts +0 -1
  345. package/es/components/pisellDateTimeDisplay/types.d.ts +0 -347
  346. package/es/components/pisellDateTimeDisplay/utils/formatTime.d.ts +0 -19
  347. package/es/components/pisellDateTimeDisplay/utils/getRefreshInterval.d.ts +0 -18
  348. package/es/components/pisellLookup/PisellLookup.d.ts +0 -4
  349. package/es/components/pisellLookup/PisellLookup.stories.d.ts +0 -129
  350. package/es/components/pisellLookup/components/HotWords.d.ts +0 -7
  351. package/es/components/pisellLookup/components/LookupAuxiliary.d.ts +0 -7
  352. package/es/components/pisellLookup/components/LookupResultHost.d.ts +0 -7
  353. package/es/components/pisellLookup/components/SearchHistory.d.ts +0 -7
  354. package/es/components/pisellLookup/components/SuggestWords.d.ts +0 -7
  355. package/es/components/pisellLookup/components/index.d.ts +0 -9
  356. package/es/components/pisellLookup/hooks/index.d.ts +0 -6
  357. package/es/components/pisellLookup/hooks/useSearchHistory.d.ts +0 -48
  358. package/es/components/pisellLookup/index.d.ts +0 -6
  359. package/es/components/pisellLookup/types.d.ts +0 -666
  360. package/es/components/pisellLookup/utils/index.d.ts +0 -5
  361. package/es/components/pisellLookup/utils/trigger.d.ts +0 -42
  362. package/es/components/pisellSort/type.d.ts +0 -7
  363. package/es/components/pisellTimeRangeDisplay/types.d.ts +0 -137
  364. package/es/components/pisellTimeRangeDisplay/utils/parseTimeRange.d.ts +0 -23
  365. package/es/components/sort/types.d.ts +0 -20
  366. package/es/components/virtualInput/index.d.ts +0 -29
  367. package/es/hooks/useThemeTokens.d.ts +0 -7
  368. package/lib/components/pisellDateTimeDisplay/formats/dateTimeDisplayFormats.d.ts +0 -7
  369. package/lib/components/pisellDateTimeDisplay/formats/index.d.ts +0 -1
  370. package/lib/components/pisellDateTimeDisplay/types.d.ts +0 -347
  371. package/lib/components/pisellDateTimeDisplay/utils/formatTime.d.ts +0 -19
  372. package/lib/components/pisellDateTimeDisplay/utils/getRefreshInterval.d.ts +0 -18
  373. package/lib/components/pisellLookup/PisellLookup.d.ts +0 -4
  374. package/lib/components/pisellLookup/PisellLookup.stories.d.ts +0 -129
  375. package/lib/components/pisellLookup/components/HotWords.d.ts +0 -7
  376. package/lib/components/pisellLookup/components/LookupAuxiliary.d.ts +0 -7
  377. package/lib/components/pisellLookup/components/LookupResultHost.d.ts +0 -7
  378. package/lib/components/pisellLookup/components/SearchHistory.d.ts +0 -7
  379. package/lib/components/pisellLookup/components/SuggestWords.d.ts +0 -7
  380. package/lib/components/pisellLookup/components/index.d.ts +0 -9
  381. package/lib/components/pisellLookup/hooks/index.d.ts +0 -6
  382. package/lib/components/pisellLookup/hooks/useSearchHistory.d.ts +0 -48
  383. package/lib/components/pisellLookup/index.d.ts +0 -6
  384. package/lib/components/pisellLookup/types.d.ts +0 -666
  385. package/lib/components/pisellLookup/utils/index.d.ts +0 -5
  386. package/lib/components/pisellLookup/utils/trigger.d.ts +0 -42
  387. package/lib/components/pisellSort/type.d.ts +0 -7
  388. package/lib/components/pisellTimeRangeDisplay/types.d.ts +0 -137
  389. package/lib/components/pisellTimeRangeDisplay/utils/parseTimeRange.d.ts +0 -23
  390. package/lib/components/sort/types.d.ts +0 -20
  391. package/lib/components/virtualInput/index.d.ts +0 -29
  392. package/lib/hooks/useThemeTokens.d.ts +0 -7
@@ -0,0 +1,508 @@
1
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
5
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
6
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
7
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
8
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
9
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
14
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
15
+ import React, { useState, useEffect } from 'react';
16
+ import { PisellSingleLineText } from "../../pisellSingleLineText";
17
+ import { PisellLongText } from "../../pisellLongText";
18
+ import { PisellEmail } from "../../pisellEmail";
19
+ import { PisellPhone } from "../../pisellPhone";
20
+ import { PisellUrl } from "../../pisellUrl";
21
+ import { PisellNumber } from "../../pisellNumber";
22
+ import { PisellCurrency } from "../../pisellCurrency";
23
+ import { PisellPercent } from "../../pisellPercent";
24
+ import { PisellRating } from "../../pisellRating";
25
+ import { PisellSingleSelect } from "../../pisellSingleSelect";
26
+ import { PisellMultipleSelect } from "../../pisellMultipleSelect";
27
+ import { PisellDateTimeDisplay } from "../../pisellDateTimeDisplay";
28
+ var FIELD_TYPE_TO_READ_COMPONENT = {
29
+ singleLineText: PisellSingleLineText,
30
+ longText: PisellLongText,
31
+ email: PisellEmail,
32
+ phone: PisellPhone,
33
+ url: PisellUrl,
34
+ number: PisellNumber,
35
+ currency: PisellCurrency,
36
+ percent: PisellPercent,
37
+ rating: PisellRating,
38
+ singleSelect: PisellSingleSelect,
39
+ multipleSelect: PisellMultipleSelect,
40
+ dateTime: PisellDateTimeDisplay
41
+ };
42
+
43
+ /** 列 type 对应排序类型默认值(组件未导出 SortOptions 时使用) */
44
+ var FIELD_TYPE_TO_SORT_OPTIONS_DEFAULT = {
45
+ singleLineText: {
46
+ type: 'string'
47
+ },
48
+ longText: {
49
+ type: 'string'
50
+ },
51
+ email: {
52
+ type: 'string'
53
+ },
54
+ phone: {
55
+ type: 'string'
56
+ },
57
+ url: {
58
+ type: 'string'
59
+ },
60
+ number: {
61
+ type: 'number'
62
+ },
63
+ currency: {
64
+ type: 'number'
65
+ },
66
+ percent: {
67
+ type: 'number'
68
+ },
69
+ rating: {
70
+ type: 'number'
71
+ },
72
+ singleSelect: {
73
+ type: 'option'
74
+ },
75
+ multipleSelect: {
76
+ type: 'option'
77
+ },
78
+ dateTime: {
79
+ type: 'date'
80
+ }
81
+ };
82
+
83
+ /** 从组件或默认值取排序配置;组件可挂载 SortOptions.getSortItems(内置完整排序项)或 SortOptions.type */
84
+ function getSortOptionForFieldType(fieldType) {
85
+ var Com = FIELD_TYPE_TO_READ_COMPONENT[fieldType];
86
+ var fromComponent = Com && Com.SortOptions;
87
+ var fallback = FIELD_TYPE_TO_SORT_OPTIONS_DEFAULT[fieldType];
88
+ var opts = fromComponent !== null && fromComponent !== void 0 ? fromComponent : fallback;
89
+ return opts ? _objectSpread(_objectSpread({}, fallback), opts) : null;
90
+ }
91
+
92
+ /** 列 type 对应到 FilterItem 的 type(用于不传 type 时的手动 filter 或派生筛选项的兼容形态)。dateTime 默认用 rangePickerNew(antd)避免使用自研/MUI 的 rangePicker。 */
93
+ var FIELD_TYPE_TO_FILTER_TYPE = {
94
+ singleLineText: 'input',
95
+ longText: 'input',
96
+ email: 'input',
97
+ phone: 'input',
98
+ url: 'input',
99
+ number: 'input',
100
+ currency: 'input',
101
+ percent: 'input',
102
+ rating: 'single',
103
+ singleSelect: 'single',
104
+ multipleSelect: 'single',
105
+ dateTime: 'rangePickerNew'
106
+ };
107
+ function getColumnKey(column) {
108
+ var _column$key;
109
+ var key = (_column$key = column.key) !== null && _column$key !== void 0 ? _column$key : Array.isArray(column.dataIndex) ? column.dataIndex.join('.') : column.dataIndex;
110
+ return typeof key === 'string' ? key : '';
111
+ }
112
+
113
+ /** 获取列唯一 key,供列显示隐藏等使用 */
114
+ export function getRecordBoardColumnKey(column) {
115
+ return getColumnKey(column);
116
+ }
117
+ function getColumnLabel(column) {
118
+ var title = column.title;
119
+ if (typeof title === 'string') return title;
120
+ return getColumnKey(column) || '';
121
+ }
122
+
123
+ /** 从 record 按 dataIndex(支持 string | string[])取值 */
124
+ function getRecordValue(record, dataIndex) {
125
+ if (record == null || dataIndex == null) return undefined;
126
+ var path = Array.isArray(dataIndex) ? dataIndex : [dataIndex];
127
+ return path.reduce(function (r, k) {
128
+ return r != null && _typeof(r) === 'object' ? r[k] : undefined;
129
+ }, record);
130
+ }
131
+
132
+ /** 是否视为空值(用于「全空」判断) */
133
+ function isEmptyValue(v) {
134
+ return v == null || v === '';
135
+ }
136
+
137
+ /** 是否可直接用 === 比较(string / number) */
138
+ function isComparablePrimitive(v) {
139
+ return typeof v === 'string' || typeof v === 'number';
140
+ }
141
+ /**
142
+ * 根据当前页 data 计算:哪些列「全列同值」或「全空」应隐藏,以及总结区展示项。
143
+ * 仅当 grid.collapseUniformColumns 为 true 时使用。
144
+ */
145
+ export function computeUniformColumnSummary(data, columns) {
146
+ var uniformHiddenColumnKeys = [];
147
+ var summaryItems = [];
148
+ if (!Array.isArray(data) || data.length === 0) return {
149
+ uniformHiddenColumnKeys: uniformHiddenColumnKeys,
150
+ summaryItems: summaryItems
151
+ };
152
+ var _iterator = _createForOfIteratorHelper(columns),
153
+ _step;
154
+ try {
155
+ var _loop = function _loop() {
156
+ var column = _step.value;
157
+ var collapseWhenUniform = column.collapseWhenUniform !== false;
158
+ if (!collapseWhenUniform) return 0; // continue
159
+ var columnKey = getColumnKey(column);
160
+ if (!columnKey) return 0; // continue
161
+ var dataIndex = column.dataIndex;
162
+ var getVal = typeof column.uniformCompare === 'function' ? function (record) {
163
+ return column.uniformCompare(getRecordValue(record, Array.isArray(dataIndex) ? dataIndex : dataIndex), record);
164
+ } : function (record) {
165
+ return getRecordValue(record, Array.isArray(dataIndex) ? dataIndex : dataIndex);
166
+ };
167
+ var values = data.map(getVal);
168
+ var first = values[0];
169
+
170
+ // 仅当 dataIndex 取值为 number 或 string 时才参与合并;undefined/null 的列不参与
171
+ if (first === undefined || first === null) return 0; // continue
172
+ var cellValue = getRecordValue(data[0], Array.isArray(dataIndex) ? dataIndex : dataIndex);
173
+ if (values.every(function (v) {
174
+ return isEmptyValue(v);
175
+ })) {
176
+ uniformHiddenColumnKeys.push(columnKey);
177
+ summaryItems.push({
178
+ columnKey: columnKey,
179
+ title: getColumnLabel(column),
180
+ type: 'empty',
181
+ value: undefined,
182
+ cellValue: cellValue,
183
+ record: data[0]
184
+ });
185
+ return 0; // continue
186
+ }
187
+ var comparable = isComparablePrimitive(first);
188
+ if (!comparable) return 0; // continue
189
+ var allSame = values.every(function (v) {
190
+ return isEmptyValue(v) && isEmptyValue(first) || v === first;
191
+ });
192
+ if (!allSame) return 0; // continue
193
+ uniformHiddenColumnKeys.push(columnKey);
194
+ summaryItems.push({
195
+ columnKey: columnKey,
196
+ title: getColumnLabel(column),
197
+ type: 'uniform',
198
+ displayValue: first != null && first !== '' ? String(first) : undefined,
199
+ value: first,
200
+ cellValue: cellValue,
201
+ record: data[0]
202
+ });
203
+ },
204
+ _ret;
205
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
206
+ _ret = _loop();
207
+ if (_ret === 0) continue;
208
+ }
209
+ } catch (err) {
210
+ _iterator.e(err);
211
+ } finally {
212
+ _iterator.f();
213
+ }
214
+ return {
215
+ uniformHiddenColumnKeys: uniformHiddenColumnKeys,
216
+ summaryItems: summaryItems
217
+ };
218
+ }
219
+ function normalizeOptions(list) {
220
+ if (!Array.isArray(list)) return [];
221
+ return list.map(function (item) {
222
+ return item && _typeof(item) === 'object' && 'label' in item && 'value' in item ? {
223
+ label: String(item.label),
224
+ value: item.value
225
+ } : {
226
+ label: String(item),
227
+ value: item
228
+ };
229
+ });
230
+ }
231
+
232
+ /**
233
+ * 只读单元格:当列使用 getOptions(异步)时,先解析选项再渲染 Pisell 只读组件。
234
+ */
235
+ function AsyncOptionsReadCell(_ref) {
236
+ var getOptions = _ref.getOptions,
237
+ value = _ref.value,
238
+ fieldType = _ref.fieldType,
239
+ fieldProps = _ref.fieldProps;
240
+ var _useState = useState([]),
241
+ _useState2 = _slicedToArray(_useState, 2),
242
+ options = _useState2[0],
243
+ setOptions = _useState2[1];
244
+ var Com = FIELD_TYPE_TO_READ_COMPONENT[fieldType];
245
+ useEffect(function () {
246
+ var result = getOptions();
247
+ var resolved = Promise.resolve(result);
248
+ resolved.then(function (list) {
249
+ return setOptions(normalizeOptions(list));
250
+ });
251
+ }, [getOptions]);
252
+ if (Com == null) return value;
253
+ var common = _objectSpread(_objectSpread({
254
+ value: value
255
+ }, fieldProps), {}, {
256
+ options: options
257
+ });
258
+ if (fieldType === 'singleSelect' || fieldType === 'multipleSelect') {
259
+ return /*#__PURE__*/React.createElement(Com, _extends({}, common, {
260
+ readOnly: true
261
+ }));
262
+ }
263
+ return /*#__PURE__*/React.createElement(Com, _extends({}, common, {
264
+ mode: "read"
265
+ }));
266
+ }
267
+
268
+ /** 为带 type 的列生成只读态渲染函数(Pisell 组件) */
269
+ function createReadRender(column, fieldType) {
270
+ var _column$fieldProps;
271
+ var Com = FIELD_TYPE_TO_READ_COMPONENT[fieldType];
272
+ var fieldProps = (_column$fieldProps = column.fieldProps) !== null && _column$fieldProps !== void 0 ? _column$fieldProps : {};
273
+ var getOptions = fieldProps.getOptions;
274
+ var useAsyncOptions = (fieldType === 'singleSelect' || fieldType === 'multipleSelect') && typeof getOptions === 'function';
275
+ return function (value) {
276
+ if (Com == null) return value;
277
+ if (useAsyncOptions) {
278
+ return /*#__PURE__*/React.createElement(AsyncOptionsReadCell, {
279
+ getOptions: getOptions,
280
+ value: value,
281
+ fieldType: fieldType,
282
+ fieldProps: fieldProps
283
+ });
284
+ }
285
+ var common = _objectSpread({
286
+ value: value
287
+ }, fieldProps);
288
+ if (fieldType === 'singleSelect' || fieldType === 'multipleSelect') {
289
+ return /*#__PURE__*/React.createElement(Com, _extends({}, common, {
290
+ readOnly: true
291
+ }));
292
+ }
293
+ if (fieldType === 'dateTime') {
294
+ return /*#__PURE__*/React.createElement(Com, common);
295
+ }
296
+ return /*#__PURE__*/React.createElement(Com, _extends({}, common, {
297
+ mode: "read"
298
+ }));
299
+ };
300
+ }
301
+
302
+ /**
303
+ * 处理列配置:对带 type 的列注入基于 Pisell 组件的 render,其余列保持不变。
304
+ * 有 type 时若列上传入了 render 则优先使用(覆盖自动派生)。
305
+ */
306
+ export function processColumnsForGrid(columns) {
307
+ if (!Array.isArray(columns) || columns.length === 0) return columns !== null && columns !== void 0 ? columns : [];
308
+ return columns.map(function (col) {
309
+ var fieldType = col.type;
310
+ if (!fieldType || !FIELD_TYPE_TO_READ_COMPONENT[fieldType]) {
311
+ return col;
312
+ }
313
+ var existingRender = col.render;
314
+ var readRender = createReadRender(col, fieldType);
315
+ return _objectSpread(_objectSpread({}, col), {}, {
316
+ render: existingRender !== null && existingRender !== void 0 ? existingRender : function (value, record, index) {
317
+ return readRender(value, record, index);
318
+ }
319
+ });
320
+ });
321
+ }
322
+
323
+ /** 从列配置生成筛选项(FilterItemProps);有 type 时可由 filter 覆盖,无 type 时需传 filter */
324
+ function columnToFilterItem(column) {
325
+ var _f$label2, _f$props2, _f$options;
326
+ var key = getColumnKey(column);
327
+ var label = getColumnLabel(column);
328
+ if (!key) return null;
329
+ if (column.filterable === false) return null;
330
+ var hasExplicitFilter = column.filter && (column.filter.type != null || column.filter.component);
331
+ if (column.type && !hasExplicitFilter) {
332
+ var _column$fieldProps2, _fieldProps$options, _fieldProps$placehold;
333
+ var fieldType = column.type;
334
+ var _filterType = FIELD_TYPE_TO_FILTER_TYPE[fieldType];
335
+ var fieldProps = (_column$fieldProps2 = column.fieldProps) !== null && _column$fieldProps2 !== void 0 ? _column$fieldProps2 : {};
336
+ var _hasGetOptions = typeof fieldProps.getOptions === 'function';
337
+ var options = fieldType === 'singleSelect' || fieldType === 'multipleSelect' || fieldType === 'rating' ? (_fieldProps$options = fieldProps.options) !== null && _fieldProps$options !== void 0 ? _fieldProps$options : fieldType === 'rating' ? [1, 2, 3, 4, 5].map(function (v) {
338
+ return {
339
+ label: String(v),
340
+ value: v
341
+ };
342
+ }) : _hasGetOptions ? undefined : [] : undefined;
343
+ return {
344
+ type: _filterType,
345
+ key: key,
346
+ name: key,
347
+ label: label,
348
+ props: _filterType === 'single' ? _objectSpread({
349
+ options: options !== null && options !== void 0 ? options : [],
350
+ getOptions: fieldProps.getOptions
351
+ }, fieldProps) : _objectSpread({
352
+ placeholder: (_fieldProps$placehold = fieldProps.placeholder) !== null && _fieldProps$placehold !== void 0 ? _fieldProps$placehold : "\u8BF7\u8F93\u5165".concat(label)
353
+ }, fieldProps),
354
+ other: _objectSpread({
355
+ fieldType: fieldType,
356
+ getOptions: fieldProps.getOptions
357
+ }, fieldProps)
358
+ };
359
+ }
360
+ if (!column.filter) return null;
361
+ var f = column.filter;
362
+ if (f.component) {
363
+ var _f$label, _f$props;
364
+ return {
365
+ type: 'custom',
366
+ key: key,
367
+ name: key,
368
+ label: (_f$label = f.label) !== null && _f$label !== void 0 ? _f$label : label,
369
+ props: (_f$props = f.props) !== null && _f$props !== void 0 ? _f$props : {},
370
+ other: _objectSpread({
371
+ component: f.component
372
+ }, f.props || {})
373
+ };
374
+ }
375
+ var filterType = f.type;
376
+ if (!filterType) return null;
377
+ var hasGetOptions = typeof f.getOptions === 'function';
378
+ return {
379
+ type: filterType,
380
+ key: key,
381
+ name: key,
382
+ label: (_f$label2 = f.label) !== null && _f$label2 !== void 0 ? _f$label2 : label,
383
+ props: (_f$props2 = f.props) !== null && _f$props2 !== void 0 ? _f$props2 : filterType === 'single' ? {
384
+ options: (_f$options = f.options) !== null && _f$options !== void 0 ? _f$options : [],
385
+ getOptions: f.getOptions
386
+ } : {},
387
+ other: filterType === 'single' && hasGetOptions ? {
388
+ getOptions: f.getOptions
389
+ } : {}
390
+ };
391
+ }
392
+
393
+ /** 从列配置生成排序项(SortItemProps);有 type 时可由 sort 覆盖,无 type 时需传 sortable + sort */
394
+ function columnToSortItem(column) {
395
+ var _s$label;
396
+ var key = getColumnKey(column);
397
+ var label = getColumnLabel(column);
398
+ if (!key) return null;
399
+ if (column.sortable === false) return null;
400
+ var hasExplicitSort = column.sort && (column.sort.type != null || typeof column.sort.getSortItems === 'function');
401
+ if (column.type && !hasExplicitSort) {
402
+ var _opts$label;
403
+ var fieldType = column.type;
404
+ if (!FIELD_TYPE_TO_READ_COMPONENT[fieldType]) return null;
405
+ var opts = getSortOptionForFieldType(fieldType);
406
+ if (!opts) return null;
407
+ var _hasGetSortItems = 'getSortItems' in opts && typeof opts.getSortItems === 'function';
408
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, _hasGetSortItems ? {} : {
409
+ type: 'type' in opts ? opts.type : undefined
410
+ }), _hasGetSortItems && 'getSortItems' in opts ? {
411
+ getSortItems: opts.getSortItems
412
+ } : {}), {}, {
413
+ name: key,
414
+ label: 'label' in opts ? (_opts$label = opts.label) !== null && _opts$label !== void 0 ? _opts$label : label : label,
415
+ isCustom: false
416
+ }, 'localFilter' in opts && opts.localFilter !== undefined && {
417
+ localFilter: opts.localFilter
418
+ }), 'isHidden' in opts && opts.isHidden !== undefined && {
419
+ isHidden: opts.isHidden
420
+ });
421
+ }
422
+ if (!column.type && column.sortable !== true) return null;
423
+ if (!column.sort) return null;
424
+ var s = column.sort;
425
+ var hasGetSortItems = typeof s.getSortItems === 'function';
426
+ var sortItem = _objectSpread({
427
+ name: key,
428
+ label: (_s$label = s.label) !== null && _s$label !== void 0 ? _s$label : label,
429
+ isCustom: false
430
+ }, s.isHidden !== undefined && {
431
+ isHidden: s.isHidden
432
+ });
433
+ if (hasGetSortItems && s.getSortItems) {
434
+ sortItem.getSortItems = s.getSortItems;
435
+ } else if (s.type != null) {
436
+ sortItem.type = s.type;
437
+ }
438
+ return sortItem;
439
+ }
440
+
441
+ /**
442
+ * 从 columns 派生排序列表(SortItemProps[])。
443
+ * 有 type 的列:根据组件 SortOptions(或默认)生成;无 type 的列:根据 sortable + sort 生成。
444
+ */
445
+ export function deriveSortFromColumns(columns) {
446
+ if (!Array.isArray(columns) || columns.length === 0) return [];
447
+ var list = [];
448
+ var _iterator2 = _createForOfIteratorHelper(columns),
449
+ _step2;
450
+ try {
451
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
452
+ var col = _step2.value;
453
+ var hasType = Boolean(col.type && FIELD_TYPE_TO_READ_COMPONENT[col.type]);
454
+ if (hasType && col.sortable === false) continue;
455
+ var item = columnToSortItem(col);
456
+ if (item) list.push(item);
457
+ }
458
+ } catch (err) {
459
+ _iterator2.e(err);
460
+ } finally {
461
+ _iterator2.f();
462
+ }
463
+ return list;
464
+ }
465
+
466
+ /**
467
+ * 从 columns 派生 filter 列表(quickFilter + otherFilter)。
468
+ * 有 type 的列:根据 type + fieldProps 生成筛选项;无 type 的列:根据 filterable + filter 生成。
469
+ */
470
+ export function deriveFilterFromColumns(columns) {
471
+ var quickFilter = [];
472
+ var otherFilter = [];
473
+ if (!Array.isArray(columns) || columns.length === 0) {
474
+ return {
475
+ quickFilter: quickFilter,
476
+ otherFilter: otherFilter
477
+ };
478
+ }
479
+ var _iterator3 = _createForOfIteratorHelper(columns),
480
+ _step3;
481
+ try {
482
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
483
+ var _col$filter, _col$filter2;
484
+ var col = _step3.value;
485
+ var key = getColumnKey(col);
486
+ if (!key) continue;
487
+ var hasType = Boolean(col.type && FIELD_TYPE_TO_READ_COMPONENT[col.type]);
488
+ if (hasType && col.filterable === false) continue;
489
+ // 仅显式配置 quickFilter: true 的列放入快筛(左侧 QuickFilter),其余放入普通筛选(右侧高级筛选)
490
+ var useQuick = hasType ? ((_col$filter = col.filter) === null || _col$filter === void 0 ? void 0 : _col$filter.quickFilter) === true : Boolean(col.filterable && ((_col$filter2 = col.filter) === null || _col$filter2 === void 0 ? void 0 : _col$filter2.quickFilter));
491
+ var item = columnToFilterItem(col);
492
+ if (!item) continue;
493
+ if (useQuick) {
494
+ quickFilter.push(item);
495
+ } else {
496
+ otherFilter.push(item);
497
+ }
498
+ }
499
+ } catch (err) {
500
+ _iterator3.e(err);
501
+ } finally {
502
+ _iterator3.f();
503
+ }
504
+ return {
505
+ quickFilter: quickFilter,
506
+ otherFilter: otherFilter
507
+ };
508
+ }
@@ -0,0 +1,27 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
3
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ import React, { forwardRef } from 'react';
9
+ import { useRecordBoardContext } from "../hooks/useRecordBoardContext";
10
+ /**
11
+ * 为 RecordBoard 下的子组件注入 context,并合并 childComponentProps[displayName]。
12
+ * 用于 Search / ToolBar / Pagination / Grid / CardList 等「被接管」的通用组件封装。
13
+ */
14
+ function withRecordBoard(WrappedComponent, displayName) {
15
+ var WithRecordBoardComponent = /*#__PURE__*/forwardRef(function (props, ref) {
16
+ var recordBoardContext = useRecordBoardContext({
17
+ displayName: displayName
18
+ });
19
+ var mergedProps = _objectSpread(_objectSpread({}, recordBoardContext), props);
20
+ return /*#__PURE__*/React.createElement(WrappedComponent, _extends({
21
+ ref: ref
22
+ }, mergedProps));
23
+ });
24
+ WithRecordBoardComponent.displayName = "WithRecordBoard(".concat(displayName, ")");
25
+ return WithRecordBoardComponent;
26
+ }
27
+ export default withRecordBoard;
@@ -0,0 +1,107 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
5
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
6
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
12
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
+ import React, { useState } from 'react';
14
+ import { Collapse } from 'antd';
15
+ import { getText } from "../../locales";
16
+ import "./PisellShellFrame.less";
17
+ var defaultConfig = {
18
+ showTitle: false,
19
+ showToolbar: false,
20
+ showStatistic: false,
21
+ statisticCollapsible: false,
22
+ scroll: false,
23
+ showBatchActionBar: false,
24
+ showStatusArea: false
25
+ };
26
+
27
+ /**
28
+ * PisellShellFrame:通用壳层布局组件。
29
+ * 支持通过 config 控制各区域显隐,不同展示类型(表格/看板/日历/楼层图等)复用同一壳层。
30
+ *
31
+ * - 顶部:标题区(标题/副标题/辅助信息)、工具区(Toolbar)、统计区(Statistic List,可选折叠)
32
+ * - 中间:滚动承载(可选)+ Layout 插槽(children)
33
+ * - 底部:批量操作条(按选中状态出现)、状态提示区(加载/错误/同步提示等)
34
+ */
35
+ export var PisellShellFrame = function PisellShellFrame(props) {
36
+ var className = props.className,
37
+ style = props.style,
38
+ configProp = props.config,
39
+ title = props.title,
40
+ subtitle = props.subtitle,
41
+ titleExtra = props.titleExtra,
42
+ toolbar = props.toolbar,
43
+ statisticList = props.statisticList,
44
+ children = props.children,
45
+ batchActionBar = props.batchActionBar,
46
+ statusArea = props.statusArea;
47
+ var config = _objectSpread(_objectSpread({}, defaultConfig), configProp);
48
+ var _useState = useState(false),
49
+ _useState2 = _slicedToArray(_useState, 2),
50
+ statisticCollapsed = _useState2[0],
51
+ setStatisticCollapsed = _useState2[1];
52
+ var hasTitle = config.showTitle && (title != null || subtitle != null || titleExtra != null);
53
+ var hasToolbar = config.showToolbar && toolbar != null;
54
+ var hasStatistic = config.showStatistic && statisticList != null;
55
+ var hasBatchBar = config.showBatchActionBar && batchActionBar != null;
56
+ var hasStatus = config.showStatusArea && statusArea != null;
57
+ var scrollConfig = config.scroll;
58
+ var useScroll = scrollConfig === true || _typeof(scrollConfig) === 'object' && scrollConfig != null;
59
+ var scrollOpts = _typeof(scrollConfig) === 'object' && scrollConfig != null ? scrollConfig : null;
60
+ var scrollStyle = scrollOpts === null || scrollOpts === void 0 ? void 0 : scrollOpts.style;
61
+ var scrollClassName = scrollOpts === null || scrollOpts === void 0 ? void 0 : scrollOpts.className;
62
+ return /*#__PURE__*/React.createElement("div", {
63
+ className: "pisell-shell-frame ".concat(className !== null && className !== void 0 ? className : '').trim(),
64
+ style: style,
65
+ "data-shell-frame": true
66
+ }, /*#__PURE__*/React.createElement("header", {
67
+ className: "pisell-shell-frame-header"
68
+ }, hasTitle && /*#__PURE__*/React.createElement("div", {
69
+ className: "pisell-shell-frame-title"
70
+ }, /*#__PURE__*/React.createElement("span", null, title != null && /*#__PURE__*/React.createElement("span", {
71
+ className: "pisell-shell-frame-title-main"
72
+ }, title), subtitle != null && /*#__PURE__*/React.createElement("span", {
73
+ className: "pisell-shell-frame-title-sub"
74
+ }, subtitle)), titleExtra != null && /*#__PURE__*/React.createElement("div", {
75
+ className: "pisell-shell-frame-title-extra"
76
+ }, titleExtra)), hasToolbar && /*#__PURE__*/React.createElement("div", {
77
+ className: "pisell-shell-frame-toolbar"
78
+ }, toolbar), hasStatistic && /*#__PURE__*/React.createElement("div", {
79
+ className: "pisell-shell-frame-statistic"
80
+ }, config.statisticCollapsible ? /*#__PURE__*/React.createElement(Collapse, {
81
+ ghost: true,
82
+ activeKey: statisticCollapsed ? [] : ['statistic'],
83
+ onChange: function onChange(keys) {
84
+ return setStatisticCollapsed(keys.length === 0);
85
+ },
86
+ items: [{
87
+ key: 'statistic',
88
+ label: /*#__PURE__*/React.createElement("span", {
89
+ className: "pisell-shell-frame-statistic-collapse-header"
90
+ }, statisticCollapsed ? getText('shell-frame-statistic-expand') : getText('shell-frame-statistic-collapse')),
91
+ children: statisticList
92
+ }]
93
+ }) : statisticList)), /*#__PURE__*/React.createElement("div", {
94
+ className: "pisell-shell-frame-body"
95
+ }, useScroll ? /*#__PURE__*/React.createElement("div", {
96
+ className: "pisell-shell-frame-scroll ".concat(scrollClassName !== null && scrollClassName !== void 0 ? scrollClassName : '').trim(),
97
+ style: scrollStyle
98
+ }, children) : children), (hasBatchBar || hasStatus) && /*#__PURE__*/React.createElement("footer", {
99
+ className: "pisell-shell-frame-footer"
100
+ }, hasBatchBar && /*#__PURE__*/React.createElement("div", {
101
+ className: "pisell-shell-frame-batch-bar"
102
+ }, batchActionBar), hasStatus && /*#__PURE__*/React.createElement("div", {
103
+ className: "pisell-shell-frame-status"
104
+ }, statusArea)));
105
+ };
106
+ PisellShellFrame.displayName = 'PisellShellFrame';
107
+ export default PisellShellFrame;