@pisell/materials 6.0.13 → 6.0.15

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 (358) 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 +7 -7
  6. package/build/lowcode/preview.js +21 -13
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +36 -22
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +36 -22
  11. package/es/components/Pagination/index.d.ts +1 -1
  12. package/es/components/appVersionControl/index.d.ts +5 -0
  13. package/es/components/appVersionControl/index.js +218 -0
  14. package/es/components/appVersionControl/index.less +35 -0
  15. package/es/components/appVersionControl/types.d.ts +24 -0
  16. package/es/components/appVersionControl/types.js +1 -0
  17. package/es/components/appVersionControl/utils.d.ts +13 -0
  18. package/es/components/appVersionControl/utils.js +30 -0
  19. package/es/components/customSelect/index.d.ts +17 -0
  20. package/es/components/customSelect/index.js +32 -0
  21. package/es/components/customSelect/index.less +7 -0
  22. package/es/components/dataSourceComponents/dataSourceForm/BaseForm.js +1 -1
  23. package/es/components/dataSourceComponents/dataSourceForm/group/index.js +23 -6
  24. package/es/components/dataSourceComponents/dataSourceForm/group/index.less +1 -1
  25. package/es/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingContext.d.ts +1 -1
  26. package/es/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingProvider.js +1 -1
  27. package/es/components/dataSourceComponents/dataSourceForm/provider/jsonWrapper/JsonWrapperProvider.js +4 -8
  28. package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.d.ts +1 -0
  29. package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.js +5 -4
  30. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +6 -3
  31. package/es/components/dataSourceComponents/dataSourceForm/utils.js +94 -18
  32. package/es/components/dataSourceComponents/dataSourceMenu/Basic.d.ts +2 -0
  33. package/es/components/dataSourceComponents/dataSourceMenu/Basic.js +61 -0
  34. package/es/components/dataSourceComponents/dataSourceMenu/index.js +39 -10
  35. package/es/components/dataSourceComponents/dataSourceTable/BaseTable.d.ts +6 -2
  36. package/es/components/dataSourceComponents/dataSourceTable/BaseTable.js +30 -6
  37. package/es/components/dataSourceComponents/dataSourceTable/hooks/useColumns.js +1 -2
  38. package/es/components/dataSourceComponents/dataSourceTable/hooks/useFormat.d.ts +6 -2
  39. package/es/components/dataSourceComponents/dataSourceTable/hooks/useFormat.js +33 -2
  40. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +7 -2
  41. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +33 -13
  42. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +1 -0
  43. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.js +7 -1
  44. package/es/components/dataSourceComponents/dataSourceTable/index.d.ts +3 -2
  45. package/es/components/dataSourceComponents/dataSourceTable/index.js +7 -4
  46. package/es/components/dataSourceComponents/fields/DatePicker/ReadPretty.d.ts +2 -2
  47. package/es/components/dataSourceComponents/fields/DatePicker/ReadPretty.js +42 -5
  48. package/es/components/dataSourceComponents/fields/DatePicker/WithMode.js +1 -1
  49. package/es/components/dataSourceComponents/fields/DatePicker/index.js +13 -0
  50. package/es/components/dataSourceComponents/fields/DatePicker/type.d.ts +1 -0
  51. package/es/components/dataSourceComponents/fields/IconSelect/ReadPretty.d.ts +5 -0
  52. package/es/components/dataSourceComponents/fields/IconSelect/ReadPretty.js +18 -0
  53. package/es/components/dataSourceComponents/fields/IconSelect/ReadPretty.less +6 -0
  54. package/es/components/dataSourceComponents/fields/IconSelect/WithMode.d.ts +4 -0
  55. package/es/components/dataSourceComponents/fields/IconSelect/WithMode.js +5 -0
  56. package/es/components/dataSourceComponents/fields/IconSelect/index.d.ts +3 -0
  57. package/es/components/dataSourceComponents/fields/IconSelect/index.js +4 -0
  58. package/es/components/dataSourceComponents/fields/IconSelect/type.d.ts +8 -0
  59. package/es/components/dataSourceComponents/fields/IconSelect/type.js +1 -0
  60. package/es/components/dataSourceComponents/fields/Input/WithMode.d.ts +3 -3
  61. package/es/components/dataSourceComponents/fields/Input/WithMode.js +8 -1
  62. package/es/components/dataSourceComponents/fields/Input/type.d.ts +2 -0
  63. package/es/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
  64. package/es/components/dataSourceComponents/fields/Select/index.js +2 -1
  65. package/es/components/dataSourceComponents/fields/Upload/BaseUpload.js +12 -54
  66. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.js +2 -2
  67. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.less +1 -0
  68. package/es/components/dataSourceComponents/fields/Upload/index.js +35 -1
  69. package/es/components/dataSourceComponents/fields/Upload/type.d.ts +1 -0
  70. package/es/components/dataSourceComponents/fields/index.d.ts +5 -2
  71. package/es/components/dataSourceComponents/fields/index.js +3 -1
  72. package/es/components/dataSourceComponents/hooks/useActions.js +10 -4
  73. package/es/components/dataSourceComponents/hooks/useValueMap.js +2 -2
  74. package/es/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +8 -0
  75. package/es/components/dataSourceComponents/provider/dataSource/DataSourceContext.js +2 -1
  76. package/es/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +11 -3
  77. package/es/components/dataSourceComponents/provider/variables/VariablesProvider.js +3 -0
  78. package/es/components/date-picker/datePickerCpt.js +4 -2
  79. package/es/components/iconSelect/index.d.ts +10 -0
  80. package/es/components/iconSelect/index.js +217 -0
  81. package/es/components/iconSelect/index.less +54 -0
  82. package/es/components/iconSelect/utils.d.ts +14 -0
  83. package/es/components/iconSelect/utils.js +102 -0
  84. package/es/components/image/avatar.png +0 -0
  85. package/es/components/image/image.png +0 -0
  86. package/es/components/image/index.d.ts +10 -0
  87. package/es/components/image/index.js +25 -0
  88. package/es/components/image/product.png +0 -0
  89. package/es/components/page-header/index.less +4 -4
  90. package/es/components/pisellAppCard/PisellAppCard.d.ts +5 -0
  91. package/es/components/pisellAppCard/PisellAppCard.js +80 -0
  92. package/es/components/pisellAppCard/PisellAppCard.less +55 -0
  93. package/es/components/pisellAppCard/index.d.ts +3 -0
  94. package/es/components/pisellAppCard/index.js +2 -0
  95. package/es/components/pisellAppCard/types.d.ts +34 -0
  96. package/es/components/pisellAppCard/types.js +1 -0
  97. package/es/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +1 -0
  98. package/es/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +3 -1
  99. package/es/components/pisellDraggable/components/TreeItem/TreeItem.js +11 -3
  100. package/es/components/pisellDraggable/index.d.ts +8 -3
  101. package/es/components/pisellDraggable/index.js +98 -15
  102. package/es/components/pisellDraggable/types.d.ts +2 -0
  103. package/es/components/pisellDraggable/utilities.js +10 -6
  104. package/es/components/pisellDropSort/PisellDropSort.d.ts +5 -0
  105. package/es/components/pisellDropSort/PisellDropSort.js +94 -0
  106. package/es/components/pisellDropSort/PisellDropSort.less +92 -0
  107. package/es/components/pisellDropSort/components/SortableItem/index.d.ts +25 -0
  108. package/es/components/pisellDropSort/components/SortableItem/index.js +104 -0
  109. package/es/components/pisellDropSort/components/SortableItem/index.less +157 -0
  110. package/es/components/pisellDropSort/index.d.ts +3 -0
  111. package/es/components/pisellDropSort/index.js +2 -0
  112. package/es/components/pisellDropSort/types.d.ts +52 -0
  113. package/es/components/pisellDropSort/types.js +1 -0
  114. package/es/components/pisellEmpty/index.d.ts +2 -0
  115. package/es/components/pisellEmpty/index.js +6 -2
  116. package/es/components/pisellLayout/content.d.ts +2 -0
  117. package/es/components/pisellLayout/content.js +26 -4
  118. package/es/components/pisellLayout/footer.d.ts +1 -0
  119. package/es/components/pisellLayout/footer.js +18 -3
  120. package/es/components/pisellLayout/header.d.ts +3 -0
  121. package/es/components/pisellLayout/header.js +26 -3
  122. package/es/components/pisellLayout/index.js +4 -1
  123. package/es/components/pisellLayout/index.less +23 -0
  124. package/es/components/pisellLayout/sider.d.ts +1 -0
  125. package/es/components/pisellLayout/sider.js +38 -3
  126. package/es/components/pisellMenu/PisellMenu.d.ts +5 -1
  127. package/es/components/pisellMenu/PisellMenu.js +10 -4
  128. package/es/components/pisellMenu/types.d.ts +6 -10
  129. package/es/components/pisellModal/components/Information/index.js +0 -1
  130. package/es/components/pisellModal/components/MobileModal/index.js +42 -2
  131. package/es/components/pisellNavigationMenu/PisellNavigationMenu.d.ts +5 -0
  132. package/es/components/pisellNavigationMenu/PisellNavigationMenu.js +218 -0
  133. package/es/components/pisellNavigationMenu/PisellNavigationMenu.less +65 -0
  134. package/es/components/pisellNavigationMenu/index.d.ts +3 -0
  135. package/es/components/pisellNavigationMenu/index.js +2 -0
  136. package/es/components/pisellNavigationMenu/types.d.ts +64 -0
  137. package/es/components/pisellNavigationMenu/types.js +1 -0
  138. package/es/components/pisellNavigationMenu/utils.d.ts +15 -0
  139. package/es/components/pisellNavigationMenu/utils.js +29 -0
  140. package/es/components/table/Table/utils.d.ts +1 -1
  141. package/es/components/versionModal/index.d.ts +8 -0
  142. package/es/components/versionModal/index.js +41 -9
  143. package/es/components/versionModal/index.less +9 -2
  144. package/es/components/versionSelect/index.d.ts +18 -0
  145. package/es/components/versionSelect/index.js +53 -0
  146. package/es/components/versionSelect/index.less +3 -0
  147. package/es/hooks/useEngineContext.js +11 -0
  148. package/es/index.d.ts +11 -1
  149. package/es/index.js +11 -2
  150. package/es/locales/en-US.d.ts +25 -0
  151. package/es/locales/en-US.js +34 -1
  152. package/es/locales/zh-CN.d.ts +25 -0
  153. package/es/locales/zh-CN.js +33 -1
  154. package/es/locales/zh-TW.d.ts +26 -0
  155. package/es/locales/zh-TW.js +35 -1
  156. package/es/typings.d.ts +4 -0
  157. package/lib/components/Pagination/index.d.ts +1 -1
  158. package/lib/components/appVersionControl/index.d.ts +5 -0
  159. package/lib/components/appVersionControl/index.js +188 -0
  160. package/lib/components/appVersionControl/index.less +35 -0
  161. package/lib/components/appVersionControl/types.d.ts +24 -0
  162. package/lib/components/appVersionControl/types.js +17 -0
  163. package/lib/components/appVersionControl/utils.d.ts +13 -0
  164. package/lib/components/appVersionControl/utils.js +52 -0
  165. package/lib/components/customSelect/index.d.ts +17 -0
  166. package/lib/components/customSelect/index.js +59 -0
  167. package/lib/components/customSelect/index.less +7 -0
  168. package/lib/components/dataSourceComponents/dataSourceForm/BaseForm.js +1 -1
  169. package/lib/components/dataSourceComponents/dataSourceForm/group/index.js +13 -6
  170. package/lib/components/dataSourceComponents/dataSourceForm/group/index.less +1 -1
  171. package/lib/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingContext.d.ts +1 -1
  172. package/lib/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingProvider.js +1 -1
  173. package/lib/components/dataSourceComponents/dataSourceForm/provider/jsonWrapper/JsonWrapperProvider.js +2 -2
  174. package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.d.ts +1 -0
  175. package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.js +4 -3
  176. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +6 -3
  177. package/lib/components/dataSourceComponents/dataSourceForm/utils.js +118 -16
  178. package/lib/components/dataSourceComponents/dataSourceMenu/Basic.d.ts +2 -0
  179. package/lib/components/dataSourceComponents/dataSourceMenu/Basic.js +92 -0
  180. package/lib/components/dataSourceComponents/dataSourceMenu/index.js +36 -6
  181. package/lib/components/dataSourceComponents/dataSourceTable/BaseTable.d.ts +6 -2
  182. package/lib/components/dataSourceComponents/dataSourceTable/BaseTable.js +27 -5
  183. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useColumns.js +5 -4
  184. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useFormat.d.ts +6 -2
  185. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useFormat.js +75 -1
  186. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +7 -2
  187. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +21 -10
  188. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.d.ts +1 -0
  189. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableQuery.js +7 -1
  190. package/lib/components/dataSourceComponents/dataSourceTable/index.d.ts +3 -2
  191. package/lib/components/dataSourceComponents/dataSourceTable/index.js +3 -3
  192. package/lib/components/dataSourceComponents/fields/DatePicker/ReadPretty.d.ts +2 -2
  193. package/lib/components/dataSourceComponents/fields/DatePicker/ReadPretty.js +37 -3
  194. package/lib/components/dataSourceComponents/fields/DatePicker/WithMode.js +1 -1
  195. package/lib/components/dataSourceComponents/fields/DatePicker/index.js +9 -0
  196. package/lib/components/dataSourceComponents/fields/DatePicker/type.d.ts +1 -0
  197. package/lib/components/dataSourceComponents/fields/IconSelect/ReadPretty.d.ts +5 -0
  198. package/lib/components/dataSourceComponents/fields/IconSelect/ReadPretty.js +52 -0
  199. package/lib/components/dataSourceComponents/fields/IconSelect/ReadPretty.less +6 -0
  200. package/lib/components/dataSourceComponents/fields/IconSelect/WithMode.d.ts +4 -0
  201. package/lib/components/dataSourceComponents/fields/IconSelect/WithMode.js +39 -0
  202. package/lib/components/dataSourceComponents/fields/IconSelect/index.d.ts +3 -0
  203. package/lib/components/dataSourceComponents/fields/IconSelect/index.js +38 -0
  204. package/lib/components/dataSourceComponents/fields/IconSelect/type.d.ts +8 -0
  205. package/lib/components/dataSourceComponents/fields/IconSelect/type.js +17 -0
  206. package/lib/components/dataSourceComponents/fields/Input/WithMode.d.ts +3 -3
  207. package/lib/components/dataSourceComponents/fields/Input/WithMode.js +6 -2
  208. package/lib/components/dataSourceComponents/fields/Input/type.d.ts +2 -0
  209. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +1 -0
  210. package/lib/components/dataSourceComponents/fields/Select/index.js +2 -1
  211. package/lib/components/dataSourceComponents/fields/Upload/BaseUpload.js +0 -35
  212. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.js +1 -1
  213. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.less +1 -0
  214. package/lib/components/dataSourceComponents/fields/Upload/index.js +25 -1
  215. package/lib/components/dataSourceComponents/fields/Upload/type.d.ts +1 -0
  216. package/lib/components/dataSourceComponents/fields/index.d.ts +5 -2
  217. package/lib/components/dataSourceComponents/fields/index.js +3 -1
  218. package/lib/components/dataSourceComponents/hooks/useActions.js +4 -1
  219. package/lib/components/dataSourceComponents/hooks/useValueMap.js +1 -1
  220. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +8 -0
  221. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceContext.js +3 -1
  222. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +9 -1
  223. package/lib/components/dataSourceComponents/provider/variables/VariablesProvider.js +3 -0
  224. package/lib/components/date-picker/datePickerCpt.js +4 -2
  225. package/lib/components/iconSelect/index.d.ts +10 -0
  226. package/lib/components/iconSelect/index.js +189 -0
  227. package/lib/components/iconSelect/index.less +54 -0
  228. package/lib/components/iconSelect/utils.d.ts +14 -0
  229. package/lib/components/iconSelect/utils.js +119 -0
  230. package/lib/components/image/avatar.png +0 -0
  231. package/lib/components/image/image.png +0 -0
  232. package/lib/components/image/index.d.ts +10 -0
  233. package/lib/components/image/index.js +59 -0
  234. package/lib/components/image/product.png +0 -0
  235. package/lib/components/page-header/index.less +4 -4
  236. package/lib/components/pisellAppCard/PisellAppCard.d.ts +5 -0
  237. package/lib/components/pisellAppCard/PisellAppCard.js +107 -0
  238. package/lib/components/pisellAppCard/PisellAppCard.less +55 -0
  239. package/lib/components/pisellAppCard/index.d.ts +3 -0
  240. package/lib/components/pisellAppCard/index.js +36 -0
  241. package/lib/components/pisellAppCard/types.d.ts +34 -0
  242. package/lib/components/pisellAppCard/types.js +17 -0
  243. package/lib/components/pisellDraggable/components/TreeItem/SortableTreeItem.d.ts +1 -0
  244. package/lib/components/pisellDraggable/components/TreeItem/TreeItem.d.ts +3 -1
  245. package/lib/components/pisellDraggable/components/TreeItem/TreeItem.js +9 -2
  246. package/lib/components/pisellDraggable/index.d.ts +8 -3
  247. package/lib/components/pisellDraggable/index.js +67 -13
  248. package/lib/components/pisellDraggable/types.d.ts +2 -0
  249. package/lib/components/pisellDraggable/utilities.js +9 -6
  250. package/lib/components/pisellDropSort/PisellDropSort.d.ts +5 -0
  251. package/lib/components/pisellDropSort/PisellDropSort.js +143 -0
  252. package/lib/components/pisellDropSort/PisellDropSort.less +92 -0
  253. package/lib/components/pisellDropSort/components/SortableItem/index.d.ts +25 -0
  254. package/lib/components/pisellDropSort/components/SortableItem/index.js +171 -0
  255. package/lib/components/pisellDropSort/components/SortableItem/index.less +157 -0
  256. package/lib/components/pisellDropSort/index.d.ts +3 -0
  257. package/lib/components/pisellDropSort/index.js +36 -0
  258. package/lib/components/pisellDropSort/types.d.ts +52 -0
  259. package/lib/components/pisellDropSort/types.js +17 -0
  260. package/lib/components/pisellEmpty/index.d.ts +2 -0
  261. package/lib/components/pisellEmpty/index.js +2 -1
  262. package/lib/components/pisellLayout/content.d.ts +2 -0
  263. package/lib/components/pisellLayout/content.js +14 -3
  264. package/lib/components/pisellLayout/footer.d.ts +1 -0
  265. package/lib/components/pisellLayout/footer.js +8 -2
  266. package/lib/components/pisellLayout/header.d.ts +3 -0
  267. package/lib/components/pisellLayout/header.js +13 -2
  268. package/lib/components/pisellLayout/index.js +3 -0
  269. package/lib/components/pisellLayout/index.less +23 -0
  270. package/lib/components/pisellLayout/sider.d.ts +1 -0
  271. package/lib/components/pisellLayout/sider.js +30 -2
  272. package/lib/components/pisellMenu/PisellMenu.d.ts +5 -1
  273. package/lib/components/pisellMenu/PisellMenu.js +12 -4
  274. package/lib/components/pisellMenu/types.d.ts +6 -10
  275. package/lib/components/pisellModal/components/Information/index.js +0 -1
  276. package/lib/components/pisellModal/components/MobileModal/index.js +39 -1
  277. package/lib/components/pisellNavigationMenu/PisellNavigationMenu.d.ts +5 -0
  278. package/lib/components/pisellNavigationMenu/PisellNavigationMenu.js +231 -0
  279. package/lib/components/pisellNavigationMenu/PisellNavigationMenu.less +65 -0
  280. package/lib/components/pisellNavigationMenu/index.d.ts +3 -0
  281. package/lib/components/pisellNavigationMenu/index.js +36 -0
  282. package/lib/components/pisellNavigationMenu/types.d.ts +64 -0
  283. package/lib/components/pisellNavigationMenu/types.js +17 -0
  284. package/lib/components/pisellNavigationMenu/utils.d.ts +15 -0
  285. package/lib/components/pisellNavigationMenu/utils.js +44 -0
  286. package/lib/components/table/Table/utils.d.ts +1 -1
  287. package/lib/components/versionModal/index.d.ts +8 -0
  288. package/lib/components/versionModal/index.js +35 -8
  289. package/lib/components/versionModal/index.less +9 -2
  290. package/lib/components/versionSelect/index.d.ts +18 -0
  291. package/lib/components/versionSelect/index.js +91 -0
  292. package/lib/components/versionSelect/index.less +3 -0
  293. package/lib/hooks/useEngineContext.js +6 -0
  294. package/lib/index.d.ts +11 -1
  295. package/lib/index.js +26 -1
  296. package/lib/locales/en-US.d.ts +25 -0
  297. package/lib/locales/en-US.js +32 -1
  298. package/lib/locales/zh-CN.d.ts +25 -0
  299. package/lib/locales/zh-CN.js +31 -1
  300. package/lib/locales/zh-TW.d.ts +26 -0
  301. package/lib/locales/zh-TW.js +33 -1
  302. package/lib/typings.d.ts +4 -0
  303. package/lowcode/_setters/antd-icon-setter/index.tsx +11 -4
  304. package/lowcode/_utils/defaultSchema.ts +18 -1
  305. package/lowcode/app-version-control/meta.ts +92 -0
  306. package/lowcode/custom-select/meta.ts +202 -0
  307. package/lowcode/custom-select/snippets.ts +33 -0
  308. package/lowcode/data-source-form/constants.ts +2 -1
  309. package/lowcode/data-source-form/meta.ts +1 -1
  310. package/lowcode/data-source-image/meta.ts +1 -1
  311. package/lowcode/data-source-menu/meta.ts +66 -6
  312. package/lowcode/data-source-qrcode/meta.ts +1 -1
  313. package/lowcode/data-source-table/meta.ts +26 -4
  314. package/lowcode/data-source-table/snippets.ts +1 -1
  315. package/lowcode/data-source-typography.text/meta.ts +1 -1
  316. package/lowcode/data-source-wrapper/meta.ts +1 -1
  317. package/lowcode/form-group/meta.ts +1 -1
  318. package/lowcode/form-item-checkbox/meta.ts +1 -1
  319. package/lowcode/form-item-checkbox.group/meta.ts +1 -1
  320. package/lowcode/form-item-color-picker/meta.ts +1 -1
  321. package/lowcode/form-item-date-picker/meta.ts +14 -1
  322. package/lowcode/form-item-icon-select/meta.ts +65 -0
  323. package/lowcode/form-item-icon-select/snippets.ts +12 -0
  324. package/lowcode/form-item-input/meta.ts +13 -1
  325. package/lowcode/form-item-input-number/meta.ts +1 -1
  326. package/lowcode/form-item-input.email/meta.ts +1 -1
  327. package/lowcode/form-item-input.json/meta.ts +1 -1
  328. package/lowcode/form-item-input.mobile/meta.ts +1 -1
  329. package/lowcode/form-item-input.password/meta.ts +1 -1
  330. package/lowcode/form-item-input.phone/meta.ts +1 -1
  331. package/lowcode/form-item-input.subdomain/meta.ts +1 -1
  332. package/lowcode/form-item-input.text-area/meta.ts +1 -1
  333. package/lowcode/form-item-input.url/meta.ts +1 -1
  334. package/lowcode/form-item-radio/meta.ts +1 -1
  335. package/lowcode/form-item-radio.group/meta.ts +1 -1
  336. package/lowcode/form-item-select/meta.ts +1 -1
  337. package/lowcode/form-item-time-picker/meta.ts +1 -1
  338. package/lowcode/form-item-translation/meta.ts +2 -2
  339. package/lowcode/form-item-upload/meta.ts +1 -1
  340. package/lowcode/icon-select/meta.ts +98 -0
  341. package/lowcode/image/meta.ts +19 -0
  342. package/lowcode/image/snippets.ts +1 -0
  343. package/lowcode/json-wrapper/meta.ts +1 -1
  344. package/lowcode/pisell-app-card/meta.ts +286 -0
  345. package/lowcode/pisell-content/__screenshots__/content.png +0 -0
  346. package/lowcode/pisell-content/meta.ts +28 -5
  347. package/lowcode/pisell-drop-sort/meta.ts +362 -0
  348. package/lowcode/pisell-footer/__screenshots__/footer.png +0 -0
  349. package/lowcode/pisell-footer/meta.ts +17 -4
  350. package/lowcode/pisell-header/__screenshots__/header.png +0 -0
  351. package/lowcode/pisell-header/meta.ts +29 -5
  352. package/lowcode/pisell-layout/__screenshots__/layout.png +0 -0
  353. package/lowcode/pisell-layout/meta.ts +10 -5
  354. package/lowcode/pisell-navigation-menu/meta.ts +125 -0
  355. package/lowcode/pisell-sider/__screenshots__/sider.png +0 -0
  356. package/lowcode/pisell-sider/meta.ts +41 -4
  357. package/lowcode/submit-button/meta.ts +15 -1
  358. package/package.json +28 -26
