@lemon-fe/kits 1.0.0-14 → 1.0.0-141

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 (314) hide show
  1. package/README.md +5 -0
  2. package/es/components/Actions/index.d.ts +8 -5
  3. package/es/components/Actions/index.js +47 -30
  4. package/es/components/Actions/index.less +5 -4
  5. package/es/components/Alert/index.d.ts +3 -0
  6. package/es/components/Alert/index.js +23 -0
  7. package/es/components/BaseTable/Actions.js +2 -2
  8. package/es/components/BaseTable/VirtualBody.js +2 -2
  9. package/es/components/BaseTable/index.js +2 -2
  10. package/es/components/BaseTable/utils.d.ts +1 -1
  11. package/es/components/DataGrid/cell-editors/Date.d.ts +7 -3
  12. package/es/components/DataGrid/cell-editors/Date.js +42 -26
  13. package/es/components/DataGrid/cell-editors/Number.d.ts +15 -6
  14. package/es/components/DataGrid/cell-editors/Number.js +92 -42
  15. package/es/components/DataGrid/cell-editors/Row.d.ts +23 -0
  16. package/es/components/DataGrid/cell-editors/Row.js +146 -0
  17. package/es/components/DataGrid/cell-editors/Select.d.ts +29 -3
  18. package/es/components/DataGrid/cell-editors/Select.js +82 -30
  19. package/es/components/DataGrid/cell-editors/Text.d.ts +8 -3
  20. package/es/components/DataGrid/cell-editors/Text.js +56 -20
  21. package/es/components/DataGrid/cell-editors/Wrapper.d.ts +2 -1
  22. package/es/components/DataGrid/cell-editors/Wrapper.js +4 -2
  23. package/es/components/DataGrid/cell-editors/utils.d.ts +9 -0
  24. package/es/components/DataGrid/cell-editors/utils.js +56 -1
  25. package/es/components/DataGrid/components/Selected.d.ts +7 -0
  26. package/es/components/DataGrid/components/Selected.js +32 -0
  27. package/es/components/DataGrid/context/GridStore.d.ts +4 -0
  28. package/es/components/DataGrid/context/GridStore.js +4 -0
  29. package/es/components/DataGrid/hooks.d.ts +18 -0
  30. package/es/components/DataGrid/hooks.js +46 -3
  31. package/es/components/DataGrid/index.d.ts +44 -23
  32. package/es/components/DataGrid/index.js +592 -337
  33. package/es/components/DataGrid/index.less +121 -34
  34. package/es/components/DataGrid/modules/clipboard/clipboard/clipboardService.d.ts +60 -60
  35. package/es/components/DataGrid/modules/clipboard/clipboard/clipboardService.js +359 -69
  36. package/es/components/DataGrid/modules/clipboard/clipboardModule.d.ts +2 -7
  37. package/es/components/DataGrid/modules/clipboard/clipboardModule.js +4 -2
  38. package/es/components/DataGrid/modules/clipboard/main.d.ts +1 -0
  39. package/es/components/DataGrid/modules/clipboard/version.d.ts +1 -0
  40. package/es/components/DataGrid/modules/clipboard/version.js +2 -0
  41. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/columnModelItem.d.ts +24 -30
  42. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/columnModelItem.js +1 -1
  43. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/columnToolPanel.d.ts +30 -49
  44. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/columnToolPanel.js +7 -7
  45. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/modelItemUtils.d.ts +14 -18
  46. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/modelItemUtils.js +7 -7
  47. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/pivotModePanel.d.ts +7 -7
  48. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/pivotModePanel.js +8 -8
  49. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsHeaderPanel.d.ts +28 -28
  50. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsHeaderPanel.js +17 -17
  51. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsListPanel.d.ts +42 -47
  52. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsListPanel.js +8 -8
  53. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsListPanelItemDragFeature.d.ts +24 -24
  54. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsListPanelItemDragFeature.js +6 -6
  55. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsPanel.d.ts +23 -31
  56. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/primaryColsPanel.js +9 -16
  57. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelColumnComp.d.ts +35 -41
  58. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelColumnComp.js +18 -18
  59. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelColumnGroupComp.d.ts +49 -60
  60. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelColumnGroupComp.js +21 -20
  61. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelContextMenu.d.ts +22 -22
  62. package/es/components/DataGrid/modules/column-tool-panel/columnToolPanel/toolPanelContextMenu.js +16 -16
  63. package/es/components/DataGrid/modules/column-tool-panel/columnsToolPanelModule.d.ts +2 -24
  64. package/es/components/DataGrid/modules/column-tool-panel/columnsToolPanelModule.js +8 -3
  65. package/es/components/DataGrid/modules/column-tool-panel/main.d.ts +2 -0
  66. package/es/components/DataGrid/modules/column-tool-panel/version.d.ts +1 -0
  67. package/es/components/DataGrid/modules/column-tool-panel/version.js +2 -0
  68. package/es/components/DataGrid/modules/master-detail/main.d.ts +1 -0
  69. package/es/components/DataGrid/modules/master-detail/main.js +1 -0
  70. package/es/components/DataGrid/modules/master-detail/masterDetail/detailCellRenderer.d.ts +14 -0
  71. package/es/components/DataGrid/modules/master-detail/masterDetail/detailCellRenderer.js +170 -0
  72. package/es/components/DataGrid/modules/master-detail/masterDetail/detailCellRendererCtrl.d.ts +19 -0
  73. package/es/components/DataGrid/modules/master-detail/masterDetail/detailCellRendererCtrl.js +245 -0
  74. package/es/components/DataGrid/modules/master-detail/masterDetailModule.d.ts +2 -0
  75. package/es/components/DataGrid/modules/master-detail/masterDetailModule.js +18 -0
  76. package/es/components/DataGrid/modules/master-detail/version.d.ts +1 -0
  77. package/es/components/DataGrid/modules/master-detail/version.js +2 -0
  78. package/es/components/DataGrid/modules/menu/menu/chartMenuItemMapper.d.ts +13 -0
  79. package/es/components/DataGrid/modules/menu/menu/chartMenuItemMapper.js +417 -0
  80. package/es/components/DataGrid/modules/menu/menu/contextMenu.d.ts +11 -24
  81. package/es/components/DataGrid/modules/menu/menu/contextMenu.js +32 -25
  82. package/es/components/DataGrid/modules/menu/menu/enterpriseMenu.d.ts +60 -79
  83. package/es/components/DataGrid/modules/menu/menu/enterpriseMenu.js +182 -129
  84. package/es/components/DataGrid/modules/menu/menu/menuItemMapper.d.ts +10 -12
  85. package/es/components/DataGrid/modules/menu/menu/menuItemMapper.js +81 -249
  86. package/es/components/DataGrid/modules/menu/menuModule.d.ts +2 -8
  87. package/es/components/DataGrid/modules/menu/menuModule.js +6 -2
  88. package/es/components/DataGrid/modules/menu/version.d.ts +1 -0
  89. package/es/components/DataGrid/modules/menu/version.js +2 -0
  90. package/es/components/DataGrid/modules/row-grouping/main.d.ts +4 -0
  91. package/es/components/DataGrid/modules/row-grouping/rowGrouping/aggFuncService.js +1 -1
  92. package/es/components/DataGrid/modules/row-grouping/rowGrouping/aggregationStage.d.ts +3 -1
  93. package/es/components/DataGrid/modules/row-grouping/rowGrouping/aggregationStage.js +30 -12
  94. package/es/components/DataGrid/modules/row-grouping/rowGrouping/batchRemover.d.ts +2 -0
  95. package/es/components/DataGrid/modules/row-grouping/rowGrouping/batchRemover.js +12 -0
  96. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/baseDropZonePanel.d.ts +2 -2
  97. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/baseDropZonePanel.js +12 -10
  98. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/dropZoneColumnComp.js +20 -21
  99. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/gridHeaderDropZones.js +5 -5
  100. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/pivotDropZonePanel.js +7 -7
  101. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/rowGroupDropZonePanel.js +6 -6
  102. package/es/components/DataGrid/modules/row-grouping/rowGrouping/columnDropZones/valueDropZonePanel.js +6 -6
  103. package/es/components/DataGrid/modules/row-grouping/rowGrouping/filterAggregatesStage.js +2 -2
  104. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupFilter/groupFilter.d.ts +39 -0
  105. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupFilter/groupFilter.js +395 -0
  106. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupFilter/groupFloatingFilter.d.ts +23 -0
  107. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupFilter/groupFloatingFilter.js +207 -0
  108. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupStage.d.ts +2 -1
  109. package/es/components/DataGrid/modules/row-grouping/rowGrouping/groupStage.js +66 -20
  110. package/es/components/DataGrid/modules/row-grouping/rowGrouping/pivotColDefService.js +8 -8
  111. package/es/components/DataGrid/modules/row-grouping/rowGrouping/pivotStage.js +19 -15
  112. package/es/components/DataGrid/modules/row-grouping/rowGroupingModule.d.ts +2 -16
  113. package/es/components/DataGrid/modules/row-grouping/rowGroupingModule.js +14 -2
  114. package/es/components/DataGrid/modules/row-grouping/version.d.ts +1 -0
  115. package/es/components/DataGrid/modules/row-grouping/version.js +2 -0
  116. package/es/components/DataGrid/modules/side-bar/main.d.ts +2 -0
  117. package/es/components/DataGrid/modules/side-bar/sideBar/common/toolPanelColDefService.d.ts +9 -9
  118. package/es/components/DataGrid/modules/side-bar/sideBar/common/toolPanelColDefService.js +3 -8
  119. package/es/components/DataGrid/modules/side-bar/sideBar/horizontalResizeComp.d.ts +17 -17
  120. package/es/components/DataGrid/modules/side-bar/sideBar/horizontalResizeComp.js +5 -5
  121. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarButtonComp.d.ts +14 -14
  122. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarButtonComp.js +8 -8
  123. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarButtonsComp.d.ts +14 -14
  124. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarButtonsComp.js +6 -6
  125. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarComp.d.ts +26 -27
  126. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarComp.js +82 -45
  127. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarDefParser.d.ts +10 -0
  128. package/es/components/DataGrid/modules/side-bar/sideBar/sideBarDefParser.js +111 -0
  129. package/es/components/DataGrid/modules/side-bar/sideBar/toolPanelWrapper.d.ts +15 -15
  130. package/es/components/DataGrid/modules/side-bar/sideBar/toolPanelWrapper.js +5 -5
  131. package/es/components/DataGrid/modules/side-bar/sideBarModule.d.ts +2 -19
  132. package/es/components/DataGrid/modules/side-bar/sideBarModule.js +5 -2
  133. package/es/components/DataGrid/modules/side-bar/version.d.ts +1 -0
  134. package/es/components/DataGrid/modules/side-bar/version.js +2 -0
  135. package/es/components/DataGrid/{Actions.d.ts → renderer/Actions.d.ts} +1 -1
  136. package/es/components/DataGrid/{Actions.js → renderer/Actions.js} +4 -4
  137. package/es/components/DataGrid/renderer/CellDeleteRenderer.d.ts +5 -0
  138. package/es/components/DataGrid/renderer/CellDeleteRenderer.js +27 -0
  139. package/es/components/DataGrid/renderer/CellIndexRenderer.d.ts +4 -0
  140. package/es/components/DataGrid/renderer/CellIndexRenderer.js +53 -0
  141. package/es/components/DataGrid/{CellRenderer.d.ts → renderer/CellRenderer.d.ts} +2 -2
  142. package/es/components/DataGrid/{CellRenderer.js → renderer/CellRenderer.js} +14 -7
  143. package/es/components/DataGrid/renderer/DetailCellRenderer.d.ts +8 -0
  144. package/es/components/DataGrid/renderer/DetailCellRenderer.js +68 -0
  145. package/es/components/DataGrid/{HeaderRenderer.d.ts → renderer/HeaderRenderer.d.ts} +3 -3
  146. package/es/components/DataGrid/{HeaderRenderer.js → renderer/HeaderRenderer.js} +35 -15
  147. package/es/components/DataGrid/typings.d.ts +66 -38
  148. package/es/components/DataGrid/utils.d.ts +12 -6
  149. package/es/components/DataGrid/utils.js +99 -28
  150. package/es/components/Dropdown/index.js +2 -2
  151. package/es/components/DurationPicker/index.d.ts +8 -7
  152. package/es/components/DurationPicker/index.js +53 -40
  153. package/es/components/DurationPicker/index.less +2 -2
  154. package/es/components/EditableTable/EditableCell.d.ts +1 -1
  155. package/es/components/EditableTable/EditableTableFormItem.d.ts +1 -1
  156. package/es/components/EditableTable/Table.d.ts +1 -1
  157. package/es/components/EditableTable/Table.js +5 -5
  158. package/es/components/EditableTable/typings.d.ts +1 -1
  159. package/es/components/Filter/index.js +138 -94
  160. package/es/components/Filter/index.less +1 -5
  161. package/es/components/Filter/typings.d.ts +30 -1
  162. package/es/components/FormLayout/index.d.ts +5 -0
  163. package/es/components/FormLayout/index.js +22 -9
  164. package/es/components/FormLayout/index.less +16 -7
  165. package/es/components/GreyPanel/index.d.ts +6 -0
  166. package/es/components/GreyPanel/index.js +20 -0
  167. package/es/components/GreyPanel/index.less +6 -0
  168. package/es/components/Icons/Add.d.ts +6 -0
  169. package/es/components/Icons/Add.js +42 -0
  170. package/es/components/Icons/BigTip/index.d.ts +1 -1
  171. package/es/components/Icons/Calendar.d.ts +1 -1
  172. package/es/components/Icons/Calendar.js +12 -17
  173. package/es/components/Icons/Clear.d.ts +3 -0
  174. package/es/components/Icons/Clear.js +22 -0
  175. package/es/components/Icons/Clock.d.ts +5 -0
  176. package/es/components/Icons/Clock.js +30 -0
  177. package/es/components/Icons/Close.d.ts +1 -1
  178. package/es/components/Icons/CloseLight.d.ts +5 -0
  179. package/es/components/Icons/CloseLight.js +34 -0
  180. package/es/components/Icons/CollapseUp.d.ts +1 -1
  181. package/es/components/Icons/DarkSearch.d.ts +1 -1
  182. package/es/components/Icons/Delete.d.ts +3 -0
  183. package/es/components/Icons/Delete.js +40 -0
  184. package/es/components/Icons/Down.d.ts +3 -5
  185. package/es/components/Icons/Down.js +5 -15
  186. package/es/components/Icons/LookUp.d.ts +1 -1
  187. package/es/components/Icons/More.d.ts +3 -5
  188. package/es/components/Icons/Question.d.ts +3 -0
  189. package/es/components/Icons/Question.js +21 -0
  190. package/es/components/Icons/Search.d.ts +3 -5
  191. package/es/components/Icons/Search.js +7 -17
  192. package/es/components/Icons/Tip.d.ts +3 -4
  193. package/es/components/Icons/Tip.js +58 -68
  194. package/es/components/Icons/index.d.ts +19 -7
  195. package/es/components/Icons/index.js +21 -9
  196. package/es/components/InputNumber/index.d.ts +8 -0
  197. package/es/components/InputNumber/index.js +36 -0
  198. package/es/components/InputNumber/index.less +58 -0
  199. package/es/components/Layout/index.d.ts +26 -8
  200. package/es/components/Layout/index.js +159 -54
  201. package/es/components/Layout/index.less +56 -32
  202. package/es/components/Popup/index.d.ts +51 -13
  203. package/es/components/Popup/index.js +140 -73
  204. package/es/components/Popup/index.less +21 -2
  205. package/es/components/Portal/index.d.ts +7 -6
  206. package/es/components/Portal/index.js +57 -12
  207. package/es/components/Section/TabBar.d.ts +2 -1
  208. package/es/components/Section/index.d.ts +6 -2
  209. package/es/components/Section/index.js +30 -23
  210. package/es/components/Section/index.less +6 -2
  211. package/es/components/SelectView/index.d.ts +11 -4
  212. package/es/components/SelectView/index.js +113 -104
  213. package/es/components/SelectView/index.less +10 -26
  214. package/es/components/SiderTree/TreeNodeTitle.js +2 -2
  215. package/es/components/SiderTree/index.d.ts +6 -12
  216. package/es/components/SiderTree/index.js +51 -67
  217. package/es/components/SiderTree/index.less +72 -123
  218. package/es/components/SiderTree/typings.d.ts +2 -2
  219. package/es/components/State/index.d.ts +8 -0
  220. package/es/components/State/index.js +15 -0
  221. package/es/components/State/index.less +120 -0
  222. package/es/components/TabBar/index.d.ts +2 -3
  223. package/es/components/TabBar/index.js +24 -42
  224. package/es/components/TabBar/index.less +2 -28
  225. package/es/components/Table/typings.d.ts +1 -2
  226. package/es/components/Table/utils.d.ts +1 -1
  227. package/es/components/TipMark/index.d.ts +8 -0
  228. package/es/components/TipMark/index.js +53 -0
  229. package/es/components/utils.d.ts +1 -1
  230. package/es/components/utils.js +2 -2
  231. package/es/hooks/useBatchOperator/index.d.ts +46 -9
  232. package/es/hooks/useBatchOperator/index.js +247 -138
  233. package/es/index.d.ts +17 -3
  234. package/es/index.js +10 -1
  235. package/es/index.less +3 -0
  236. package/es/init.js +65 -28
  237. package/es/layouts/BasicLayout/components/MainFramework/components/Menu/index.js +23 -22
  238. package/es/layouts/BasicLayout/typings.d.ts +3 -3
  239. package/es/layouts/Breadcrumb/index.d.ts +13 -5
  240. package/es/layouts/Breadcrumb/index.js +31 -10
  241. package/es/layouts/Breadcrumb/index.less +5 -1
  242. package/es/layouts/MicroLayout/typings.d.ts +1 -1
  243. package/es/layouts/typings.d.ts +0 -2
  244. package/es/layouts/utils.js +2 -2
  245. package/es/styles/empty.png +0 -0
  246. package/es/styles/overrides.less +167 -58
  247. package/es/styles/theme.less +1 -1
  248. package/es/styles/utils.less +4 -4
  249. package/package.json +24 -13
  250. package/es/components/DataGrid/GridContext.d.ts +0 -4
  251. package/es/components/DataGrid/GridContext.js +0 -4
  252. package/es/components/DataGrid/cell-editors/Custom.d.ts +0 -9
  253. package/es/components/DataGrid/cell-editors/Custom.js +0 -105
  254. package/es/components/DataGrid/empty.png +0 -0
  255. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/clientSideNodeManager.d.ts +0 -35
  256. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/clientSideNodeManager.js +0 -378
  257. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/clientSideRowModel.d.ts +0 -99
  258. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/clientSideRowModel.js +0 -1160
  259. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/filterService.d.ts +0 -7
  260. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/filterService.js +0 -137
  261. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/filterStage.d.ts +0 -5
  262. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/filterStage.js +0 -60
  263. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/flattenStage.d.ts +0 -10
  264. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/flattenStage.js +0 -199
  265. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/immutableService.d.ts +0 -13
  266. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/immutableService.js +0 -175
  267. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/sortService.d.ts +0 -14
  268. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/sortService.js +0 -330
  269. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/sortStage.d.ts +0 -7
  270. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModel/sortStage.js +0 -75
  271. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModelModule.d.ts +0 -2
  272. package/es/components/DataGrid/modules/client-side-row-model/clientSideRowModelModule.js +0 -15
  273. package/es/components/DataGrid/modules/client-side-row-model/index.d.ts +0 -1
  274. package/es/components/DataGrid/modules/client-side-row-model/index.js +0 -1
  275. package/es/components/DataGrid/modules/clipboard/index.d.ts +0 -1
  276. package/es/components/DataGrid/modules/column-tool-panel/index.d.ts +0 -2
  277. package/es/components/DataGrid/modules/row-grouping/index.d.ts +0 -4
  278. package/es/components/DataGrid/modules/server-side-row-model/index.d.ts +0 -1
  279. package/es/components/DataGrid/modules/server-side-row-model/index.js +0 -1
  280. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/blocks/blockUtils.d.ts +0 -47
  281. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/blocks/blockUtils.js +0 -444
  282. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/blocks/infiniteStoreBlock.d.ts +0 -92
  283. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/blocks/infiniteStoreBlock.js +0 -510
  284. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/expandListener.d.ts +0 -9
  285. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/expandListener.js +0 -115
  286. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/filterListener.d.ts +0 -9
  287. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/filterListener.js +0 -114
  288. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/listenerUtils.d.ts +0 -5
  289. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/listenerUtils.js +0 -68
  290. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/sortListener.d.ts +0 -13
  291. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/listeners/sortListener.js +0 -194
  292. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/nodeManager.d.ts +0 -7
  293. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/nodeManager.js +0 -63
  294. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/serverSideRowModel.d.ts +0 -88
  295. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/serverSideRowModel.js +0 -572
  296. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/fullStore.d.ts +0 -108
  297. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/fullStore.js +0 -876
  298. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/infiniteStore.d.ts +0 -102
  299. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/infiniteStore.js +0 -918
  300. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/storeFactory.d.ts +0 -12
  301. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/storeFactory.js +0 -141
  302. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/storeUtils.d.ts +0 -35
  303. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/stores/storeUtils.js +0 -154
  304. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/transactionManager.d.ts +0 -23
  305. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModel/transactionManager.js +0 -210
  306. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModelModule.d.ts +0 -18
  307. package/es/components/DataGrid/modules/server-side-row-model/serverSideRowModelModule.js +0 -18
  308. package/es/components/DataGrid/modules/side-bar/index.d.ts +0 -2
  309. /package/es/components/DataGrid/modules/clipboard/{index.js → main.js} +0 -0
  310. /package/es/components/DataGrid/modules/column-tool-panel/{index.js → main.js} +0 -0
  311. /package/es/components/DataGrid/modules/menu/{index.d.ts → main.d.ts} +0 -0
  312. /package/es/components/DataGrid/modules/menu/{index.js → main.js} +0 -0
  313. /package/es/components/DataGrid/modules/row-grouping/{index.js → main.js} +0 -0
  314. /package/es/components/DataGrid/modules/side-bar/{index.js → main.js} +0 -0
