@nokecy/qc-ui 1.0.91 → 1.0.93

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 (224) hide show
  1. package/dist/cjs/ag-grid-plus/_utils/processColumnGroups.d.ts +2 -1
  2. package/dist/cjs/ag-grid-plus/_utils/processColumnGroups.js +6 -5
  3. package/dist/cjs/ag-grid-plus/ag-gridPlus.js +69 -35
  4. package/dist/cjs/ag-grid-plus/context/gridContext.d.ts +5 -0
  5. package/dist/cjs/ag-grid-plus/index.d.ts +0 -1
  6. package/dist/cjs/ag-grid-plus/index.js +0 -1
  7. package/dist/cjs/ag-grid-plus/setting/ColumnSetting.js +26 -20
  8. package/dist/cjs/ag-grid-plus/setting/columnGroupUtils.d.ts +5 -1
  9. package/dist/cjs/ag-grid-plus/setting/columnGroupUtils.js +64 -1
  10. package/dist/cjs/ag-grid-plus/theme.d.ts +5 -0
  11. package/dist/cjs/ag-grid-plus/theme.js +78 -0
  12. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.d.ts +2 -1
  13. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.js +6 -5
  14. package/dist/esm/ag-grid-plus/ag-gridPlus.js +68 -35
  15. package/dist/esm/ag-grid-plus/context/gridContext.d.ts +5 -0
  16. package/dist/esm/ag-grid-plus/errors/ErrorBoundary.d.ts +1 -1
  17. package/dist/esm/ag-grid-plus/index.d.ts +0 -1
  18. package/dist/esm/ag-grid-plus/index.js +0 -1
  19. package/dist/esm/ag-grid-plus/setting/ColumnSetting.js +27 -21
  20. package/dist/esm/ag-grid-plus/setting/columnGroupUtils.d.ts +5 -1
  21. package/dist/esm/ag-grid-plus/setting/columnGroupUtils.js +64 -1
  22. package/dist/esm/ag-grid-plus/theme.d.ts +5 -0
  23. package/dist/esm/ag-grid-plus/theme.js +72 -0
  24. package/dist/esm/standardFormDialog/useStandardFormSchema.d.ts +1 -1
  25. package/dist/umd/qc-ui.min.css +1 -1
  26. package/dist/umd/qc-ui.min.js +1 -1
  27. package/package.json +1 -1
  28. package/dist/esm/ConfirmPro/index.d.ts.map +0 -1
  29. package/dist/esm/RuleBuilder/LogicSelector.d.ts.map +0 -1
  30. package/dist/esm/RuleBuilder/RuleBuilderContainer.d.ts.map +0 -1
  31. package/dist/esm/RuleBuilder/RuleCard.d.ts.map +0 -1
  32. package/dist/esm/RuleBuilder/RuleGroupEditor.d.ts.map +0 -1
  33. package/dist/esm/RuleBuilder/constants/operators.d.ts.map +0 -1
  34. package/dist/esm/RuleBuilder/context/RuleBuilderContext.d.ts.map +0 -1
  35. package/dist/esm/RuleBuilder/index.d.ts.map +0 -1
  36. package/dist/esm/RuleBuilder/inputs/BetweenValueInput.d.ts.map +0 -1
  37. package/dist/esm/RuleBuilder/inputs/MultiValueInput.d.ts.map +0 -1
  38. package/dist/esm/RuleBuilder/inputs/SingleValueInput.d.ts.map +0 -1
  39. package/dist/esm/RuleBuilder/inputs/ValueInput.d.ts.map +0 -1
  40. package/dist/esm/RuleBuilder/selectors/FieldSelector.d.ts.map +0 -1
  41. package/dist/esm/RuleBuilder/selectors/OperatorSelector.d.ts.map +0 -1
  42. package/dist/esm/RuleBuilder/types/index.d.ts.map +0 -1
  43. package/dist/esm/RuleBuilder/utils/pathHelpers.d.ts.map +0 -1
  44. package/dist/esm/RuleBuilder/utils/ruleHelpers.d.ts.map +0 -1
  45. package/dist/esm/RuleBuilder/utils/validation.d.ts.map +0 -1
  46. package/dist/esm/ag-grid-plus/_utils/boolSelect.d.ts.map +0 -1
  47. package/dist/esm/ag-grid-plus/_utils/customGroupCellRenderer.d.ts.map +0 -1
  48. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.d.ts.map +0 -1
  49. package/dist/esm/ag-grid-plus/_utils/processFormColumnState.d.ts.map +0 -1
  50. package/dist/esm/ag-grid-plus/ag-gridPlus.d.ts.map +0 -1
  51. package/dist/esm/ag-grid-plus/context/gridContext.d.ts.map +0 -1
  52. package/dist/esm/ag-grid-plus/errors/ErrorBoundary.d.ts.map +0 -1
  53. package/dist/esm/ag-grid-plus/errors/index.d.ts.map +0 -1
  54. package/dist/esm/ag-grid-plus/errors/types.d.ts.map +0 -1
  55. package/dist/esm/ag-grid-plus/hooks/index.d.ts.map +0 -1
  56. package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.d.ts.map +0 -1
  57. package/dist/esm/ag-grid-plus/hooks/useAgGridData.d.ts.map +0 -1
  58. package/dist/esm/ag-grid-plus/hooks/useGridPlusColumnState.d.ts.map +0 -1
  59. package/dist/esm/ag-grid-plus/hooks/useGridState.d.ts.map +0 -1
  60. package/dist/esm/ag-grid-plus/index.d.ts.map +0 -1
  61. package/dist/esm/ag-grid-plus/interface.d.ts.map +0 -1
  62. package/dist/esm/ag-grid-plus/locale.d.ts.map +0 -1
  63. package/dist/esm/ag-grid-plus/queryForm/index.d.ts.map +0 -1
  64. package/dist/esm/ag-grid-plus/queryForm/queryForm.d.ts.map +0 -1
  65. package/dist/esm/ag-grid-plus/querySchemes/components/QuerySchemesManager.d.ts.map +0 -1
  66. package/dist/esm/ag-grid-plus/querySchemes/components/index.d.ts.map +0 -1
  67. package/dist/esm/ag-grid-plus/querySchemes/constants.d.ts.map +0 -1
  68. package/dist/esm/ag-grid-plus/querySchemes/hooks/useQueryOrderManager.d.ts.map +0 -1
  69. package/dist/esm/ag-grid-plus/querySchemes/hooks/useQuerySchemes.d.ts.map +0 -1
  70. package/dist/esm/ag-grid-plus/querySchemes/index.d.ts.map +0 -1
  71. package/dist/esm/ag-grid-plus/querySchemes/storage/localStorageAdapter.d.ts.map +0 -1
  72. package/dist/esm/ag-grid-plus/querySchemes/types.d.ts.map +0 -1
  73. package/dist/esm/ag-grid-plus/querySchemes/utils/validator.d.ts.map +0 -1
  74. package/dist/esm/ag-grid-plus/schemes/components/SchemeManager.d.ts.map +0 -1
  75. package/dist/esm/ag-grid-plus/schemes/components/SchemeSelector.d.ts.map +0 -1
  76. package/dist/esm/ag-grid-plus/schemes/components/index.d.ts.map +0 -1
  77. package/dist/esm/ag-grid-plus/schemes/constants.d.ts.map +0 -1
  78. package/dist/esm/ag-grid-plus/schemes/hooks/useColumnSchemes.d.ts.map +0 -1
  79. package/dist/esm/ag-grid-plus/schemes/index.d.ts.map +0 -1
  80. package/dist/esm/ag-grid-plus/schemes/storage/localStorageAdapter.d.ts.map +0 -1
  81. package/dist/esm/ag-grid-plus/schemes/types.d.ts.map +0 -1
  82. package/dist/esm/ag-grid-plus/schemes/utils/validator.d.ts.map +0 -1
  83. package/dist/esm/ag-grid-plus/setting/ColumnConfigForm.d.ts.map +0 -1
  84. package/dist/esm/ag-grid-plus/setting/ColumnConfigTable.d.ts.map +0 -1
  85. package/dist/esm/ag-grid-plus/setting/ColumnSetting.d.ts.map +0 -1
  86. package/dist/esm/ag-grid-plus/setting/MoveNodeModal.d.ts.map +0 -1
  87. package/dist/esm/ag-grid-plus/setting/NameColumnRenderer.d.ts.map +0 -1
  88. package/dist/esm/ag-grid-plus/setting/columnGroupTypes.d.ts.map +0 -1
  89. package/dist/esm/ag-grid-plus/setting/columnGroupUtils.d.ts.map +0 -1
  90. package/dist/esm/ag-grid-plus/setting/index.d.ts.map +0 -1
  91. package/dist/esm/ag-grid-plus/settingItem/index.d.ts.map +0 -1
  92. package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.d.ts.map +0 -1
  93. package/dist/esm/ag-grid-plus/storage/MemoryStorageAdapter.d.ts.map +0 -1
  94. package/dist/esm/ag-grid-plus/storage/SchemeSyncManager.d.ts.map +0 -1
  95. package/dist/esm/ag-grid-plus/storage/globalSyncManager.d.ts.map +0 -1
  96. package/dist/esm/ag-grid-plus/storage/index.d.ts.map +0 -1
  97. package/dist/esm/ag-grid-plus/storage/types.d.ts.map +0 -1
  98. package/dist/esm/ag-grid-plus/toolBar/index.d.ts.map +0 -1
  99. package/dist/esm/ag-grid-plus/toolBar/style.d.ts.map +0 -1
  100. package/dist/esm/ag-grid-plus/types.d.ts.map +0 -1
  101. package/dist/esm/ag-grid-plus/utils/columnProcessors.d.ts.map +0 -1
  102. package/dist/esm/ag-grid-plus/utils/constants.d.ts.map +0 -1
  103. package/dist/esm/ag-grid-plus/utils/logger.d.ts.map +0 -1
  104. package/dist/esm/ag-grid-plus/utils/sanitize.d.ts.map +0 -1
  105. package/dist/esm/ag-grid-plus/utils.d.ts.map +0 -1
  106. package/dist/esm/array-table/arrayAddBtn.d.ts.map +0 -1
  107. package/dist/esm/array-table/arrayBase.d.ts.map +0 -1
  108. package/dist/esm/array-table/columnHelper.d.ts.map +0 -1
  109. package/dist/esm/array-table/hooks.d.ts.map +0 -1
  110. package/dist/esm/array-table/index.d.ts.map +0 -1
  111. package/dist/esm/array-table/interface.d.ts.map +0 -1
  112. package/dist/esm/array-table/preview.d.ts.map +0 -1
  113. package/dist/esm/array-table/utils.d.ts.map +0 -1
  114. package/dist/esm/array-table-index/index.d.ts.map +0 -1
  115. package/dist/esm/card/index.d.ts.map +0 -1
  116. package/dist/esm/components/RegexEditor/core/RegexEditor.d.ts.map +0 -1
  117. package/dist/esm/components/RegexEditor/core/extensions/errorMarker.d.ts.map +0 -1
  118. package/dist/esm/components/RegexEditor/core/types.d.ts.map +0 -1
  119. package/dist/esm/components/RegexEditor/hooks/index.d.ts.map +0 -1
  120. package/dist/esm/components/RegexEditor/hooks/useRegexTester.d.ts.map +0 -1
  121. package/dist/esm/components/RegexEditor/hooks/useRegexValidation.d.ts.map +0 -1
  122. package/dist/esm/components/RegexEditor/hooks/useTemplateManager.d.ts.map +0 -1
  123. package/dist/esm/components/RegexEditor/index.d.ts.map +0 -1
  124. package/dist/esm/components/RegexEditor/templates/TemplateSelector.d.ts.map +0 -1
  125. package/dist/esm/components/RegexEditor/templates/builtinTemplates.d.ts.map +0 -1
  126. package/dist/esm/components/RegexEditor/templates/index.d.ts.map +0 -1
  127. package/dist/esm/components/RegexEditor/templates/storage.d.ts.map +0 -1
  128. package/dist/esm/components/RegexEditor/templates/templateManager.d.ts.map +0 -1
  129. package/dist/esm/components/RegexEditor/templates/types.d.ts.map +0 -1
  130. package/dist/esm/components/RegexEditor/testing/types.d.ts.map +0 -1
  131. package/dist/esm/components/RegexEditor/validation/complexity.d.ts.map +0 -1
  132. package/dist/esm/components/RegexEditor/validation/parser.d.ts.map +0 -1
  133. package/dist/esm/components/RegexEditor/validation/types.d.ts.map +0 -1
  134. package/dist/esm/components/RegexEditor/validation/validator.d.ts.map +0 -1
  135. package/dist/esm/components/RegexEditor/visualizer/FlagsSelector.d.ts.map +0 -1
  136. package/dist/esm/components/RegexEditor/visualizer/MatchItem.d.ts.map +0 -1
  137. package/dist/esm/components/RegexEditor/visualizer/RegexRailroadDiagram.d.ts.map +0 -1
  138. package/dist/esm/components/RegexEditor/visualizer/RegexTester.d.ts.map +0 -1
  139. package/dist/esm/components/RegexEditor/visualizer/astToRailroad.d.ts.map +0 -1
  140. package/dist/esm/components/RegexEditor/visualizer/index.d.ts.map +0 -1
  141. package/dist/esm/components/RegexEditor/visualizer/types.d.ts.map +0 -1
  142. package/dist/esm/components/RegexEditor/visualizer/utils.d.ts.map +0 -1
  143. package/dist/esm/dashboard/dashboard/components/index.d.ts.map +0 -1
  144. package/dist/esm/dashboard/dashboard/components/modal/index.d.ts.map +0 -1
  145. package/dist/esm/dashboard/dashboard/components/toolbar/index.d.ts.map +0 -1
  146. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.d.ts.map +0 -1
  147. package/dist/esm/dashboard/dashboard/index.d.ts.map +0 -1
  148. package/dist/esm/dashboard/dashboard/service.d.ts.map +0 -1
  149. package/dist/esm/dashboard/dashboard/utils.d.ts.map +0 -1
  150. package/dist/esm/dashboard/index.d.ts.map +0 -1
  151. package/dist/esm/dashboard/utils.d.ts.map +0 -1
  152. package/dist/esm/dashboard/widget/index.d.ts.map +0 -1
  153. package/dist/esm/dashboard/widget/selector/index.d.ts.map +0 -1
  154. package/dist/esm/dashboard/widget/utils.d.ts.map +0 -1
  155. package/dist/esm/deleteConfirm/index.d.ts.map +0 -1
  156. package/dist/esm/dialogSelect/index.d.ts.map +0 -1
  157. package/dist/esm/draggableModal/index.d.ts.map +0 -1
  158. package/dist/esm/editable/index.d.ts.map +0 -1
  159. package/dist/esm/editable/style.d.ts.map +0 -1
  160. package/dist/esm/extensible-grid/index.d.ts.map +0 -1
  161. package/dist/esm/extensible-grid/interface.d.ts.map +0 -1
  162. package/dist/esm/formDesigner/FormDesigner.d.ts.map +0 -1
  163. package/dist/esm/formDesigner/ProCard/index.d.ts.map +0 -1
  164. package/dist/esm/formDesigner/arrayTable/arrayTableSchema.d.ts.map +0 -1
  165. package/dist/esm/formDesigner/arrayTable/index.d.ts.map +0 -1
  166. package/dist/esm/formDesigner/arrayTable/preview.d.ts.map +0 -1
  167. package/dist/esm/formDesigner/index.d.ts.map +0 -1
  168. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/index.d.ts.map +0 -1
  169. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/preview.d.ts.map +0 -1
  170. package/dist/esm/formDesigner/preWidgets/card/index.d.ts.map +0 -1
  171. package/dist/esm/formDesigner/preWidgets/card/preview.d.ts.map +0 -1
  172. package/dist/esm/formDesigner/preWidgets/index.d.ts.map +0 -1
  173. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.d.ts.map +0 -1
  174. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.d.ts.map +0 -1
  175. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.d.ts.map +0 -1
  176. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.d.ts.map +0 -1
  177. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.d.ts.map +0 -1
  178. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.d.ts.map +0 -1
  179. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.d.ts.map +0 -1
  180. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.d.ts.map +0 -1
  181. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.d.ts.map +0 -1
  182. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.d.ts.map +0 -1
  183. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.d.ts.map +0 -1
  184. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.d.ts.map +0 -1
  185. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.d.ts.map +0 -1
  186. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.d.ts.map +0 -1
  187. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.d.ts.map +0 -1
  188. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.d.ts.map +0 -1
  189. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.d.ts.map +0 -1
  190. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.d.ts.map +0 -1
  191. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.d.ts.map +0 -1
  192. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.d.ts.map +0 -1
  193. package/dist/esm/formDesigner/preWidgets/utils.d.ts.map +0 -1
  194. package/dist/esm/formDesigner/widgets/ActionsWidget.d.ts.map +0 -1
  195. package/dist/esm/formDesigner/widgets/LogoWidget.d.ts.map +0 -1
  196. package/dist/esm/formDesigner/widgets/PreviewWidget.d.ts.map +0 -1
  197. package/dist/esm/formDesigner/widgets/SchemaEditorWidget.d.ts.map +0 -1
  198. package/dist/esm/formDesigner/widgets/index.d.ts.map +0 -1
  199. package/dist/esm/formPro/context/formProContext.d.ts.map +0 -1
  200. package/dist/esm/formPro/formLayoutPro.d.ts.map +0 -1
  201. package/dist/esm/formPro/index.d.ts.map +0 -1
  202. package/dist/esm/fullScreenAlert/index.d.ts.map +0 -1
  203. package/dist/esm/generatedListPage/ConfigurableToolbar.d.ts.map +0 -1
  204. package/dist/esm/generatedListPage/GeneratedListPage.d.ts.map +0 -1
  205. package/dist/esm/generatedListPage/OptionsColumn.d.ts.map +0 -1
  206. package/dist/esm/generatedListPage/PerformanceMonitor.d.ts.map +0 -1
  207. package/dist/esm/generatedListPage/RequestManager.d.ts.map +0 -1
  208. package/dist/esm/generatedListPage/_utils/AccessWrapper.d.ts.map +0 -1
  209. package/dist/esm/generatedListPage/_utils/defaultHandlers.d.ts.map +0 -1
  210. package/dist/esm/generatedListPage/index.d.ts.map +0 -1
  211. package/dist/esm/generatedListPage/types.d.ts.map +0 -1
  212. package/dist/esm/generatedListPage/usePermissionCheck.d.ts.map +0 -1
  213. package/dist/esm/generatedListPage/useRequestManager.d.ts.map +0 -1
  214. package/dist/esm/importModal/index.d.ts.map +0 -1
  215. package/dist/esm/index.d.ts.map +0 -1
  216. package/dist/esm/queryBuilder/index.d.ts.map +0 -1
  217. package/dist/esm/standardFormDialog/FormValidation.d.ts.map +0 -1
  218. package/dist/esm/standardFormDialog/PortalManager.d.ts.map +0 -1
  219. package/dist/esm/standardFormDialog/StandardFormDialog.d.ts.map +0 -1
  220. package/dist/esm/standardFormDialog/index.d.ts.map +0 -1
  221. package/dist/esm/standardFormDialog/types.d.ts.map +0 -1
  222. package/dist/esm/standardFormDialog/useStandardFormSchema.d.ts.map +0 -1
  223. package/dist/esm/standardFormDialog/withStandardForm.d.ts.map +0 -1
  224. package/dist/esm/toolBar/index.d.ts.map +0 -1