@@ -0,0 +1,102 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
5
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
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
+ import React from 'react';
10
+ export function get(obj, path, defaultValue) {
11
+ // 处理路径为空的情况
12
+ if (!path) return defaultValue;
13
+
14
+ // 将路径分割成数组
15
+ var keys = path.split('.');
16
+ var result = obj;
17
+
18
+ // 遍历路径
19
+ var _iterator = _createForOfIteratorHelper(keys),
20
+ _step;
21
+ try {
22
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
23
+ var key = _step.value;
24
+ // 如果当前结果是null或undefined,返回默认值
25
+ if (result == null) {
26
+ return defaultValue;
27
+ }
28
+ result = result[key];
29
+ }
30
+
31
+ // 如果最终结果是null或undefined,返回默认值
32
+ } catch (err) {
33
+ _iterator.e(err);
34
+ } finally {
35
+ _iterator.f();
36
+ }
37
+ return result === undefined ? defaultValue : result;
38
+ }
39
+ function getIconfontIconList() {
40
+ // iconfont的js会在页面中添加svg元素
41
+ var symbols = Array.prototype.slice.call(window.document.querySelectorAll('svg[style="position: absolute; width: 0px; height: 0px; overflow: hidden;"][aria-hidden="true"] > symbol'));
42
+ return symbols.map(function (symbol) {
43
+ var id = symbol.id;
44
+ return {
45
+ name: id,
46
+ group: 'iconfont',
47
+ icon: function icon(props) {
48
+ return /*#__PURE__*/React.createElement("span", {
49
+ role: "img",
50
+ className: "anticon"
51
+ }, /*#__PURE__*/React.createElement("svg", {
52
+ viewBox: "64 64 896 896",
53
+ width: "1em",
54
+ height: "1em",
55
+ fill: "currentColor",
56
+ dangerouslySetInnerHTML: {
57
+ __html: symbol.innerHTML
58
+ }
59
+ }));
60
+ }
61
+ };
62
+ });
63
+ }
64
+ export function getAntdIconList() {
65
+ var antdIcons = window.icons;
66
+ return Object.keys(antdIcons).map(function (key) {
67
+ var _ref, _item$displayName, _item$render;
68
+ var item = antdIcons[key];
69
+ if (_typeof(item) !== 'object') {
70
+ return null;
71
+ }
72
+ var name = (_ref = (_item$displayName = item === null || item === void 0 ? void 0 : item.displayName) !== null && _item$displayName !== void 0 ? _item$displayName : item === null || item === void 0 ? void 0 : (_item$render = item.render) === null || _item$render === void 0 ? void 0 : _item$render.displayName) !== null && _ref !== void 0 ? _ref : key;
73
+ var group = 'outlined';
74
+ var lowercaseName = name.toLowerCase();
75
+ if (/outlined$/.test(lowercaseName)) {
76
+ group = 'outlined';
77
+ } else if (/filled$/.test(lowercaseName)) {
78
+ group = 'filled';
79
+ } else if (/twotone$/.test(lowercaseName)) {
80
+ group = 'two-tone';
81
+ } else {
82
+ return null;
83
+ }
84
+ return {
85
+ name: name,
86
+ group: group,
87
+ icon: item
88
+ };
89
+ }).filter(Boolean);
90
+ }
91
+ export function getIconList() {
92
+ var iconfontIconList = getIconfontIconList();
93
+ var antdIconList = getAntdIconList();
94
+ var allIcons = [].concat(_toConsumableArray(iconfontIconList), _toConsumableArray(antdIconList));
95
+ var uniqueIconsMap = new Map();
96
+ allIcons.forEach(function (icon) {
97
+ if (!uniqueIconsMap.has(icon.name)) {
98
+ uniqueIconsMap.set(icon.name, icon);
99
+ }
100
+ });
101
+ return Array.from(uniqueIconsMap.values());
102
+ }
Binary file
Binary file
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { ImageProps as AntdImageProps } from 'antd';
3
+ export interface ImageProps extends Omit<AntdImageProps, 'placeholder'> {
4
+ /**
5
+ * 占位图类型
6
+ */
7
+ fallbackType?: 'image' | 'avatar' | 'product';
8
+ }
9
+ declare const Image: React.FC<ImageProps>;
10
+ export default Image;
@@ -0,0 +1,25 @@
1
+ var _excluded = ["fallbackType", "fallback"];
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 _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
+ import React from 'react';
6
+ import { Image as AntdImage } from 'antd';
7
+ import image from "./image.png";
8
+ import avatar from "./avatar.png";
9
+ import product from "./product.png";
10
+ var defaultFallbackMap = {
11
+ image: image,
12
+ avatar: avatar,
13
+ product: product
14
+ };
15
+ var Image = function Image(_ref) {
16
+ var _ref$fallbackType = _ref.fallbackType,
17
+ fallbackType = _ref$fallbackType === void 0 ? 'image' : _ref$fallbackType,
18
+ fallback = _ref.fallback,
19
+ restProps = _objectWithoutProperties(_ref, _excluded);
20
+ var finalFallback = fallback || defaultFallbackMap[fallbackType];
21
+ return /*#__PURE__*/React.createElement(AntdImage, _extends({}, restProps, {
22
+ fallback: finalFallback
23
+ }));
24
+ };
25
+ export default Image;
Binary file
@@ -2,17 +2,17 @@
2
2
  display: flex;