package/README.md CHANGED
@@ -31,3 +31,8 @@ Build library via `father-build`,
31
31
  ```bash
32
32
  $ npm run build
33
33
  ```
34
+
35
+ ## Break Changes
36
+
37
+ - Layout Tab 属性 key 必须,title 可选
38
+ - Section Tab 属性 Key 必须,title 可选
@@ -1,6 +1,6 @@
1
- import { ReactElement } from 'react';
1
+ import { type ReactElement } from 'react';
2
2
  import type { CSSProperties } from 'react';
3
- import { ButtonProps } from 'antd';
3
+ import { type ButtonProps } from 'antd';
4
4
  interface ActionBtn extends ButtonProps {
5
5
  text: string | ReactElement;
6
6
  onClick?: () => void;
@@ -10,16 +10,19 @@ interface ActionBtn extends ButtonProps {
10
10
  */
11
11
  action?: () => void;
12
12
  dropDown?: ({
13
- text: string;
14
- onClick: () => void;
13
+ text: string | ReactElement;
14
+ onClick?: () => void;
15
15
  disabled?: boolean;
16
- } | null)[];
16
+ } | ReactElement | null)[] | ReactElement;
17
17
  }
18
18
  interface Props {
19
19
  actions: (ActionBtn | ReactElement | null)[];
20
20
  style?: CSSProperties;
21
21
  className?: string;
22
22
  prefixCls?: string;
23
+ /**
24
+ * @description 默认无限大
25
+ */
23
26
  maxShowCount?: number;
24
27
  }
