@canlooks/can-ui 0.0.25 → 0.0.27

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 (742) hide show
  1. package/dist/cjs/components/accordion/accordion.d.ts +2 -2
  2. package/dist/cjs/components/accordion/accordion.js +4 -3
  3. package/dist/cjs/components/accordion/accordion.style.js +3 -3
  4. package/dist/cjs/components/actionSheet/actionSheet.js +2 -2
  5. package/dist/cjs/components/actionSheet/actionSheet.style.d.ts +1 -1
  6. package/dist/cjs/components/actionSheet/actionSheet.style.js +1 -1
  7. package/dist/cjs/components/alert/alert.d.ts +2 -2
  8. package/dist/cjs/components/alert/alert.js +9 -9
  9. package/dist/cjs/components/alert/alert.style.d.ts +2 -2
  10. package/dist/cjs/components/anchorList/activeIndicator.d.ts +5 -0
  11. package/dist/cjs/components/anchorList/activeIndicator.js +17 -0
  12. package/dist/cjs/components/anchorList/anchorList.d.ts +26 -0
  13. package/dist/cjs/components/anchorList/anchorList.js +95 -0
  14. package/dist/cjs/components/anchorList/anchorList.style.d.ts +7 -0
  15. package/dist/cjs/components/anchorList/anchorList.style.js +60 -0
  16. package/dist/cjs/components/anchorList/index.d.ts +1 -0
  17. package/dist/cjs/components/anchorList/index.js +4 -0
  18. package/dist/cjs/components/app/app.d.ts +7 -8
  19. package/dist/cjs/components/app/app.js +7 -2
  20. package/dist/cjs/components/app/app.style.js +1 -1
  21. package/dist/cjs/components/app/appActionSheet.js +4 -2
  22. package/dist/cjs/components/app/appDialog.d.ts +2 -1
  23. package/dist/cjs/components/app/appDialog.js +2 -2
  24. package/dist/cjs/components/app/globalEventDelegation.d.ts +6 -0
  25. package/dist/cjs/components/app/globalEventDelegation.js +26 -0
  26. package/dist/cjs/components/autocomplete/autocomplete.js +11 -12
  27. package/dist/cjs/components/avatar/avatar.d.ts +4 -5
  28. package/dist/cjs/components/avatar/avatar.js +4 -4
  29. package/dist/cjs/components/avatar/avatarGroup.d.ts +1 -1
  30. package/dist/cjs/components/avatar/avatarGroup.js +4 -5
  31. package/dist/cjs/components/avatar/avatarGroup.style.js +1 -1
  32. package/dist/cjs/components/backdrop/backdrop.js +1 -1
  33. package/dist/cjs/components/badge/badge.d.ts +2 -2
  34. package/dist/cjs/components/badge/badge.js +1 -1
  35. package/dist/cjs/components/badge/badge.style.js +2 -2
  36. package/dist/cjs/components/bottomNavigation/bottomNavigation.d.ts +2 -2
  37. package/dist/cjs/components/bottomNavigation/bottomNavigation.js +1 -1
  38. package/dist/cjs/components/bottomNavigation/bottomNavigation.style.js +4 -2
  39. package/dist/cjs/components/bottomNavigation/bottomNavigationItem.d.ts +2 -2
  40. package/dist/cjs/components/bottomNavigation/bottomNavigationItem.js +1 -1
  41. package/dist/cjs/components/boundary/boundary.d.ts +2 -1
  42. package/dist/cjs/components/boundary/boundary.js +3 -0
  43. package/dist/cjs/components/boundary/errorBoundary.d.ts +2 -1
  44. package/dist/cjs/components/boundary/errorBoundary.js +8 -3
  45. package/dist/cjs/components/breadcrumb/breadcrumb.d.ts +3 -5
  46. package/dist/cjs/components/breadcrumb/breadcrumb.js +2 -2
  47. package/dist/cjs/components/bubble/bubble.js +1 -1
  48. package/dist/cjs/components/bubble/bubble.style.js +1 -1
  49. package/dist/cjs/components/bubbleConfirm/bubbleConfirm.js +4 -3
  50. package/dist/cjs/components/bubbleConfirm/bubbleConfirm.style.d.ts +1 -1
  51. package/dist/cjs/components/button/button.d.ts +8 -12
  52. package/dist/cjs/components/button/button.js +5 -4
  53. package/dist/cjs/components/button/button.style.js +1 -1
  54. package/dist/cjs/components/card/card.js +1 -1
  55. package/dist/cjs/components/cascade/cascade.d.ts +3 -4
  56. package/dist/cjs/components/cascade/cascade.js +8 -6
  57. package/dist/cjs/components/cascade/cascade.style.js +1 -1
  58. package/dist/cjs/components/cascade/cascadePanel.js +4 -3
  59. package/dist/cjs/components/checkboxBase/checkboxBase.d.ts +5 -6
  60. package/dist/cjs/components/checkboxBase/checkboxBase.js +7 -6
  61. package/dist/cjs/components/checkboxBase/checkboxBase.style.js +7 -6
  62. package/dist/cjs/components/checkboxBaseGroup/checkboxBaseGroup.js +3 -3
  63. package/dist/cjs/components/clickAway/clickAway.d.ts +4 -4
  64. package/dist/cjs/components/clickAway/clickAway.js +1 -1
  65. package/dist/cjs/components/colorPicker/colorPicker.d.ts +10 -11
  66. package/dist/cjs/components/colorPicker/colorPicker.js +5 -10
  67. package/dist/cjs/components/contextMenu/contextMenu.d.ts +3 -3
  68. package/dist/cjs/components/contextMenu/contextMenu.js +7 -5
  69. package/dist/cjs/components/counter/counter.js +6 -4
  70. package/dist/cjs/components/curd/curd.d.ts +3 -3
  71. package/dist/cjs/components/curd/curd.js +20 -16
  72. package/dist/cjs/components/curd/curdColumnConfig.js +3 -2
  73. package/dist/cjs/components/curd/curdDialog.js +10 -13
  74. package/dist/cjs/components/curd/curdFilter.js +6 -4
  75. package/dist/cjs/components/curd/curdResizable.js +3 -2
  76. package/dist/cjs/components/dataGrid/columnResize.d.ts +10 -0
  77. package/dist/cjs/components/dataGrid/columnResize.js +70 -0
  78. package/dist/cjs/components/dataGrid/dataGrid.d.ts +36 -56
  79. package/dist/cjs/components/dataGrid/dataGrid.js +46 -38
  80. package/dist/cjs/components/dataGrid/dataGrid.style.d.ts +3 -2
  81. package/dist/cjs/components/dataGrid/dataGrid.style.js +51 -27
  82. package/dist/cjs/components/dataGrid/dataGridHead.d.ts +6 -6
  83. package/dist/cjs/components/dataGrid/dataGridHead.js +60 -57
  84. package/dist/cjs/components/dataGrid/dataGridRows.d.ts +6 -6
  85. package/dist/cjs/components/dataGrid/dataGridRows.js +24 -21
  86. package/dist/cjs/components/dateTimePicker/calendar.d.ts +2 -2
  87. package/dist/cjs/components/dateTimePicker/calendarDates.js +6 -2
  88. package/dist/cjs/components/dateTimePicker/calendarYears.js +4 -2
  89. package/dist/cjs/components/dateTimePicker/dateTimePicker.d.ts +4 -6
  90. package/dist/cjs/components/dateTimePicker/dateTimePicker.js +14 -14
  91. package/dist/cjs/components/dateTimePicker/dateTimePicker.style.d.ts +1 -1
  92. package/dist/cjs/components/dateTimePicker/timer.js +3 -2
  93. package/dist/cjs/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +2 -2
  94. package/dist/cjs/components/dateTimeRangePicker/dateTimeRangePicker.js +2 -2
  95. package/dist/cjs/components/descriptions/descriptionItem.d.ts +8 -9
  96. package/dist/cjs/components/descriptions/descriptionItem.js +5 -5
  97. package/dist/cjs/components/descriptions/descriptions.d.ts +8 -8
  98. package/dist/cjs/components/descriptions/descriptions.js +3 -3
  99. package/dist/cjs/components/descriptions/descriptions.style.d.ts +1 -1
  100. package/dist/cjs/components/descriptions/descriptions.style.js +24 -7
  101. package/dist/cjs/components/dialog/dialog.d.ts +5 -5
  102. package/dist/cjs/components/dialog/dialog.js +7 -6
  103. package/dist/cjs/components/dialog/dialog.style.d.ts +2 -2
  104. package/dist/cjs/components/dialog/dialog.style.js +2 -0
  105. package/dist/cjs/components/divider/divider.d.ts +8 -2
  106. package/dist/cjs/components/divider/divider.js +1 -1
  107. package/dist/cjs/components/draggable/draggable.js +2 -4
  108. package/dist/cjs/components/drawer/drawer.js +11 -8
  109. package/dist/cjs/components/drawer/drawer.style.js +3 -4
  110. package/dist/cjs/components/dropdown/dropdown.js +1 -1
  111. package/dist/cjs/components/flex/flex.js +1 -1
  112. package/dist/cjs/components/form/form.d.ts +14 -14
  113. package/dist/cjs/components/form/form.js +12 -13
  114. package/dist/cjs/components/form/form.style.js +28 -0
  115. package/dist/cjs/components/form/formItem.d.ts +11 -9
  116. package/dist/cjs/components/form/formItem.js +9 -10
  117. package/dist/cjs/components/formDialog/formDialog.js +6 -10
  118. package/dist/cjs/components/grid/grid.d.ts +6 -5
  119. package/dist/cjs/components/grid/grid.js +1 -1
  120. package/dist/cjs/components/grid/grid.style.js +2 -2
  121. package/dist/cjs/components/grid/gridItem.d.ts +6 -4
  122. package/dist/cjs/components/grid/gridItem.js +5 -4
  123. package/dist/cjs/components/highlight/highlight.d.ts +3 -1
  124. package/dist/cjs/components/highlight/highlight.js +1 -1
  125. package/dist/cjs/components/image/image.d.ts +12 -7
  126. package/dist/cjs/components/image/image.js +27 -10
  127. package/dist/cjs/components/image/image.style.d.ts +1 -0
  128. package/dist/cjs/components/image/image.style.js +8 -1
  129. package/dist/cjs/components/image/imagePreview.d.ts +8 -9
  130. package/dist/cjs/components/image/imagePreview.js +18 -10
  131. package/dist/cjs/components/image/imagePreview.style.d.ts +1 -1
  132. package/dist/cjs/components/image/imagePreview.style.js +1 -1
  133. package/dist/cjs/components/input/input.d.ts +3 -4
  134. package/dist/cjs/components/input/input.js +4 -4
  135. package/dist/cjs/components/inputBase/inputBase.d.ts +12 -12
  136. package/dist/cjs/components/inputBase/inputBase.js +9 -6
  137. package/dist/cjs/components/inputBase/inputBase.style.js +12 -12
  138. package/dist/cjs/components/loading/loading.d.ts +4 -3
  139. package/dist/cjs/components/loading/loading.js +2 -2
  140. package/dist/cjs/components/loadingIndicator/loadingIndicator.d.ts +2 -2
  141. package/dist/cjs/components/loadingIndicator/loadingIndicator.js +1 -1
  142. package/dist/cjs/components/loadingIndicator/loadingIndicator.style.js +1 -1
  143. package/dist/cjs/components/loadingMask/loadingMask.js +1 -1
  144. package/dist/cjs/components/menu/menu.d.ts +2 -2
  145. package/dist/cjs/components/menu/menu.js +3 -3
  146. package/dist/cjs/components/menuItem/menuItem.d.ts +2 -2
  147. package/dist/cjs/components/menuItem/menuItem.js +4 -3
  148. package/dist/cjs/components/menuItem/menuItem.style.d.ts +1 -1
  149. package/dist/cjs/components/menuItem/menuItem.style.js +6 -4
  150. package/dist/cjs/components/modal/modal.js +9 -6
  151. package/dist/cjs/components/optionsBase/optionsBase.js +3 -2
  152. package/dist/cjs/components/overlayBase/overlayBase.d.ts +3 -3
  153. package/dist/cjs/components/overlayBase/overlayBase.js +8 -10
  154. package/dist/cjs/components/pagination/counter.d.ts +2 -2
  155. package/dist/cjs/components/pagination/counter.js +1 -1
  156. package/dist/cjs/components/pagination/index.d.ts +4 -0
  157. package/dist/cjs/components/pagination/index.js +4 -0
  158. package/dist/cjs/components/pagination/jumper.d.ts +2 -2
  159. package/dist/cjs/components/pagination/jumper.js +3 -3
  160. package/dist/cjs/components/pagination/pager.d.ts +2 -2
  161. package/dist/cjs/components/pagination/pager.js +13 -10
  162. package/dist/cjs/components/pagination/pagination.d.ts +3 -3
  163. package/dist/cjs/components/pagination/pagination.js +7 -3
  164. package/dist/cjs/components/pagination/sizer.js +7 -1
  165. package/dist/cjs/components/palette/colorValueInput.d.ts +2 -2
  166. package/dist/cjs/components/palette/palette.d.ts +6 -6
  167. package/dist/cjs/components/palette/palette.js +6 -6
  168. package/dist/cjs/components/palette/palette.style.d.ts +1 -1
  169. package/dist/cjs/components/pickerDialog/pickerDialog.js +11 -15
  170. package/dist/cjs/components/pickerDialog/pickerDialog.style.d.ts +1 -1
  171. package/dist/cjs/components/placeholder/placeholder.d.ts +7 -4
  172. package/dist/cjs/components/placeholder/placeholder.js +8 -6
  173. package/dist/cjs/components/placeholder/placeholder.style.js +1 -0
  174. package/dist/cjs/components/popper/popper.d.ts +4 -3
  175. package/dist/cjs/components/popper/popper.js +179 -121
  176. package/dist/cjs/components/popper/popperContext.d.ts +6 -8
  177. package/dist/cjs/components/popper/popperContext.js +17 -31
  178. package/dist/cjs/components/progress/progress.d.ts +2 -2
  179. package/dist/cjs/components/progress/progress.js +6 -4
  180. package/dist/cjs/components/progress/progress.style.js +6 -6
  181. package/dist/cjs/components/rating/rating.d.ts +2 -2
  182. package/dist/cjs/components/rating/rating.js +4 -3
  183. package/dist/cjs/components/rating/rating.style.js +2 -1
  184. package/dist/cjs/components/resizable/resizable.d.ts +7 -4
  185. package/dist/cjs/components/resizable/resizable.js +7 -5
  186. package/dist/cjs/components/resizable/resizable.style.d.ts +1 -1
  187. package/dist/cjs/components/resizable/resizable.style.js +1 -0
  188. package/dist/cjs/components/scrollbar/index.d.ts +1 -0
  189. package/dist/cjs/components/{anchor → scrollbar}/index.js +1 -1
  190. package/dist/cjs/components/scrollbar/scrollbar.d.ts +21 -0
  191. package/dist/cjs/components/scrollbar/scrollbar.js +125 -0
  192. package/dist/cjs/components/scrollbar/scrollbar.style.d.ts +15 -0
  193. package/dist/cjs/components/scrollbar/scrollbar.style.js +124 -0
  194. package/dist/cjs/components/segmented/SegmentedOption.d.ts +2 -2
  195. package/dist/cjs/components/segmented/SegmentedOption.js +1 -1
  196. package/dist/cjs/components/segmented/segmented.d.ts +2 -2
  197. package/dist/cjs/components/segmented/segmented.js +4 -5
  198. package/dist/cjs/components/segmented/segmented.style.d.ts +1 -1
  199. package/dist/cjs/components/segmented/segmented.style.js +2 -1
  200. package/dist/cjs/components/select/select.d.ts +3 -4
  201. package/dist/cjs/components/select/select.js +12 -10
  202. package/dist/cjs/components/select/select.style.js +1 -1
  203. package/dist/cjs/components/selectedList/selectedItem.js +1 -1
  204. package/dist/cjs/components/selectedList/selectedList.js +1 -1
  205. package/dist/cjs/components/selectedList/selectedList.style.js +1 -1
  206. package/dist/cjs/components/selectionContext/selectionContext.d.ts +9 -16
  207. package/dist/cjs/components/selectionContext/selectionContext.js +3 -3
  208. package/dist/cjs/components/selectionContext/selectionHook.d.ts +2 -2
  209. package/dist/cjs/components/selectionContext/selectionHook.js +17 -13
  210. package/dist/cjs/components/skeleton/skeleton.d.ts +7 -7
  211. package/dist/cjs/components/skeleton/skeleton.js +4 -3
  212. package/dist/cjs/components/slidableActions/slidableActions.d.ts +2 -2
  213. package/dist/cjs/components/slidableActions/slidableActions.js +1 -1
  214. package/dist/cjs/components/slidableActions/slidableActionsAction.d.ts +4 -5
  215. package/dist/cjs/components/slidableActions/slidableActionsAction.js +2 -2
  216. package/dist/cjs/components/slider/slider.d.ts +7 -7
  217. package/dist/cjs/components/slider/slider.js +11 -7
  218. package/dist/cjs/components/slider/slider.style.js +12 -9
  219. package/dist/cjs/components/snackbarBase/snackbarBase.d.ts +1 -1
  220. package/dist/cjs/components/snackbarBase/snackbarBase.js +16 -12
  221. package/dist/cjs/components/snackbarBase/snackbarBase.style.d.ts +1 -1
  222. package/dist/cjs/components/snackbarBase/snackbarBase.style.js +1 -2
  223. package/dist/cjs/components/sortableItem/sortableItem.d.ts +5 -4
  224. package/dist/cjs/components/sortableItem/sortableItem.js +7 -5
  225. package/dist/cjs/components/status/status.d.ts +15 -15
  226. package/dist/cjs/components/status/status.js +21 -21
  227. package/dist/cjs/components/stepper/step.js +11 -7
  228. package/dist/cjs/components/stepper/step.style.d.ts +1 -1
  229. package/dist/cjs/components/stepper/step.style.js +10 -9
  230. package/dist/cjs/components/stepper/stepper.d.ts +2 -2
  231. package/dist/cjs/components/stepper/stepper.js +1 -1
  232. package/dist/cjs/components/switch/switch.d.ts +9 -10
  233. package/dist/cjs/components/switch/switch.js +4 -4
  234. package/dist/cjs/components/switch/switch.style.d.ts +1 -1
  235. package/dist/cjs/components/switch/switch.style.js +4 -4
  236. package/dist/cjs/components/table/index.d.ts +1 -0
  237. package/dist/cjs/components/table/index.js +1 -0
  238. package/dist/cjs/components/table/table.d.ts +20 -4
  239. package/dist/cjs/components/table/table.js +10 -2
  240. package/dist/cjs/components/table/table.style.d.ts +3 -0
  241. package/dist/cjs/components/table/table.style.js +66 -47
  242. package/dist/cjs/components/table/tableSticky.d.ts +13 -0
  243. package/dist/cjs/components/table/tableSticky.js +76 -0
  244. package/dist/cjs/components/table/tableSticky.style.d.ts +1 -0
  245. package/dist/cjs/components/table/tableSticky.style.js +58 -0
  246. package/dist/cjs/components/tabs/lineIndicator.d.ts +8 -0
  247. package/dist/cjs/components/tabs/lineIndicator.js +45 -0
  248. package/dist/cjs/components/tabs/tab.d.ts +2 -2
  249. package/dist/cjs/components/tabs/tab.js +1 -1
  250. package/dist/cjs/components/tabs/tabs.d.ts +7 -3
  251. package/dist/cjs/components/tabs/tabs.js +19 -56
  252. package/dist/cjs/components/tabs/tabs.style.d.ts +2 -2
  253. package/dist/cjs/components/tabs/tabs.style.js +8 -5
  254. package/dist/cjs/components/tabs/tabsEllipsis.js +3 -2
  255. package/dist/cjs/components/tag/tag.d.ts +2 -2
  256. package/dist/cjs/components/tag/tag.js +4 -3
  257. package/dist/cjs/components/tag/tag.style.d.ts +1 -1
  258. package/dist/cjs/components/tag/tag.style.js +2 -1
  259. package/dist/cjs/components/textarea/textarea.d.ts +3 -3
  260. package/dist/cjs/components/textarea/textarea.js +1 -1
  261. package/dist/cjs/components/theme/themeContext.d.ts +1 -2
  262. package/dist/cjs/components/theme/themeContext.js +19 -27
  263. package/dist/cjs/components/theme/themeTypes.d.ts +13 -12
  264. package/dist/cjs/components/theme/themeVariables.d.ts +12 -7
  265. package/dist/cjs/components/theme/themeVariables.js +74 -25
  266. package/dist/cjs/components/timeline/timeline.d.ts +2 -2
  267. package/dist/cjs/components/timeline/timeline.js +1 -1
  268. package/dist/cjs/components/timeline/timeline.style.js +2 -2
  269. package/dist/cjs/components/timeline/timelineItem.js +1 -1
  270. package/dist/cjs/components/toggleButton/toggleButton.js +1 -1
  271. package/dist/cjs/components/tooltip/tooltip.js +1 -1
  272. package/dist/cjs/components/tooltip/tooltip.style.d.ts +4 -2
  273. package/dist/cjs/components/tooltip/tooltip.style.js +1 -1
  274. package/dist/cjs/components/touchRipple/touchRipple.d.ts +4 -4
  275. package/dist/cjs/components/touchRipple/touchRipple.js +2 -2
  276. package/dist/cjs/components/transfer/transfer.d.ts +2 -2
  277. package/dist/cjs/components/transfer/transfer.js +6 -4
  278. package/dist/cjs/components/transfer/transfer.style.d.ts +2 -2
  279. package/dist/cjs/components/transfer/transferPanel.d.ts +2 -2
  280. package/dist/cjs/components/transitionBase/collapse.d.ts +8 -6
  281. package/dist/cjs/components/transitionBase/collapse.js +16 -39
  282. package/dist/cjs/components/transitionBase/fade.d.ts +4 -4
  283. package/dist/cjs/components/transitionBase/grow.d.ts +4 -4
  284. package/dist/cjs/components/transitionBase/slide.d.ts +4 -4
  285. package/dist/cjs/components/transitionBase/transitionBase.d.ts +5 -4
  286. package/dist/cjs/components/transitionBase/transitionBase.js +10 -10
  287. package/dist/cjs/components/transitionBase/transitionBase.style.js +4 -2
  288. package/dist/cjs/components/transportStyle/transportStyle.d.ts +6 -5
  289. package/dist/cjs/components/transportStyle/transportStyle.js +5 -4
  290. package/dist/cjs/components/tree/tree.d.ts +2 -2
  291. package/dist/cjs/components/tree/tree.js +5 -4
  292. package/dist/cjs/components/tree/tree.style.d.ts +1 -1
  293. package/dist/cjs/components/tree/tree.style.js +4 -3
  294. package/dist/cjs/components/tree/treeNode.d.ts +2 -2
  295. package/dist/cjs/components/tree/treeNode.js +6 -3
  296. package/dist/cjs/components/treeSelect/treeSelect.d.ts +2 -3
  297. package/dist/cjs/components/treeSelect/treeSelect.js +6 -5
  298. package/dist/cjs/components/treeSelect/treeSelect.style.js +1 -1
  299. package/dist/cjs/components/typography/typography.d.ts +7 -4
  300. package/dist/cjs/components/typography/typography.js +18 -12
  301. package/dist/cjs/components/typography/typography.style.d.ts +1 -1
  302. package/dist/cjs/components/typography/typography.style.js +16 -15
  303. package/dist/cjs/components/upload/dropArea.d.ts +2 -2
  304. package/dist/cjs/components/upload/dropArea.js +4 -3
  305. package/dist/cjs/components/upload/fileItem.js +9 -5
  306. package/dist/cjs/components/upload/imageItem.js +6 -4
  307. package/dist/cjs/components/upload/upload.d.ts +4 -5
  308. package/dist/cjs/components/upload/upload.js +13 -13
  309. package/dist/cjs/components/upload/upload.style.d.ts +2 -2
  310. package/dist/cjs/components/upload/upload.style.js +1 -1
  311. package/dist/cjs/components/waterfall/waterfall.js +4 -5
  312. package/dist/cjs/components/waterfall/waterfall.style.js +1 -1
  313. package/dist/cjs/extensions/documentViewer/documentViewer.js +3 -2
  314. package/dist/cjs/extensions/documentViewer/pdfViewer.d.ts +3 -3
  315. package/dist/cjs/extensions/documentViewer/svgViewer.js +13 -4
  316. package/dist/cjs/extensions/textFormatter/textFormatter.d.ts +4 -5
  317. package/dist/cjs/extensions/textFormatter/textFormatter.js +5 -32
  318. package/dist/cjs/extensions/textFormatter/textFormatter.style.js +0 -20
  319. package/dist/cjs/index.d.ts +4 -2
  320. package/dist/cjs/index.js +6 -2
  321. package/dist/cjs/types.d.ts +36 -5
  322. package/dist/cjs/utils/curd.js +2 -2
  323. package/dist/cjs/utils/dataGrid.d.ts +2 -1
  324. package/dist/cjs/utils/dataGrid.js +5 -4
  325. package/dist/cjs/utils/dnd.d.ts +11 -9
  326. package/dist/cjs/utils/dnd.js +6 -3
  327. package/dist/cjs/utils/hooks.d.ts +1 -0
  328. package/dist/cjs/utils/index.d.ts +1 -0
  329. package/dist/cjs/utils/index.js +1 -0
  330. package/dist/cjs/utils/keyboard.js +0 -1
  331. package/dist/cjs/utils/polyfill.d.ts +1 -0
  332. package/dist/cjs/utils/polyfill.js +12 -0
  333. package/dist/cjs/utils/style.d.ts +18 -4
  334. package/dist/cjs/utils/style.js +41 -7
  335. package/dist/cjs/utils/utils.d.ts +11 -4
  336. package/dist/cjs/utils/utils.js +34 -9
  337. package/dist/esm/components/accordion/accordion.d.ts +2 -2
  338. package/dist/esm/components/accordion/accordion.js +5 -4
  339. package/dist/esm/components/accordion/accordion.style.js +3 -3
  340. package/dist/esm/components/actionSheet/actionSheet.js +3 -3
  341. package/dist/esm/components/actionSheet/actionSheet.style.d.ts +1 -1
  342. package/dist/esm/components/actionSheet/actionSheet.style.js +1 -1
  343. package/dist/esm/components/alert/alert.d.ts +2 -2
  344. package/dist/esm/components/alert/alert.js +10 -10
  345. package/dist/esm/components/alert/alert.style.d.ts +2 -2
  346. package/dist/esm/components/anchorList/activeIndicator.d.ts +5 -0
  347. package/dist/esm/components/anchorList/activeIndicator.js +14 -0
  348. package/dist/esm/components/anchorList/anchorList.d.ts +26 -0
  349. package/dist/esm/components/anchorList/anchorList.js +92 -0
  350. package/dist/esm/components/anchorList/anchorList.style.d.ts +7 -0
  351. package/dist/esm/components/anchorList/anchorList.style.js +57 -0
  352. package/dist/esm/components/anchorList/index.d.ts +1 -0
  353. package/dist/esm/components/anchorList/index.js +1 -0
  354. package/dist/esm/components/app/app.d.ts +7 -8
  355. package/dist/esm/components/app/app.js +8 -3
  356. package/dist/esm/components/app/app.style.js +1 -1
  357. package/dist/esm/components/app/appActionSheet.js +4 -2
  358. package/dist/esm/components/app/appDialog.d.ts +2 -1
  359. package/dist/esm/components/app/appDialog.js +2 -2
  360. package/dist/esm/components/app/globalEventDelegation.d.ts +6 -0
  361. package/dist/esm/components/app/globalEventDelegation.js +21 -0
  362. package/dist/esm/components/autocomplete/autocomplete.js +12 -13
  363. package/dist/esm/components/avatar/avatar.d.ts +4 -5
  364. package/dist/esm/components/avatar/avatar.js +5 -5
  365. package/dist/esm/components/avatar/avatarGroup.d.ts +1 -1
  366. package/dist/esm/components/avatar/avatarGroup.js +5 -6
  367. package/dist/esm/components/avatar/avatarGroup.style.js +1 -1
  368. package/dist/esm/components/backdrop/backdrop.js +2 -2
  369. package/dist/esm/components/badge/badge.d.ts +2 -2
  370. package/dist/esm/components/badge/badge.js +2 -2
  371. package/dist/esm/components/badge/badge.style.js +2 -2
  372. package/dist/esm/components/bottomNavigation/bottomNavigation.d.ts +2 -2
  373. package/dist/esm/components/bottomNavigation/bottomNavigation.js +2 -2
  374. package/dist/esm/components/bottomNavigation/bottomNavigation.style.js +4 -2
  375. package/dist/esm/components/bottomNavigation/bottomNavigationItem.d.ts +2 -2
  376. package/dist/esm/components/bottomNavigation/bottomNavigationItem.js +2 -2
  377. package/dist/esm/components/boundary/boundary.d.ts +2 -1
  378. package/dist/esm/components/boundary/boundary.js +3 -0
  379. package/dist/esm/components/boundary/errorBoundary.d.ts +2 -1
  380. package/dist/esm/components/boundary/errorBoundary.js +9 -4
  381. package/dist/esm/components/breadcrumb/breadcrumb.d.ts +3 -5
  382. package/dist/esm/components/breadcrumb/breadcrumb.js +3 -3
  383. package/dist/esm/components/bubble/bubble.js +2 -2
  384. package/dist/esm/components/bubble/bubble.style.js +1 -1
  385. package/dist/esm/components/bubbleConfirm/bubbleConfirm.js +5 -4
  386. package/dist/esm/components/bubbleConfirm/bubbleConfirm.style.d.ts +1 -1
  387. package/dist/esm/components/button/button.d.ts +8 -12
  388. package/dist/esm/components/button/button.js +4 -4
  389. package/dist/esm/components/button/button.style.js +1 -1
  390. package/dist/esm/components/card/card.js +2 -2
  391. package/dist/esm/components/cascade/cascade.d.ts +3 -4
  392. package/dist/esm/components/cascade/cascade.js +9 -7
  393. package/dist/esm/components/cascade/cascade.style.js +1 -1
  394. package/dist/esm/components/cascade/cascadePanel.js +4 -3
  395. package/dist/esm/components/checkboxBase/checkboxBase.d.ts +5 -6
  396. package/dist/esm/components/checkboxBase/checkboxBase.js +8 -7
  397. package/dist/esm/components/checkboxBase/checkboxBase.style.js +7 -6
  398. package/dist/esm/components/checkboxBaseGroup/checkboxBaseGroup.js +4 -4
  399. package/dist/esm/components/clickAway/clickAway.d.ts +4 -4
  400. package/dist/esm/components/clickAway/clickAway.js +1 -1
  401. package/dist/esm/components/colorPicker/colorPicker.d.ts +10 -11
  402. package/dist/esm/components/colorPicker/colorPicker.js +6 -11
  403. package/dist/esm/components/contextMenu/contextMenu.d.ts +3 -3
  404. package/dist/esm/components/contextMenu/contextMenu.js +7 -5
  405. package/dist/esm/components/counter/counter.js +7 -5
  406. package/dist/esm/components/curd/curd.d.ts +3 -3
  407. package/dist/esm/components/curd/curd.js +21 -17
  408. package/dist/esm/components/curd/curdColumnConfig.js +3 -2
  409. package/dist/esm/components/curd/curdDialog.js +10 -13
  410. package/dist/esm/components/curd/curdFilter.js +7 -5
  411. package/dist/esm/components/curd/curdResizable.js +3 -2
  412. package/dist/esm/components/dataGrid/columnResize.d.ts +10 -0
  413. package/dist/esm/components/dataGrid/columnResize.js +66 -0
  414. package/dist/esm/components/dataGrid/dataGrid.d.ts +36 -56
  415. package/dist/esm/components/dataGrid/dataGrid.js +47 -39
  416. package/dist/esm/components/dataGrid/dataGrid.style.d.ts +3 -2
  417. package/dist/esm/components/dataGrid/dataGrid.style.js +49 -24
  418. package/dist/esm/components/dataGrid/dataGridHead.d.ts +6 -6
  419. package/dist/esm/components/dataGrid/dataGridHead.js +60 -57
  420. package/dist/esm/components/dataGrid/dataGridRows.d.ts +6 -6
  421. package/dist/esm/components/dataGrid/dataGridRows.js +25 -22
  422. package/dist/esm/components/dateTimePicker/calendar.d.ts +2 -2
  423. package/dist/esm/components/dateTimePicker/calendarDates.js +6 -2
  424. package/dist/esm/components/dateTimePicker/calendarYears.js +4 -2
  425. package/dist/esm/components/dateTimePicker/dateTimePicker.d.ts +4 -6
  426. package/dist/esm/components/dateTimePicker/dateTimePicker.js +15 -15
  427. package/dist/esm/components/dateTimePicker/dateTimePicker.style.d.ts +1 -1
  428. package/dist/esm/components/dateTimePicker/timer.js +4 -3
  429. package/dist/esm/components/dateTimeRangePicker/dateTimeRangePicker.d.ts +2 -2
  430. package/dist/esm/components/dateTimeRangePicker/dateTimeRangePicker.js +3 -3
  431. package/dist/esm/components/descriptions/descriptionItem.d.ts +8 -9
  432. package/dist/esm/components/descriptions/descriptionItem.js +6 -6
  433. package/dist/esm/components/descriptions/descriptions.d.ts +8 -8
  434. package/dist/esm/components/descriptions/descriptions.js +4 -4
  435. package/dist/esm/components/descriptions/descriptions.style.d.ts +1 -1
  436. package/dist/esm/components/descriptions/descriptions.style.js +24 -7
  437. package/dist/esm/components/dialog/dialog.d.ts +5 -5
  438. package/dist/esm/components/dialog/dialog.js +8 -7
  439. package/dist/esm/components/dialog/dialog.style.d.ts +2 -2
  440. package/dist/esm/components/dialog/dialog.style.js +2 -0
  441. package/dist/esm/components/divider/divider.d.ts +8 -2
  442. package/dist/esm/components/divider/divider.js +2 -2
  443. package/dist/esm/components/draggable/draggable.js +3 -5
  444. package/dist/esm/components/drawer/drawer.js +12 -9
  445. package/dist/esm/components/drawer/drawer.style.js +3 -4
  446. package/dist/esm/components/dropdown/dropdown.js +2 -2
  447. package/dist/esm/components/flex/flex.js +2 -2
  448. package/dist/esm/components/form/form.d.ts +14 -14
  449. package/dist/esm/components/form/form.js +13 -14
  450. package/dist/esm/components/form/form.style.js +28 -0
  451. package/dist/esm/components/form/formItem.d.ts +11 -9
  452. package/dist/esm/components/form/formItem.js +9 -11
  453. package/dist/esm/components/formDialog/formDialog.js +6 -10
  454. package/dist/esm/components/grid/grid.d.ts +6 -5
  455. package/dist/esm/components/grid/grid.js +2 -2
  456. package/dist/esm/components/grid/grid.style.js +2 -2
  457. package/dist/esm/components/grid/gridItem.d.ts +6 -4
  458. package/dist/esm/components/grid/gridItem.js +4 -4
  459. package/dist/esm/components/highlight/highlight.d.ts +3 -1
  460. package/dist/esm/components/highlight/highlight.js +1 -1
  461. package/dist/esm/components/image/image.d.ts +12 -7
  462. package/dist/esm/components/image/image.js +30 -13
  463. package/dist/esm/components/image/image.style.d.ts +1 -0
  464. package/dist/esm/components/image/image.style.js +8 -1
  465. package/dist/esm/components/image/imagePreview.d.ts +8 -9
  466. package/dist/esm/components/image/imagePreview.js +19 -11
  467. package/dist/esm/components/image/imagePreview.style.d.ts +1 -1
  468. package/dist/esm/components/image/imagePreview.style.js +1 -1
  469. package/dist/esm/components/input/input.d.ts +3 -4
  470. package/dist/esm/components/input/input.js +5 -5
  471. package/dist/esm/components/inputBase/inputBase.d.ts +12 -12
  472. package/dist/esm/components/inputBase/inputBase.js +10 -7
  473. package/dist/esm/components/inputBase/inputBase.style.js +12 -12
  474. package/dist/esm/components/loading/loading.d.ts +4 -3
  475. package/dist/esm/components/loading/loading.js +3 -3
  476. package/dist/esm/components/loadingIndicator/loadingIndicator.d.ts +2 -2
  477. package/dist/esm/components/loadingIndicator/loadingIndicator.js +2 -2
  478. package/dist/esm/components/loadingIndicator/loadingIndicator.style.js +1 -1
  479. package/dist/esm/components/loadingMask/loadingMask.js +2 -2
  480. package/dist/esm/components/menu/menu.d.ts +2 -2
  481. package/dist/esm/components/menu/menu.js +3 -3
  482. package/dist/esm/components/menuItem/menuItem.d.ts +2 -2
  483. package/dist/esm/components/menuItem/menuItem.js +5 -4
  484. package/dist/esm/components/menuItem/menuItem.style.d.ts +1 -1
  485. package/dist/esm/components/menuItem/menuItem.style.js +6 -4
  486. package/dist/esm/components/modal/modal.js +11 -8
  487. package/dist/esm/components/optionsBase/optionsBase.js +5 -4
  488. package/dist/esm/components/overlayBase/overlayBase.d.ts +3 -3
  489. package/dist/esm/components/overlayBase/overlayBase.js +9 -11
  490. package/dist/esm/components/pagination/counter.d.ts +2 -2
  491. package/dist/esm/components/pagination/counter.js +2 -2
  492. package/dist/esm/components/pagination/index.d.ts +4 -0
  493. package/dist/esm/components/pagination/index.js +4 -0
  494. package/dist/esm/components/pagination/jumper.d.ts +2 -2
  495. package/dist/esm/components/pagination/jumper.js +4 -4
  496. package/dist/esm/components/pagination/pager.d.ts +2 -2
  497. package/dist/esm/components/pagination/pager.js +14 -11
  498. package/dist/esm/components/pagination/pagination.d.ts +3 -3
  499. package/dist/esm/components/pagination/pagination.js +8 -4
  500. package/dist/esm/components/pagination/sizer.js +9 -3
  501. package/dist/esm/components/palette/colorValueInput.d.ts +2 -2
  502. package/dist/esm/components/palette/palette.d.ts +6 -6
  503. package/dist/esm/components/palette/palette.js +7 -7
  504. package/dist/esm/components/palette/palette.style.d.ts +1 -1
  505. package/dist/esm/components/pickerDialog/pickerDialog.js +12 -16
  506. package/dist/esm/components/pickerDialog/pickerDialog.style.d.ts +1 -1
  507. package/dist/esm/components/placeholder/placeholder.d.ts +7 -4
  508. package/dist/esm/components/placeholder/placeholder.js +9 -7
  509. package/dist/esm/components/placeholder/placeholder.style.js +1 -0
  510. package/dist/esm/components/popper/popper.d.ts +4 -3
  511. package/dist/esm/components/popper/popper.js +181 -123
  512. package/dist/esm/components/popper/popperContext.d.ts +6 -8
  513. package/dist/esm/components/popper/popperContext.js +18 -31
  514. package/dist/esm/components/progress/progress.d.ts +2 -2
  515. package/dist/esm/components/progress/progress.js +7 -5
  516. package/dist/esm/components/progress/progress.style.js +6 -6
  517. package/dist/esm/components/rating/rating.d.ts +2 -2
  518. package/dist/esm/components/rating/rating.js +5 -4
  519. package/dist/esm/components/rating/rating.style.js +2 -1
  520. package/dist/esm/components/resizable/resizable.d.ts +7 -4
  521. package/dist/esm/components/resizable/resizable.js +7 -5
  522. package/dist/esm/components/resizable/resizable.style.d.ts +1 -1
  523. package/dist/esm/components/resizable/resizable.style.js +1 -0
  524. package/dist/esm/components/scrollbar/index.d.ts +1 -0
  525. package/dist/esm/components/scrollbar/index.js +1 -0
  526. package/dist/esm/components/scrollbar/scrollbar.d.ts +21 -0
  527. package/dist/esm/components/scrollbar/scrollbar.js +122 -0
  528. package/dist/esm/components/scrollbar/scrollbar.style.d.ts +15 -0
  529. package/dist/esm/components/scrollbar/scrollbar.style.js +119 -0
  530. package/dist/esm/components/segmented/SegmentedOption.d.ts +2 -2
  531. package/dist/esm/components/segmented/SegmentedOption.js +2 -2
  532. package/dist/esm/components/segmented/segmented.d.ts +2 -2
  533. package/dist/esm/components/segmented/segmented.js +5 -6
  534. package/dist/esm/components/segmented/segmented.style.d.ts +1 -1
  535. package/dist/esm/components/segmented/segmented.style.js +2 -1
  536. package/dist/esm/components/select/select.d.ts +3 -4
  537. package/dist/esm/components/select/select.js +13 -11
  538. package/dist/esm/components/select/select.style.js +1 -1
  539. package/dist/esm/components/selectedList/selectedItem.js +2 -2
  540. package/dist/esm/components/selectedList/selectedList.js +2 -2
  541. package/dist/esm/components/selectedList/selectedList.style.js +1 -1
  542. package/dist/esm/components/selectionContext/selectionContext.d.ts +9 -16
  543. package/dist/esm/components/selectionContext/selectionContext.js +3 -3
  544. package/dist/esm/components/selectionContext/selectionHook.d.ts +2 -2
  545. package/dist/esm/components/selectionContext/selectionHook.js +17 -13
  546. package/dist/esm/components/skeleton/skeleton.d.ts +7 -7
  547. package/dist/esm/components/skeleton/skeleton.js +5 -4
  548. package/dist/esm/components/slidableActions/slidableActions.d.ts +2 -2
  549. package/dist/esm/components/slidableActions/slidableActions.js +2 -2
  550. package/dist/esm/components/slidableActions/slidableActionsAction.d.ts +4 -5
  551. package/dist/esm/components/slidableActions/slidableActionsAction.js +3 -3
  552. package/dist/esm/components/slider/slider.d.ts +7 -7
  553. package/dist/esm/components/slider/slider.js +12 -8
  554. package/dist/esm/components/slider/slider.style.js +12 -9
  555. package/dist/esm/components/snackbarBase/snackbarBase.d.ts +1 -1
  556. package/dist/esm/components/snackbarBase/snackbarBase.js +18 -14
  557. package/dist/esm/components/snackbarBase/snackbarBase.style.d.ts +1 -1
  558. package/dist/esm/components/snackbarBase/snackbarBase.style.js +1 -2
  559. package/dist/esm/components/sortableItem/sortableItem.d.ts +5 -4
  560. package/dist/esm/components/sortableItem/sortableItem.js +7 -5
  561. package/dist/esm/components/status/status.d.ts +15 -15
  562. package/dist/esm/components/status/status.js +22 -22
  563. package/dist/esm/components/stepper/step.js +12 -8
  564. package/dist/esm/components/stepper/step.style.d.ts +1 -1
  565. package/dist/esm/components/stepper/step.style.js +10 -9
  566. package/dist/esm/components/stepper/stepper.d.ts +2 -2
  567. package/dist/esm/components/stepper/stepper.js +2 -2
  568. package/dist/esm/components/switch/switch.d.ts +9 -10
  569. package/dist/esm/components/switch/switch.js +5 -5
  570. package/dist/esm/components/switch/switch.style.d.ts +1 -1
  571. package/dist/esm/components/switch/switch.style.js +4 -4
  572. package/dist/esm/components/table/index.d.ts +1 -0
  573. package/dist/esm/components/table/index.js +1 -0
  574. package/dist/esm/components/table/table.d.ts +20 -4
  575. package/dist/esm/components/table/table.js +10 -3
  576. package/dist/esm/components/table/table.style.d.ts +3 -0
  577. package/dist/esm/components/table/table.style.js +65 -47
  578. package/dist/esm/components/table/tableSticky.d.ts +13 -0
  579. package/dist/esm/components/table/tableSticky.js +71 -0
  580. package/dist/esm/components/table/tableSticky.style.d.ts +1 -0
  581. package/dist/esm/components/table/tableSticky.style.js +55 -0
  582. package/dist/esm/components/tabs/lineIndicator.d.ts +8 -0
  583. package/dist/esm/components/tabs/lineIndicator.js +42 -0
  584. package/dist/esm/components/tabs/tab.d.ts +2 -2
  585. package/dist/esm/components/tabs/tab.js +2 -2
  586. package/dist/esm/components/tabs/tabs.d.ts +7 -3
  587. package/dist/esm/components/tabs/tabs.js +21 -58
  588. package/dist/esm/components/tabs/tabs.style.d.ts +2 -2
  589. package/dist/esm/components/tabs/tabs.style.js +8 -5
  590. package/dist/esm/components/tabs/tabsEllipsis.js +3 -2
  591. package/dist/esm/components/tag/tag.d.ts +2 -2
  592. package/dist/esm/components/tag/tag.js +5 -4
  593. package/dist/esm/components/tag/tag.style.d.ts +1 -1
  594. package/dist/esm/components/tag/tag.style.js +2 -1
  595. package/dist/esm/components/textarea/textarea.d.ts +3 -3
  596. package/dist/esm/components/textarea/textarea.js +2 -2
  597. package/dist/esm/components/theme/themeContext.d.ts +1 -2
  598. package/dist/esm/components/theme/themeContext.js +22 -29
  599. package/dist/esm/components/theme/themeTypes.d.ts +13 -12
  600. package/dist/esm/components/theme/themeVariables.d.ts +12 -7
  601. package/dist/esm/components/theme/themeVariables.js +72 -24
  602. package/dist/esm/components/timeline/timeline.d.ts +2 -2
  603. package/dist/esm/components/timeline/timeline.js +2 -2
  604. package/dist/esm/components/timeline/timeline.style.js +2 -2
  605. package/dist/esm/components/timeline/timelineItem.js +2 -2
  606. package/dist/esm/components/toggleButton/toggleButton.js +2 -2
  607. package/dist/esm/components/tooltip/tooltip.js +2 -2
  608. package/dist/esm/components/tooltip/tooltip.style.d.ts +4 -2
  609. package/dist/esm/components/tooltip/tooltip.style.js +1 -1
  610. package/dist/esm/components/touchRipple/touchRipple.d.ts +4 -4
  611. package/dist/esm/components/touchRipple/touchRipple.js +3 -3
  612. package/dist/esm/components/transfer/transfer.d.ts +2 -2
  613. package/dist/esm/components/transfer/transfer.js +7 -5
  614. package/dist/esm/components/transfer/transfer.style.d.ts +2 -2
  615. package/dist/esm/components/transfer/transferPanel.d.ts +2 -2
  616. package/dist/esm/components/transitionBase/collapse.d.ts +8 -6
  617. package/dist/esm/components/transitionBase/collapse.js +17 -41
  618. package/dist/esm/components/transitionBase/fade.d.ts +4 -4
  619. package/dist/esm/components/transitionBase/grow.d.ts +4 -4
  620. package/dist/esm/components/transitionBase/slide.d.ts +4 -4
  621. package/dist/esm/components/transitionBase/transitionBase.d.ts +5 -4
  622. package/dist/esm/components/transitionBase/transitionBase.js +11 -11
  623. package/dist/esm/components/transitionBase/transitionBase.style.js +4 -2
  624. package/dist/esm/components/transportStyle/transportStyle.d.ts +6 -5
  625. package/dist/esm/components/transportStyle/transportStyle.js +3 -3
  626. package/dist/esm/components/tree/tree.d.ts +2 -2
  627. package/dist/esm/components/tree/tree.js +6 -5
  628. package/dist/esm/components/tree/tree.style.d.ts +1 -1
  629. package/dist/esm/components/tree/tree.style.js +4 -3
  630. package/dist/esm/components/tree/treeNode.d.ts +2 -2
  631. package/dist/esm/components/tree/treeNode.js +7 -4
  632. package/dist/esm/components/treeSelect/treeSelect.d.ts +2 -3
  633. package/dist/esm/components/treeSelect/treeSelect.js +7 -6
  634. package/dist/esm/components/treeSelect/treeSelect.style.js +1 -1
  635. package/dist/esm/components/typography/typography.d.ts +7 -4
  636. package/dist/esm/components/typography/typography.js +19 -13
  637. package/dist/esm/components/typography/typography.style.d.ts +1 -1
  638. package/dist/esm/components/typography/typography.style.js +16 -15
  639. package/dist/esm/components/upload/dropArea.d.ts +2 -2
  640. package/dist/esm/components/upload/dropArea.js +5 -4
  641. package/dist/esm/components/upload/fileItem.js +9 -5
  642. package/dist/esm/components/upload/imageItem.js +7 -5
  643. package/dist/esm/components/upload/upload.d.ts +4 -5
  644. package/dist/esm/components/upload/upload.js +14 -14
  645. package/dist/esm/components/upload/upload.style.d.ts +2 -2
  646. package/dist/esm/components/upload/upload.style.js +1 -1
  647. package/dist/esm/components/waterfall/waterfall.js +5 -6
  648. package/dist/esm/components/waterfall/waterfall.style.js +1 -1
  649. package/dist/esm/extensions/documentViewer/documentViewer.js +3 -2
  650. package/dist/esm/extensions/documentViewer/pdfViewer.d.ts +3 -3
  651. package/dist/esm/extensions/documentViewer/svgViewer.js +14 -5
  652. package/dist/esm/extensions/textFormatter/textFormatter.d.ts +4 -5
  653. package/dist/esm/extensions/textFormatter/textFormatter.js +5 -31
  654. package/dist/esm/extensions/textFormatter/textFormatter.style.js +0 -20
  655. package/dist/esm/index.d.ts +4 -2
  656. package/dist/esm/index.js +4 -2
  657. package/dist/esm/types.d.ts +36 -5
  658. package/dist/esm/utils/curd.js +2 -2
  659. package/dist/esm/utils/dataGrid.d.ts +2 -1
  660. package/dist/esm/utils/dataGrid.js +5 -4
  661. package/dist/esm/utils/dnd.d.ts +11 -9
  662. package/dist/esm/utils/dnd.js +7 -4
  663. package/dist/esm/utils/hooks.d.ts +1 -0
  664. package/dist/esm/utils/index.d.ts +1 -0
  665. package/dist/esm/utils/index.js +1 -0
  666. package/dist/esm/utils/keyboard.js +0 -1
  667. package/dist/esm/utils/polyfill.d.ts +1 -0
  668. package/dist/esm/utils/polyfill.js +11 -0
  669. package/dist/esm/utils/style.d.ts +18 -4
  670. package/dist/esm/utils/style.js +41 -8
  671. package/dist/esm/utils/utils.d.ts +11 -4
  672. package/dist/esm/utils/utils.js +30 -6
  673. package/documentation/bootstrap.mjs +8 -0
  674. package/documentation/dist/assets/index-GGSqC5H1.js +7650 -0
  675. package/documentation/dist/atom-one-dark.min.css +1 -0
  676. package/documentation/dist/components/accordion.md +38 -0
  677. package/documentation/dist/components/actionSheet.md +49 -0
  678. package/documentation/dist/components/alert.md +38 -0
  679. package/documentation/dist/components/anchorList.md +36 -0
  680. package/documentation/dist/components/autocomplete.md +68 -0
  681. package/documentation/dist/components/avatar.md +79 -0
  682. package/documentation/dist/components/badge.md +33 -0
  683. package/documentation/dist/components/bottomNavigation.md +39 -0
  684. package/documentation/dist/components/breadcrumb.md +28 -0
  685. package/documentation/dist/components/bubbleConfirm.md +34 -0
  686. package/documentation/dist/components/button.md +62 -0
  687. package/documentation/dist/components/card.md +30 -0
  688. package/documentation/dist/components/cascade.md +48 -0
  689. package/documentation/dist/components/checkbox.md +13 -0
  690. package/documentation/dist/components/colorPicker.md +27 -0
  691. package/documentation/dist/components/contextMenu.md +27 -0
  692. package/documentation/dist/components/counter.md +29 -0
  693. package/documentation/dist/components/dataGrid.md +112 -0
  694. package/documentation/dist/components/dateTimePicker.md +35 -0
  695. package/documentation/dist/components/dateTimeRangePicker.md +36 -0
  696. package/documentation/dist/components/descriptions.md +35 -0
  697. package/documentation/dist/components/dialog.md +56 -0
  698. package/documentation/dist/components/divider.md +26 -0
  699. package/documentation/dist/components/drawer.md +40 -0
  700. package/documentation/dist/components/flex.md +20 -0
  701. package/documentation/dist/components/form.md +131 -0
  702. package/documentation/dist/components/formDialog.md +36 -0
  703. package/documentation/dist/components/grid.md +34 -0
  704. package/documentation/dist/components/highlight.md +26 -0
  705. package/documentation/dist/components/image.md +88 -0
  706. package/documentation/dist/components/input.md +39 -0
  707. package/documentation/dist/components/loading.md +46 -0
  708. package/documentation/dist/components/menu.md +85 -0
  709. package/documentation/dist/components/pagination.md +24 -0
  710. package/documentation/dist/guide/appComponent.md +30 -0
  711. package/documentation/dist/guide/globalMethods.md +238 -0
  712. package/documentation/dist/guide/icon.md +57 -0
  713. package/documentation/dist/guide/introduction.md +2 -0
  714. package/documentation/dist/guide/overrideProps.md +0 -0
  715. package/documentation/dist/guide/startup.md +23 -0
  716. package/documentation/dist/guide/theme.md +249 -0
  717. package/documentation/dist/index.html +13 -0
  718. package/documentation/dist/logo.png +0 -0
  719. package/extensions/curd.cjs +5 -0
  720. package/extensions/curd.d.ts +1 -1
  721. package/extensions/curd.js +1 -5
  722. package/extensions/documentViewer.cjs +5 -0
  723. package/extensions/documentViewer.d.ts +1 -1
  724. package/extensions/documentViewer.js +1 -5
  725. package/extensions/textFormatter.cjs +5 -0
  726. package/extensions/textFormatter.d.ts +1 -1
  727. package/extensions/textFormatter.js +1 -5
  728. package/package.json +34 -25
  729. package/dist/cjs/components/anchor/anchor.d.ts +0 -30
  730. package/dist/cjs/components/anchor/anchor.js +0 -100
  731. package/dist/cjs/components/anchor/index.d.ts +0 -1
  732. package/dist/cjs/components/button/button.style.b.d.ts +0 -11
  733. package/dist/cjs/components/button/button.style.b.js +0 -285
  734. package/dist/esm/components/anchor/anchor.d.ts +0 -30
  735. package/dist/esm/components/anchor/anchor.js +0 -93
  736. package/dist/esm/components/anchor/index.d.ts +0 -1
  737. package/dist/esm/components/anchor/index.js +0 -1
  738. package/dist/esm/components/button/button.style.b.d.ts +0 -11
  739. package/dist/esm/components/button/button.style.b.js +0 -280
  740. package/extensions/curd.mjs +0 -2
  741. package/extensions/documentViewer.mjs +0 -2
  742. package/extensions/textFormatter.mjs +0 -2
