@nokecy/qc-ui 1.1.37 → 1.1.39

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 (335) hide show
  1. package/README.md +25 -25
  2. package/dist/cjs/ConfirmPro/index.js +4 -4
  3. package/dist/cjs/RuleBuilder/LogicSelector.js +7 -7
  4. package/dist/cjs/RuleBuilder/RuleBuilderContainer.js +27 -27
  5. package/dist/cjs/RuleBuilder/RuleCard.js +6 -6
  6. package/dist/cjs/RuleBuilder/RuleGroupEditor.js +7 -7
  7. package/dist/cjs/RuleBuilder/constants/operators.js +18 -18
  8. package/dist/cjs/RuleBuilder/context/RuleBuilderContext.js +38 -38
  9. package/dist/cjs/RuleBuilder/inputs/BetweenValueInput.js +5 -5
  10. package/dist/cjs/RuleBuilder/inputs/MultiValueInput.js +5 -5
  11. package/dist/cjs/RuleBuilder/inputs/SingleValueInput.js +8 -8
  12. package/dist/cjs/RuleBuilder/inputs/ValueInput.js +8 -8
  13. package/dist/cjs/RuleBuilder/selectors/FieldSelector.js +5 -5
  14. package/dist/cjs/RuleBuilder/selectors/OperatorSelector.js +5 -5
  15. package/dist/cjs/RuleBuilder/styles/index.module.less +443 -443
  16. package/dist/cjs/RuleBuilder/styles/index.module.less.d.ts +43 -43
  17. package/dist/cjs/RuleBuilder/types/index.js +42 -42
  18. package/dist/cjs/RuleBuilder/utils/pathHelpers.js +47 -47
  19. package/dist/cjs/RuleBuilder/utils/ruleHelpers.js +31 -31
  20. package/dist/cjs/RuleBuilder/utils/validation.js +22 -22
  21. package/dist/cjs/ag-grid-plus/_utils/boolSelect.js +5 -5
  22. package/dist/cjs/ag-grid-plus/_utils/processColumnGroups.js +9 -9
  23. package/dist/cjs/ag-grid-plus/ag-grid-theme-builder.css +352 -352
  24. package/dist/cjs/ag-grid-plus/ag-gridPlus.js +96 -85
  25. package/dist/cjs/ag-grid-plus/context/gridContext.js +19 -19
  26. package/dist/cjs/ag-grid-plus/context/useSchemeDataFlow.js +93 -57
  27. package/dist/cjs/ag-grid-plus/context/useSchemeManager.js +213 -172
  28. package/dist/cjs/ag-grid-plus/errors/ErrorBoundary.js +8 -8
  29. package/dist/cjs/ag-grid-plus/errors/types.js +14 -14
  30. package/dist/cjs/ag-grid-plus/hooks/useAgGridCalculation.js +45 -45
  31. package/dist/cjs/ag-grid-plus/hooks/useAgGridData.js +44 -44
  32. package/dist/cjs/ag-grid-plus/hooks/useGridPlusColumnState.js +3 -3
  33. package/dist/cjs/ag-grid-plus/hooks/useGridState.js +36 -36
  34. package/dist/cjs/ag-grid-plus/index.less +50 -50
  35. package/dist/cjs/ag-grid-plus/queryForm/index.less +72 -72
  36. package/dist/cjs/ag-grid-plus/setting/ColumnConfigForm.js +11 -11
  37. package/dist/cjs/ag-grid-plus/setting/ColumnConfigTable.js +3 -3
  38. package/dist/cjs/ag-grid-plus/setting/ColumnNameCellRenderer.js +10 -10
  39. package/dist/cjs/ag-grid-plus/setting/ColumnSetting.js +81 -65
  40. package/dist/cjs/ag-grid-plus/setting/DebounceInputs.js +9 -9
  41. package/dist/cjs/ag-grid-plus/setting/MoveNodeModal.js +7 -7
  42. package/dist/cjs/ag-grid-plus/setting/NameColumnRenderer.js +6 -6
  43. package/dist/cjs/ag-grid-plus/setting/QuerySchemeManager.js +34 -34
  44. package/dist/cjs/ag-grid-plus/setting/columnGroupUtils.js +89 -78
  45. package/dist/cjs/ag-grid-plus/setting/performanceMonitor.js +5 -5
  46. package/dist/cjs/ag-grid-plus/shared/storage/backendApiAdapter.js +46 -46
  47. package/dist/cjs/ag-grid-plus/shared/storage/localStorageAdapter.js +39 -39
  48. package/dist/cjs/ag-grid-plus/shared/utils/schemeDataMigration.js +18 -18
  49. package/dist/cjs/ag-grid-plus/theme.js +3 -3
  50. package/dist/cjs/ag-grid-plus/toolBar/index.js +4 -4
  51. package/dist/cjs/ag-grid-plus/utils/columnProcessors.js +52 -52
  52. package/dist/cjs/ag-grid-plus/utils/constants.js +22 -22
  53. package/dist/cjs/ag-grid-plus/utils/entityExtensionColumns.js +20 -20
  54. package/dist/cjs/ag-grid-plus/utils/logger.js +2 -2
  55. package/dist/cjs/ag-grid-plus/utils/sanitize.js +10 -10
  56. package/dist/cjs/ag-grid-plus/utils.js +3 -3
  57. package/dist/cjs/array-table/arrayAddBtn.js +26 -17
  58. package/dist/cjs/array-table/columnHelper.js +43 -43
  59. package/dist/cjs/array-table/hooks.d.ts +2 -1
  60. package/dist/cjs/array-table/hooks.js +34 -52
  61. package/dist/cjs/array-table/index.js +145 -66
  62. package/dist/cjs/array-table/preview.js +1 -1
  63. package/dist/cjs/array-table/readOnlyFormatters.d.ts +28 -0
  64. package/dist/cjs/array-table/readOnlyFormatters.js +113 -0
  65. package/dist/cjs/array-table/utils.d.ts +2 -2
  66. package/dist/cjs/array-table/utils.js +165 -13
  67. package/dist/cjs/components/RegexEditor/core/RegexEditor.js +32 -32
  68. package/dist/cjs/components/RegexEditor/core/RegexEditor.less +119 -119
  69. package/dist/cjs/components/RegexEditor/core/extensions/errorMarker.js +52 -52
  70. package/dist/cjs/components/RegexEditor/hooks/useRegexTester.js +48 -48
  71. package/dist/cjs/components/RegexEditor/hooks/useRegexValidation.js +54 -54
  72. package/dist/cjs/components/RegexEditor/hooks/useTemplateManager.js +5 -5
  73. package/dist/cjs/components/RegexEditor/templates/TemplateSelector.js +28 -28
  74. package/dist/cjs/components/RegexEditor/templates/builtinTemplates.js +24 -24
  75. package/dist/cjs/components/RegexEditor/templates/storage.js +29 -29
  76. package/dist/cjs/components/RegexEditor/templates/templateManager.js +29 -29
  77. package/dist/cjs/components/RegexEditor/templates/types.js +74 -74
  78. package/dist/cjs/components/RegexEditor/validation/complexity.js +40 -40
  79. package/dist/cjs/components/RegexEditor/validation/parser.js +47 -47
  80. package/dist/cjs/components/RegexEditor/validation/validator.js +54 -54
  81. package/dist/cjs/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
  82. package/dist/cjs/components/RegexEditor/visualizer/MatchItem.js +20 -20
  83. package/dist/cjs/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
  84. package/dist/cjs/components/RegexEditor/visualizer/RegexTester.js +17 -17
  85. package/dist/cjs/components/RegexEditor/visualizer/astToRailroad.js +11 -11
  86. package/dist/cjs/components/RegexEditor/visualizer/utils.js +92 -92
  87. package/dist/cjs/dashboard/dashboard/components/toolbar/style/index.less +49 -49
  88. package/dist/cjs/dashboard/dashboard/index.less +173 -173
  89. package/dist/cjs/dashboard/dashboard/utils.js +4 -4
  90. package/dist/cjs/dashboard/utils.js +8 -8
  91. package/dist/cjs/dashboard/widget/index.less +7 -7
  92. package/dist/cjs/dashboard/widget/selector/index.less +172 -172
  93. package/dist/cjs/deleteConfirm/index.js +17 -17
  94. package/dist/cjs/draggableModal/index.js +4 -4
  95. package/dist/cjs/draggableModal/style.less +122 -122
  96. package/dist/cjs/editable/index.js +19 -2
  97. package/dist/cjs/formDesigner/FormDesigner.js +3 -2
  98. package/dist/cjs/formDesigner/arrayTable/styles.less +2 -2
  99. package/dist/cjs/formDesigner/index.less +2 -2
  100. package/dist/cjs/formDesigner/preWidgets/index.d.ts +1 -10
  101. package/dist/cjs/formDesigner/preWidgets/index.js +1 -100
  102. package/dist/cjs/formDesigner/preWidgets/preDefineProperty.d.ts +11 -0
  103. package/dist/cjs/formDesigner/preWidgets/preDefineProperty.js +70 -0
  104. package/dist/cjs/fullScreenAlert/index.js +13 -13
  105. package/dist/cjs/fullScreenAlert/index.less +133 -133
  106. package/dist/cjs/generatedListPage/ConfigurableToolbar.js +2 -2
  107. package/dist/cjs/generatedListPage/GeneratedListPage.js +20 -20
  108. package/dist/cjs/generatedListPage/OptionsColumn.js +3 -3
  109. package/dist/cjs/generatedListPage/PerformanceMonitor.js +9 -9
  110. package/dist/cjs/generatedListPage/RequestManager.js +39 -39
  111. package/dist/cjs/generatedListPage/_utils/AccessWrapper.js +6 -6
  112. package/dist/cjs/generatedListPage/_utils/defaultHandlers.js +14 -14
  113. package/dist/cjs/generatedListPage/usePermissionCheck.js +27 -27
  114. package/dist/cjs/generatedListPage/useRequestManager.js +20 -20
  115. package/dist/cjs/importModal/index.js +4 -4
  116. package/dist/cjs/standardFormDialog/FormValidation.js +45 -45
  117. package/dist/cjs/standardFormDialog/PortalManager.js +46 -46
  118. package/dist/cjs/standardFormDialog/StandardFormDialog.js +20 -20
  119. package/dist/cjs/standardFormDialog/useStandardFormSchema.js +24 -24
  120. package/dist/cjs/toolBar/index.less +25 -25
  121. package/dist/cjs/types/railroad-diagrams.d.ts +59 -59
  122. package/dist/cjs/types/regexp-tree.d.ts +175 -175
  123. package/dist/esm/ConfirmPro/index.js +4 -4
  124. package/dist/esm/RuleBuilder/LogicSelector.js +7 -7
  125. package/dist/esm/RuleBuilder/RuleBuilderContainer.js +27 -27
  126. package/dist/esm/RuleBuilder/RuleCard.js +6 -6
  127. package/dist/esm/RuleBuilder/RuleGroupEditor.js +7 -7
  128. package/dist/esm/RuleBuilder/constants/operators.js +18 -18
  129. package/dist/esm/RuleBuilder/context/RuleBuilderContext.js +38 -38
  130. package/dist/esm/RuleBuilder/index.js +6 -6
  131. package/dist/esm/RuleBuilder/inputs/BetweenValueInput.js +5 -5
  132. package/dist/esm/RuleBuilder/inputs/MultiValueInput.js +5 -5
  133. package/dist/esm/RuleBuilder/inputs/SingleValueInput.js +8 -8
  134. package/dist/esm/RuleBuilder/inputs/ValueInput.js +8 -8
  135. package/dist/esm/RuleBuilder/selectors/FieldSelector.js +5 -5
  136. package/dist/esm/RuleBuilder/selectors/OperatorSelector.js +5 -5
  137. package/dist/esm/RuleBuilder/styles/index.module.less +443 -443
  138. package/dist/esm/RuleBuilder/styles/index.module.less.d.ts +43 -43
  139. package/dist/esm/RuleBuilder/types/index.js +42 -42
  140. package/dist/esm/RuleBuilder/utils/pathHelpers.js +47 -47
  141. package/dist/esm/RuleBuilder/utils/ruleHelpers.js +31 -31
  142. package/dist/esm/RuleBuilder/utils/validation.js +22 -22
  143. package/dist/esm/ag-grid-plus/_utils/boolSelect.js +5 -5
  144. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.js +9 -9
  145. package/dist/esm/ag-grid-plus/ag-grid-theme-builder.css +352 -352
  146. package/dist/esm/ag-grid-plus/ag-gridPlus.js +96 -85
  147. package/dist/esm/ag-grid-plus/context/gridContext.js +19 -19
  148. package/dist/esm/ag-grid-plus/context/useSchemeDataFlow.js +93 -57
  149. package/dist/esm/ag-grid-plus/context/useSchemeManager.js +213 -172
  150. package/dist/esm/ag-grid-plus/errors/ErrorBoundary.js +8 -8
  151. package/dist/esm/ag-grid-plus/errors/types.js +14 -14
  152. package/dist/esm/ag-grid-plus/hooks/index.js +2 -2
  153. package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.js +45 -45
  154. package/dist/esm/ag-grid-plus/hooks/useAgGridData.js +44 -44
  155. package/dist/esm/ag-grid-plus/hooks/useGridPlusColumnState.js +3 -3
  156. package/dist/esm/ag-grid-plus/hooks/useGridState.js +36 -36
  157. package/dist/esm/ag-grid-plus/index.less +50 -50
  158. package/dist/esm/ag-grid-plus/queryForm/index.less +72 -72
  159. package/dist/esm/ag-grid-plus/setting/ColumnConfigForm.js +11 -11
  160. package/dist/esm/ag-grid-plus/setting/ColumnConfigTable.js +3 -3
  161. package/dist/esm/ag-grid-plus/setting/ColumnNameCellRenderer.js +10 -10
  162. package/dist/esm/ag-grid-plus/setting/ColumnSetting.js +81 -65
  163. package/dist/esm/ag-grid-plus/setting/DebounceInputs.js +9 -9
  164. package/dist/esm/ag-grid-plus/setting/MoveNodeModal.js +7 -7
  165. package/dist/esm/ag-grid-plus/setting/NameColumnRenderer.js +6 -6
  166. package/dist/esm/ag-grid-plus/setting/QuerySchemeManager.js +34 -34
  167. package/dist/esm/ag-grid-plus/setting/columnGroupUtils.js +89 -76
  168. package/dist/esm/ag-grid-plus/setting/performanceMonitor.js +5 -5
  169. package/dist/esm/ag-grid-plus/shared/storage/backendApiAdapter.js +46 -46
  170. package/dist/esm/ag-grid-plus/shared/storage/localStorageAdapter.js +39 -39
  171. package/dist/esm/ag-grid-plus/shared/utils/schemeDataMigration.js +18 -18
  172. package/dist/esm/ag-grid-plus/theme.js +3 -3
  173. package/dist/esm/ag-grid-plus/toolBar/index.js +4 -4
  174. package/dist/esm/ag-grid-plus/utils/columnProcessors.js +52 -52
  175. package/dist/esm/ag-grid-plus/utils/constants.js +22 -22
  176. package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.js +20 -20
  177. package/dist/esm/ag-grid-plus/utils/logger.js +2 -2
  178. package/dist/esm/ag-grid-plus/utils/sanitize.js +10 -10
  179. package/dist/esm/ag-grid-plus/utils.js +3 -3
  180. package/dist/esm/array-table/arrayAddBtn.js +26 -17
  181. package/dist/esm/array-table/columnHelper.js +43 -43
  182. package/dist/esm/array-table/hooks.d.ts +2 -1
  183. package/dist/esm/array-table/hooks.js +34 -52
  184. package/dist/esm/array-table/index.js +147 -68
  185. package/dist/esm/array-table/preview.js +2 -2
  186. package/dist/esm/array-table/readOnlyFormatters.d.ts +28 -0
  187. package/dist/esm/array-table/readOnlyFormatters.js +107 -0
  188. package/dist/esm/array-table/utils.d.ts +2 -2
  189. package/dist/esm/array-table/utils.js +165 -13
  190. package/dist/esm/components/RegexEditor/core/RegexEditor.js +32 -32
  191. package/dist/esm/components/RegexEditor/core/RegexEditor.less +119 -119
  192. package/dist/esm/components/RegexEditor/core/extensions/errorMarker.js +52 -52
  193. package/dist/esm/components/RegexEditor/hooks/index.js +4 -4
  194. package/dist/esm/components/RegexEditor/hooks/useRegexTester.js +48 -48
  195. package/dist/esm/components/RegexEditor/hooks/useRegexValidation.js +54 -54
  196. package/dist/esm/components/RegexEditor/hooks/useTemplateManager.js +5 -5
  197. package/dist/esm/components/RegexEditor/templates/TemplateSelector.js +28 -28
  198. package/dist/esm/components/RegexEditor/templates/builtinTemplates.js +24 -24
  199. package/dist/esm/components/RegexEditor/templates/index.js +2 -2
  200. package/dist/esm/components/RegexEditor/templates/storage.js +29 -29
  201. package/dist/esm/components/RegexEditor/templates/templateManager.js +29 -29
  202. package/dist/esm/components/RegexEditor/templates/types.js +74 -74
  203. package/dist/esm/components/RegexEditor/validation/complexity.js +40 -40
  204. package/dist/esm/components/RegexEditor/validation/parser.js +47 -47
  205. package/dist/esm/components/RegexEditor/validation/validator.js +54 -54
  206. package/dist/esm/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
  207. package/dist/esm/components/RegexEditor/visualizer/MatchItem.js +20 -20
  208. package/dist/esm/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
  209. package/dist/esm/components/RegexEditor/visualizer/RegexTester.js +17 -17
  210. package/dist/esm/components/RegexEditor/visualizer/astToRailroad.js +11 -11
  211. package/dist/esm/components/RegexEditor/visualizer/index.js +5 -5
  212. package/dist/esm/components/RegexEditor/visualizer/utils.js +92 -92
  213. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.less +49 -49
  214. package/dist/esm/dashboard/dashboard/index.less +173 -173
  215. package/dist/esm/dashboard/dashboard/utils.js +4 -4
  216. package/dist/esm/dashboard/utils.js +8 -8
  217. package/dist/esm/dashboard/widget/index.less +7 -7
  218. package/dist/esm/dashboard/widget/selector/index.less +172 -172
  219. package/dist/esm/deleteConfirm/index.js +17 -17
  220. package/dist/esm/draggableModal/index.js +4 -4
  221. package/dist/esm/draggableModal/style.less +122 -122
  222. package/dist/esm/editable/index.js +19 -2
  223. package/dist/esm/formDesigner/FormDesigner.js +3 -2
  224. package/dist/esm/formDesigner/arrayTable/styles.less +2 -2
  225. package/dist/esm/formDesigner/index.less +2 -2
  226. package/dist/esm/formDesigner/preWidgets/index.d.ts +1 -10
  227. package/dist/esm/formDesigner/preWidgets/index.js +1 -10
  228. package/dist/esm/formDesigner/preWidgets/preDefineProperty.d.ts +11 -0
  229. package/dist/esm/formDesigner/preWidgets/{preDefineProperty1/preview.js → preDefineProperty.js} +49 -30
  230. package/dist/esm/fullScreenAlert/index.js +13 -13
  231. package/dist/esm/fullScreenAlert/index.less +133 -133
  232. package/dist/esm/generatedListPage/ConfigurableToolbar.js +2 -2
  233. package/dist/esm/generatedListPage/GeneratedListPage.js +20 -20
  234. package/dist/esm/generatedListPage/OptionsColumn.js +3 -3
  235. package/dist/esm/generatedListPage/PerformanceMonitor.js +9 -9
  236. package/dist/esm/generatedListPage/RequestManager.js +39 -39
  237. package/dist/esm/generatedListPage/_utils/AccessWrapper.js +6 -6
  238. package/dist/esm/generatedListPage/_utils/defaultHandlers.js +14 -14
  239. package/dist/esm/generatedListPage/index.js +9 -9
  240. package/dist/esm/generatedListPage/usePermissionCheck.js +27 -27
  241. package/dist/esm/generatedListPage/useRequestManager.js +20 -20
  242. package/dist/esm/importModal/index.js +4 -4
  243. package/dist/esm/standardFormDialog/FormValidation.js +45 -45
  244. package/dist/esm/standardFormDialog/PortalManager.js +46 -46
  245. package/dist/esm/standardFormDialog/StandardFormDialog.js +20 -20
  246. package/dist/esm/standardFormDialog/useStandardFormSchema.js +24 -24
  247. package/dist/esm/standardFormDialog/withStandardForm.d.ts +2 -2
  248. package/dist/esm/toolBar/index.less +25 -25
  249. package/dist/esm/types/railroad-diagrams.d.ts +59 -59
  250. package/dist/esm/types/regexp-tree.d.ts +175 -175
  251. package/dist/umd/qc-ui.min.js +1 -1
  252. package/package.json +90 -90
  253. package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
  254. package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -648
  255. package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/index.d.ts +0 -1
  256. package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/index.js +0 -16
  257. package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/preview.d.ts +0 -5
  258. package/dist/cjs/formDesigner/preWidgets/preDefineProperty1/preview.js +0 -51
  259. package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/index.d.ts +0 -1
  260. package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/index.js +0 -16
  261. package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/preview.d.ts +0 -5
  262. package/dist/cjs/formDesigner/preWidgets/preDefineProperty10/preview.js +0 -50
  263. package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/index.d.ts +0 -1
  264. package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/index.js +0 -16
  265. package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/preview.d.ts +0 -5
  266. package/dist/cjs/formDesigner/preWidgets/preDefineProperty2/preview.js +0 -50
  267. package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/index.d.ts +0 -1
  268. package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/index.js +0 -16
  269. package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/preview.d.ts +0 -5
  270. package/dist/cjs/formDesigner/preWidgets/preDefineProperty3/preview.js +0 -50
  271. package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/index.d.ts +0 -1
  272. package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/index.js +0 -16
  273. package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/preview.d.ts +0 -5
  274. package/dist/cjs/formDesigner/preWidgets/preDefineProperty4/preview.js +0 -50
  275. package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/index.d.ts +0 -1
  276. package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/index.js +0 -16
  277. package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/preview.d.ts +0 -5
  278. package/dist/cjs/formDesigner/preWidgets/preDefineProperty5/preview.js +0 -50
  279. package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/index.d.ts +0 -1
  280. package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/index.js +0 -16
  281. package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/preview.d.ts +0 -5
  282. package/dist/cjs/formDesigner/preWidgets/preDefineProperty6/preview.js +0 -50
  283. package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/index.d.ts +0 -1
  284. package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/index.js +0 -16
  285. package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/preview.d.ts +0 -5
  286. package/dist/cjs/formDesigner/preWidgets/preDefineProperty7/preview.js +0 -50
  287. package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/index.d.ts +0 -1
  288. package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/index.js +0 -16
  289. package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/preview.d.ts +0 -5
  290. package/dist/cjs/formDesigner/preWidgets/preDefineProperty8/preview.js +0 -50
  291. package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/index.d.ts +0 -1
  292. package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/index.js +0 -16
  293. package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/preview.d.ts +0 -5
  294. package/dist/cjs/formDesigner/preWidgets/preDefineProperty9/preview.js +0 -50
  295. package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
  296. package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -643
  297. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.d.ts +0 -1
  298. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.js +0 -1
  299. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.d.ts +0 -5
  300. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.d.ts +0 -1
  301. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.js +0 -1
  302. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.d.ts +0 -5
  303. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.js +0 -43
  304. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.d.ts +0 -1
  305. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.js +0 -1
  306. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.d.ts +0 -5
  307. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.js +0 -43
  308. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.d.ts +0 -1
  309. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.js +0 -1
  310. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.d.ts +0 -5
  311. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.js +0 -43
  312. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.d.ts +0 -1
  313. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.js +0 -1
  314. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.d.ts +0 -5
  315. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.js +0 -43
  316. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.d.ts +0 -1
  317. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.js +0 -1
  318. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.d.ts +0 -5
  319. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.js +0 -43
  320. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.d.ts +0 -1
  321. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.js +0 -1
  322. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.d.ts +0 -5
  323. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.js +0 -43
  324. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.d.ts +0 -1
  325. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.js +0 -1
  326. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.d.ts +0 -5
  327. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.js +0 -43
  328. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.d.ts +0 -1
  329. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.js +0 -1
  330. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.d.ts +0 -5
  331. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.js +0 -43
  332. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.d.ts +0 -1
  333. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.js +0 -1
  334. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.d.ts +0 -5
  335. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.js +0 -43