@@ -5,7 +5,8 @@
5
5
  * 2. 旧格式:{ groupName: string } (简单的分组名称)
6
6
  *
7
7
  * @param columns 列配置数组
8
+ * @param originalColumnDefs 原始列定义数组(可选),用于保留自定义属性
8
9
  * @returns AG-Grid 列定义
9
10
  */
10
- declare const processColumnGroups: (columns: any[]) => any;
11
+ declare const processColumnGroups: (columns: any[], originalColumnDefs?: any[]) => any;
11
12
  export default processColumnGroups;
@@ -24,9 +24,10 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
24
24
  * 2. 旧格式:{ groupName: string } (简单的分组名称)
25
25
  *
26
26
  * @param columns 列配置数组
27
+ * @param originalColumnDefs 原始列定义数组(可选),用于保留自定义属性
27
28
  * @returns AG-Grid 列定义
28
29
  */
29
- var processColumnGroups = function processColumnGroups(columns) {
30
+ var processColumnGroups = function processColumnGroups(columns, originalColumnDefs) {
30
31
  // 如果是空数组,直接返回
31
32
  if (!columns || columns.length === 0) {
32
33
  return [];
@@ -49,16 +50,16 @@ var processColumnGroups = function processColumnGroups(columns) {
49
50
  return col.id !== undefined && col.level !== undefined && col.order !== undefined && (col.type === 'group' || col.type === 'column');
50
51
  });
51
52
  if (isNewFormat) {
52
- // 新格式:使用 flatConfigToGridState 转换
53
- return (0, _columnGroupUtils.flatConfigToGridState)(columns);
53
+ // 新格式:使用 flatConfigToGridState 转换,传入原始列定义以保留自定义属性
54
+ return (0, _columnGroupUtils.flatConfigToGridState)(columns, originalColumnDefs);
54
55
  }
55
56
 
56
57
  // 旧格式:使用旧的处理逻辑
57
58
  // 检查是否需要迁移
58
59
  if ((0, _columnGroupUtils.isOldSchemeData)(columns)) {
59
- // 先迁移到新格式,再转换
60
+ // 先迁移到新格式,再转换,传入原始列定义
60
61
  var migrated = (0, _columnGroupUtils.migrateOldScheme)(columns);
61
- return (0, _columnGroupUtils.flatConfigToGridState)(migrated);
62
+ return (0, _columnGroupUtils.flatConfigToGridState)(migrated, originalColumnDefs);
62
63
  }
63
64
 
64
65
  // 兼容最原始的格式(groupName)
@@ -12,6 +12,7 @@ var _agGridReact = require("ag-grid-react");
12
12
  var _antd = require("antd");
13
13
  var _react = _interopRequireWildcard(require("react"));
14
14
  var _agGridEnterprise = require("ag-grid-enterprise");
15
+ var _theme = require("./theme");
15
16
  require("./index.less");
16
17
  var _queryForm = _interopRequireDefault(require("./queryForm"));
17
18
  var _toolBar = _interopRequireDefault(require("./toolBar"));
@@ -53,6 +54,9 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
53
54
  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; }
54
55
  // AG-Grid v33+ 需要显式注册模块
55
56
  _agGridCommunity.ModuleRegistry.registerModules([_agGridEnterprise.AllEnterpriseModule]);
57
+
58
+ // 导入 AG-Grid v33 主题
59
+
56
60
  var Text = _antd.Typography.Text;
57
61
  var getSort = function getSort(columnState) {
58
62
  return columnState ? "".concat(columnState.colId, " ").concat(columnState.sort) : "";
@@ -249,12 +253,44 @@ function AgGridPlus(props) {
249
253
  // 只在首次有数据时保存
250
254
  if (!firstRowDataRef.current && rowData.length > 0) {
251
255
  firstRowDataRef.current = rowData[0];
252
- console.log('[AgGridPlus] 保存首行数据用于类型推断:', firstRowDataRef.current);
253
256
  }
254
257
  }, [rowData]);
255
258
 
256
- // 测试列数据
257
- // const restData = [{"id":"47","field":"code","headerName":"编码","width":110,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"code","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"48","field":"name","headerName":"名称","width":110,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"name","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"49","field":"abbName","headerName":"简称","width":110,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"abbName","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"50","field":"address","headerName":"地址","width":662,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"address","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":1},{"id":"51","field":"creator","headerName":"创建人","width":90,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"creator","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"52","field":"creationTime","headerName":"创建时间","width":160,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"creationTime","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"53","field":"lastModifier","headerName":"最后修改人","width":90,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"lastModifier","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"54","field":"lastModificationTime","headerName":"最后修改时间","width":160,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"lastModificationTime","pinned":null,"sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null},{"id":"55","field":"","headerName":"操作","width":160,"hide":false,"cellClass":"custom-cell-left","suppressHeaderFilterButton":true,"colId":"0","pinned":"right","sort":null,"sortIndex":null,"aggFunc":null,"rowGroup":false,"rowGroupIndex":null,"pivot":false,"pivotIndex":null,"flex":null}]
259
+ // 【修复】加载列方案时,合并原始列定义和方案配置
260
+ // 确保保留 cellRenderer、valueFormatter、valueEnum 等自定义属性
261
+ (0, _react.useEffect)(function () {
262
+ if (!gridKey || !apiRef.current) return;
263
+ var currentScheme = columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme;
264
+
265
+ // 只有当有 columnConfig 时才应用方案
266
+ if (currentScheme !== null && currentScheme !== void 0 && currentScheme.columnConfig && currentScheme.columnConfig.length > 0) {
267
+ var _require = require("./setting/columnGroupUtils"),
268
+ flatConfigToGridState = _require.flatConfigToGridState;
269
+
270
+ // 【关键】使用 flatConfigToGridState 合并原始列定义和方案配置
271
+ // 这样可以保留原始列定义中的 cellRenderer、valueFormatter、valueEnum 等属性
272
+ var mergedColumnDefs = flatConfigToGridState(currentScheme.columnConfig, allColDefsRef.current // 传入原始完整的列定义
273
+ );
274
+
275
+ // 应用合并后的列定义
276
+ apiRef.current.setGridOption("columnDefs", mergedColumnDefs);
277
+
278
+ // 设置列样式
279
+ var _require2 = require("./setting/columnGroupUtils"),
280
+ flatConfigToColumnState = _require2.flatConfigToColumnState;
281
+ var _columnState = flatConfigToColumnState(currentScheme.columnConfig);
282
+ setColumnCellClass(handelgridPlusColumnState(_columnState));
283
+ }
284
+
285
+ // 应用过滤器状态
286
+ if (currentScheme !== null && currentScheme !== void 0 && currentScheme.filterModel) {
287
+ setTimeout(function () {
288
+ if (apiRef.current) {
289
+ apiRef.current.setFilterModel(currentScheme.filterModel);
290
+ }
291
+ }, 50);
292
+ }
293
+ }, [gridKey, apiRef.current, columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme, allColDefsRef.current]);
258
294
 
259
295
  // 加载列方案
260
296
  // 仅用于设置列样式,不改变列结构
@@ -265,16 +301,10 @@ function AgGridPlus(props) {
265
301
 
266
302
  // 只有当有 columnConfig 时才设置列样式
267
303
  if (columnSchemeManager !== null && columnSchemeManager !== void 0 && (_columnSchemeManager$ = columnSchemeManager.currentScheme) !== null && _columnSchemeManager$ !== void 0 && _columnSchemeManager$.columnConfig) {
268
- var _require = require("./setting/columnGroupUtils"),
269
- flatConfigToColumnState = _require.flatConfigToColumnState;
270
- var _columnState = flatConfigToColumnState(columnSchemeManager.currentScheme.columnConfig);
271
- console.log('[AgGridPlus] useEffect #1: 设置列样式', {
272
- gridKey: gridKey,
273
- schemeId: columnSchemeManager.currentScheme.id,
274
- schemeName: columnSchemeManager.currentScheme.name,
275
- columnCount: _columnState.length
276
- });
277
- setColumnCellClass(handelgridPlusColumnState(_columnState));
304
+ var _require3 = require("./setting/columnGroupUtils"),
305
+ flatConfigToColumnState = _require3.flatConfigToColumnState;
306
+ var _columnState2 = flatConfigToColumnState(columnSchemeManager.currentScheme.columnConfig);
307
+ setColumnCellClass(handelgridPlusColumnState(_columnState2));
278
308
 
279
309
  // 【重要】不再调用 applyColumnState
280
310
  // 原因:
@@ -286,6 +316,7 @@ function AgGridPlus(props) {
286
316
 
287
317
  // 【修复】使用 applyColumnState 来应用列的顺序、宽度、隐藏等状态
288
318
  // applyColumnState 是 AG-Grid 推荐的方式,专门用于控制列状态
319
+ // 【重要】使用 defaultState: false 确保只更新方案中保存的属性,保留其他原始列属性
289
320
  (0, _react.useEffect)(function () {
290
321
  var currentScheme = columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme;
291
322
  if (!apiRef.current || !currentScheme) {
@@ -294,15 +325,18 @@ function AgGridPlus(props) {
294
325
 
295
326
  // 如果有 columnConfig,使用 applyColumnState 应用列状态
296
327
  if (currentScheme.columnConfig && currentScheme.columnConfig.length > 0) {
297
- var _require2 = require("./setting/columnGroupUtils"),
298
- flatConfigToColumnState = _require2.flatConfigToColumnState;
299
- var _columnState2 = flatConfigToColumnState(currentScheme.columnConfig);
328
+ var _require4 = require("./setting/columnGroupUtils"),
329
+ flatConfigToColumnState = _require4.flatConfigToColumnState;
330
+ var _columnState3 = flatConfigToColumnState(currentScheme.columnConfig);
300
331
 
301
332
  // 使用 applyColumnState 应用列状态
302
- // applyOrder: true 表示按照 state 数组的顺序重新排列列
333
+ // applyOrder: true - 按照 state 数组的顺序重新排列列
334
+ // defaultState: undefined - 【关键】不提供默认状态,只更新方案中指定的属性,保留其他原始列属性
303
335
  apiRef.current.applyColumnState({
304
- state: _columnState2,
336
+ state: _columnState3,
305
337
  applyOrder: true
338
+ // 不设置 defaultState,这样只会更新 state 中指定的属性
339
+ // 保留列定义中的 cellRenderer、valueFormatter、headerName 等属性
306
340
  });
307
341
  }
308
342
 
@@ -481,14 +515,6 @@ function AgGridPlus(props) {
481
515
  var cols = getTableColumns([dataForTypeInference]);
482
516
  allColDefsRef.current = cols; // 同步更新 ref
483
517
 
484
- console.log('[AgGridPlus] allColDefs 重新计算:', {
485
- childrenCount: _react.default.Children.count(children),
486
- hasPropsColumnDefs: !!props.columnDefs,
487
- extensibleColumnsCount: Object.keys(extensibleColumns || {}).length,
488
- gridKey: gridKey,
489
- colsCount: cols.length,
490
- usingCachedData: !!firstRowDataRef.current
491
- });
492
518
  return cols;
493
519
  }, [_react.default.Children.count(children), props.columnDefs, extensibleColumns, gridKey]);
494
520
 
@@ -899,10 +925,12 @@ function AgGridPlus(props) {
899
925
  var currentScheme = columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme;
900
926
 
901
927
  // 【修复】优先使用方案的 columnConfig,避免被默认逻辑覆盖
928
+ // 【关键修复】传入 allColDefsRef.current 以保留 cellRenderer、valueEnum 等属性
902
929
  if (currentScheme !== null && currentScheme !== void 0 && currentScheme.columnConfig && currentScheme.columnConfig.length > 0) {
903
- var _require3 = require("./setting/columnGroupUtils"),
904
- flatConfigToGridState = _require3.flatConfigToGridState;
905
- var gridColumnDefs = flatConfigToGridState(currentScheme.columnConfig);
930
+ var _require5 = require("./setting/columnGroupUtils"),
931
+ flatConfigToGridState = _require5.flatConfigToGridState;
932
+ var gridColumnDefs = flatConfigToGridState(currentScheme.columnConfig, allColDefsRef.current // 传入原始完整的列定义
933
+ );
906
934
  return gridColumnDefs;
907
935
  }
908
936
 
@@ -943,7 +971,8 @@ function AgGridPlus(props) {
943
971
  });
944
972
  var processedColumns = (0, _processColumnGroups.default)(columnDefs);
945
973
  return processedColumns;
946
- }, [columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme, _react.default.Children.count(children), props.columnDefs, extensibleColumns, columnCellClass]);
974
+ }, [columnSchemeManager === null || columnSchemeManager === void 0 ? void 0 : columnSchemeManager.currentScheme, _react.default.Children.count(children), props.columnDefs, extensibleColumns, columnCellClass, allColDefsRef.current // 添加到依赖项
975
+ ]);
947
976
 
948
977
  // 构建查询表单项(带 order 属性)
949
978
  var queryFormItems = (0, _react.useMemo)(function () {
@@ -988,6 +1017,8 @@ function AgGridPlus(props) {
988
1017
  return {
989
1018
  extensibleColumns: extensibleColumns,
990
1019
  columnState: gridPlusColumnState,
1020
+ allColDefs: allColDefsRef.current,
1021
+ // 【修复】传入原始完整的列定义
991
1022
  onSaveColumnState: onSaveColumnState,
992
1023
  applyToGlobal: applyToGlobal,
993
1024
  resetCurrent: resetCurrent,
@@ -998,7 +1029,9 @@ function AgGridPlus(props) {
998
1029
  updateQueryOrder: setQueryItemsOrder,
999
1030
  queryFormItems: queryFormItems
1000
1031
  };
1001
- }, [extensibleColumns, gridPlusColumnState, onSaveColumnState, applyToGlobal, resetCurrent, resetAll, columnSchemeManager, querySchemeManager, queryItemsOrder, queryFormItems]);
1032
+ }, [extensibleColumns, gridPlusColumnState, allColDefsRef.current,
1033
+ // 【修复】添加到依赖数组
1034
+ onSaveColumnState, applyToGlobal, resetCurrent, resetAll, columnSchemeManager, querySchemeManager, queryItemsOrder, queryFormItems]);
1002
1035
  return /*#__PURE__*/_react.default.createElement(_gridContext.GridPlusContext.Provider, {
1003
1036
  value: gridPlusContextValue
1004
1037
  }, /*#__PURE__*/_react.default.createElement(_antd.Spin, {
@@ -1068,12 +1101,13 @@ function AgGridPlus(props) {
1068
1101
  onSaveColumnState: onColumnStateChanged
1069
1102
  })]
1070
1103
  }), /*#__PURE__*/_react.default.createElement(_agGridReact.AgGridReact, _extends({
1071
- className: "ag-theme-custom"
1104
+ theme: _theme.agGridTheme
1072
1105
  }, rest, {
1073
1106
  localeText: _locale.localeText,
1074
1107
  gridOptions: {
1075
1108
  enableCellTextSelection: true,
1076
- ensureDomOrder: true
1109
+ ensureDomOrder: true,
1110
+ columnHoverHighlight: true
1077
1111
  },
1078
1112
  overlayNoRowsTemplate: (0, _sanitize.createSafeHtmlTemplate)(overlayNoRowsTemplateText || '没有找到数据,试试调整筛选条件吧!'),
1079
1113
  enableRangeSelection: true,
@@ -1101,8 +1135,8 @@ function AgGridPlus(props) {
1101
1135
  onDragStopped: function onDragStopped(e) {
1102
1136
  if (apiRef.current) {
1103
1137
  var _apiRef$current5;
1104
- var _columnState3 = (_apiRef$current5 = apiRef.current) === null || _apiRef$current5 === void 0 ? void 0 : _apiRef$current5.getColumnState();
1105
- setColumnState(_columnState3);
1138
+ var _columnState4 = (_apiRef$current5 = apiRef.current) === null || _apiRef$current5 === void 0 ? void 0 : _apiRef$current5.getColumnState();
1139
+ setColumnState(_columnState4);
1106
1140
 
1107
1141
  // onColumnStateChanged && onColumnStateChanged(columnState)
1108
1142
  }
@@ -10,6 +10,11 @@ export interface GridPlusContextValue {
10
10
  * 当前表格的列状态信息,包括列的显示/隐藏、顺序、宽度等
11
11
  */
12
12
  columnState: any;
13
+ /**
14
+ * 原始完整的列定义,包含所有自定义属性(cellRenderer、valueFormatter、valueEnum 等)
15
+ * 用于列方案应用时保留这些属性
16
+ */
17
+ allColDefs?: any[];
13
18
  /**
14
19
  * 保存当前表格的列状态到服务器(仅保存当前表格)
15
20
  * @param gridKey 表格唯一标识
@@ -2,7 +2,6 @@ import AgGridPlus from "./ag-gridPlus";
2
2
  import { AgGridColumn } from "./interface";
3
3
  import { GridPlusContext } from "./context/gridContext";
4
4
  import { useGridPlusColumnState } from "./hooks/useGridPlusColumnState";
5
- import "./ag-grid-theme-builder.css";
6
5
  export { AgGridPlus, AgGridColumn, GridPlusContext, useGridPlusColumnState };
7
6
  export { dateValueFormatter, dateTimeValueFormatter, convertFilterModel, convertSortModel, flattenTreeDeep, toTree, flatten } from "./utils";
8
7
  export { useColumnSchemes, LocalStorageAdapter, defaultStorageAdapter, validateScheme, validateSchemeName, validateSchemeDescription, checkDuplicateName, generateUniqueName, STORAGE_PREFIX, DEFAULT_SCHEME_NAME, MAX_SCHEMES_PER_GRID, MAX_SCHEME_NAME_LENGTH, SchemeSelector, SchemeManager } from "./schemes";
@@ -241,7 +241,6 @@ var _agGridPlus = _interopRequireDefault(require("./ag-gridPlus"));
241
241
  var _interface = require("./interface");
242
242
  var _gridContext = require("./context/gridContext");
243
243
  var _useGridPlusColumnState = require("./hooks/useGridPlusColumnState");
244
- require("./ag-grid-theme-builder.css");
245
244
  var _utils = require("./utils");
246
245
  var _schemes = require("./schemes");
247
246
  var _storage = require("./storage");
@@ -13,6 +13,7 @@ var _columnGroupUtils = require("./columnGroupUtils");
13
13
  var _ColumnConfigTable = _interopRequireDefault(require("./ColumnConfigTable"));
14
14
  var _processColumnGroups = _interopRequireDefault(require("../_utils/processColumnGroups"));
15
15
  var _draggableModal = _interopRequireDefault(require("../../draggableModal"));
16
+ var _gridContext = require("../context/gridContext");
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
18
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
19
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
@@ -84,11 +85,15 @@ var ColumnSetting = function ColumnSetting(_ref) {
84
85
  viewMode = _useState18[0],
85
86
  setViewMode = _useState18[1];
86
87
 
87
- // 保存原始列定义,用于取消时恢复
88
+ // 【修复】从 Context 获取原始完整的列定义
89
+ var gridPlusContext = (0, _react.useContext)(_gridContext.GridPlusContext);
90
+ var originalColumnDefs = (gridPlusContext === null || gridPlusContext === void 0 ? void 0 : gridPlusContext.allColDefs) || undefined;
91
+
92
+ // 【修复】保存快照用于取消时恢复(改名避免与Context的originalColumnDefs冲突)
88
93
  var _useState19 = (0, _react.useState)(null),
89
94
  _useState20 = _slicedToArray(_useState19, 2),
90
- originalColumnDefs = _useState20[0],
91
- setOriginalColumnDefs = _useState20[1];
95
+ snapshotColumnDefs = _useState20[0],
96
+ setSnapshotColumnDefs = _useState20[1];
92
97
 
93
98
  /**
94
99
  * 获取列数据 - 将 Grid 的列定义转换为扁平化配置
@@ -161,11 +166,11 @@ var ColumnSetting = function ColumnSetting(_ref) {
161
166
  }
162
167
  }, [schemeManager === null || schemeManager === void 0 ? void 0 : schemeManager.currentScheme, visible, form, getColumnData]);
163
168
 
164
- // 弹窗打开时保存原始列定义,用于取消时恢复
169
+ // 【修复】弹窗打开时保存快照,用于取消时恢复
165
170
  (0, _react.useEffect)(function () {
166
171
  if (visible) {
167
172
  var currentDefs = gridApi.getColumnDefs();
168
- setOriginalColumnDefs(currentDefs);
173
+ setSnapshotColumnDefs(currentDefs);
169
174
  }
170
175
  }, [visible, gridApi]);
171
176
 
@@ -179,31 +184,31 @@ var ColumnSetting = function ColumnSetting(_ref) {
179
184
  items: newItems
180
185
  });
181
186
 
182
- // 2. 转换为 AG-Grid 列定义
183
- var gridColumnDefs = (0, _columnGroupUtils.flatConfigToGridState)(newItems);
187
+ // 2. 【修复】转换为 AG-Grid 列定义,传入原始列定义以保留自定义属性
188
+ var gridColumnDefs = (0, _columnGroupUtils.flatConfigToGridState)(newItems, originalColumnDefs);
184
189
 
185
190
  // 3. 立即应用到 Grid(实时预览,不保存到方案)
186
191
  if (type !== 'formArrayTable') {
187
192
  gridApi.setGridOption("columnDefs", gridColumnDefs);
188
193
  }
189
- }, [form, gridApi, type]);
194
+ }, [form, gridApi, type, originalColumnDefs]);
190
195
 
191
196
  /**
192
197
  * 关闭弹窗处理 - 取消时恢复原始状态
193
198
  * 如果用户取消操作,恢复到打开弹窗前的列定义状态
194
199
  */
195
200
  var handleClose = (0, _react.useCallback)(function () {
196
- // 如果有保存的原始状态,恢复它
197
- if (originalColumnDefs && type !== 'formArrayTable') {
198
- gridApi.setGridOption("columnDefs", originalColumnDefs);
201
+ // 【修复】如果有保存的快照,恢复它
202
+ if (snapshotColumnDefs && type !== 'formArrayTable') {
203
+ gridApi.setGridOption("columnDefs", snapshotColumnDefs);
199
204
  }
200
205
 
201
- // 清空备份
202
- setOriginalColumnDefs(null);
206
+ // 清空快照
207
+ setSnapshotColumnDefs(null);
203
208
 
204
209
  // 调用父组件的 onClose
205
210
  onClose();
206
- }, [originalColumnDefs, gridApi, type, onClose]);
211
+ }, [snapshotColumnDefs, gridApi, type, onClose]);
207
212
 
208
213
  /**
209
214
  * 保存列配置
@@ -228,8 +233,8 @@ var ColumnSetting = function ColumnSetting(_ref) {
228
233
  _antd.message.info('检测到旧版本配置,已自动迁移到新格式');
229
234
  }
230
235
 
231
- // 转换为 AG-Grid 的列定义
232
- gridColumnDefs = (0, _columnGroupUtils.flatConfigToGridState)(configToSave); // 先应用列配置到 Grid
236
+ // 【修复】转换为 AG-Grid 的列定义,传入原始列定义以保留自定义属性
237
+ gridColumnDefs = (0, _columnGroupUtils.flatConfigToGridState)(configToSave, originalColumnDefs); // 先应用列配置到 Grid
233
238
  if (type !== 'formArrayTable') {
234
239
  gridApi.setGridOption("columnDefs", gridColumnDefs);
235
240
  }
@@ -310,8 +315,8 @@ var ColumnSetting = function ColumnSetting(_ref) {
310
315
  }, _callee, null, [[1, 22]]);
311
316
  })), 50);
312
317
 
313
- // 保存成功后清除备份
314
- setOriginalColumnDefs(null);
318
+ // 【修复】保存成功后清除快照
319
+ setSnapshotColumnDefs(null);
315
320
  _antd.message.success('列配置已保存');
316
321
  onClose();
317
322
  case 12:
@@ -319,7 +324,7 @@ var ColumnSetting = function ColumnSetting(_ref) {
319
324
  return _context2.stop();
320
325
  }
321
326
  }, _callee2);
322
- })), [form, gridApi, onSaveColumnState, type, onClose, schemeManager, gridKey]);
327
+ })), [form, gridApi, onSaveColumnState, type, onClose, schemeManager, gridKey, originalColumnDefs]);
323
328
 
324
329
  // 保存为新方案
325
330
  var handleSaveScheme = (0, _react.useCallback)( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3() {
@@ -341,7 +346,8 @@ var ColumnSetting = function ColumnSetting(_ref) {
341
346
  }
342
347
  values = form.values;
343
348
  columnConfigToSave = values.items; // 直接使用 FlatColumnItem[] 数据
344
- processedColumns = (0, _processColumnGroups.default)(values.items); // 先应用到 Grid
349
+ // 【修复】传入原始列定义以保留自定义属性
350
+ processedColumns = (0, _processColumnGroups.default)(values.items, originalColumnDefs); // 先应用到 Grid
345
351
  if (type !== 'formArrayTable') {
346
352
  gridApi.setGridOption("columnDefs", processedColumns);
347
353
  }
@@ -20,10 +20,14 @@ export declare function gridStateToFlatConfig(columnDefs: (ColDef | ColGroupDef)
20
20
  * 扁平化配置 → Grid State
21
21
  * 将扁平化数组重建为 AG-Grid 的树形结构
22
22
  *
23
+ * 【重要】如果提供了 originalColumnDefs,会合并原始列定义中的所有属性
24
+ * 这样可以保留 cellRenderer、valueFormatter、valueEnum 等自定义渲染属性
25
+ *
23
26
  * @param flatConfig 扁平化配置数组
27
+ * @param originalColumnDefs 原始列定义数组(可选),用于保留自定义属性
24
28
  * @returns AG-Grid 列定义数组
25
29
  */
26
- export declare function flatConfigToGridState(flatConfig: FlatColumnItem[]): (ColDef | ColGroupDef)[];
30
+ export declare function flatConfigToGridState(flatConfig: FlatColumnItem[], originalColumnDefs?: (ColDef | ColGroupDef)[]): (ColDef | ColGroupDef)[];
27
31
  /**
28
32
  * 旧版本数据迁移
29
33
  * 将旧的 { groupName } 结构迁移为新的树形结构
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -14,6 +15,14 @@ exports.migrateOldScheme = migrateOldScheme;
14
15
  exports.reorderItems = reorderItems;
15
16
  var _uniqueId2 = _interopRequireDefault(require("lodash/uniqueId"));
16
17
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
19
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
20
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
21
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
22
+ 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); }
23
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
24
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
25
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
17
26
  /**
18
27
  * 表头分组配置工具函数
19
28
  * 负责 Grid State 与扁平化配置之间的转换
@@ -85,10 +94,45 @@ function gridStateToFlatConfig(columnDefs) {
85
94
  * 扁平化配置 → Grid State
86
95
  * 将扁平化数组重建为 AG-Grid 的树形结构
87
96
  *
97
+ * 【重要】如果提供了 originalColumnDefs,会合并原始列定义中的所有属性
98
+ * 这样可以保留 cellRenderer、valueFormatter、valueEnum 等自定义渲染属性
99
+ *
88
100
  * @param flatConfig 扁平化配置数组
101
+ * @param originalColumnDefs 原始列定义数组(可选),用于保留自定义属性
89
102
  * @returns AG-Grid 列定义数组
90
103
  */
91
- function flatConfigToGridState(flatConfig) {
104
+ function flatConfigToGridState(flatConfig, originalColumnDefs) {
105
+ /**
106
+ * 从原始列定义中查找指定字段的列定义(支持递归查找分组内的列)
107
+ */
108
+ function findOriginalColDef(field, defs) {
109
+ if (!defs) return undefined;
110
+ var _iterator = _createForOfIteratorHelper(defs),
111
+ _step;
112
+ try {
113
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
114
+ var def = _step.value;
115
+ // 检查是否是分组
116
+ if ('children' in def && def.children) {
117
+ // 递归查找分组内的列
118
+ var found = findOriginalColDef(field, def.children);
119
+ if (found) return found;
120
+ } else {
121
+ // 检查是否是目标列(使用类型守卫)
122
+ var colDef = def;
123
+ if (colDef.field === field) {
124
+ return colDef;
125
+ }
126
+ }
127
+ }
128
+ } catch (err) {
129
+ _iterator.e(err);
130
+ } finally {
131
+ _iterator.f();
132
+ }
133
+ return undefined;
134
+ }
135
+
92
136
  /**
93
137
  * 递归构建树形结构
94
138
  */
@@ -111,6 +155,25 @@ function flatConfigToGridState(flatConfig) {
111
155
  };
112
156
  } else {
113
157
  // 构建列节点
158
+ // 查找原始列定义
159
+ var originalDef = item.field ? findOriginalColDef(item.field, originalColumnDefs) : undefined;
160
+
161
+ // 如果找到原始列定义,合并所有属性
162
+ if (originalDef) {
163
+ return _objectSpread(_objectSpread({}, originalDef), {}, {
164
+ // 保留所有原始属性(cellRenderer、valueFormatter、valueEnum 等)
165
+ // 只覆盖方案中保存的属性
166
+ headerName: item.headerName,
167
+ width: item.width,
168
+ hide: item.hide,
169
+ pinned: item.pinned === 'notPinned' ? null : item.pinned,
170
+ cellClass: item.cellClass,
171
+ flex: item.flex,
172
+ suppressHeaderFilterButton: item.suppressHeaderFilterButton
173
+ });
174
+ }
175
+
176
+ // 如果没有找到原始定义,使用基本属性
114
177
  return {
115
178
  field: item.field,
116
179
  headerName: item.headerName,
@@ -0,0 +1,5 @@
1
+ /**
2
+ * AG-Grid v33 主题配置
3
+ * 使用 themeQuartz API 替代 CSS 变量方式
4
+ */
5
+ export declare const agGridTheme: import("ag-grid-community").Theme<import("ag-grid-community").ThemeDefaultParams>;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.agGridTheme = void 0;
7
+ var _agGridCommunity = require("ag-grid-community");
8
+ /**
9
+ * AG-Grid v33 主题配置
10
+ * 使用 themeQuartz API 替代 CSS 变量方式
11
+ */
12
+
13
+ var agGridTheme = exports.agGridTheme = _agGridCommunity.themeQuartz.withParams({
14
+ // 基础颜色
15
+ backgroundColor: '#FFFFFF',
16
+ foregroundColor: '#555B62',
17
+ accentColor: '#087AD1',
18
+ invalidColor: '#e02525',
19
+ borderColor: '#F0F0F0',
20
+ // 浏览器配置
21
+ browserColorScheme: 'light',
22
+ // 边框配置
23
+ wrapperBorder: true,
24
+ rowBorder: true,
25
+ columnBorder: true,
26
+ // 表头配置
27
+ headerBackgroundColor: '#FAFAFA',
28
+ headerFontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif',
29
+ headerFontWeight: 600,
30
+ headerFontSize: 12,
31
+ headerHeight: 25,
32
+ headerTextColor: '#000000E1',
33
+ headerColumnBorder: true,
34
+ headerColumnBorderHeight: '100%',
35
+ headerVerticalPaddingScale: 0.8,
36
+ // 字体配置
37
+ fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif',
38
+ fontSize: 12,
39
+ // 单元格配置
40
+ cellTextColor: '#000000E1',
41
+ cellHorizontalPaddingScale: 0.7,
42
+ // 行配置
43
+ rowVerticalPaddingScale: 0.8,
44
+ rowHoverColor: 'color-mix(in srgb, transparent, #087AD1 12%)',
45
+ selectedRowBackgroundColor: 'color-mix(in srgb, transparent, #087AD1 8%)',
46
+ oddRowBackgroundColor: '#FFFFFF',
47
+ // 列 hover 配置
48
+ columnHoverColor: 'color-mix(in srgb, transparent, #087AD1 8%)',
49
+ // 图标尺寸
50
+ iconSize: 14,
51
+ // 边角配置
52
+ borderRadius: 2,
53
+ wrapperBorderRadius: 2,
54
+ // 范围选择
55
+ rangeSelectionBorderStyle: 'solid',
56
+ rangeSelectionBorderColor: '#087AD1',
57
+ rangeSelectionBackgroundColor: 'color-mix(in srgb, transparent, #087AD1 20%)',
58
+ // 弹窗阴影
59
+ popupShadow: '0 0 16px 0 #00000026',
60
+ dropdownShadow: '0 1px 4px 1px #babfc766',
61
+ // 拖拽配置
62
+ dragAndDropImageBackgroundColor: '#FFFFFF',
63
+ dragAndDropImageBorder: true,
64
+ // 焦点阴影
65
+ focusShadow: '0 0 0 3px color-mix(in srgb, transparent, #087AD1 50%)',
66
+ // 复选框配置
67
+ checkboxBorderWidth: 1,
68
+ checkboxUncheckedBackgroundColor: '#FFFFFF',
69
+ checkboxCheckedBackgroundColor: '#087AD1',
70
+ checkboxCheckedBorderColor: '#087AD1',
71
+ // 切换按钮配置
72
+ toggleButtonWidth: 28,
73
+ toggleButtonHeight: 18,
74
+ toggleButtonOnBackgroundColor: '#087AD1',
75
+ // 侧边栏配置
76
+ sideBarPanelWidth: 250,
77
+ spacing: 6
78
+ });
@@ -5,7 +5,8 @@
5
5
  * 2. 旧格式:{ groupName: string } (简单的分组名称)
6
6
  *
7
7
  * @param columns 列配置数组
8
+ * @param originalColumnDefs 原始列定义数组(可选),用于保留自定义属性
8
9
  * @returns AG-Grid 列定义
9
10
  */
10
- declare const processColumnGroups: (columns: any[]) => any;
11
+ declare const processColumnGroups: (columns: any[], originalColumnDefs?: any[]) => any;
11
12
  export default processColumnGroups;