3
3
  flex-direction: column;
4
4
  gap: 4px;
5
- margin-bottom: 16px;
5
+ margin-bottom: 12px;
6
6
  .pisell-lowcode-page-header {
7
7
  display: flex;
8
- align-items: center;
8
+ align-items: start;
9
9
  justify-content: space-between;
10
10
  width: 100%;
11
11
 
12
12
  .pisell-lowcode-page-header-left {
13
13
  display: flex;
14
14
  flex-direction: column;
15
- gap: 4px;
15
+ gap: 0px !important;
16
16
  }
17
17
 
18
18
  .pisell-lowcode-page-header-title {
@@ -21,7 +21,7 @@
21
21
  font-weight: var(--Typography-Font-Weight-fontWeightStrong, 700);
22
22
  line-height: var(
23
23
  --Typography-Line-Height-lineHeightHeading4,
24
- 28px
24
+ 40px
25
25
  );
26
26
  }
27
27
 
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { PisellAppCardProps } from './types';
3
+ import './PisellAppCard.less';
4
+ declare const PisellAppCard: React.FC<PisellAppCardProps>;
5
+ export default PisellAppCard;
@@ -0,0 +1,80 @@
1
+ import React from 'react';
2
+ import { Dropdown, Button } from 'antd';
3
+ import classNames from 'classnames';
4
+ import PisellTags from "../pisellTags";
5
+ import PisellCard from "../pisellCard";
6
+ import PisellAvatar from "../pisellAvatar";
7
+ import "./PisellAppCard.less";
8
+ import Icon from "../icon";
9
+ var PisellAppCard = function PisellAppCard(_ref) {
10
+ var className = _ref.className,
11
+ style = _ref.style,
12
+ avatar = _ref.avatar,
13
+ tags = _ref.tags,
14
+ title = _ref.title,
15
+ description = _ref.description,
16
+ bottomButtons = _ref.bottomButtons,
17
+ moreActions = _ref.moreActions,
18
+ icon = _ref.icon;
19
+ return /*#__PURE__*/React.createElement(PisellCard, {
20
+ className: classNames('pisell-lowcode-app-card', className),
21
+ style: style
22
+ }, /*#__PURE__*/React.createElement("div", {
23
+ className: "pisell-lowcode-app-card-header"
24
+ }, /*#__PURE__*/React.createElement("div", {
25
+ className: "pisell-lowcode-app-card-header-left"
26
+ }, (avatar || icon) && /*#__PURE__*/React.createElement(PisellAvatar, {
27
+ icon: icon && /*#__PURE__*/React.createElement(Icon, {
28
+ type: icon
29
+ }),
30
+ src: avatar || undefined,
31
+ alt: title,
32
+ size: "xl",
33
+ shape: "square",
34
+ style: {
35
+ border: 'none'
36
+ },
37
+ borderRadius: 10
38
+ })), /*#__PURE__*/React.createElement("div", null, moreActions && moreActions.length > 0 && /*#__PURE__*/React.createElement(Dropdown, {
39
+ menu: {
40
+ items: moreActions.map(function (action, index) {
41
+ return {
42
+ key: index,
43
+ label: action.label,
44
+ onClick: action.onClick
45
+ };
46
+ })
47
+ },
48
+ placement: "bottomRight",
49
+ trigger: ['click']
50
+ }, /*#__PURE__*/React.createElement(Button, {
51
+ icon: /*#__PURE__*/React.createElement(Icon, {
52
+ type: "pisell2-dots-vertical"
53
+ }),
54
+ size: "large"
55
+ })))), /*#__PURE__*/React.createElement("div", {
56
+ className: "pisell-lowcode-app-card-content"
57
+ }, tags && tags.length > 0 && /*#__PURE__*/React.createElement("div", {
58
+ className: "pisell-lowcode-app-card-content-tags"
59
+ }, tags.map(function (tag, index) {
60
+ return /*#__PURE__*/React.createElement(PisellTags, {
61
+ key: index,
62
+ type: tag.type,
63
+ color: tag.color
64
+ }, tag.label);
65
+ })), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
66
+ className: "pisell-lowcode-app-card-content-title"
67
+ }, title), description && /*#__PURE__*/React.createElement("div", {
68
+ className: "pisell-lowcode-app-card-content-description"
69
+ }, description))), bottomButtons && bottomButtons.length > 0 && /*#__PURE__*/React.createElement("div", {
70
+ className: "pisell-lowcode-app-card-footer"
71
+ }, bottomButtons.map(function (button, index) {
72
+ return !button.hidden && /*#__PURE__*/React.createElement(Button, {
73
+ type: button.type,
74
+ onClick: button.onClick,
75
+ key: index,
76
+ size: "large"
77
+ }, button.label);
78
+ })));
79
+ };
80
+ export default PisellAppCard;
@@ -0,0 +1,55 @@
1
+ .pisell-lowcode-app-card {
2
+ background: #fff;
3
+ border: 1px solid #f0f0f0;
4
+ cursor: auto;
5
+
6
+ .pisell-lowcode-card-body {
7
+ display: flex;
8
+ flex-direction: column;
9
+ gap: 16px;
10
+ &::before {
11
+ display: none;
12
+ }
13
+ &::after {
14
+ display: none;
15
+ }
16
+ }
17
+
18
+ .pisell-lowcode-app-card-header {
19
+ display: flex;
20
+ justify-content: space-between;
21
+ align-items: center;
22
+ .pisell-lowcode-app-card-header-left {
23
+ .anticon {
24
+ font-size: 32px !important;
25
+ }
26
+ }
27
+ }
28
+
29
+ .pisell-lowcode-app-card-content {
30
+ display: flex;
31
+ flex-direction: column;
32
+ gap: 8px;
33
+ .pisell-lowcode-app-card-content-title {
34
+ color: var(--Gray-900, #101828);
35
+ font-size: 18px;
36
+ font-weight: 600;
37
+ line-height: 28px; /* 155.556% */
38
+ }
39
+ .pisell-lowcode-app-card-content-description {
40
+ color: var(--Gray-600, #475467);
41
+ font-size: 14px;
42
+ font-weight: 400;
43
+ line-height: 20px; /* 142.857% */
44
+ }
45
+ .pisell-lowcode-app-card-content-tags {
46
+ display: flex;
47
+ gap: 8px;
48
+ }
49
+ }
50
+
51
+ .pisell-lowcode-app-card-footer {
52
+ display: flex;
53
+ gap: 12px;
54
+ }
55
+ }
@@ -0,0 +1,3 @@
1
+ import PisellAppCard from './PisellAppCard';
2
+ export default PisellAppCard;
3
+ export type { PisellAppCardProps } from './types';
@@ -0,0 +1,2 @@
1
+ import PisellAppCard from "./PisellAppCard";
2
+ export default PisellAppCard;
@@ -0,0 +1,34 @@
1
+ import { CSSProperties } from 'react';
2
+ export interface PisellAppCardProps {
3
+ /** 类名 */
4
+ className?: string;
5
+ /** 样式 */
6
+ style?: CSSProperties;
7
+ /** 头像地址 */
8
+ avatar?: string;
9
+ /** icon */
10
+ icon?: string;
11
+ /** 标签列表 */
12
+ tags?: Array<{
13
+ label: string;
14
+ color?: 'success' | 'warning' | 'error' | 'gray';
15
+ type: 'pill_color' | 'pill_outline';
16
+ }>;
17
+ /** 标题 */
18
+ title: string;
19
+ /** 描述 */
20
+ description?: string;
21
+ /** 底部按钮列表 */
22
+ bottomButtons?: Array<{
23
+ label: string;
24
+ onClick?: () => void;
25
+ type?: 'primary' | 'default' | 'dashed' | 'link' | 'text';
26
+ hidden: boolean;
27
+ }>;
28
+ /** 右侧更多操作列表 */
29
+ moreActions?: Array<{
30
+ label: string;
31
+ onClick?: () => void;
32
+ icon?: React.ReactNode;
33
+ }>;
34
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -3,6 +3,7 @@ import React from 'react';
3
3
  import { Props as TreeItemProps } from './TreeItem';
4
4
  interface Props extends TreeItemProps {
5
5
  id: UniqueIdentifier;
6
+ __designMode?: string;
6
7
  }
7
8
  export declare function SortableTreeItem({ id, depth, ...props }: Props): React.JSX.Element;
8
9
  export {};
@@ -16,6 +16,8 @@ export interface Props extends Omit<HTMLAttributes<HTMLLIElement>, 'id'> {
16
16
  onRemove?(): void;
17
17
  wrapperRef?(node: HTMLLIElement): void;
18
18
  item: TreeItemType;
19
- renderItem?(item: TreeItemType): React.ReactNode;
19
+ renderItem?(item: Props, ref: React.ForwardedRef<HTMLDivElement>): React.ReactNode;
20
+ __designMode?: string;
21
+ isBlocked?: boolean;
20
22
  }
21
23
  export declare const TreeItem: React.ForwardRefExoticComponent<Props & React.RefAttributes<HTMLDivElement>>;
@@ -1,5 +1,11 @@
1
- var _excluded = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "style", "wrapperRef", "item", "renderItem"];
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ var _excluded = ["childCount", "clone", "depth", "disableSelection", "disableInteraction", "ghost", "handleProps", "indentationWidth", "indicator", "collapsed", "onCollapse", "onRemove", "style", "wrapperRef", "item", "renderItem", "isBlocked", "__designMode"];
2
3
  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); }