25
28
  declare function Actions(props: Props): JSX.Element;
@@ -20,7 +20,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
20
20
 
21
21
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
22
22
 
23
- import React, { Fragment, useState } from 'react';
23
+ import React, { Fragment, useState, isValidElement } from 'react';
24
24
  import { Space, Dropdown, Menu, Button, Popover } from 'antd';
25
25
  import classNames from 'classnames';
26
26
  import Icons from "../Icons";
@@ -33,7 +33,7 @@ function Actions(props) {
33
33
  _props$prefixCls = props.prefixCls,
34
34
  prefixCls = _props$prefixCls === void 0 ? PREFIX_CLS : _props$prefixCls,
35
35
  _props$maxShowCount = props.maxShowCount,
36
- maxShowCount = _props$maxShowCount === void 0 ? 3 : _props$maxShowCount;
36
+ maxShowCount = _props$maxShowCount === void 0 ? Infinity : _props$maxShowCount;
37
37
 
38
38
  var _useState = useState(false),
39
39
  _useState2 = _slicedToArray(_useState, 2),
@@ -47,13 +47,13 @@ function Actions(props) {
47
47
  style: style
48
48
  }, /*#__PURE__*/React.createElement(Space, {
49
49
  direction: "horizontal",
50
- size: 12
50
+ size: 8
51
51
  }, visibleBtns.map(function (item, index) {
52
52
  if (item === null) {
53
53
  return item;
54
54
  }
55
55
 
56
- if ( /*#__PURE__*/React.isValidElement(item)) {
56
+ if ( /*#__PURE__*/isValidElement(item)) {
57
57
  return /*#__PURE__*/React.createElement(Fragment, {
58
58
  key: index
59
59
  }, item);
@@ -67,7 +67,7 @@ function Actions(props) {
67
67
  action = item.action,
68
68
  rest = _objectWithoutProperties(item, _excluded);
69
69
 
70
- if ( /*#__PURE__*/React.isValidElement(text)) {
70
+ if ( /*#__PURE__*/isValidElement(text)) {
71
71
  return /*#__PURE__*/React.createElement(Fragment, {
72
72
  key: index
73
73
  }, text);
@@ -75,49 +75,66 @@ function Actions(props) {
75
75
 
76
76
  var handleClick = onClick || action;
77
77
 
78
- if (Array.isArray(dropDown)) {
79
- var overlay = /*#__PURE__*/React.createElement(Menu, null, dropDown.map(function (subItem) {
80
- if (subItem) {
81
- return /*#__PURE__*/React.createElement(Menu.Item, {
82
- onClick: function onClick() {
83
- return subItem.onClick();
84
- },
85
- key: subItem.text,
86
- disabled: subItem.disabled
87
- }, subItem.text);
88
- }
89
- }));
78
+ if (dropDown !== undefined) {
79
+ var overlay;
80
+
81
+ if (Array.isArray(dropDown)) {
82
+ overlay = /*#__PURE__*/React.createElement(Menu, {
83
+ items: dropDown.filter(Boolean).map(function (subItem, idx) {
84
+ if ( /*#__PURE__*/isValidElement(subItem)) {
85
+ return {
86
+ label: subItem,
87
+ key: idx
88
+ };
89
+ }
90
+
91
+ var target = subItem;
92
+ return {
93
+ label: target.text,
94
+ key: idx,
95
+ disabled: target.disabled,
96
+ onClick: target.onClick
97
+ };
98
+ })
99
+ });
100
+ } else {
101
+ overlay = dropDown;
102
+ }
90
103
 
91
104
  if (handleClick !== undefined) {
92
- return /*#__PURE__*/React.createElement(Dropdown.Button, {
105
+ return /*#__PURE__*/React.createElement(Dropdown.Button, _extends({
93
106
  key: text,
94
107
  disabled: disabled,
95
108
  overlay: overlay,
96
109
  onClick: handleClick,
110
+ trigger: ['click'],
111
+ overlayStyle: {
112
+ minWidth: 80
113
+ },
97
114
  buttonsRender: function buttonsRender(_ref) {
98
- var _ref2 = _slicedToArray(_ref, 2),
99
- leftBtn = _ref2[0],
100
- _ = _ref2[1];
115
+ var _ref2 = _slicedToArray(_ref, 1),
116
+ leftBtn = _ref2[0];
101
117
 
102
118
  return [leftBtn, /*#__PURE__*/React.createElement(Button, {
103
- icon: /*#__PURE__*/React.createElement(Icons.More, null)
119
+ icon: /*#__PURE__*/React.createElement(Icons.More, null),
120
+ type: rest.type,
121
+ key: "more"
104
122
  })];
105
123
  }
106
- }, text);
124
+ }, rest), text);
107
125
  }
108
126
 
109
127
  return /*#__PURE__*/React.createElement(Dropdown, {
110
128
  key: text,
111
129
  disabled: disabled,
112
- overlay: overlay
130
+ overlay: overlay,
131
+ trigger: ['click']
113
132
  }, /*#__PURE__*/React.createElement(Button, _extends({
114
133
  disabled: disabled,
115
134
  icon: icon
116
135
  }, rest), text, /*#__PURE__*/React.createElement(Icons.Down, {
117
136
  style: {
118
- opacity: 0.7,
119
- fontSize: 16,
120
- verticalAlign: -3
137
+ opacity: 0.7
121
138
  }
122
139
  })));
123
140
  }
@@ -131,15 +148,15 @@ function Actions(props) {
131
148
  }), collapsedBtns.length > 0 ? /*#__PURE__*/React.createElement(Popover, {
132
149
  placement: "bottomRight",
133
150
  overlayClassName: "".concat(prefixCls, "-actions-popover"),
134
- onVisibleChange: setVisible,
135
- visible: visible,
151
+ onOpenChange: setVisible,
152
+ open: visible,
136
153
  trigger: "click",
137
154
  content: collapsedBtns.map(function (item, index) {
138
155
  if (item === null) {
139
156
  return item;
140
157
  }
141
158
 
142
- if ( /*#__PURE__*/React.isValidElement(item)) {
159
+ if ( /*#__PURE__*/isValidElement(item)) {
143
160
  return /*#__PURE__*/React.createElement(Fragment, {
144
161
  key: index
145
162
  }, item);
@@ -24,11 +24,12 @@
24
24
 
25
25
  &-item {
26
26
  box-sizing: border-box;
27
- width: 120px;
28
- height: 38px;
27
+ min-width: 120px;
28
+ max-width: 200px;
29
+ height: 30px;
29
30
  padding: 0 16px;
30
31
  color: #333;
31
- line-height: 38px;
32
+ line-height: 30px;
32
33
  list-style: none;
33
34
  cursor: pointer;
34
35
  transition: background-color 0.2s;
@@ -46,7 +47,7 @@
46
47
  }
47
48
 
48
49
  .@{ant-prefix}-btn:not(.@{ant-prefix}-btn-icon-only) {
49
- min-width: 80px;
50
+ min-width: 60px;
50
51
 
51
52
  .@{prefixCls}-symbol-icon {
52
53
  margin-right: 8px;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ import { type AlertProps } from 'antd';
3
+ export default function Alert(props: AlertProps): JSX.Element;
@@ -0,0 +1,23 @@
1
+ var _excluded = ["icon", "type"];
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
+
5
+ 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; }
6
+
7
+ 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; }
8
+
9
+ import { Alert as AntdAlert } from 'antd';
10
+ import React from 'react';
11
+ import Icons from "../Icons";
12
+ export default function Alert(props) {
13
+ var icon = props.icon,
14
+ type = props.type,
15
+ restProps = _objectWithoutProperties(props, _excluded);
16
+
17
+ return /*#__PURE__*/React.createElement(AntdAlert, _extends({}, restProps, {
18
+ type: type,
19
+ icon: icon || /*#__PURE__*/React.createElement(Icons.Tip, {
20
+ type: type
21
+ })
22
+ }));
23
+ }
@@ -77,8 +77,8 @@ export default function Actions(props) {
77
77
  }
78
78
 
79
79
  var key = getKey(item, idx);
80
- var dropDown = item.dropDown ? item.dropDown.filter(function (item) {
81
- return item !== null;
80
+ var dropDown = item.dropDown ? item.dropDown.filter(function (sub) {
81
+ return sub !== null;
82
82
  }) : [];
83
83
  return /*#__PURE__*/React.createElement("div", {
84
84
  className: classNames("".concat(prefixCls, "-item"), _defineProperty({}, "".concat(prefixCls, "-item-disabled"), item.disabled)),
@@ -114,8 +114,8 @@ export default function VirtualList(props) {
114
114
 
115
115
  var list = [];
116
116
  var max = rows.length - 1;
117
- var start = range.start,
118
- end = range.end;
117
+ var start = range.start;
118
+ var end = range.end;
119
119
 
120
120
  if (end > max) {
121
121
  end = max;
@@ -168,8 +168,8 @@ function BaseTable(props, _ref) {
168
168
  return null;
169
169
  }
170
170
 
171
- var style = getComputedStyle(parent);
172
- var contentHeight = parent.offsetHeight - (parseFloat(style.getPropertyValue('padding-top')) || 0) - (parseFloat(style.getPropertyValue('padding-bottom')) || 0);
171
+ var mStyle = getComputedStyle(parent);
172
+ var contentHeight = parent.offsetHeight - (parseFloat(mStyle.getPropertyValue('padding-top')) || 0) - (parseFloat(mStyle.getPropertyValue('padding-bottom')) || 0);
173
173
  var nodes = [];
174
174
 
175
175
  if (tableBody.previousElementSibling !== null) {
@@ -1,4 +1,4 @@
1
- import { ColumnType, ColumnGroupType } from './typings';
1
+ import type { ColumnType, ColumnGroupType } from './typings';
2
2
  export declare function isColumnType<T>(col: ColumnGroupType<T> | ColumnType<T>): col is ColumnType<T>;
3
3
  export declare function getColumnKey(col: ColumnType<any>): string | number;
4
4
  export declare function randomStr(): string;
@@ -1,8 +1,12 @@
1
- import React from 'react';
2
- import type { ICellEditorReactComp } from '@ag-grid-community/react';
3
1
  import type { ICellEditorParams } from '@ag-grid-community/core';
2
+ import type { ICellEditorReactComp } from '@ag-grid-community/react';
3
+ import { type Moment } from 'moment';
4
+ import React from 'react';
4
5
  export interface DateEditorParams {
5
6
  format: string;
7
+ disabled?: boolean;
8
+ disabledDate?: (current: Moment) => boolean;
9
+ allowClear?: boolean;
6
10
  }
7
- declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any> & DateEditorParams & React.RefAttributes<ICellEditorReactComp>>;
11
+ declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & DateEditorParams & React.RefAttributes<ICellEditorReactComp>>;
8
12
  export default _default;
@@ -1,3 +1,9 @@
1
+ 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; }
2
+
3
+ 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; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
1
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
8
 
3
9
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -10,16 +16,20 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
16
 
11
17
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
18
 
19
+ import { DatePicker } from 'antd';
20
+ import moment from 'moment';
13
21
  import React, { useEffect, useRef } from 'react';
14
22
  import { forwardRef, useImperativeHandle, useState } from 'react';
15
- import moment from 'moment';
16
- import { DatePicker } from 'antd';
17
23
  import EditorWrapper from "./Wrapper";
18
- import { editorPrefixClass } from "./utils";
24
+ import { editorPrefixClass, navigateCell } from "./utils";
19
25
  export default /*#__PURE__*/forwardRef(function DateEditor(props, ref) {
20
- var cellStartedEdit = props.cellStartedEdit,
21
- _props$format = props.format,
22
- format = _props$format === void 0 ? 'YYYY-MM-DD' : _props$format;
26
+ var _props$format = props.format,
27
+ format = _props$format === void 0 ? 'YYYY-MM-DD' : _props$format,
28
+ disabled = props.disabled,
29
+ api = props.api,
30
+ disabledDate = props.disabledDate,
31
+ _props$allowClear = props.allowClear,
32
+ allowClear = _props$allowClear === void 0 ? false : _props$allowClear;
23
33
 
24
34
  var _useState = useState(props.value ? moment(props.value, format) : null),
25
35
  _useState2 = _slicedToArray(_useState, 2),
@@ -27,52 +37,58 @@ export default /*#__PURE__*/forwardRef(function DateEditor(props, ref) {
27
37
  setValue = _useState2[1];
28
38
 
29
39
  var elm = useRef(null);
40
+ var isEdited = useRef(false);
30
41
  useEffect(function () {
31
- if (cellStartedEdit) {
32
- var _elm$current;
42
+ var _elm$current;
33
43
 
34
- (_elm$current = elm.current) === null || _elm$current === void 0 ? void 0 : _elm$current.focus();
35
- }
36
- }, [cellStartedEdit]);
44
+ (_elm$current = elm.current) === null || _elm$current === void 0 ? void 0 : _elm$current.focus();
45
+ }, []);
37
46
 
38
47
  var getValue = function getValue() {
39
- return value ? value.format(format) : '';
48
+ return value ? value.format(format) : null;
40
49
  };
41
50
 
42
51
  useImperativeHandle(ref, function () {
43
52
  return {
44
- getValue: getValue,
45
- focusIn: function focusIn() {
46
- var _elm$current2;
47
-
48
- (_elm$current2 = elm.current) === null || _elm$current2 === void 0 ? void 0 : _elm$current2.focus();
49
- return true;
50
- },
51
- focusOut: function focusOut() {
52
- var _elm$current3;
53
-
54
- (_elm$current3 = elm.current) === null || _elm$current3 === void 0 ? void 0 : _elm$current3.blur();
55
- return true;
56
- }
53
+ getValue: getValue
57
54
  };
58
55
  });
59
56
  return /*#__PURE__*/React.createElement(EditorWrapper, null, /*#__PURE__*/React.createElement(DatePicker, {
57
+ onKeyDown: function onKeyDown(e) {
58
+ if (isEdited) {
59
+ navigateCell(_objectSpread(_objectSpread({}, props), {}, {
60
+ event: e
61
+ }));
62
+ }
63
+ },
60
64
  style: {
61
65
  display: 'flex',
62
66
  paddingTop: 0,
63
67
  paddingBottom: 0
64
68
  },
69
+ allowClear: allowClear,
70
+ disabled: disabled,
65
71
  className: editorPrefixClass('date'),
66
72
  value: value,
67
73
  placeholder: format,
74
+ onOpenChange: function onOpenChange(val) {
75
+ if (!val) {
76
+ isEdited.current = true;
77
+ }
78
+ },
68
79
  onChange: function onChange(val) {
69
80
  if (val) {
70
81
  setValue(val);
71
82
  } else {
72
83
  setValue(null);
73
84
  }
85
+
86
+ requestAnimationFrame(function () {
87
+ api.tabToNextCell();
88
+ });
74
89
  },
75
90
  ref: elm,
76
- bordered: false
91
+ bordered: false,
92
+ disabledDate: disabledDate
77
93
  }));
78
94
  });
@@ -1,7 +1,8 @@
1
1
  import React from 'react';
2
2
  import type { ICellEditorReactComp } from '@ag-grid-community/react';
3
3
  import type { ICellEditorParams } from '@ag-grid-community/core';
4
- export interface NumberEditorParams {
4
+ export interface NumberEditorParams<TData = any> {
5
+ disabled?: boolean;
5
6
  /**
6
7
  * @description 最小值
7
8
  */
@@ -11,13 +12,21 @@ export interface NumberEditorParams {
11
12
  */
12
13
  max?: number;
13
14
  /**
14
- * @description 空值
15
+ * @description 空值 如果为null则可以是空值
16
+ * @default 0
15
17
  */
16
- emptyValue?: number;
18
+ emptyValue?: number | null;
17
19
  /**
18
- * @description 当值不合理时,不修改单元格
20
+ * @description 精度
19
21
  */
20
- undoWhenError?: boolean;
22
+ precision?: number;
23
+ /**
24
+ * 可以在不使用min或者max的情况下,进行数值校验,可以用于错误提示
25
+ * @param newValue
26
+ * @param data
27
+ * @returns
28
+ */
29
+ isCancelAfterEnd?: (newValue: number, data: TData) => boolean;
21
30
  }
22
- declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any> & NumberEditorParams & React.RefAttributes<ICellEditorReactComp>>;
31
+ declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & NumberEditorParams<any> & React.RefAttributes<ICellEditorReactComp>>;
23
32
  export default _default;
@@ -1,3 +1,9 @@
1
+ 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; }
2
+
3
+ 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; }
4
+
5
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+
1
7
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
8
 
3
9
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -10,59 +16,66 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
10
16
 
11
17
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
12
18
 
13
- import React, { useEffect, useRef } from 'react';
19
+ import React, { useEffect, useMemo, useRef } from 'react';
14
20
  import { forwardRef, useImperativeHandle, useState } from 'react';
15
21
  import EditorWrapper from "./Wrapper";
16
- import { editorPrefixClass } from "./utils";
22
+ import { editorPrefixClass, navigateCell } from "./utils";
17
23
  export default /*#__PURE__*/forwardRef(function NumberEditor(props, ref) {
18
- var _props$value;
19
-
20
- var cellStartedEdit = props.cellStartedEdit,
21
- _props$min = props.min,
24
+ var _props$min = props.min,
22
25
  min = _props$min === void 0 ? -99999999 : _props$min,
23
26
  _props$max = props.max,
24
27
  max = _props$max === void 0 ? 99999999 : _props$max,
25
28
  emptyValue = props.emptyValue,
26
- undoWhenError = props.undoWhenError;
29
+ disabled = props.disabled,
30
+ precision = props.precision,
31
+ _isCancelAfterEnd = props.isCancelAfterEnd,
32
+ data = props.data;
33
+
34
+ var _useMemo = useMemo(function () {
35
+ if (props.eventKey === 'BackSpace') {
36
+ return ['', false];
37
+ }
38
+
39
+ if (props.charPress && /^[0-9]$/.test(props.charPress)) {
40
+ return [props.charPress, false];
41
+ }
42
+
43
+ return [props.value, true];
44
+ }, []),
45
+ _useMemo2 = _slicedToArray(_useMemo, 2),
46
+ defaultValue = _useMemo2[0],
47
+ shouldSelect = _useMemo2[1];
27
48
 
28
- var _useState = useState((_props$value = props.value) !== null && _props$value !== void 0 ? _props$value : null),
49
+ var _useState = useState(defaultValue !== null && defaultValue !== void 0 ? defaultValue : null),
29
50
  _useState2 = _slicedToArray(_useState, 2),
30
51
  value = _useState2[0],
31
52
  setValue = _useState2[1];
32
53
 
33
54
  var elm = useRef(null);
55
+ var dirty = useRef(!!props.charPress);
34
56
  useEffect(function () {
35
- if (cellStartedEdit) {
36
- var _elm$current;
57
+ if (elm.current === null) {
58
+ return;
59
+ }
60
+
61
+ elm.current.focus();
37
62
 
38
- (_elm$current = elm.current) === null || _elm$current === void 0 ? void 0 : _elm$current.select();
63
+ if (shouldSelect) {
64
+ elm.current.select();
39
65
  }
40
- }, [cellStartedEdit]);
66
+ }, []);
41
67
 
42
- var getValue = function getValue() {
68
+ var getFormatedValue = function getFormatedValue() {
43
69
  var val;
44
- var error = false;
45
70
 
46
71
  if (value === '' || value === null) {
47
72
  val = emptyValue !== null && emptyValue !== void 0 ? emptyValue : null;
48
- } else if (typeof value === 'string') {
49
- val = parseFloat(value);
50
73
  } else {
51
- val = value;
52
- }
74
+ val = +value;
53
75
 
54
- if (val === null) {
55
- error = true;
56
- } else if (val < min) {
57
- error = true;
58
- val = min;
59
- } else if (val > max) {
60
- error = true;
61
- val = max;
62
- }
63
-
64
- if (error && undoWhenError) {
65
- return props.value;
76
+ if (precision !== undefined) {
77
+ val = Math.round(val * Math.pow(10, precision)) / Math.pow(10, precision);
78
+ }
66
79
  }
67
80
 
68
81
  return val;
@@ -70,28 +83,65 @@ export default /*#__PURE__*/forwardRef(function NumberEditor(props, ref) {
70
83
 
71
84
  useImperativeHandle(ref, function () {
72
85
  return {
73
- getValue: getValue,
74
- focusIn: function focusIn() {
75
- var _elm$current2;
76
-
77
- (_elm$current2 = elm.current) === null || _elm$current2 === void 0 ? void 0 : _elm$current2.select();
78
- return true;
86
+ getValue: function getValue() {
87
+ return getFormatedValue();
79
88
  },
80
- focusOut: function focusOut() {
81
- var _elm$current3;
89
+ isCancelAfterEnd: function isCancelAfterEnd() {
90
+ if (!dirty.current) {
91
+ return true;
92
+ }
82
93
 
83
- (_elm$current3 = elm.current) === null || _elm$current3 === void 0 ? void 0 : _elm$current3.blur();
84
- return true;
94
+ var val = getFormatedValue();
95
+
96
+ if (emptyValue === null && val === null) {
97
+ return false;
98
+ }
99
+
100
+ if (val === null || val < min || val > max) {
101
+ return true;
102
+ }
103
+
104
+ if (_isCancelAfterEnd !== undefined) {
105
+ return _isCancelAfterEnd(val, data);
106
+ }
107
+
108
+ return false;
85
109
  }
86
110
  };
87
111
  });
112
+ var text = useMemo(function () {
113
+ if (value === '' || value === null) {
114
+ return '';
115
+ }
116
+
117
+ var val;
118
+
119
+ if (typeof value !== 'number') {
120
+ val = +value;
121
+ } else {
122
+ val = value;
123
+ }
124
+
125
+ if (precision !== undefined) {
126
+ return Math.round(val * Math.pow(10, precision)) / Math.pow(10, precision);
127
+ }
128
+
129
+ return val;
130
+ }, [value, precision]);
88
131
  return /*#__PURE__*/React.createElement(EditorWrapper, null, /*#__PURE__*/React.createElement("input", {
89
132
  type: "number",
133
+ onKeyDown: function onKeyDown(e) {
134
+ return navigateCell(_objectSpread(_objectSpread({}, props), {}, {
135
+ event: e
136
+ }));
137
+ },
138
+ disabled: disabled,
90
139
  className: editorPrefixClass('text'),
91
140
  ref: elm,
92
- value: value !== null && value !== void 0 ? value : '',
141
+ value: text,
93
142
  onChange: function onChange(event) {
94
- return setValue(event.target.value);
143
+ dirty.current = true;
144
+ setValue(event.target.value);
95
145
  }
96
146
  }));
97
147
  });
@@ -0,0 +1,23 @@
1
+ import type { MutableRefObject, ReactElement } from 'react';
2
+ import React from 'react';
3
+ import type { ICellEditorReactComp } from '@ag-grid-community/react';
4
+ import type { ICellEditorParams } from '@ag-grid-community/core';
5
+ export declare class RowEditorData<T> {
6
+ private data;
7
+ constructor(data: T);
8
+ getValue(): T;
9
+ }
10
+ export declare type RowEditorActionType = 'stop' | 'next';
11
+ export interface RowEditorParams<T = any, K = any> {
12
+ suppressEnterEvent?: boolean;
13
+ isCancelAfterEnd?: (newValue: T, data: T) => boolean;
14
+ render: (val: K, data: T, params: ICellEditorParams<T, K> & {
15
+ ref: MutableRefObject<{
16
+ select?: () => void;
17
+ focus?: () => void;
18
+ } | null>;
19
+ onChange: (val: Partial<T>, action?: RowEditorActionType) => void;
20
+ }) => ReactElement | null;
21
+ }
22
+ declare const _default: React.ForwardRefExoticComponent<ICellEditorParams<any, any, any> & RowEditorParams<any, any> & React.RefAttributes<ICellEditorReactComp>>;
23
+ export default _default;