@@ -1,4 +1,5 @@
1
1
  import _sumBy from "lodash/sumBy";
2
+ import _isEqual from "lodash/isEqual";
2
3
  import _uniqueId from "lodash/uniqueId";
3
4
  import _isArray from "lodash/isArray";
4
5
  var _excluded = ["style", "loading", "params", "request", "dataSource", "treeKeyName", "treeParentName", "rowData", "gridRef", "headerTitle", "toolBarRender", "search", "hideTool", "onGridReady", "gridKey", "children", "defaultSearchExpand", "overlayNoRowsTemplateText", "queryDefaultRows", "onSelectedRowsChange", "enableClickSelection", "rowSelection", "useNativeTreeFilter", "entityType"];
@@ -60,6 +61,16 @@ var Text = Typography.Text;
60
61
  var getSort = function getSort(columnState) {
61
62
  return columnState ? "".concat(columnState.colId, " ").concat(columnState.sort) : "";
62
63
  };
64
+
65
+ // 深比较稳定引用:内容不变时返回同一引用。替代 JSON.stringify 作 memo 依赖——
66
+ // 避免每次渲染序列化大对象,且 isEqual 差异早退、对 Date/undefined 比较语义正确 @author nokecy
67
+ function useDeepCompareStable(value) {
68
+ var ref = useRef(value);
69
+ if (!_isEqual(ref.current, value)) {
70
+ ref.current = value;
71
+ }
72
+ return ref.current;
73
+ }
63
74
  function AgGridPlus(props) {
64
75
  var style = props.style,
65
76
  loadingProps = props.loading,
@@ -103,6 +114,8 @@ function AgGridPlus(props) {
103
114
  var gridRef = useRef();
104
115
  var apiRef = useRef();
105
116
  var allColDefsRef = useRef([]);
117
+ // 请求序号:只接受最新一次请求的响应,防止快速翻页/连续查询时慢请求乱序覆盖新结果 @author nokecy
118
+ var requestSeqRef = useRef(0);
106
119
 
107
120
  // 【新增】缓存初始的 columnDefs,用于保留原始 headerName
108
121
  // 这个值在组件生命周期中保持不变,不会被列方案修改
@@ -112,18 +125,18 @@ function AgGridPlus(props) {
112
125
  var rowIdCacheRef = useRef(new WeakMap());
113
126
  var rowIdCounterRef = useRef(0);
114
127
 
115
- /**
116
- * 【新增】智能生成唯一行 ID 的降级函数
117
- *
118
- * 策略(按优先级):
119
- * 1. 尝试常见 ID 字段:id, _id, key, uid, uuid
120
- * - 支持基本类型:string, number
121
- * - 支持对象类型:提取 value, id 属性
122
- * 2. 如果对象在 WeakMap 中已有缓存,直接返回
123
- * 3. 生成新的唯一 ID:grid-key-{counter}-{timestamp}
124
- *
125
- * @param data 行数据对象
126
- * @returns 唯一的行 ID 字符串
128
+ /**
129
+ * 【新增】智能生成唯一行 ID 的降级函数
130
+ *
131
+ * 策略(按优先级):
132
+ * 1. 尝试常见 ID 字段:id, _id, key, uid, uuid
133
+ * - 支持基本类型:string, number
134
+ * - 支持对象类型:提取 value, id 属性
135
+ * 2. 如果对象在 WeakMap 中已有缓存,直接返回
136
+ * 3. 生成新的唯一 ID:grid-key-{counter}-{timestamp}
137
+ *
138
+ * @param data 行数据对象
139
+ * @returns 唯一的行 ID 字符串
127
140
  */
128
141
  var generateUniqueRowId = useCallback(function (data) {
129
142
  if (!data || _typeof(data) !== 'object') {
@@ -252,18 +265,18 @@ function AgGridPlus(props) {
252
265
  advancedQueryRules = _useState24[0],
253
266
  setAdvancedQueryRules = _useState24[1];
254
267
 
255
- /**
256
- * 【P1 架构优化】使用单向数据流架构
257
- *
258
- * 数据流层次:
259
- * 1. Source of Truth: useSchemeDataFlow (Scheme State)
260
- * 2. Derived State: derivedColumnDefs/derivedColumnState (只读派生)
261
- * 3. UI State: Context State (仅用于 UI 交互)
262
- *
263
- * 优势:
264
- * - 清晰的数据流向(单向可追踪)
265
- * - 消除状态同步冲突(单一数据源)
266
- * - 架构清晰度 +60%,Bug -40%
268
+ /**
269
+ * 【P1 架构优化】使用单向数据流架构
270
+ *
271
+ * 数据流层次:
272
+ * 1. Source of Truth: useSchemeDataFlow (Scheme State)
273
+ * 2. Derived State: derivedColumnDefs/derivedColumnState (只读派生)
274
+ * 3. UI State: Context State (仅用于 UI 交互)
275
+ *
276
+ * 优势:
277
+ * - 清晰的数据流向(单向可追踪)
278
+ * - 消除状态同步冲突(单一数据源)
279
+ * - 架构清晰度 +60%,Bug -40%
267
280
  */
268
281
  var schemeDataFlow = useSchemeDataFlow(gridKey || '', allColDefsRef.current, {
269
282
  columnSchemes: columnSchemes,
@@ -345,14 +358,14 @@ function AgGridPlus(props) {
345
358
  }
346
359
  }, [rowData]);
347
360
 
348
- /**
349
- * 【P0 + P1 优化】使用派生状态应用方案(单向数据流)
350
- *
351
- * 优势:
352
- * 1. 使用已派生的状态,避免重复计算
353
- * 2. 单向数据流,状态同步更可靠
354
- * 3. 性能提升 67%,代码更清晰
355
- * 4. 使用 Promise 链和 requestAnimationFrame 解决竞态条件
361
+ /**
362
+ * 【P0 + P1 优化】使用派生状态应用方案(单向数据流)
363
+ *
364
+ * 优势:
365
+ * 1. 使用已派生的状态,避免重复计算
366
+ * 2. 单向数据流,状态同步更可靠
367
+ * 3. 性能提升 67%,代码更清晰
368
+ * 4. 使用 Promise 链和 requestAnimationFrame 解决竞态条件
356
369
  */
357
370
  useEffect(function () {
358
371
  if (!gridKey || !apiRef.current) return;
@@ -410,39 +423,38 @@ function AgGridPlus(props) {
410
423
  }, [gridKey, currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id, derivedColumnState, ready // 添加 ready 依赖,确保 Grid 初始化完成后再应用方案
411
424
  ]);
412
425
 
413
- /**
414
- * 【新增】监听当前方案 ID 变化,当方案被删除时重置列状态
415
- *
416
- * 场景:
417
- * - 用户删除当前正在使用的方案
418
- * - currentColumnScheme?.id 从有值变为 null
419
- *
420
- * 行为:
421
- * - 重置列状态为初始状态(默认顺序、宽度等)
422
- * - 清除所有过滤器
423
- * - 清除列样式配置
424
- *
425
- * 优势:
426
- * - 符合单向数据流架构
427
- * - 适用于所有方案切换场景(删除/取消选择)
428
- * - 用户体验好,自动恢复到初始状态
426
+ /**
427
+ * 【新增】监听当前方案 ID 变化,当方案被删除时重置列状态
428
+ *
429
+ * 场景:
430
+ * - 用户删除当前正在使用的方案
431
+ * - currentColumnScheme?.id 从有值变为 null
432
+ *
433
+ * 行为:
434
+ * - 重置列状态为初始状态(默认顺序、宽度等)
435
+ * - 清除所有过滤器
436
+ * - 清除列样式配置
437
+ *
438
+ * 优势:
439
+ * - 符合单向数据流架构
440
+ * - 适用于所有方案切换场景(删除/取消选择)
441
+ * - 用户体验好,自动恢复到初始状态
429
442
  */
430
443
  var prevSchemeIdRef = useRef(currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id);
431
444
  useEffect(function () {
432
445
  if (!gridKey || !apiRef.current || !ready) return;
433
446
  var prevSchemeId = prevSchemeIdRef.current;
434
447
  var currentSchemeId = currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id;
448
+
435
449
  // 检测方案被删除:从有值变为 null/undefined
436
450
  if (prevSchemeId && !currentSchemeId) {
437
451
  Promise.resolve().then(function () {
438
452
  if (!apiRef.current) return;
439
453
 
440
454
  // 1. 重置列状态为初始状态
441
-
442
455
  apiRef.current.resetColumnState();
443
456
 
444
457
  // 2. 清除所有过滤器
445
-
446
458
  apiRef.current.setFilterModel(null);
447
459
 
448
460
  // 3. 清除列样式配置
@@ -602,7 +614,7 @@ function AgGridPlus(props) {
602
614
  columnDefs = columnDefs.map(function (col) {
603
615
  return processColumnDefRecursively(col);
604
616
  });
605
- extensibleColumns && gridKey && extensibleColumns[gridKey] && extensibleColumns[gridKey].map(function (column) {
617
+ extensibleColumns && gridKey && extensibleColumns[gridKey] && extensibleColumns[gridKey].forEach(function (column) {
606
618
  columnDefs.push({
607
619
  field: column.name,
608
620
  headerName: column.displayName,
@@ -664,16 +676,10 @@ function AgGridPlus(props) {
664
676
  return cols;
665
677
  }, [React.Children.count(children), props.columnDefs, extensibleColumns, gridKey, entityType, hostEntityExtensions]);
666
678
 
667
- // 稳定化 gridParams 和 sortColumn 的引用
668
- var stableGridParams = useMemo(function () {
669
- return gridParams;
670
- }, [JSON.stringify(gridParams)]);
671
- var stableSortColumn = useMemo(function () {
672
- return sortColumn;
673
- }, [JSON.stringify(sortColumn)]);
674
- var stableQueryFilter = useMemo(function () {
675
- return queryFilter;
676
- }, [JSON.stringify(queryFilter)]);
679
+ // 稳定化 gridParams 和 sortColumn 的引用(深比较,内容不变即复用旧引用)
680
+ var stableGridParams = useDeepCompareStable(gridParams);
681
+ var stableSortColumn = useDeepCompareStable(sortColumn);
682
+ var stableQueryFilter = useDeepCompareStable(queryFilter);
677
683
 
678
684
  // AG-Grid v33+ 行选择配置(使用对象 API)
679
685
  var rowSelectionConfig = useMemo(function () {
@@ -757,8 +763,12 @@ function AgGridPlus(props) {
757
763
  maxResultCount: pagination.pageSize,
758
764
  sorter: getSort(stableSortColumn)
759
765
  });
766
+ var requestSeq = ++requestSeqRef.current;
760
767
  requestRef.current(params, undefined, queryFilter).then(function (response) {
761
768
  var _apiRef$current2;
769
+ // 过期响应(期间已发起更新的请求),直接丢弃 @author nokecy
770
+ if (requestSeq !== requestSeqRef.current) return;
771
+
762
772
  // 验证响应数据格式
763
773
  if (!response || _typeof(response) !== 'object') {
764
774
  throw new GridPlusError('服务器返回数据格式错误', ErrorType.DATA_FORMAT_ERROR, ErrorSeverity.HIGH, {
@@ -834,6 +844,8 @@ function AgGridPlus(props) {
834
844
  });
835
845
  }
836
846
  }).catch(function (error) {
847
+ // 过期请求的失败不再提示/改状态,避免干扰最新请求 @author nokecy
848
+ if (requestSeq !== requestSeqRef.current) return;
837
849
  setLoading(false);
838
850
 
839
851
  // 包装错误为 GridPlusError
@@ -1024,16 +1036,15 @@ function AgGridPlus(props) {
1024
1036
  });
1025
1037
  };
1026
1038
  var avgFun = function avgFun(field, displayedData) {
1027
- var sum = _sumBy(displayedData, function (cur) {
1028
- if (cur && isValidNumber(cur[field]) && cur[field] !== undefined && cur[field] !== null) {
1029
- return cur[field];
1030
- }
1031
- return 0;
1039
+ // 修正:分子分母口径统一为「有效数字」,避免 count 误用数组(恒真)及除零得 NaN @author nokecy
1040
+ var validValues = displayedData.filter(function (cur) {
1041
+ return cur && isValidNumber(cur[field]);
1032
1042
  });
1033
- var count = displayedData.filter(function (cur) {
1034
- return cur && cur[field] !== undefined && cur[field] !== null;
1043
+ if (validValues.length === 0) return 0;
1044
+ var sum = _sumBy(validValues, function (cur) {
1045
+ return cur[field];
1035
1046
  });
1036
- return count ? sum / count.length : 0;
1047
+ return sum / validValues.length;
1037
1048
  };
1038
1049
  var standardDeviationFun = function standardDeviationFun(field, displayedData) {
1039
1050
  var validValues = displayedData.filter(function (cur) {
@@ -1121,13 +1132,13 @@ function AgGridPlus(props) {
1121
1132
  calculateSum();
1122
1133
  };
1123
1134
 
1124
- /**
1125
- * 【P0 + P1 优化】列定义 - 优先使用派生状态
1126
- *
1127
- * 单向数据流优势:
1128
- * 1. 优先使用已派生的 derivedColumnDefs(避免重复计算)
1129
- * 2. 仅在无方案时使用默认逻辑
1130
- * 3. 性能提升 94%,架构清晰度 +60%
1135
+ /**
1136
+ * 【P0 + P1 优化】列定义 - 优先使用派生状态
1137
+ *
1138
+ * 单向数据流优势:
1139
+ * 1. 优先使用已派生的 derivedColumnDefs(避免重复计算)
1140
+ * 2. 仅在无方案时使用默认逻辑
1141
+ * 3. 性能提升 94%,架构清晰度 +60%
1131
1142
  */
1132
1143
  var colDefs = useMemo(function () {
1133
1144
  // 【优先使用派生状态】如果有派生的列定义,直接使用
@@ -1174,7 +1185,9 @@ function AgGridPlus(props) {
1174
1185
  return processedColumns;
1175
1186
  }, [
1176
1187
  // 【关键】优先依赖派生状态
1177
- derivedColumnDefs, React.Children.count(children), props.columnDefs, extensibleColumns, columnCellClass, allColDefsRef.current]);
1188
+ derivedColumnDefs, React.Children.count(children), props.columnDefs, extensibleColumns, columnCellClass,
1189
+ // ref.current 变更不触发重渲染,作依赖无效;改依赖真正的数据源 allColDefs(memo 值) @author nokecy
1190
+ allColDefs]);
1178
1191
 
1179
1192
  // 构建查询表单项(带 order 属性)
1180
1193
  var queryFormItems = useMemo(function () {
@@ -1252,10 +1265,10 @@ function AgGridPlus(props) {
1252
1265
  return {
1253
1266
  extensibleColumns: extensibleColumns,
1254
1267
  columnState: gridPlusColumnState,
1255
- allColDefs: allColDefsRef.current,
1256
- // 【修复】传入原始完整的列定义
1268
+ allColDefs: allColDefs,
1269
+ // 直接用 memo 值(与 ref 同源,引用变化能正确触发 memo 更新) @author nokecy
1257
1270
  initialColumnDefs: initialColumnDefsRef.current,
1258
- // 【新增】传入初始列定义(用于获取原始 headerName)
1271
+ // 初始列定义在 allColDefs 首次计算时填充,之后不变(用于获取原始 headerName)
1259
1272
  onSaveColumnState: onSaveColumnState,
1260
1273
  applyToGlobal: applyToGlobal,
1261
1274
  resetCurrent: resetCurrent,
@@ -1290,11 +1303,9 @@ function AgGridPlus(props) {
1290
1303
  // ========== 实体扩展字段配置 @author nokecy ==========
1291
1304
  hostEntityExtensions: hostEntityExtensions
1292
1305
  };
1293
- }, [extensibleColumns, gridPlusColumnState, allColDefsRef.current,
1294
- // 【修复】添加到依赖数组
1295
- initialColumnDefsRef.current,
1296
- // 【新增】添加初始列定义到依赖数组
1297
- onSaveColumnState, applyToGlobal, resetCurrent, resetAll, currentQueryScheme, queryItemsOrder, queryFormItems,
1306
+ }, [extensibleColumns, gridPlusColumnState,
1307
+ // ref.current 作依赖无效(变更不触发重渲染);依赖数据源 allColDefs,initialColumnDefs 随其首次计算填充 @author nokecy
1308
+ allColDefs, onSaveColumnState, applyToGlobal, resetCurrent, resetAll, currentQueryScheme, queryItemsOrder, queryFormItems,
1298
1309
  // 方案管理依赖
1299
1310
  columnSchemes, querySchemes, currentSchemes, schemesLoading, lastSyncTime, saveColumnScheme, deleteColumnScheme, saveQueryScheme, deleteQueryScheme, setCurrentColumnScheme, setCurrentQueryScheme, refreshSchemes, getColumnSchemes, getQuerySchemes, getCurrentScheme,
1300
1311
  // 全局配置依赖
@@ -1,26 +1,26 @@
1
1
  import React from "react";
2
2
 
3
- /**
4
- * 方案管理 API 接口
5
- *
6
- * ⚠️ 必须通过 useSchemeManager Hook 创建,然后传入 Provider
7
- *
8
- * @example
9
- * ```tsx
10
- * const adapter = useMemo(() => new BackendApiSchemeAdapter({ ... }), []);
11
- * const schemeManager = useSchemeManager({ adapter, autoLoad: true });
12
- *
13
- * <GridPlusContext.Provider value={{
14
- * ...otherValues,
15
- * ...schemeManager // 展开方案管理状态
16
- * }}>
17
- * ```
3
+ /**
4
+ * 方案管理 API 接口
5
+ *
6
+ * ⚠️ 必须通过 useSchemeManager Hook 创建,然后传入 Provider
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * const adapter = useMemo(() => new BackendApiSchemeAdapter({ ... }), []);
11
+ * const schemeManager = useSchemeManager({ adapter, autoLoad: true });
12
+ *
13
+ * <GridPlusContext.Provider value={{
14
+ * ...otherValues,
15
+ * ...schemeManager // 展开方案管理状态
16
+ * }}>
17
+ * ```
18
18
  */
19
19
 
20
- /**
21
- * GridPlus Context 值接口
22
- *
23
- * ⚠️ 必须包含方案管理 API,通过 useSchemeManager Hook 创建后传入
20
+ /**
21
+ * GridPlus Context 值接口
22
+ *
23
+ * ⚠️ 必须包含方案管理 API,通过 useSchemeManager Hook 创建后传入
24
24
  */
25
25
 
26
26
  export var GridPlusContext = /*#__PURE__*/React.createContext({
@@ -5,38 +5,39 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
5
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
7
  import { useMemo } from 'react';
8
+ import { logger } from "../utils/logger";
8
9
 
9
- /**
10
- * 【P1 架构优化】单向数据流 Hook
11
- *
12
- * 建立清晰的数据流层次:
13
- * 1. Source of Truth: Scheme State (通过参数传入)
14
- * 2. Derived State: Grid State (通过 useMemo 派生)
15
- * 3. UI State: Context State (仅用于 UI 交互)
16
- *
17
- * 优势:
18
- * - 架构清晰度 +60%(单向数据流易于追踪)
19
- * - Bug 减少率 -40%(消除状态冲突)
20
- * - 状态同步复杂度降低 70%
10
+ /**
11
+ * 【P1 架构优化】单向数据流 Hook
12
+ *
13
+ * 建立清晰的数据流层次:
14
+ * 1. Source of Truth: Scheme State (通过参数传入)
15
+ * 2. Derived State: Grid State (通过 useMemo 派生)
16
+ * 3. UI State: Context State (仅用于 UI 交互)
17
+ *
18
+ * 优势:
19
+ * - 架构清晰度 +60%(单向数据流易于追踪)
20
+ * - Bug 减少率 -40%(消除状态冲突)
21
+ * - 状态同步复杂度降低 70%
21
22
  */
22
23
 
23
- /**
24
- * 方案数据接口
24
+ /**
25
+ * 方案数据接口
25
26
  */
26
27
 
27
- /**
28
- * 数据源层 - 获取方案数据(单一数据源)
29
- *
30
- * @param gridKey - Grid 唯一标识
31
- * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
32
- * @returns 方案数据源对象
28
+ /**
29
+ * 数据源层 - 获取方案数据(单一数据源)
30
+ *
31
+ * @param gridKey - Grid 唯一标识
32
+ * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
33
+ * @returns 方案数据源对象
33
34
  */
34
35
  export function useSchemeSource(gridKey, schemeData) {
35
36
  var columnSchemes = schemeData.columnSchemes,
36
37
  querySchemes = schemeData.querySchemes,
37
38
  currentSchemes = schemeData.currentSchemes;
38
39
  return useMemo(function () {
39
- var _currentSchemes$gridK, _currentSchemes$gridK2;
40
+ var _currentSchemes$gridK, _currentSchemes$gridK2, _currentColumnScheme;
40
41
  var schemes = (columnSchemes === null || columnSchemes === void 0 ? void 0 : columnSchemes[gridKey]) || [];
41
42
  var currentColumnSchemeId = currentSchemes === null || currentSchemes === void 0 || (_currentSchemes$gridK = currentSchemes[gridKey]) === null || _currentSchemes$gridK === void 0 ? void 0 : _currentSchemes$gridK.columnSchemeId;
42
43
 
@@ -104,6 +105,15 @@ export function useSchemeSource(gridKey, schemeData) {
104
105
  isUsingGlobalQueryFallback = true;
105
106
  }
106
107
  }
108
+ logger.debug('[useSchemeSource] 方案数据源:', {
109
+ gridKey: gridKey,
110
+ schemes: schemes,
111
+ currentColumnSchemeId: currentColumnSchemeId,
112
+ currentColumnScheme: currentColumnScheme,
113
+ hasCurrentScheme: !!currentColumnScheme,
114
+ isUsingGlobalFallback: isUsingGlobalFallback,
115
+ columnConfigLength: (_currentColumnScheme = currentColumnScheme) === null || _currentColumnScheme === void 0 || (_currentColumnScheme = _currentColumnScheme.columnConfig) === null || _currentColumnScheme === void 0 ? void 0 : _currentColumnScheme.length
116
+ });
107
117
  return {
108
118
  // 列方案
109
119
  columnSchemes: schemes,
@@ -121,24 +131,41 @@ export function useSchemeSource(gridKey, schemeData) {
121
131
  }, [columnSchemes, querySchemes, currentSchemes, gridKey]);
122
132
  }
123
133
 
124
- /**
125
- * 派生层 - 计算 Grid 状态(只读派生)
126
- *
127
- * @param currentScheme - 当前列方案
128
- * @param allColDefs - 原始列定义
129
- * @returns 派生的 Grid 列定义
134
+ /**
135
+ * 派生层 - 计算 Grid 状态(只读派生)
136
+ *
137
+ * @param currentScheme - 当前列方案
138
+ * @param allColDefs - 原始列定义
139
+ * @returns 派生的 Grid 列定义
130
140
  */
131
141
  export function useDerivedGridState(currentScheme, allColDefs) {
132
142
  return useMemo(function () {
143
+ var _currentScheme$column;
144
+ logger.debug('[useDerivedGridState] 输入参数:', {
145
+ hasScheme: !!currentScheme,
146
+ schemeId: currentScheme === null || currentScheme === void 0 ? void 0 : currentScheme.id,
147
+ configLength: currentScheme === null || currentScheme === void 0 || (_currentScheme$column = currentScheme.columnConfig) === null || _currentScheme$column === void 0 ? void 0 : _currentScheme$column.length,
148
+ allColDefsLength: allColDefs === null || allColDefs === void 0 ? void 0 : allColDefs.length
149
+ });
133
150
  if (!(currentScheme !== null && currentScheme !== void 0 && currentScheme.columnConfig) || !allColDefs || allColDefs.length === 0) {
151
+ logger.debug('[useDerivedGridState] 返回 null (缺少必要数据)');
134
152
  return null;
135
153
  }
136
154
  try {
155
+ var _result$;
137
156
  var _require = require("../setting/columnGroupUtils"),
138
157
  flatConfigToGridState = _require.flatConfigToGridState;
139
158
 
140
159
  // 转换并缓存结果
141
160
  var result = flatConfigToGridState(currentScheme.columnConfig, allColDefs);
161
+ logger.debug('[useDerivedGridState] 转换成功:', {
162
+ resultLength: result === null || result === void 0 ? void 0 : result.length,
163
+ columnOrder: result === null || result === void 0 ? void 0 : result.map(function (col) {
164
+ return col.field;
165
+ }),
166
+ firstColumn: result === null || result === void 0 || (_result$ = result[0]) === null || _result$ === void 0 ? void 0 : _result$.field,
167
+ fullResult: result
168
+ });
142
169
  return result;
143
170
  } catch (error) {
144
171
  console.error('[useDerivedGridState] 转换失败:', error);
@@ -148,12 +175,12 @@ export function useDerivedGridState(currentScheme, allColDefs) {
148
175
  currentScheme === null || currentScheme === void 0 ? void 0 : currentScheme.id, allColDefs]);
149
176
  }
150
177
 
151
- /**
152
- * 派生层 - 计算列样式状态(只读派生)
153
- *
154
- * @param currentScheme - 当前列方案
155
- * @param allColDefs - 原始列定义(用于检测新增列)
156
- * @returns 派生的列状态配置
178
+ /**
179
+ * 派生层 - 计算列样式状态(只读派生)
180
+ *
181
+ * @param currentScheme - 当前列方案
182
+ * @param allColDefs - 原始列定义(用于检测新增列)
183
+ * @returns 派生的列状态配置
157
184
  */
158
185
  export function useDerivedColumnState(currentScheme, allColDefs) {
159
186
  return useMemo(function () {
@@ -166,6 +193,15 @@ export function useDerivedColumnState(currentScheme, allColDefs) {
166
193
 
167
194
  // 转换列状态,传入原始列定义以检测新增列
168
195
  var result = flatConfigToColumnState(currentScheme.columnConfig, allColDefs);
196
+ logger.debug('[useDerivedColumnState] 转换结果:', {
197
+ schemeId: currentScheme.id,
198
+ columnConfigLength: currentScheme.columnConfig.length,
199
+ resultLength: result === null || result === void 0 ? void 0 : result.length,
200
+ columnOrder: result === null || result === void 0 ? void 0 : result.map(function (r) {
201
+ return r.colId;
202
+ }),
203
+ fullResult: result
204
+ });
169
205
  return result;
170
206
  } catch (error) {
171
207
  console.error('[useDerivedColumnState] 转换失败:', error);
@@ -175,30 +211,30 @@ export function useDerivedColumnState(currentScheme, allColDefs) {
175
211
  currentScheme === null || currentScheme === void 0 ? void 0 : currentScheme.id, allColDefs]);
176
212
  }
177
213
 
178
- /**
179
- * 统一的方案数据流 Hook(组合版)
180
- *
181
- * @param gridKey - Grid 唯一标识
182
- * @param allColDefs - 原始列定义
183
- * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
184
- * @returns 完整的方案数据流对象
185
- *
186
- * @example
187
- * ```tsx
188
- * function AgGridPlus({ gridKey }) {
189
- * const allColDefsRef = useRef([]);
190
- * const { columnSchemes, querySchemes, currentSchemes } = useGridSchemes();
191
- *
192
- * const schemeDataFlow = useSchemeDataFlow(
193
- * gridKey,
194
- * allColDefsRef.current,
195
- * { columnSchemes, querySchemes, currentSchemes }
196
- * );
197
- *
198
- * // 只读访问数据
199
- * const { currentColumnScheme, derivedColumnDefs } = schemeDataFlow;
200
- * }
201
- * ```
214
+ /**
215
+ * 统一的方案数据流 Hook(组合版)
216
+ *
217
+ * @param gridKey - Grid 唯一标识
218
+ * @param allColDefs - 原始列定义
219
+ * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
220
+ * @returns 完整的方案数据流对象
221
+ *
222
+ * @example
223
+ * ```tsx
224
+ * function AgGridPlus({ gridKey }) {
225
+ * const allColDefsRef = useRef([]);
226
+ * const { columnSchemes, querySchemes, currentSchemes } = useGridSchemes();
227
+ *
228
+ * const schemeDataFlow = useSchemeDataFlow(
229
+ * gridKey,
230
+ * allColDefsRef.current,
231
+ * { columnSchemes, querySchemes, currentSchemes }
232
+ * );
233
+ *
234
+ * // 只读访问数据
235
+ * const { currentColumnScheme, derivedColumnDefs } = schemeDataFlow;
236
+ * }
237
+ * ```
202
238
  */
203
239
  export function useSchemeDataFlow(gridKey, allColDefs, schemeData) {
204
240
  // 1. 数据源层(Source of Truth)