4
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6
+ 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; }
7
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
8
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
3
9
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
4
10
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5
11
  import classNames from 'classnames';
@@ -23,9 +29,11 @@ export var TreeItem = /*#__PURE__*/forwardRef(function (props, ref) {
23
29
  wrapperRef = props.wrapperRef,
24
30
  item = props.item,
25
31
  renderItem = props.renderItem,
32
+ isBlocked = props.isBlocked,
33
+ __designMode = props.__designMode,
26
34
  otherProps = _objectWithoutProperties(props, _excluded);
27
35
  if (renderItem) {
28
- return renderItem(props);
36
+ return renderItem(props, ref);
29
37
  }
30
38
  return /*#__PURE__*/React.createElement("li", _extends({
31
39
  className: classNames('Wrapper', clone && 'clone', ghost && 'ghost', indicator && 'indicator', disableSelection && 'disableSelection', disableInteraction && 'disableInteraction'),
@@ -37,7 +45,7 @@ export var TreeItem = /*#__PURE__*/forwardRef(function (props, ref) {
37
45
  className: 'TreeItem',
38
46
  ref: ref,
39
47
  style: style
40
- }, /*#__PURE__*/React.createElement(Handle, handleProps), onCollapse && /*#__PURE__*/React.createElement(Action, {
48
+ }, /*#__PURE__*/React.createElement(Handle, __designMode === 'design' ? {} : _objectSpread({}, handleProps)), onCollapse && /*#__PURE__*/React.createElement(Action, {
41
49
  onClick: onCollapse,
42
50
  className: classNames('Collapse', collapsed && 'collapsed')
43
51
  }, collapseIcon), /*#__PURE__*/React.createElement("span", {
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import React from 'react';
6
6
  import type { TreeItem, TreeItems } from './types';
7
+ import type { Props as TreeItemProps } from './components/TreeItem/TreeItem';
7
8
  interface Props {
8
9
  /** 是否支持折叠功能 */
9
10
  collapsible?: boolean;
@@ -16,12 +17,16 @@ interface Props {
16
17
  /** 是否支持删除节点功能 */
17
18
  removable?: boolean;
18
19
  /** 自定义渲染树节点 */
19
- renderItem?: (item: TreeItem) => React.ReactNode;
20
+ renderItem?: (item: TreeItemProps, ref: React.RefObject<HTMLDivElement>) => React.ReactNode;
20
21
  /** 树形数据变化回调 */
21
22
  onChange?: (items: TreeItems) => void;
22
23
  /** 删除节点前 */
23
24
  onRemoveBefore?: (item: TreeItem) => Promise<boolean>;
25
+ /** 设计模式 */
26
+ __designMode?: string;
27
+ /** 最大层级 */
28
+ maxLevel?: number;
24
29
  }
25
- export declare function SortableTree({ collapsible, value, indicator, indentationWidth, removable, renderItem, onChange, onRemoveBefore, }: Props): React.JSX.Element;
26
- declare const Demo: () => React.JSX.Element;
30
+ export declare function SortableTree({ collapsible, value, indicator, indentationWidth, removable, renderItem, onChange, onRemoveBefore, __designMode, maxLevel, }: Props): React.JSX.Element;
31
+ declare const Demo: (props: Props) => React.JSX.Element;
27
32
  export default Demo;
@@ -50,7 +50,8 @@ var initialItems = [{
50
50
  children: []
51
51
  }, {
52
52
  id: 'Winter',
53
- children: []
53
+ children: [],
54
+ disabledDrop: true
54
55
  }]
55
56
  }, {
56
57
  id: 'About Us',
@@ -120,7 +121,10 @@ export function SortableTree(_ref3) {
120
121
  removable = _ref3$removable === void 0 ? true : _ref3$removable,
121
122
  renderItem = _ref3.renderItem,
122
123
  onChange = _ref3.onChange,
123
- onRemoveBefore = _ref3.onRemoveBefore;
124
+ onRemoveBefore = _ref3.onRemoveBefore,
125
+ __designMode = _ref3.__designMode,
126
+ _ref3$maxLevel = _ref3.maxLevel,
127
+ maxLevel = _ref3$maxLevel === void 0 ? 3 : _ref3$maxLevel;
124
128
  // 状态管理
125
129
  /** 当前树形数据 */
126
130
  var _useState = useState([]),
@@ -146,6 +150,9 @@ export function SortableTree(_ref3) {
146
150
  console.log('初始化', value);
147
151
  setItems(value);
148
152
  }, [value]);
153
+ var flattenTreeData = useMemo(function () {
154
+ return flattenTree(items);
155
+ }, [items]);
149
156
 
150
157
  /**
151
158
  * 扁平化处理树形数据
@@ -154,16 +161,16 @@ export function SortableTree(_ref3) {
154
161
  * 3. 移除被折叠节点的子节点
155
162
  */
156
163
  var flattenedItems = useMemo(function () {
157
- var flattenedTree = flattenTree(items);
158
- var collapsedItems = flattenedTree.reduce(function (acc, _ref4) {
159
- var children = _ref4.children,
164
+ var collapsedItems = flattenTreeData.reduce(function (acc, _ref4) {
165
+ var _ref4$children = _ref4.children,
166
+ children = _ref4$children === void 0 ? [] : _ref4$children,
160
167
  collapsed = _ref4.collapsed,
161
168
  id = _ref4.id;
162
169
  return collapsed && children.length ? [].concat(_toConsumableArray(acc), [id]) : acc;
163
170
  }, []);
164
- return removeChildrenOf(flattenedTree, activeId != null ? [activeId].concat(_toConsumableArray(collapsedItems)) : collapsedItems);
165
- }, [activeId, items]);
166
-
171
+ return removeChildrenOf(flattenTreeData, activeId != null ? [activeId].concat(_toConsumableArray(collapsedItems)) : collapsedItems);
172
+ }, [activeId, flattenTreeData]);
173
+ console.log('flattenedItems', flattenedItems);
167
174
  /**
168
175
  * 计算拖拽投影
169
176
  * 根据当前拖拽状态计算目标位置和深度
@@ -198,6 +205,39 @@ export function SortableTree(_ref3) {
198
205
  useEffect(function () {
199
206
  document.body.id = 'body';
200
207
  }, []);
208
+
209
+ /**
210
+ * 检查子树是否超过最大深度限制
211
+ * @param items 当前项目列表
212
+ * @param itemId 要检查的项目ID
213
+ * @param baseDepth 基础深度
214
+ * @returns 是否超过限制
215
+ */
216
+ function checkSubtreeDepth(items, itemId, baseDepth) {
217
+ var item = items.find(function (i) {
218
+ return i.id === itemId;
219
+ });
220
+ if (!item) return false;
221
+
222
+ // 首先检查目标位置的深度
223
+ if (baseDepth >= maxLevel) return true;
224
+
225
+ // 获取所有子节点
226
+ var children = items.filter(function (i) {
227
+ return i.parentId === itemId;
228
+ });
229
+
230
+ // 如果当前节点已经是最大深度,且尝试添加子节点,则返回 true
231
+ if (baseDepth >= maxLevel - 1 && children.length > 0) return true;
232
+
233
+ // 递归检查所有子节点
234
+ return children.some(function (child) {
235
+ // 计算子节点在新位置的深度
236
+ var childNewDepth = baseDepth + 1;
237
+ // 如果子节点深度超过限制,或者子节点的子树超过限制,则返回 true
238
+ return childNewDepth >= maxLevel || checkSubtreeDepth(items, child.id, childNewDepth);
239
+ });
240
+ }
201
241
  return /*#__PURE__*/React.createElement(DndContext, {
202
242
  sensors: sensors,
203
243
  collisionDetection: closestCenter,
@@ -222,14 +262,15 @@ export function SortableTree(_ref3) {
222
262
  depth: id === activeId && projected ? projected.depth : depth,
223
263
  indentationWidth: indentationWidth,
224
264
  indicator: indicator,
225
- collapsed: Boolean(collapsed && children.length),
226
- onCollapse: collapsible && children.length ? function () {
265
+ collapsed: Boolean(collapsed && (children === null || children === void 0 ? void 0 : children.length)),
266
+ onCollapse: collapsible && children !== null && children !== void 0 && children.length ? function () {
227
267
  return handleCollapse(id);
228
268
  } : undefined,
229
269
  onRemove: removable ? function () {
230
270
  return handleRemove(item);
231
271
  } : undefined,
232
- renderItem: renderItem
272
+ renderItem: renderItem,
273
+ __designMode: __designMode
233
274
  });
234
275
  }), /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement(DragOverlay, {
235
276
  dropAnimation: dropAnimationConfig,
@@ -264,9 +305,32 @@ export function SortableTree(_ref3) {
264
305
  setOffsetLeft(delta.x);
265
306
  }
266
307
  function handleDragOver(_ref9) {
267
- var _over$id;
268
308
  var over = _ref9.over;
269
- setOverId((_over$id = over === null || over === void 0 ? void 0 : over.id) !== null && _over$id !== void 0 ? _over$id : null);
309
+ if (!projected || !over) {
310
+ var _over$id;
311
+ setOverId((_over$id = over === null || over === void 0 ? void 0 : over.id) !== null && _over$id !== void 0 ? _over$id : null);
312
+ return;
313
+ }
314
+
315
+ // 检查目标父节点是否禁止拖入
316
+ var targetParent = projected.parentId ? flattenedItems.find(function (item) {
317
+ return item.id === projected.parentId;
318
+ }) : null;
319
+ if (targetParent !== null && targetParent !== void 0 && targetParent.disabledDrop) {
320
+ return;
321
+ }
322
+
323
+ // 检查目标深度是否超过最大层级限制
324
+ if (projected.depth >= maxLevel) {
325
+ return;
326
+ }
327
+
328
+ // 检查整个子树的深度是否会超过限制
329
+ var willExceedLimit = checkSubtreeDepth(flattenTreeData, activeId, projected.depth);
330
+ if (willExceedLimit) {
331
+ return;
332
+ }
333
+ setOverId(over.id);
270
334
  }
271
335
 
272
336
  /**
@@ -282,6 +346,25 @@ export function SortableTree(_ref3) {
282
346
  if (projected && over) {
283
347
  var depth = projected.depth,
284
348
  parentId = projected.parentId;
349
+
350
+ // 检查目标父节点是否禁止拖入
351
+ var targetParent = parentId ? flattenedItems.find(function (item) {
352
+ return item.id === parentId;
353
+ }) : null;
354
+ if (targetParent !== null && targetParent !== void 0 && targetParent.disabledDrop) {
355
+ return;
356
+ }
357
+
358
+ // 检查是否超过最大层级限制
359
+ if (depth >= maxLevel) {
360
+ return;
361
+ }
362
+
363
+ // 检查整个子树的深度是否会超过限制
364
+ var willExceedLimit = checkSubtreeDepth(flattenTreeData, active.id, depth);
365
+ if (willExceedLimit) {
366
+ return;
367
+ }
285
368
  var clonedItems = JSON.parse(JSON.stringify(flattenTree(items)));
286
369
  var overIndex = clonedItems.findIndex(function (_ref11) {
287
370
  var id = _ref11.id;
@@ -374,7 +457,7 @@ var adjustTranslate = function adjustTranslate(_ref13) {
374
457
  y: transform.y - 25
375
458
  });
376
459
  };
377
- var Demo = function Demo() {
378
- return /*#__PURE__*/React.createElement(SortableTree, null);
460
+ var Demo = function Demo(props) {
461
+ return /*#__PURE__*/React.createElement(SortableTree, props);
379
462
  };
380
463
  export default Demo;
@@ -4,6 +4,8 @@ export interface TreeItem {
4
4
  id: UniqueIdentifier;
5
5
  children: TreeItem[];
6
6
  collapsed?: boolean;
7
+ disabledDrop?: boolean;
8
+ [key: string]: any;
7
9
  }
8
10
  export declare type TreeItems = TreeItem[];
9
11
  export interface FlattenedItem extends TreeItem {