@@ -3,24 +3,19 @@ import { memo, useMemo } from 'react';
3
3
  import { Popper } from '../popper';
4
4
  import { InputBase } from '../inputBase';
5
5
  import { classes, colorPickerPopperStyle, style } from './colorPicker.style';
6
- import { classnames, cloneRef, colorTransfer, useControlled, useTouchRipple } from '../../utils';
6
+ import { clsx, cloneRef, colorTransfer, useControlled, useTouchRipple } from '../../utils';
7
7
  import { useTheme } from '../theme';
8
8
  import { Palette } from '../palette';
9
9
  import Color from 'color';
10
- export const ColorPicker = memo(({ inputProps, inputRef, popperProps, popperRef, size, shape = 'square', label = '自定义', presets, defaultOpen, open, onOpenChange, defaultValue, value, onChange, ...props }) => {
10
+ export const ColorPicker = memo(({ inputProps, popperProps, popperRef, size, shape = 'square', label = '自定义', presets, defaultOpen, open, onOpenChange, defaultValue, value, onChange, ...props }) => {
11
11
  const theme = useTheme();
12
12
  size ??= theme.size;
13
- const [innerOpen, setInnerOpen] = useControlled(defaultOpen, open, onOpenChange);
14
- const openChangeHandler = (open) => {
15
- popperProps?.onOpenChange?.(open);
16
- setInnerOpen(open);
17
- };
18
13
  const [innerValue, setInnerValue] = useControlled(defaultValue ?? Color(theme.colors.primary.main, 'hex'), value, onChange);
19
- return (_jsxs("div", { ...props, css: style, className: classnames(classes.root, props.className), "data-size": size, "data-shape": shape, children: [presets?.map((color, i) => {
14
+ return (_jsxs("div", { ...props, css: style, className: clsx(classes.root, props.className), "data-size": size, "data-shape": shape, children: [presets?.map((color, i) => {
20
15
  const colorInstance = Color(typeof color === 'string' ? colorTransfer(color, theme) : color);
21
16
  return (_jsx(BlockItem, { selected: colorInstance.hex() === innerValue.current.hex(), color: Color(color), onClick: () => setInnerValue(Color(color, 'hex')) }, i));
22
- }), _jsx(Popper, { css: colorPickerPopperStyle, open: innerOpen.current, trigger: ['click', 'enter'], placement: "bottomLeft", content: _jsx(Palette, { value: innerValue.current, onChange: setInnerValue }), ...popperProps, popperRef: popperRef, onOpenChange: openChangeHandler, children: _jsx(InputBase, { className: classes.inputBase, size: size, shape: shape === 'circular' ? 'rounded' : shape, children: ({ ref, ...rest }) => _jsxs(_Fragment, { children: [_jsx(BlockItem, { color: innerValue.current }), !!label &&
23
- _jsx("div", { className: classes.label, children: label }), _jsx("input", { ...rest, ...inputProps, ref: cloneRef(ref, inputRef), "data-hidden": "true" })] }) }) })] }));
17
+ }), _jsx(Popper, { css: colorPickerPopperStyle, defaultOpen: defaultOpen, open: open, onOpenChange: onOpenChange, trigger: ['click', 'enter'], placement: "bottomLeft", content: _jsx(Palette, { value: innerValue.current, onChange: setInnerValue }), ...popperProps, popperRef: popperRef, children: _jsx(InputBase, { className: classes.inputBase, size: size, shape: shape === 'circular' ? 'rounded' : shape, children: ({ ref, ...rest }) => _jsxs(_Fragment, { children: [_jsx(BlockItem, { color: innerValue.current }), !!label &&
18
+ _jsx("div", { className: classes.label, children: label }), _jsx("input", { ...rest, ...inputProps, ref: cloneRef(ref, inputProps?.ref), "data-hidden": "true" })] }) }) })] }));
24
19
  });
25
20
  function BlockItem({ color, onClick, selected }) {
26
21
  const light = useMemo(() => color.luminosity() >= .8, [color]);
@@ -28,7 +23,7 @@ function BlockItem({ color, onClick, selected }) {
28
23
  hex: color.hex(),
29
24
  alpha: color.alpha()
30
25
  }), [color]);
31
- const showRipple = useTouchRipple(light ? 'disabled' : colorObject.hex);
26
+ const showRipple = useTouchRipple(light ? 'text.disabled' : colorObject.hex);
32
27
  return (_jsx("div", { className: classes.block, "data-selected": selected, "data-light": light, onClick: e => {
33
28
  onClick?.();
34
29
  showRipple(e.currentTarget);
@@ -1,7 +1,7 @@
1
1
  import { BubbleProps } from '../bubble';
2
2
  import { ItemPropType } from '../menu';
3
+ import { ReactNode } from 'react';
3
4
  export interface ContextMenuProps extends Omit<BubbleProps, 'onClick'> {
4
- items?: ItemPropType[];
5
- onClick?(item: ItemPropType): void;
5
+ items?: (ItemPropType | ReactNode)[];
6
6
  }
7
- export declare function ContextMenu({ items, onClick, ...props }: ContextMenuProps): import("@emotion/react/jsx-runtime").JSX.Element;
7
+ export declare function ContextMenu({ items, ...props }: ContextMenuProps): import("@emotion/react/jsx-runtime").JSX.Element;
@@ -1,12 +1,14 @@
1
1
  import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
2
  import { Bubble } from '../bubble';
3
3
  import { MenuItem } from '../menuItem';
4
- export function ContextMenu({ items, onClick, ...props }) {
4
+ import { isValidElement } from 'react';
5
+ export function ContextMenu({ items, ...props }) {
5
6
  const renderItems = (items) => {
6
- return items?.map((p, i) => _jsx(MenuItem, { ...p, onClick: e => {
7
- p.onClick?.(e);
8
- onClick?.(p);
9
- }, children: renderItems(p.children) }, p.value ?? i));
7
+ return items?.map((p, i) => {
8
+ return typeof p === 'object' && p && !isValidElement(p)
9
+ ? _jsx(MenuItem, { ...p, children: renderItems(p.children) }, p.value ?? i)
10
+ : p;
11
+ });
10
12
  };
11
13
  return (_jsx(Bubble, { placement: "bottomRight", showArrow: false, ...props, trigger: "contextMenu", content: props.content ?? renderItems(items) }));
12
14
  }
@@ -1,11 +1,13 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
2
  import { memo } from 'react';
3
3
  import { classes, style } from './counter.style';
4
- import { classnames, useControlled } from '../../utils';
4
+ import { clsx, useControlled } from '../../utils';
5
5
  import { Button } from '../button';
6
- import { MinusOutlined, PlusOutlined } from '@ant-design/icons';
7
6
  import { Input } from '../input';
8
7
  import { Flex } from '../flex';
8
+ import { Icon } from '../..';
9
+ import { faMinus } from '@fortawesome/free-solid-svg-icons/faMinus';
10
+ import { faPlus } from '@fortawesome/free-solid-svg-icons/faPlus';
9
11
  export const Counter = memo(({ size, min = -Infinity, max = Infinity, step = 1, precision = 0, defaultValue = 0, value, onChange, decreaseProps, increaseProps, inputProps, ...props }) => {
10
12
  const [innerValue, setInnerValue] = useControlled(defaultValue, value, onChange);
11
13
  const commonButtonProps = {
@@ -16,14 +18,14 @@ export const Counter = memo(({ size, min = -Infinity, max = Infinity, step = 1,
16
18
  const clickHandler = (dir) => {
17
19
  setInnerValue(Math.max(min, Math.min(max, innerValue.current + dir * step)));
18
20
  };
19
- return (_jsxs(Flex, { compact: true, ...props, css: style, className: classnames(classes.root, props.className), children: [_jsx(Button, { disabled: innerValue.current <= min, ...commonButtonProps, ...decreaseProps, onClick: e => {
21
+ return (_jsxs(Flex, { compact: true, ...props, css: style, className: clsx(classes.root, props.className), children: [_jsx(Button, { disabled: innerValue.current <= min, ...commonButtonProps, ...decreaseProps, onClick: e => {
20
22
  decreaseProps?.onClick?.(e);
21
23
  clickHandler(-1);
22
- }, children: _jsx(MinusOutlined, {}) }), _jsx(Input, { type: "number", widthAdaptable: true, size: size, min: min, max: max, step: step, precision: precision, ...inputProps, className: classnames(classes.input, inputProps?.className), value: innerValue.current, onChange: e => {
24
+ }, children: _jsx(Icon, { icon: faMinus }) }), _jsx(Input, { type: "number", widthAdaptable: true, size: size, min: min, max: max, step: step, precision: precision, ...inputProps, className: clsx(classes.input, inputProps?.className), value: innerValue.current, onChange: e => {
23
25
  inputProps?.onChange?.(e);
24
26
  setInnerValue(+e.target.value);
25
27
  } }), _jsx(Button, { disabled: innerValue.current >= max, ...commonButtonProps, ...increaseProps, onClick: e => {
26
28
  increaseProps?.onClick?.(e);
27
29
  clickHandler(1);
28
- }, children: _jsx(PlusOutlined, {}) })] }));
30
+ }, children: _jsx(Icon, { icon: faPlus }) })] }));
29
31
  });
@@ -1,5 +1,5 @@
1
1
  import { ReactElement, ReactNode, Ref } from 'react';
2
- import { DIVProps, Id, Obj } from '../../types';
2
+ import { DivProps, Id, Obj } from '../../types';
3
3
  import { ColumnType, DataGridBaseProps, DataGridMultipleProps, DataGridSingleProps, OrderType, RowType } from '../dataGrid';
4
4
  import { FormItemProps, FormProps, FormRef, FormValue } from '../form';
5
5
  import { CurdFilter, CurdFilterProps } from './curdFilter';
@@ -12,7 +12,7 @@ export type CurdFormItemProps<I = any> = FormItemProps<I> & {
12
12
  order?: number;
13
13
  } & Obj;
14
14
  export type CurdFormItemType<I = any> = CurdFormItemProps<I> | ReactElement | true;
15
- export interface CurdColumn<R extends RowType = RowType> extends ColumnType<R> {
15
+ export interface CurdColumn<R extends RowType = RowType> extends Omit<ColumnType<R>, 'children'> {
16
16
  /** 在表格中隐藏,表明该列只用于filter或form */
17
17
  hideInTable?: boolean;
18
18
  filter?: CurdFormItemType | (() => CurdFormItemType);
@@ -26,7 +26,7 @@ export type LoadRowsReturn<R extends RowType> = {
26
26
  type EachRowType<R extends RowType, T> = T | ((row: R) => T);
27
27
  export interface CurdBaseProps<R extends RowType, F extends FormValue> extends DataGridBaseProps<R> {
28
28
  /** 默认属性会传递给DataGrid组件,外层包裹元素的属性使用wrapperProps */
29
- wrapperProps?: DIVProps;
29
+ wrapperProps?: DivProps;
30
30
  wrapperRef?: Ref<HTMLDivElement>;
31
31
  /** 嵌入式样式通常用于Dialog或Card组件内 */
32
32
  variant?: 'standard' | 'embeded';
@@ -3,9 +3,8 @@ import { memo, useCallback, useEffect, useMemo, useRef } from 'react';
3
3
  import { DataGrid } from '../dataGrid';
4
4
  import { CurdFilter } from './curdFilter';
5
5
  import { classes, style } from './curd.style';
6
- import { classnames, cloneRef, useControlled, useCurdColumns, useDerivedState, useLoading, useSync } from '../../utils';
6
+ import { clsx, cloneRef, useControlled, useCurdColumns, useDerivedState, useLoading, useSync } from '../../utils';
7
7
  import { Button } from '../button';
8
- import { DeleteOutlined, EditOutlined, PlusOutlined, ReloadOutlined } from '@ant-design/icons';
9
8
  import { Tooltip } from '../tooltip';
10
9
  import { CurdColumnConfig } from './curdColumnConfig';
11
10
  import { CurdResizable } from './curdResizable';
@@ -15,6 +14,11 @@ import { CurdDialog } from './curdDialog';
15
14
  import { useAppContext } from '../app';
16
15
  import { BubbleConfirm } from '../bubbleConfirm';
17
16
  import { useSelectionContext } from '../selectionContext';
17
+ import { Icon } from '../..';
18
+ import { faTrashCan } from '@fortawesome/free-regular-svg-icons/faTrashCan';
19
+ import { faPenToSquare } from '@fortawesome/free-regular-svg-icons/faPenToSquare';
20
+ import { faPlus } from '@fortawesome/free-solid-svg-icons/faPlus';
21
+ import { faRotateRight } from '@fortawesome/free-solid-svg-icons/faRotateRight';
18
22
  export const Curd = memo((props) => {
19
23
  const { wrapperProps, wrapperRef, variant = 'standard', loadRows, columns, toolbarLeft, toolbarRight, reloadable = true, onReload, resizable = true, columnConfigurable = true, filterProps, filterRef, initialFilterValue, onFilter, renderFilter, copyable, creatable = true, updatable = true, deletable = true, createButtonProps, updateButtonProps, deleteButtonProps, deleteConfirmProps, controlColumnTitle = '操作', renderExtraControl, titleKey, dataName = '', createName = '添加', updateName = '编辑', deleteName = '删除', onCreate, onUpdate, onDelete, postData, dialogProps, formProps, formRef, onChange, ...dataGridProps } = props;
20
24
  /**
@@ -56,11 +60,11 @@ export const Curd = memo((props) => {
56
60
  const _updateProps = _updatable ? (typeof updateButtonProps === 'function' ? updateButtonProps(row) : updateButtonProps) : void 0;
57
61
  const _deleteProps = _deletable ? (typeof deleteButtonProps === 'function' ? deleteButtonProps(row) : deleteButtonProps) : void 0;
58
62
  return (_jsxs("div", { className: classes.control, children: [renderExtraControl?.(row), _updatable &&
59
- _jsx(Button, { prefix: _jsx(EditOutlined, {}), variant: "plain", ..._updateProps, onClick: e => {
63
+ _jsx(Button, { prefix: _jsx(Icon, { icon: faPenToSquare }), variant: "plain", ..._updateProps, onClick: e => {
60
64
  _updateProps?.onClick?.(e);
61
65
  updateHandler(row);
62
66
  }, children: "\u7F16\u8F91" }), _deletable &&
63
- _jsx(BubbleConfirm, { title: `删除${dataName}`, content: `删除后不可恢复,确定要删除该${dataName || '数据'}吗?`, ...deleteConfirmProps, onConfirm: e => deleteHandler(row, e), children: _jsx(Button, { prefix: _jsx(DeleteOutlined, {}), variant: "plain", color: "error", ..._deleteProps, children: "\u5220\u9664" }) })] }));
67
+ _jsx(BubbleConfirm, { title: `删除${dataName}`, content: `删除后不可恢复,确定要删除该${dataName || '数据'}吗?`, ...deleteConfirmProps, onConfirm: e => deleteHandler(row, e), children: _jsx(Button, { prefix: _jsx(Icon, { icon: faTrashCan }), variant: "plain", color: "error", ..._deleteProps, children: "\u5220\u9664" }) })] }));
64
68
  }
65
69
  };
66
70
  return [...columns || [], controlColumn];
@@ -116,11 +120,11 @@ export const Curd = memo((props) => {
116
120
  }
117
121
  }, props.loading);
118
122
  useEffect(() => {
119
- innerLoadRows();
123
+ innerLoadRows().then();
120
124
  }, [innerPage.current, innerPageSize.current, innerOrderColumn.current, innerOrderType.current]);
121
125
  const reloadHandler = () => {
122
126
  onReload?.();
123
- innerLoadRows();
127
+ innerLoadRows().then();
124
128
  };
125
129
  const syncLoadRows = useSync(innerLoadRows);
126
130
  /**
@@ -132,11 +136,11 @@ export const Curd = memo((props) => {
132
136
  const createHandler = (e) => {
133
137
  createButtonProps?.onClick?.(e);
134
138
  activeRow.current = void 0;
135
- curdDialogRef.current.open();
139
+ curdDialogRef.current.open().then();
136
140
  };
137
141
  const updateHandler = (row) => {
138
142
  activeRow.current = row;
139
- curdDialogRef.current.open(row);
143
+ curdDialogRef.current.open(row).then();
140
144
  };
141
145
  const { message } = useAppContext();
142
146
  const syncProps = useSync({ dialogProps, onCreate, onUpdate });
@@ -145,8 +149,8 @@ export const Curd = memo((props) => {
145
149
  dialogProps?.onFinish?.(formValue);
146
150
  if (activeRow.current) {
147
151
  await onUpdate?.(formValue, activeRow.current);
148
- innerLoadRows();
149
- message.success(updateName + '成功');
152
+ innerLoadRows().then();
153
+ message.success(updateName + '成功').then();
150
154
  }
151
155
  else {
152
156
  await onCreate?.(formValue);
@@ -155,22 +159,22 @@ export const Curd = memo((props) => {
155
159
  setInnerPage(1);
156
160
  }
157
161
  else {
158
- innerLoadRows();
162
+ innerLoadRows().then();
159
163
  }
160
- message.success(createName + '成功');
164
+ message.success(createName + '成功').then();
161
165
  }
162
166
  }, []);
163
167
  const deleteHandler = async (row, e) => {
164
168
  deleteConfirmProps?.onConfirm?.(e);
165
169
  await onDelete?.(row);
166
- innerLoadRows();
167
- message.success(deleteName + '成功');
170
+ innerLoadRows().then();
171
+ message.success(deleteName + '成功').then();
168
172
  };
169
- return (_jsxs("div", { ...wrapperProps, ref: wrapperRef, css: style, className: classnames(classes.root, wrapperProps?.className), "data-variant": variant, children: [renderFilterFn(), (creatable || toolbarLeft || toolbarRight || reloadable || resizable || columnConfigurable) &&
173
+ return (_jsxs("div", { ...wrapperProps, ref: wrapperRef, css: style, className: clsx(classes.root, wrapperProps?.className), "data-variant": variant, children: [renderFilterFn(), (creatable || toolbarLeft || toolbarRight || reloadable || resizable || columnConfigurable) &&
170
174
  _jsxs("div", { className: classes.toolbar, children: [_jsxs("div", { className: classes.toolbarLeft, children: [creatable &&
171
- _jsxs(Button, { prefix: _jsx(PlusOutlined, {}), ...createButtonProps, onClick: createHandler, children: [createName, dataName] }), toolbarLeft] }), _jsxs("div", { className: classes.toolbarRight, children: [!!toolbarRight &&
175
+ _jsxs(Button, { prefix: _jsx(Icon, { icon: faPlus }), ...createButtonProps, onClick: createHandler, children: [createName, dataName] }), toolbarLeft] }), _jsxs("div", { className: classes.toolbarRight, children: [!!toolbarRight &&
172
176
  _jsxs(_Fragment, { children: [toolbarRight, _jsx(Divider, { className: classes.divider, orientation: "vertical" })] }), reloadable &&
173
- _jsx(Tooltip, { title: "\u5237\u65B0", children: _jsx(Button, { shape: "circular", variant: "text", color: "text", prefix: _jsx(ReloadOutlined, {}), loading: innerLoading.current, onClick: reloadHandler }) }), resizable &&
177
+ _jsx(Tooltip, { title: "\u5237\u65B0", children: _jsx(Button, { shape: "circular", variant: "text", color: "text", prefix: _jsx(Icon, { icon: faRotateRight }), loading: innerLoading.current, onClick: reloadHandler }) }), resizable &&
174
178
  _jsx(CurdResizable, { innerSize: innerSize.current, setInnerSize: setInnerSize }), columnConfigurable &&
175
179
  _jsx(CurdColumnConfig, { columns: orderedColumns, innerVisible: innerVisible.current, setInnerVisible: setInnerVisible, setInnerOrder: setInnerOrder })] })] }), _jsx("div", { className: classes.card, children: _jsx(DataGrid, { ...dataGridProps, columns: actualColumns, tableProps: {
176
180
  ...props.tableProps,
@@ -1,7 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
2
  import { memo, useMemo } from 'react';
3
3
  import { Button } from '../button';
4
- import { SettingOutlined } from '@ant-design/icons';
5
4
  import { Bubble } from '../bubble';
6
5
  import { classes, style } from './curdColumnConfig.style';
7
6
  import { MenuItem } from '../menuItem';
@@ -10,6 +9,8 @@ import { SortableItem } from '../sortableItem';
10
9
  import { DndContext } from '@dnd-kit/core';
11
10
  import { SortableContext } from '@dnd-kit/sortable';
12
11
  import { isUnset, onDndDragEnd, useDndSensors } from '../../utils';
12
+ import { Icon } from '../..';
13
+ import { faGear } from '@fortawesome/free-solid-svg-icons/faGear';
13
14
  export const CurdColumnConfig = memo(({ columns = [], innerVisible, setInnerVisible, setInnerOrder, }) => {
14
15
  const dragEndHandler = (e) => {
15
16
  const newColumns = onDndDragEnd(e, columns, '_key');
@@ -23,5 +24,5 @@ export const CurdColumnConfig = memo(({ columns = [], innerVisible, setInnerVisi
23
24
  ? [...o, key]
24
25
  : o.filter(k => k !== key));
25
26
  };
26
- return (_jsx(Bubble, { css: style, placement: "bottomRight", content: _jsx(DndContext, { sensors: useDndSensors(), onDragEnd: dragEndHandler, children: _jsx(SortableContext, { items: columns?.map((col, i) => col._key ?? i), children: _jsxs("div", { className: classes.content, children: [_jsx("div", { className: classes.title, children: "\u5217\u8BBE\u7F6E" }), columns?.map((col, i) => _jsx(SortableItem, { id: col._key ?? i, component: MenuItem, className: classes.item, prefix: _jsx(Checkbox, { className: classes.checkbox, checked: !isUnset(col._key) && visibleSet.has(col._key), onChange: e => !isUnset(col._key) && toggleVisible(col._key, e.target.checked) }), label: col.title }, col._key ?? i))] }) }) }), children: _jsx(Button, { shape: "circular", variant: "text", color: "text", children: _jsx(SettingOutlined, {}) }) }));
27
+ return (_jsx(Bubble, { css: style, placement: "bottomRight", content: _jsx(DndContext, { sensors: useDndSensors(), onDragEnd: dragEndHandler, children: _jsx(SortableContext, { items: columns?.map((col, i) => col._key ?? i), children: _jsxs("div", { className: classes.content, children: [_jsx("div", { className: classes.title, children: "\u5217\u8BBE\u7F6E" }), columns?.map((col, i) => _jsx(SortableItem, { id: col._key ?? i, component: MenuItem, className: classes.item, prefix: _jsx(Checkbox, { className: classes.checkbox, checked: !isUnset(col._key) && visibleSet.has(col._key), onChange: e => !isUnset(col._key) && toggleVisible(col._key, e.target.checked) }), label: col.title }, col._key ?? i))] }) }) }), children: _jsx(Button, { shape: "circular", variant: "text", color: "text", children: _jsx(Icon, { icon: faGear }) }) }));
27
28
  });
@@ -6,9 +6,10 @@ import { Curd } from './curd';
6
6
  import { cloneRef, columnsToFormItem, isUnset, useControlled, useLoading } from '../../utils';
7
7
  import { Loading } from '../loading';
8
8
  import { Button } from '../button';
9
- import { CopyOutlined } from '@ant-design/icons';
10
9
  import { classes, dialogStyle } from './curd.style';
11
10
  import { PickerDialog } from '../pickerDialog';
11
+ import { Icon } from '../..';
12
+ import { faCopy } from '@fortawesome/free-regular-svg-icons/faCopy';
12
13
  export const CurdDialog = memo(({ ref, onFinish,
13
14
  // 继承来的属性
14
15
  curdProps, ...props }) => {
@@ -18,19 +19,17 @@ curdProps, ...props }) => {
18
19
  * ref与promise部分
19
20
  */
20
21
  const innerFormRef = useRef(null);
21
- const resolveFn = useRef(void 0);
22
- const rejectFn = useRef(void 0);
22
+ const resolvers = useRef(void 0);
23
23
  const [innerOpen, setInnerOpen] = useControlled(props.defaultOpen, props.open);
24
24
  const closeHandler = (reason) => {
25
25
  if (reason === 'confirmed') {
26
26
  return;
27
27
  }
28
28
  props.onClose?.(reason);
29
- rejectFn.current?.({
29
+ resolvers.current?.reject({
30
30
  type: 'canceled',
31
31
  value: innerFormRef.current.getFormValue()
32
32
  });
33
- resolveFn.current = rejectFn.current = void 0;
34
33
  setInnerOpen(false);
35
34
  };
36
35
  useImperativeHandle(ref, () => ({
@@ -38,10 +37,8 @@ curdProps, ...props }) => {
38
37
  innerFormRef.current?.resetForm();
39
38
  setInnerOpen(true);
40
39
  setActiveRow(row);
41
- return new Promise((resolve, reject) => {
42
- resolveFn.current = resolve;
43
- rejectFn.current = reject;
44
- });
40
+ const { promise } = resolvers.current = Promise.withResolvers();
41
+ return promise;
45
42
  }
46
43
  }));
47
44
  /**
@@ -63,12 +60,12 @@ curdProps, ...props }) => {
63
60
  * ----------------------------------------------------------------
64
61
  * 结果处理与loading
65
62
  */
66
- const confirmHandler = () => {
67
- innerFormRef.current.submit();
63
+ const confirmHandler = async () => {
64
+ await innerFormRef.current.submit();
68
65
  };
69
66
  const [innerLoading, finishHandler] = useLoading(async (value) => {
70
67
  formProps?.onFinish?.(value);
71
- resolveFn.current?.(value);
68
+ resolvers.current?.resolve(value);
72
69
  await onFinish?.(value);
73
70
  setInnerOpen(false);
74
71
  }, props.confirmLoading);
@@ -90,6 +87,6 @@ curdProps, ...props }) => {
90
87
  return (_jsxs(Dialog, { css: dialogStyle, width: 600, title: activeRow
91
88
  ? `${updateName}${dataName}${rowTitle ? ' - ' + rowTitle : ''}`
92
89
  : _jsxs("div", { className: classes.dialogTitle, children: [_jsxs("span", { children: [createName, dataName] }), copyable &&
93
- _jsxs(Button, { variant: "plain", prefix: _jsx(CopyOutlined, {}), onClick: () => pickerDialogRef.current.open(), children: ["\u4ECE\u5DF2\u6709", dataName || '数据', "\u590D\u5236"] })] }), ...props, open: innerOpen.current, onClose: closeHandler, onConfirm: confirmHandler, confirmLoading: innerLoading.current, children: [_jsx(Loading, { loading: transforming.current, children: _jsx(Form, { labelWidth: "20%", ...formProps, ref: cloneRef(formRef, innerFormRef), onFinish: finishHandler, children: renderedFormItems }) }), copyable &&
90
+ _jsxs(Button, { variant: "plain", prefix: _jsx(Icon, { icon: faCopy }), onClick: () => pickerDialogRef.current.open(), children: ["\u4ECE\u5DF2\u6709", dataName || '数据', "\u590D\u5236"] })] }), ...props, open: innerOpen.current, onClose: closeHandler, onConfirm: confirmHandler, confirmLoading: innerLoading.current, children: [_jsx(Loading, { open: transforming.current, children: _jsx(Form, { labelWidth: "20%", ...formProps, ref: cloneRef(formRef, innerFormRef), onFinish: finishHandler, children: renderedFormItems }) }), copyable &&
94
91
  _jsx(PickerDialog, { ref: pickerDialogRef, onToggle: copiedHandler, children: _jsx(Curd, { ...curdProps, variant: "embeded", copyable: false, creatable: false, updatable: false, deletable: false }) })] }));
95
92
  });
@@ -2,12 +2,14 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@emotion/reac
2
2
  import { isValidElement, memo, useMemo, useRef, useState } from 'react';
3
3
  import { Form, FormItem } from '../form';
4
4
  import { classes } from './curd.style';
5
- import { classnames, cloneRef, columnsToFilterItem } from '../../utils';
5
+ import { clsx, cloneRef, columnsToFilterItem } from '../../utils';
6
6
  import { Grid } from '../grid';
7
7
  import { Button } from '../button';
8
- import { DownOutlined, FilterOutlined } from '@ant-design/icons';
9
8
  import { Collapse } from '../transitionBase';
10
9
  import { useTheme } from '../theme';
10
+ import { Icon } from '../..';
11
+ import { faChevronDown } from '@fortawesome/free-solid-svg-icons/faChevronDown';
12
+ import { faFilter } from '@fortawesome/free-solid-svg-icons/faFilter';
11
13
  export const CurdFilter = memo(({ ref, columns, expandable, showButton, renderConditions, buttonProps, onFilter, columnCount = 3, ...props }) => {
12
14
  const { spacing } = useTheme();
13
15
  const items = useMemo(() => {
@@ -43,12 +45,12 @@ export const CurdFilter = memo(({ ref, columns, expandable, showButton, renderCo
43
45
  * 已生效的筛选条件
44
46
  */
45
47
  const [filteredConditions, setFilteredConditions] = useState({});
46
- return (_jsxs(_Fragment, { children: [_jsx(Form, { ...props, ref: cloneRef(ref, formRef), className: classnames(classes.filter, props.className), columnCount: columnCount, variant: "plain", onChange: changeHandler, children: !!items?.length &&
48
+ return (_jsxs(_Fragment, { children: [_jsx(Form, { ...props, ref: cloneRef(ref, formRef), className: clsx(classes.filter, props.className), columnCount: columnCount, variant: "plain", onChange: changeHandler, children: !!items?.length &&
47
49
  _jsxs(_Fragment, { children: [expandable
48
50
  ? _jsx(Collapse, { className: classes.filterGridContainer, in: expanded, collapsedSize: () => firstItemRef.current?.offsetHeight || 56, appear: false, children: renderedGrid })
49
51
  : renderedGrid, (expandable || showButton) &&
50
52
  _jsxs("div", { className: classes.filterControl, children: [expandable &&
51
- _jsx(Button, { variant: "text", suffix: _jsx(DownOutlined, { style: { rotate: expanded ? '180deg' : void 0 } }), onClick: () => setExpanded(o => !o), children: expanded ? '收起' : '展开' }), showButton &&
52
- _jsx(Button, { prefix: _jsx(FilterOutlined, {}), variant: "outlined", ...buttonProps, onClick: clickHandler, children: buttonProps?.children ?? '筛选' })] })] }) }), !!renderConditions &&
53
+ _jsx(Button, { variant: "text", suffix: _jsx(Icon, { icon: faChevronDown, style: { rotate: expanded ? '180deg' : void 0 } }), onClick: () => setExpanded(o => !o), children: expanded ? '收起' : '展开' }), showButton &&
54
+ _jsx(Button, { prefix: _jsx(Icon, { icon: faFilter }), variant: "outlined", ...buttonProps, onClick: clickHandler, children: buttonProps?.children ?? '筛选' })] })] }) }), !!renderConditions &&
53
55
  _jsxs("div", { className: classes.filtered, children: [_jsx("div", { className: classes.filteredTitle, children: "\u5DF2\u7B5B\u9009\uFF1A" }), renderConditions(filteredConditions, formRef.current)] })] }));
54
56
  });
@@ -4,7 +4,8 @@ import { Tooltip } from '../tooltip';
4
4
  import { Bubble } from '../bubble';
5
5
  import { MenuItem } from '../menuItem';
6
6
  import { Button } from '../button';
7
- import { ColumnHeightOutlined } from '@ant-design/icons';
7
+ import { Icon } from '../..';
8
+ import { faArrowsUpDown } from '@fortawesome/free-solid-svg-icons/faArrowsUpDown';
8
9
  export const CurdResizable = memo(({ innerSize, setInnerSize }) => {
9
- return (_jsx(Tooltip, { title: "\u8868\u683C\u5C3A\u5BF8", children: _jsx(Bubble, { placement: "bottom", content: _jsxs(_Fragment, { children: [_jsx(MenuItem, { value: "small", label: "\u5C0F", selected: innerSize === 'small', onClick: () => setInnerSize('small') }), _jsx(MenuItem, { value: "medium", label: "\u4E2D", selected: innerSize === 'medium', onClick: () => setInnerSize('medium') }), _jsx(MenuItem, { value: "large", label: "\u5927", selected: innerSize === 'large', onClick: () => setInnerSize('large') })] }), children: _jsx(Button, { shape: "circular", variant: "text", color: "text", children: _jsx(ColumnHeightOutlined, {}) }) }) }));
10
+ return (_jsx(Tooltip, { title: "\u8868\u683C\u5C3A\u5BF8", children: _jsx(Bubble, { placement: "bottom", content: _jsxs(_Fragment, { children: [_jsx(MenuItem, { value: "small", label: "\u5C0F", selected: innerSize === 'small', onClick: () => setInnerSize('small') }), _jsx(MenuItem, { value: "medium", label: "\u4E2D", selected: innerSize === 'medium', onClick: () => setInnerSize('medium') }), _jsx(MenuItem, { value: "large", label: "\u5927", selected: innerSize === 'large', onClick: () => setInnerSize('large') })] }), children: _jsx(Button, { shape: "circular", variant: "text", color: "text", children: _jsx(Icon, { icon: faArrowsUpDown }) }) }) }));
10
11
  });
@@ -0,0 +1,10 @@
1
+ import { ThCellProps } from '../table';
2
+ import { ComponentType, ReactNode, RefObject } from 'react';
3
+ export declare function ColumnResizeContext({ columnResizable, children }: {
4
+ columnResizable: boolean;
5
+ children(ref: {
6
+ scrollerRef: RefObject<HTMLDivElement | null>;
7
+ tableRef: RefObject<HTMLTableElement | null>;
8
+ }): ReactNode;
9
+ }): import("@emotion/react/jsx-runtime").JSX.Element;
10
+ export declare function useRenderHead<T extends ReactNode>(render: (Column: ComponentType<ThCellProps>) => T): T;
@@ -0,0 +1,66 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
+ import { ThCell } from '../table';
3
+ import { createContext, useContext, useRef } from 'react';
4
+ import { classes } from './dataGrid.style';
5
+ import { useDraggableHandle } from '../../utils';
6
+ const ColumnResizeContextProvider = createContext({
7
+ columnResizable: false,
8
+ columnRefs: { current: [] },
9
+ scrollToEnd() {
10
+ }
11
+ });
12
+ export function ColumnResizeContext({ columnResizable, children }) {
13
+ const scrollerRef = useRef(null);
14
+ const tableRef = useRef(null);
15
+ const columnRefs = useRef([]);
16
+ const scrollToEnd = () => {
17
+ scrollerRef.current.scrollLeft = scrollerRef.current.scrollWidth;
18
+ };
19
+ return (_jsx(ColumnResizeContextProvider, { value: { columnResizable, columnRefs, scrollToEnd }, children: children({ scrollerRef, tableRef }) }));
20
+ }
21
+ export function useRenderHead(render) {
22
+ const { columnRefs } = useContext(ColumnResizeContextProvider);
23
+ columnRefs.current = [];
24
+ return render(ResizableColumn);
25
+ }
26
+ function ResizableColumn(props) {
27
+ const { columnResizable, columnRefs, scrollToEnd } = useContext(ColumnResizeContextProvider);
28
+ const cellRef = useRef(null);
29
+ const findNext = () => {
30
+ const index = columnRefs.current.indexOf(cellRef.current);
31
+ let next = columnRefs.current[index + 1];
32
+ if (next?.classList.contains(classes.selectable)) {
33
+ next = columnRefs.current[index + 2];
34
+ }
35
+ return next;
36
+ };
37
+ const draggableHandle = useDraggableHandle({
38
+ onDragStart(e) {
39
+ const next = findNext();
40
+ return {
41
+ startX: e.clientX,
42
+ selfStartWidth: cellRef.current.offsetWidth,
43
+ nextStartWidth: next?.offsetWidth
44
+ };
45
+ },
46
+ onDrag({ deltaX, startData }) {
47
+ const next = findNext();
48
+ cellRef.current.style.width = startData.selfStartWidth + deltaX + 'px';
49
+ if (next) {
50
+ next.style.width = startData.nextStartWidth - deltaX + 'px';
51
+ }
52
+ else {
53
+ scrollToEnd();
54
+ }
55
+ }
56
+ });
57
+ if (!columnResizable) {
58
+ return _jsx(ThCell, { ...props });
59
+ }
60
+ return (_jsxs(ThCell, { ...props, ref: r => {
61
+ if (r) {
62
+ columnRefs.current.push(r);
63
+ cellRef.current = r;
64
+ }
65
+ }, children: [props.children, _jsx("div", { className: classes.resizeHandle, ...draggableHandle })] }));
66
+ }
@@ -1,50 +1,47 @@
1
- import React, { ReactElement, ReactNode } from 'react';
2
- import { DIVProps, Id, Obj } from '../../types';
3
- import { FieldPath } from '../../utils';
4
- import { TableProps } from '../table';
5
- import { PaginationProps } from '../pagination';
1
+ import { JSX, ReactElement, ReactNode } from 'react';
2
+ import { DivProps, Id, Obj, ToRequired } from '../../types';
6
3
  import { SelectionContextProps } from '../selectionContext';
4
+ import { PaginationProps } from '../pagination';
5
+ import { TableProps } from '../table';
7
6
  import { CheckboxProps } from '../checkbox';
8
7
  import { RadioProps } from '../radio';
8
+ import { FieldPath } from '../../utils';
9
9
  export type RowType = Obj;
10
- export interface ColumnType<R extends RowType = RowType> extends Omit<React.JSX.IntrinsicElements['td'], 'key' | 'ref' | 'title' | 'children'>, Omit<React.JSX.IntrinsicElements['th'], 'key' | 'ref' | 'title' | 'children'> {
10
+ export type OrderType = 'ascend' | 'descend';
11
+ export interface ColumnType<R extends RowType = RowType> extends Omit<JSX.IntrinsicElements['td'], 'key' | 'ref' | 'title' | 'children'>, Omit<JSX.IntrinsicElements['th'], 'key' | 'ref' | 'title' | 'children'> {
11
12
  title?: ReactNode;
12
13
  /** 若不指定key,默认使用{@link field}作为key */
13
14
  key?: string | number;
14
- /** 是否将列黏性固定在左侧,若指定number|string类型,表示left的值 */
15
- stickyLeft?: boolean | number | string;
16
- /** 是否将列黏性固定在右侧,若指定number|string类型,表示right的值 */
17
- stickyRight?: boolean | number | string;
18
15
  children?: ColumnType<R>[];
16
+ /** 是否将列固定在左侧或右侧 */
17
+ sticky?: 'left' | 'right';
19
18
  /** 指定children后,下列属性均不生效 */
20
19
  field?: FieldPath;
21
20
  render?(row: R, index?: number, rows?: R[]): ReactNode;
22
21
  /** 指定为true时表示使用服务端排序,组件只做样式处理,不做数据排序处理;本地排序需指定 “正序” 的排序方法,倒序会自动处理 */
23
22
  sorter?: boolean | ((a: R, b: R) => number);
24
- /** @private 内部使用 */
23
+ /** @private 内部使用,在{@link useDataGridColumns}内赋值 */
25
24
  _key?: string | number;
26
- /** @private 内部使用 */
27
- _colSpan?: number;
28
- /** @private 内部使用 */
25
+ /** @private 内部使用,在{@link DataGridHead}内计算 */
29
26
  _negativeRowSpan?: number;
30
27
  }
31
28
  type DataGridSharedProps<R extends RowType> = {
32
- /** 数据的主键名,默认为"id" */
29
+ rowProps?(row: R, index: number, rows: R[]): JSX.IntrinsicElements['tr'];
30
+ /** 数据的主键名,默认为`id` */
33
31
  primaryKey?: keyof R;
34
32
  /**
35
- * 当数据中存在该字段,则会渲染可展开的子行;
36
- * children允许的值类型 @type {R[] | ReactNode | ((parent: R, expanded: boolean) => ReactNode)}
33
+ * 当数据中存在该字段,则会渲染可展开的子行,默认为`null`表示不使用子行功能,
34
+ * children允许的值类型:
35
+ * @types {R[] | ReactNode | ((parent: R, expanded: boolean) => ReactNode)}
37
36
  */
38
- childrenKey?: keyof R;
37
+ childrenKey?: keyof R | null;
38
+ /** 点击行时是否触发选中,默认为`true` */
39
+ clickRowToSelect?: boolean;
40
+ /** 子行缩进,默认为`24` */
39
41
  indent?: number;
40
42
  renderExpandIcon?(key: Id, isExpand: boolean, expanded: Id[]): ReactNode;
41
- rowProps?(row: R, index: number, rows: R[]): React.JSX.IntrinsicElements['tr'];
42
- /** 点击行时是否触发选中,默认为true */
43
- clickRowToSelect?: boolean;
44
- selectorProps?(row: R, index: number, rows: R[]): CheckboxProps | RadioProps;
45
43
  };
46
- export type OrderType = 'ascend' | 'descend';
47
- export interface DataGridBaseProps<R extends RowType> extends DataGridSharedProps<R>, Omit<DIVProps, 'defaultValue' | 'onChange'> {
44
+ export interface DataGridBaseProps<R extends RowType> extends DataGridSharedProps<R>, Omit<DivProps, 'defaultValue' | 'onChange'> {
48
45
  columns?: (ColumnType<R> | symbol)[];
49
46
  rows?: R[];
50
47
  defaultOrderColumn?: Id;
@@ -55,25 +52,30 @@ export interface DataGridBaseProps<R extends RowType> extends DataGridSharedProp
55
52
  selectable?: boolean;
56
53
  /**
57
54
  * 行之间的关系
58
- * @enum {"dependent"}:会自动判断子父行的选中关系。
59
- * @enum {"standalone"}:所有行相互独立
55
+ * @enum {'dependent'}:会自动判断子父行的选中关系。
56
+ * @enum {'standalone'}:所有行相互独立
60
57
  * 默认为"dependent"
61
58
  */
62
59
  relation?: SelectionContextProps<R>['relation'];
63
60
  integration?: SelectionContextProps<R>['integration'];
64
61
  /** 是否允许全选,默认为true */
65
62
  allowSelectAll?: boolean;
63
+ selectorProps?(row: R, index: number, rows: R[]): CheckboxProps | RadioProps;
66
64
  defaultExpanded?: Id[];
67
65
  expanded?: Id[];
68
66
  onExpandedChange?(expanded: Id[], key: Id, isExpand: boolean): void;
69
- loading?: boolean;
70
67
  /** 是否内置翻页,默认为true */
71
68
  paginatable?: boolean;
72
69
  paginationProps?: PaginationProps;
73
70
  renderPagination?(props: PaginationProps): ReactNode;
71
+ loading?: boolean;
72
+ emptyPlaceholder?: ReactNode;
73
+ /** 是否可以拖拽调整列宽,默认为`false`,开启此功能后表头分组功能将失效 */
74
+ columnResizable?: boolean;
74
75
  /** 传递给<Table />的属性 */
75
- bordered?: boolean;
76
- striped?: boolean;
76
+ size?: TableProps['size'];
77
+ bordered?: TableProps['bordered'];
78
+ striped?: TableProps['striped'];
77
79
  tableProps?: TableProps;
78
80
  }
79
81
  export interface DataGridSingleProps<R extends RowType, V extends Id = Id> extends DataGridBaseProps<R> {
@@ -89,34 +91,12 @@ export interface DataGridMultipleProps<R extends RowType, V extends Id = Id> ext
89
91
  onChange?(value: V[]): void;
90
92
  }
91
93
  export type DataGridProps<R extends RowType, V extends Id = Id> = DataGridSingleProps<R, V> | DataGridMultipleProps<R, V>;
92
- export interface DataGridContext<R extends RowType> extends DataGridSharedProps<R> {
93
- flattedColumns?: (ColumnType<R> | symbol)[];
94
- expandedSet?: Set<Id>;
95
- toggleExpanded?(key: Id): void;
96
- multiple?: boolean;
97
- innerValue?: Id | Id[];
98
- toggleSelected?(key: Id): void;
99
- }
100
- export declare function useDataGridContext(): {
101
- flattedColumns?: (symbol | ColumnType<RowType>)[] | undefined;
102
- toggleExpanded?(key: Id): void;
103
- multiple?: boolean;
104
- innerValue?: Id | Id[];
105
- toggleSelected?(key: Id): void;
106
- /**
107
- * 当数据中存在该字段,则会渲染可展开的子行;
108
- * children允许的值类型 @type {R[] | ReactNode | ((parent: R, expanded: boolean) => ReactNode)}
109
- */
110
- childrenKey?: keyof RowType | undefined;
111
- renderExpandIcon?(key: Id, isExpand: boolean, expanded: Id[]): ReactNode;
112
- rowProps?(row: RowType, index: number, rows: RowType[]): React.JSX.IntrinsicElements["tr"];
113
- /** 点击行时是否触发选中,默认为true */
114
- clickRowToSelect?: boolean;
115
- selectorProps?(row: RowType, index: number, rows: RowType[]): CheckboxProps | RadioProps;
116
- primaryKey: keyof RowType;
117
- indent: number;
94
+ interface IDataGridContext<R extends RowType> extends ToRequired<DataGridSharedProps<R>, 'primaryKey' | 'childrenKey' | 'clickRowToSelect' | 'indent'> {
118
95
  expandedSet: Set<Id>;
119
- };
96
+ flattedColumns: (symbol | ColumnType<R>)[] | undefined;
97
+ toggleExpanded(key: Id): void;
98
+ }
99
+ export declare function useDataGridContext<R extends RowType>(): IDataGridContext<R>;
120
100
  export declare const DataGrid: {
121
101
  <R extends RowType, V extends Id = Id>(props: DataGridProps<R, V>): ReactElement;
122
102
  EXPAND_COLUMN: symbol;