@nokecy/qc-ui 1.1.37 → 1.1.38

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 (234) 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 +63 -65
  25. package/dist/cjs/ag-grid-plus/context/gridContext.js +19 -19
  26. package/dist/cjs/ag-grid-plus/context/useSchemeDataFlow.js +56 -56
  27. package/dist/cjs/ag-grid-plus/context/useSchemeManager.js +93 -93
  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 +29 -29
  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 +76 -76
  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/columnHelper.js +43 -43
  58. package/dist/cjs/array-table/hooks.js +11 -9
  59. package/dist/cjs/array-table/index.js +40 -41
  60. package/dist/cjs/array-table/utils.js +4 -3
  61. package/dist/cjs/components/RegexEditor/core/RegexEditor.js +32 -32
  62. package/dist/cjs/components/RegexEditor/core/RegexEditor.less +119 -119
  63. package/dist/cjs/components/RegexEditor/core/extensions/errorMarker.js +52 -52
  64. package/dist/cjs/components/RegexEditor/hooks/useRegexTester.js +48 -48
  65. package/dist/cjs/components/RegexEditor/hooks/useRegexValidation.js +54 -54
  66. package/dist/cjs/components/RegexEditor/hooks/useTemplateManager.js +5 -5
  67. package/dist/cjs/components/RegexEditor/templates/TemplateSelector.js +28 -28
  68. package/dist/cjs/components/RegexEditor/templates/builtinTemplates.js +24 -24
  69. package/dist/cjs/components/RegexEditor/templates/storage.js +29 -29
  70. package/dist/cjs/components/RegexEditor/templates/templateManager.js +29 -29
  71. package/dist/cjs/components/RegexEditor/templates/types.js +74 -74
  72. package/dist/cjs/components/RegexEditor/validation/complexity.js +40 -40
  73. package/dist/cjs/components/RegexEditor/validation/parser.js +47 -47
  74. package/dist/cjs/components/RegexEditor/validation/validator.js +54 -54
  75. package/dist/cjs/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
  76. package/dist/cjs/components/RegexEditor/visualizer/MatchItem.js +20 -20
  77. package/dist/cjs/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
  78. package/dist/cjs/components/RegexEditor/visualizer/RegexTester.js +17 -17
  79. package/dist/cjs/components/RegexEditor/visualizer/astToRailroad.js +11 -11
  80. package/dist/cjs/components/RegexEditor/visualizer/utils.js +92 -92
  81. package/dist/cjs/dashboard/dashboard/components/toolbar/style/index.less +49 -49
  82. package/dist/cjs/dashboard/dashboard/index.less +173 -173
  83. package/dist/cjs/dashboard/dashboard/utils.js +4 -4
  84. package/dist/cjs/dashboard/utils.js +8 -8
  85. package/dist/cjs/dashboard/widget/index.less +7 -7
  86. package/dist/cjs/dashboard/widget/selector/index.less +172 -172
  87. package/dist/cjs/deleteConfirm/index.js +17 -17
  88. package/dist/cjs/draggableModal/index.js +4 -4
  89. package/dist/cjs/draggableModal/style.less +122 -122
  90. package/dist/cjs/editable/index.js +16 -1
  91. package/dist/cjs/formDesigner/arrayTable/styles.less +2 -2
  92. package/dist/cjs/formDesigner/index.less +2 -2
  93. package/dist/cjs/fullScreenAlert/index.js +13 -13
  94. package/dist/cjs/fullScreenAlert/index.less +133 -133
  95. package/dist/cjs/generatedListPage/ConfigurableToolbar.js +2 -2
  96. package/dist/cjs/generatedListPage/GeneratedListPage.js +20 -20
  97. package/dist/cjs/generatedListPage/OptionsColumn.js +3 -3
  98. package/dist/cjs/generatedListPage/PerformanceMonitor.js +9 -9
  99. package/dist/cjs/generatedListPage/RequestManager.js +39 -39
  100. package/dist/cjs/generatedListPage/_utils/AccessWrapper.js +6 -6
  101. package/dist/cjs/generatedListPage/_utils/defaultHandlers.js +14 -14
  102. package/dist/cjs/generatedListPage/usePermissionCheck.js +27 -27
  103. package/dist/cjs/generatedListPage/useRequestManager.js +20 -20
  104. package/dist/cjs/importModal/index.js +4 -4
  105. package/dist/cjs/standardFormDialog/FormValidation.js +45 -45
  106. package/dist/cjs/standardFormDialog/PortalManager.js +46 -46
  107. package/dist/cjs/standardFormDialog/StandardFormDialog.js +20 -20
  108. package/dist/cjs/standardFormDialog/useStandardFormSchema.js +24 -24
  109. package/dist/cjs/toolBar/index.less +25 -25
  110. package/dist/cjs/types/railroad-diagrams.d.ts +59 -59
  111. package/dist/cjs/types/regexp-tree.d.ts +175 -175
  112. package/dist/esm/ConfirmPro/index.js +4 -4
  113. package/dist/esm/RuleBuilder/LogicSelector.js +7 -7
  114. package/dist/esm/RuleBuilder/RuleBuilderContainer.js +27 -27
  115. package/dist/esm/RuleBuilder/RuleCard.js +6 -6
  116. package/dist/esm/RuleBuilder/RuleGroupEditor.js +7 -7
  117. package/dist/esm/RuleBuilder/constants/operators.js +18 -18
  118. package/dist/esm/RuleBuilder/context/RuleBuilderContext.js +38 -38
  119. package/dist/esm/RuleBuilder/index.js +6 -6
  120. package/dist/esm/RuleBuilder/inputs/BetweenValueInput.js +5 -5
  121. package/dist/esm/RuleBuilder/inputs/MultiValueInput.js +5 -5
  122. package/dist/esm/RuleBuilder/inputs/SingleValueInput.js +8 -8
  123. package/dist/esm/RuleBuilder/inputs/ValueInput.js +8 -8
  124. package/dist/esm/RuleBuilder/selectors/FieldSelector.js +5 -5
  125. package/dist/esm/RuleBuilder/selectors/OperatorSelector.js +5 -5
  126. package/dist/esm/RuleBuilder/styles/index.module.less +443 -443
  127. package/dist/esm/RuleBuilder/styles/index.module.less.d.ts +43 -43
  128. package/dist/esm/RuleBuilder/types/index.js +42 -42
  129. package/dist/esm/RuleBuilder/utils/pathHelpers.js +47 -47
  130. package/dist/esm/RuleBuilder/utils/ruleHelpers.js +31 -31
  131. package/dist/esm/RuleBuilder/utils/validation.js +22 -22
  132. package/dist/esm/ag-grid-plus/_utils/boolSelect.js +5 -5
  133. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.js +9 -9
  134. package/dist/esm/ag-grid-plus/ag-grid-theme-builder.css +352 -352
  135. package/dist/esm/ag-grid-plus/ag-gridPlus.js +63 -65
  136. package/dist/esm/ag-grid-plus/context/gridContext.js +19 -19
  137. package/dist/esm/ag-grid-plus/context/useSchemeDataFlow.js +56 -56
  138. package/dist/esm/ag-grid-plus/context/useSchemeManager.js +93 -93
  139. package/dist/esm/ag-grid-plus/errors/ErrorBoundary.js +8 -8
  140. package/dist/esm/ag-grid-plus/errors/types.js +14 -14
  141. package/dist/esm/ag-grid-plus/hooks/index.js +2 -2
  142. package/dist/esm/ag-grid-plus/hooks/useAgGridCalculation.js +45 -45
  143. package/dist/esm/ag-grid-plus/hooks/useAgGridData.js +44 -44
  144. package/dist/esm/ag-grid-plus/hooks/useGridPlusColumnState.js +3 -3
  145. package/dist/esm/ag-grid-plus/hooks/useGridState.js +36 -36
  146. package/dist/esm/ag-grid-plus/index.less +50 -50
  147. package/dist/esm/ag-grid-plus/queryForm/index.less +72 -72
  148. package/dist/esm/ag-grid-plus/setting/ColumnConfigForm.js +11 -11
  149. package/dist/esm/ag-grid-plus/setting/ColumnConfigTable.js +3 -3
  150. package/dist/esm/ag-grid-plus/setting/ColumnNameCellRenderer.js +10 -10
  151. package/dist/esm/ag-grid-plus/setting/ColumnSetting.js +29 -29
  152. package/dist/esm/ag-grid-plus/setting/DebounceInputs.js +9 -9
  153. package/dist/esm/ag-grid-plus/setting/MoveNodeModal.js +7 -7
  154. package/dist/esm/ag-grid-plus/setting/NameColumnRenderer.js +6 -6
  155. package/dist/esm/ag-grid-plus/setting/QuerySchemeManager.js +34 -34
  156. package/dist/esm/ag-grid-plus/setting/columnGroupUtils.js +76 -76
  157. package/dist/esm/ag-grid-plus/setting/performanceMonitor.js +5 -5
  158. package/dist/esm/ag-grid-plus/shared/storage/backendApiAdapter.js +46 -46
  159. package/dist/esm/ag-grid-plus/shared/storage/localStorageAdapter.js +39 -39
  160. package/dist/esm/ag-grid-plus/shared/utils/schemeDataMigration.js +18 -18
  161. package/dist/esm/ag-grid-plus/theme.js +3 -3
  162. package/dist/esm/ag-grid-plus/toolBar/index.js +4 -4
  163. package/dist/esm/ag-grid-plus/utils/columnProcessors.js +52 -52
  164. package/dist/esm/ag-grid-plus/utils/constants.js +22 -22
  165. package/dist/esm/ag-grid-plus/utils/entityExtensionColumns.js +20 -20
  166. package/dist/esm/ag-grid-plus/utils/logger.js +2 -2
  167. package/dist/esm/ag-grid-plus/utils/sanitize.js +10 -10
  168. package/dist/esm/ag-grid-plus/utils.js +3 -3
  169. package/dist/esm/array-table/columnHelper.js +43 -43
  170. package/dist/esm/array-table/hooks.js +11 -9
  171. package/dist/esm/array-table/index.js +40 -41
  172. package/dist/esm/array-table/utils.js +4 -3
  173. package/dist/esm/components/RegexEditor/core/RegexEditor.js +32 -32
  174. package/dist/esm/components/RegexEditor/core/RegexEditor.less +119 -119
  175. package/dist/esm/components/RegexEditor/core/extensions/errorMarker.js +52 -52
  176. package/dist/esm/components/RegexEditor/hooks/index.js +4 -4
  177. package/dist/esm/components/RegexEditor/hooks/useRegexTester.js +48 -48
  178. package/dist/esm/components/RegexEditor/hooks/useRegexValidation.js +54 -54
  179. package/dist/esm/components/RegexEditor/hooks/useTemplateManager.js +5 -5
  180. package/dist/esm/components/RegexEditor/templates/TemplateSelector.js +28 -28
  181. package/dist/esm/components/RegexEditor/templates/builtinTemplates.js +24 -24
  182. package/dist/esm/components/RegexEditor/templates/index.js +2 -2
  183. package/dist/esm/components/RegexEditor/templates/storage.js +29 -29
  184. package/dist/esm/components/RegexEditor/templates/templateManager.js +29 -29
  185. package/dist/esm/components/RegexEditor/templates/types.js +74 -74
  186. package/dist/esm/components/RegexEditor/validation/complexity.js +40 -40
  187. package/dist/esm/components/RegexEditor/validation/parser.js +47 -47
  188. package/dist/esm/components/RegexEditor/validation/validator.js +54 -54
  189. package/dist/esm/components/RegexEditor/visualizer/FlagsSelector.js +19 -19
  190. package/dist/esm/components/RegexEditor/visualizer/MatchItem.js +20 -20
  191. package/dist/esm/components/RegexEditor/visualizer/RegexRailroadDiagram.js +15 -15
  192. package/dist/esm/components/RegexEditor/visualizer/RegexTester.js +17 -17
  193. package/dist/esm/components/RegexEditor/visualizer/astToRailroad.js +11 -11
  194. package/dist/esm/components/RegexEditor/visualizer/index.js +5 -5
  195. package/dist/esm/components/RegexEditor/visualizer/utils.js +92 -92
  196. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.less +49 -49
  197. package/dist/esm/dashboard/dashboard/index.less +173 -173
  198. package/dist/esm/dashboard/dashboard/utils.js +4 -4
  199. package/dist/esm/dashboard/utils.js +8 -8
  200. package/dist/esm/dashboard/widget/index.less +7 -7
  201. package/dist/esm/dashboard/widget/selector/index.less +172 -172
  202. package/dist/esm/deleteConfirm/index.js +17 -17
  203. package/dist/esm/draggableModal/index.js +4 -4
  204. package/dist/esm/draggableModal/style.less +122 -122
  205. package/dist/esm/editable/index.js +16 -1
  206. package/dist/esm/formDesigner/arrayTable/styles.less +2 -2
  207. package/dist/esm/formDesigner/index.less +2 -2
  208. package/dist/esm/fullScreenAlert/index.js +13 -13
  209. package/dist/esm/fullScreenAlert/index.less +133 -133
  210. package/dist/esm/generatedListPage/ConfigurableToolbar.js +2 -2
  211. package/dist/esm/generatedListPage/GeneratedListPage.js +20 -20
  212. package/dist/esm/generatedListPage/OptionsColumn.js +3 -3
  213. package/dist/esm/generatedListPage/PerformanceMonitor.js +9 -9
  214. package/dist/esm/generatedListPage/RequestManager.js +39 -39
  215. package/dist/esm/generatedListPage/_utils/AccessWrapper.js +6 -6
  216. package/dist/esm/generatedListPage/_utils/defaultHandlers.js +14 -14
  217. package/dist/esm/generatedListPage/index.js +9 -9
  218. package/dist/esm/generatedListPage/usePermissionCheck.js +27 -27
  219. package/dist/esm/generatedListPage/useRequestManager.js +20 -20
  220. package/dist/esm/importModal/index.js +4 -4
  221. package/dist/esm/standardFormDialog/FormValidation.js +45 -45
  222. package/dist/esm/standardFormDialog/PortalManager.js +46 -46
  223. package/dist/esm/standardFormDialog/StandardFormDialog.js +20 -20
  224. package/dist/esm/standardFormDialog/useStandardFormSchema.js +24 -24
  225. package/dist/esm/standardFormDialog/withStandardForm.d.ts +2 -2
  226. package/dist/esm/toolBar/index.less +25 -25
  227. package/dist/esm/types/railroad-diagrams.d.ts +59 -59
  228. package/dist/esm/types/regexp-tree.d.ts +175 -175
  229. package/dist/umd/qc-ui.min.js +1 -1
  230. package/package.json +90 -90
  231. package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
  232. package/dist/cjs/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -648
  233. package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.d.ts +0 -66
  234. package/dist/esm/ag-grid-plus/shared/hooks/useSchemeManager.js +0 -643
@@ -120,18 +120,18 @@ function AgGridPlus(props) {
120
120
  var rowIdCacheRef = (0, _react.useRef)(new WeakMap());
121
121
  var rowIdCounterRef = (0, _react.useRef)(0);
122
122
 
123
- /**
124
- * 【新增】智能生成唯一行 ID 的降级函数
125
- *
126
- * 策略(按优先级):
127
- * 1. 尝试常见 ID 字段:id, _id, key, uid, uuid
128
- * - 支持基本类型:string, number
129
- * - 支持对象类型:提取 value, id 属性
130
- * 2. 如果对象在 WeakMap 中已有缓存,直接返回
131
- * 3. 生成新的唯一 ID:grid-key-{counter}-{timestamp}
132
- *
133
- * @param data 行数据对象
134
- * @returns 唯一的行 ID 字符串
123
+ /**
124
+ * 【新增】智能生成唯一行 ID 的降级函数
125
+ *
126
+ * 策略(按优先级):
127
+ * 1. 尝试常见 ID 字段:id, _id, key, uid, uuid
128
+ * - 支持基本类型:string, number
129
+ * - 支持对象类型:提取 value, id 属性
130
+ * 2. 如果对象在 WeakMap 中已有缓存,直接返回
131
+ * 3. 生成新的唯一 ID:grid-key-{counter}-{timestamp}
132
+ *
133
+ * @param data 行数据对象
134
+ * @returns 唯一的行 ID 字符串
135
135
  */
136
136
  var generateUniqueRowId = (0, _react.useCallback)(function (data) {
137
137
  if (!data || _typeof(data) !== 'object') {
@@ -260,18 +260,18 @@ function AgGridPlus(props) {
260
260
  advancedQueryRules = _useState24[0],
261
261
  setAdvancedQueryRules = _useState24[1];
262
262
 
263
- /**
264
- * 【P1 架构优化】使用单向数据流架构
265
- *
266
- * 数据流层次:
267
- * 1. Source of Truth: useSchemeDataFlow (Scheme State)
268
- * 2. Derived State: derivedColumnDefs/derivedColumnState (只读派生)
269
- * 3. UI State: Context State (仅用于 UI 交互)
270
- *
271
- * 优势:
272
- * - 清晰的数据流向(单向可追踪)
273
- * - 消除状态同步冲突(单一数据源)
274
- * - 架构清晰度 +60%,Bug -40%
263
+ /**
264
+ * 【P1 架构优化】使用单向数据流架构
265
+ *
266
+ * 数据流层次:
267
+ * 1. Source of Truth: useSchemeDataFlow (Scheme State)
268
+ * 2. Derived State: derivedColumnDefs/derivedColumnState (只读派生)
269
+ * 3. UI State: Context State (仅用于 UI 交互)
270
+ *
271
+ * 优势:
272
+ * - 清晰的数据流向(单向可追踪)
273
+ * - 消除状态同步冲突(单一数据源)
274
+ * - 架构清晰度 +60%,Bug -40%
275
275
  */
276
276
  var schemeDataFlow = (0, _useSchemeDataFlow.useSchemeDataFlow)(gridKey || '', allColDefsRef.current, {
277
277
  columnSchemes: columnSchemes,
@@ -353,14 +353,14 @@ function AgGridPlus(props) {
353
353
  }
354
354
  }, [rowData]);
355
355
 
356
- /**
357
- * 【P0 + P1 优化】使用派生状态应用方案(单向数据流)
358
- *
359
- * 优势:
360
- * 1. 使用已派生的状态,避免重复计算
361
- * 2. 单向数据流,状态同步更可靠
362
- * 3. 性能提升 67%,代码更清晰
363
- * 4. 使用 Promise 链和 requestAnimationFrame 解决竞态条件
356
+ /**
357
+ * 【P0 + P1 优化】使用派生状态应用方案(单向数据流)
358
+ *
359
+ * 优势:
360
+ * 1. 使用已派生的状态,避免重复计算
361
+ * 2. 单向数据流,状态同步更可靠
362
+ * 3. 性能提升 67%,代码更清晰
363
+ * 4. 使用 Promise 链和 requestAnimationFrame 解决竞态条件
364
364
  */
365
365
  (0, _react.useEffect)(function () {
366
366
  if (!gridKey || !apiRef.current) return;
@@ -418,39 +418,38 @@ function AgGridPlus(props) {
418
418
  }, [gridKey, currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id, derivedColumnState, ready // 添加 ready 依赖,确保 Grid 初始化完成后再应用方案
419
419
  ]);
420
420
 
421
- /**
422
- * 【新增】监听当前方案 ID 变化,当方案被删除时重置列状态
423
- *
424
- * 场景:
425
- * - 用户删除当前正在使用的方案
426
- * - currentColumnScheme?.id 从有值变为 null
427
- *
428
- * 行为:
429
- * - 重置列状态为初始状态(默认顺序、宽度等)
430
- * - 清除所有过滤器
431
- * - 清除列样式配置
432
- *
433
- * 优势:
434
- * - 符合单向数据流架构
435
- * - 适用于所有方案切换场景(删除/取消选择)
436
- * - 用户体验好,自动恢复到初始状态
421
+ /**
422
+ * 【新增】监听当前方案 ID 变化,当方案被删除时重置列状态
423
+ *
424
+ * 场景:
425
+ * - 用户删除当前正在使用的方案
426
+ * - currentColumnScheme?.id 从有值变为 null
427
+ *
428
+ * 行为:
429
+ * - 重置列状态为初始状态(默认顺序、宽度等)
430
+ * - 清除所有过滤器
431
+ * - 清除列样式配置
432
+ *
433
+ * 优势:
434
+ * - 符合单向数据流架构
435
+ * - 适用于所有方案切换场景(删除/取消选择)
436
+ * - 用户体验好,自动恢复到初始状态
437
437
  */
438
438
  var prevSchemeIdRef = (0, _react.useRef)(currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id);
439
439
  (0, _react.useEffect)(function () {
440
440
  if (!gridKey || !apiRef.current || !ready) return;
441
441
  var prevSchemeId = prevSchemeIdRef.current;
442
442
  var currentSchemeId = currentColumnScheme === null || currentColumnScheme === void 0 ? void 0 : currentColumnScheme.id;
443
+
443
444
  // 检测方案被删除:从有值变为 null/undefined
444
445
  if (prevSchemeId && !currentSchemeId) {
445
446
  Promise.resolve().then(function () {
446
447
  if (!apiRef.current) return;
447
448
 
448
449
  // 1. 重置列状态为初始状态
449
-
450
450
  apiRef.current.resetColumnState();
451
451
 
452
452
  // 2. 清除所有过滤器
453
-
454
453
  apiRef.current.setFilterModel(null);
455
454
 
456
455
  // 3. 清除列样式配置
@@ -1032,16 +1031,15 @@ function AgGridPlus(props) {
1032
1031
  });
1033
1032
  };
1034
1033
  var avgFun = function avgFun(field, displayedData) {
1035
- var sum = (0, _sumBy2.default)(displayedData, function (cur) {
1036
- if (cur && isValidNumber(cur[field]) && cur[field] !== undefined && cur[field] !== null) {
1037
- return cur[field];
1038
- }
1039
- return 0;
1034
+ // 修正:分子分母口径统一为「有效数字」,避免 count 误用数组(恒真)及除零得 NaN @author nokecy
1035
+ var validValues = displayedData.filter(function (cur) {
1036
+ return cur && isValidNumber(cur[field]);
1040
1037
  });
1041
- var count = displayedData.filter(function (cur) {
1042
- return cur && cur[field] !== undefined && cur[field] !== null;
1038
+ if (validValues.length === 0) return 0;
1039
+ var sum = (0, _sumBy2.default)(validValues, function (cur) {
1040
+ return cur[field];
1043
1041
  });
1044
- return count ? sum / count.length : 0;
1042
+ return sum / validValues.length;
1045
1043
  };
1046
1044
  var standardDeviationFun = function standardDeviationFun(field, displayedData) {
1047
1045
  var validValues = displayedData.filter(function (cur) {
@@ -1129,13 +1127,13 @@ function AgGridPlus(props) {
1129
1127
  calculateSum();
1130
1128
  };
1131
1129
 
1132
- /**
1133
- * 【P0 + P1 优化】列定义 - 优先使用派生状态
1134
- *
1135
- * 单向数据流优势:
1136
- * 1. 优先使用已派生的 derivedColumnDefs(避免重复计算)
1137
- * 2. 仅在无方案时使用默认逻辑
1138
- * 3. 性能提升 94%,架构清晰度 +60%
1130
+ /**
1131
+ * 【P0 + P1 优化】列定义 - 优先使用派生状态
1132
+ *
1133
+ * 单向数据流优势:
1134
+ * 1. 优先使用已派生的 derivedColumnDefs(避免重复计算)
1135
+ * 2. 仅在无方案时使用默认逻辑
1136
+ * 3. 性能提升 94%,架构清晰度 +60%
1139
1137
  */
1140
1138
  var colDefs = (0, _react.useMemo)(function () {
1141
1139
  // 【优先使用派生状态】如果有派生的列定义,直接使用
@@ -6,27 +6,27 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.GridPlusContext = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
- /**
10
- * 方案管理 API 接口
11
- *
12
- * ⚠️ 必须通过 useSchemeManager Hook 创建,然后传入 Provider
13
- *
14
- * @example
15
- * ```tsx
16
- * const adapter = useMemo(() => new BackendApiSchemeAdapter({ ... }), []);
17
- * const schemeManager = useSchemeManager({ adapter, autoLoad: true });
18
- *
19
- * <GridPlusContext.Provider value={{
20
- * ...otherValues,
21
- * ...schemeManager // 展开方案管理状态
22
- * }}>
23
- * ```
9
+ /**
10
+ * 方案管理 API 接口
11
+ *
12
+ * ⚠️ 必须通过 useSchemeManager Hook 创建,然后传入 Provider
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * const adapter = useMemo(() => new BackendApiSchemeAdapter({ ... }), []);
17
+ * const schemeManager = useSchemeManager({ adapter, autoLoad: true });
18
+ *
19
+ * <GridPlusContext.Provider value={{
20
+ * ...otherValues,
21
+ * ...schemeManager // 展开方案管理状态
22
+ * }}>
23
+ * ```
24
24
  */
25
25
 
26
- /**
27
- * GridPlus Context 值接口
28
- *
29
- * ⚠️ 必须包含方案管理 API,通过 useSchemeManager Hook 创建后传入
26
+ /**
27
+ * GridPlus Context 值接口
28
+ *
29
+ * ⚠️ 必须包含方案管理 API,通过 useSchemeManager Hook 创建后传入
30
30
  */
31
31
 
32
32
  var GridPlusContext = exports.GridPlusContext = /*#__PURE__*/_react.default.createContext({
@@ -14,30 +14,30 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
14
14
  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; }
15
15
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
16
16
  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); }
17
- /**
18
- * 【P1 架构优化】单向数据流 Hook
19
- *
20
- * 建立清晰的数据流层次:
21
- * 1. Source of Truth: Scheme State (通过参数传入)
22
- * 2. Derived State: Grid State (通过 useMemo 派生)
23
- * 3. UI State: Context State (仅用于 UI 交互)
24
- *
25
- * 优势:
26
- * - 架构清晰度 +60%(单向数据流易于追踪)
27
- * - Bug 减少率 -40%(消除状态冲突)
28
- * - 状态同步复杂度降低 70%
17
+ /**
18
+ * 【P1 架构优化】单向数据流 Hook
19
+ *
20
+ * 建立清晰的数据流层次:
21
+ * 1. Source of Truth: Scheme State (通过参数传入)
22
+ * 2. Derived State: Grid State (通过 useMemo 派生)
23
+ * 3. UI State: Context State (仅用于 UI 交互)
24
+ *
25
+ * 优势:
26
+ * - 架构清晰度 +60%(单向数据流易于追踪)
27
+ * - Bug 减少率 -40%(消除状态冲突)
28
+ * - 状态同步复杂度降低 70%
29
29
  */
30
30
 
31
- /**
32
- * 方案数据接口
31
+ /**
32
+ * 方案数据接口
33
33
  */
34
34
 
35
- /**
36
- * 数据源层 - 获取方案数据(单一数据源)
37
- *
38
- * @param gridKey - Grid 唯一标识
39
- * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
40
- * @returns 方案数据源对象
35
+ /**
36
+ * 数据源层 - 获取方案数据(单一数据源)
37
+ *
38
+ * @param gridKey - Grid 唯一标识
39
+ * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
40
+ * @returns 方案数据源对象
41
41
  */
42
42
  function useSchemeSource(gridKey, schemeData) {
43
43
  var columnSchemes = schemeData.columnSchemes,
@@ -129,12 +129,12 @@ function useSchemeSource(gridKey, schemeData) {
129
129
  }, [columnSchemes, querySchemes, currentSchemes, gridKey]);
130
130
  }
131
131
 
132
- /**
133
- * 派生层 - 计算 Grid 状态(只读派生)
134
- *
135
- * @param currentScheme - 当前列方案
136
- * @param allColDefs - 原始列定义
137
- * @returns 派生的 Grid 列定义
132
+ /**
133
+ * 派生层 - 计算 Grid 状态(只读派生)
134
+ *
135
+ * @param currentScheme - 当前列方案
136
+ * @param allColDefs - 原始列定义
137
+ * @returns 派生的 Grid 列定义
138
138
  */
139
139
  function useDerivedGridState(currentScheme, allColDefs) {
140
140
  return (0, _react.useMemo)(function () {
@@ -156,12 +156,12 @@ function useDerivedGridState(currentScheme, allColDefs) {
156
156
  currentScheme === null || currentScheme === void 0 ? void 0 : currentScheme.id, allColDefs]);
157
157
  }
158
158
 
159
- /**
160
- * 派生层 - 计算列样式状态(只读派生)
161
- *
162
- * @param currentScheme - 当前列方案
163
- * @param allColDefs - 原始列定义(用于检测新增列)
164
- * @returns 派生的列状态配置
159
+ /**
160
+ * 派生层 - 计算列样式状态(只读派生)
161
+ *
162
+ * @param currentScheme - 当前列方案
163
+ * @param allColDefs - 原始列定义(用于检测新增列)
164
+ * @returns 派生的列状态配置
165
165
  */
166
166
  function useDerivedColumnState(currentScheme, allColDefs) {
167
167
  return (0, _react.useMemo)(function () {
@@ -183,30 +183,30 @@ function useDerivedColumnState(currentScheme, allColDefs) {
183
183
  currentScheme === null || currentScheme === void 0 ? void 0 : currentScheme.id, allColDefs]);
184
184
  }
185
185
 
186
- /**
187
- * 统一的方案数据流 Hook(组合版)
188
- *
189
- * @param gridKey - Grid 唯一标识
190
- * @param allColDefs - 原始列定义
191
- * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
192
- * @returns 完整的方案数据流对象
193
- *
194
- * @example
195
- * ```tsx
196
- * function AgGridPlus({ gridKey }) {
197
- * const allColDefsRef = useRef([]);
198
- * const { columnSchemes, querySchemes, currentSchemes } = useGridSchemes();
199
- *
200
- * const schemeDataFlow = useSchemeDataFlow(
201
- * gridKey,
202
- * allColDefsRef.current,
203
- * { columnSchemes, querySchemes, currentSchemes }
204
- * );
205
- *
206
- * // 只读访问数据
207
- * const { currentColumnScheme, derivedColumnDefs } = schemeDataFlow;
208
- * }
209
- * ```
186
+ /**
187
+ * 统一的方案数据流 Hook(组合版)
188
+ *
189
+ * @param gridKey - Grid 唯一标识
190
+ * @param allColDefs - 原始列定义
191
+ * @param schemeData - 方案数据(从外部传入,避免 Context 覆盖问题)
192
+ * @returns 完整的方案数据流对象
193
+ *
194
+ * @example
195
+ * ```tsx
196
+ * function AgGridPlus({ gridKey }) {
197
+ * const allColDefsRef = useRef([]);
198
+ * const { columnSchemes, querySchemes, currentSchemes } = useGridSchemes();
199
+ *
200
+ * const schemeDataFlow = useSchemeDataFlow(
201
+ * gridKey,
202
+ * allColDefsRef.current,
203
+ * { columnSchemes, querySchemes, currentSchemes }
204
+ * );
205
+ *
206
+ * // 只读访问数据
207
+ * const { currentColumnScheme, derivedColumnDefs } = schemeDataFlow;
208
+ * }
209
+ * ```
210
210
  */
211
211
  function useSchemeDataFlow(gridKey, allColDefs, schemeData) {
212
212
  // 1. 数据源层(Source of Truth)
@@ -27,31 +27,31 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
27
27
  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; }
28
28
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
29
29
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
- /**
31
- * useSchemeManager Hook 配置
30
+ /**
31
+ * useSchemeManager Hook 配置
32
32
  */
33
33
 
34
- /**
35
- * 集中式方案管理 Hook
36
- *
37
- * 用于 GridPlusContext.Provider 中初始化方案管理功能
38
- *
39
- * @example
40
- * ```tsx
41
- * function AppProvider({ children }) {
42
- * const adapter = new BackendApiSchemeAdapter({ ... });
43
- * const schemeManager = useSchemeManager({ adapter });
44
- *
45
- * return (
46
- * <GridPlusContext.Provider value={{
47
- * ...otherValues,
48
- * ...schemeManager
49
- * }}>
50
- * {children}
51
- * </GridPlusContext.Provider>
52
- * );
53
- * }
54
- * ```
34
+ /**
35
+ * 集中式方案管理 Hook
36
+ *
37
+ * 用于 GridPlusContext.Provider 中初始化方案管理功能
38
+ *
39
+ * @example
40
+ * ```tsx
41
+ * function AppProvider({ children }) {
42
+ * const adapter = new BackendApiSchemeAdapter({ ... });
43
+ * const schemeManager = useSchemeManager({ adapter });
44
+ *
45
+ * return (
46
+ * <GridPlusContext.Provider value={{
47
+ * ...otherValues,
48
+ * ...schemeManager
49
+ * }}>
50
+ * {children}
51
+ * </GridPlusContext.Provider>
52
+ * );
53
+ * }
54
+ * ```
55
55
  */
56
56
  function useSchemeManager(config) {
57
57
  var adapter = config.adapter,
@@ -439,9 +439,9 @@ function useSchemeManager(config) {
439
439
 
440
440
  // ========== 全局配置操作 ==========
441
441
 
442
- /**
443
- * 处理全局配置操作的错误
444
- * @author nokecy
442
+ /**
443
+ * 处理全局配置操作的错误
444
+ * @author nokecy
445
445
  */
446
446
  var handleGlobalConfigError = (0, _react.useCallback)(function (error, defaultMessage) {
447
447
  var _error$response;
@@ -452,9 +452,9 @@ function useSchemeManager(config) {
452
452
  }
453
453
  }, []);
454
454
 
455
- /**
456
- * 将方案应用到全局(管理员操作)
457
- * @author nokecy
455
+ /**
456
+ * 将方案应用到全局(管理员操作)
457
+ * @author nokecy
458
458
  */
459
459
  var applySchemeToGlobal = (0, _react.useCallback)( /*#__PURE__*/function () {
460
460
  var _ref9 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee9(gridId, schemeId) {
@@ -503,9 +503,9 @@ function useSchemeManager(config) {
503
503
  };
504
504
  }(), [adapter, currentSchemes, refreshSchemes, handleGlobalConfigError]);
505
505
 
506
- /**
507
- * 重置当前用户配置,回退到全局配置
508
- * @author nokecy
506
+ /**
507
+ * 重置当前用户配置,回退到全局配置
508
+ * @author nokecy
509
509
  */
510
510
  var resetToGlobal = (0, _react.useCallback)( /*#__PURE__*/function () {
511
511
  var _ref10 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(gridId) {
@@ -550,9 +550,9 @@ function useSchemeManager(config) {
550
550
  };
551
551
  }(), [adapter, refreshSchemes, handleGlobalConfigError]);
552
552
 
553
- /**
554
- * 重置所有用户配置(管理员操作)
555
- * @author nokecy
553
+ /**
554
+ * 重置所有用户配置(管理员操作)
555
+ * @author nokecy
556
556
  */
557
557
  var resetAllUsers = (0, _react.useCallback)( /*#__PURE__*/function () {
558
558
  var _ref11 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee11(gridId) {
@@ -630,64 +630,64 @@ function useSchemeManager(config) {
630
630
  };
631
631
  }
632
632
 
633
- /**
634
- * 在组件中使用集中式方案管理
635
- *
636
- * ⚠️ 必须在 Provider 中传入 SchemeManager 状态,否则抛出错误
637
- *
638
- * @example
639
- * ```tsx
640
- * // 1. 创建适配器和方案管理器
641
- * function App() {
642
- * const adapter = useMemo(
643
- * () => new BackendApiSchemeAdapter({
644
- * apiBaseUrl: 'https://api.example.com',
645
- * getToken: () => localStorage.getItem('token'),
646
- * getUserId: () => localStorage.getItem('userId')
647
- * }),
648
- * []
649
- * );
650
- *
651
- * const schemeManager = useSchemeManager({
652
- * adapter,
653
- * autoLoad: true,
654
- * showErrorMessage: true,
655
- * currentUserId: currentUser?.id
656
- * });
657
- *
658
- * // 2. 传入 Provider
659
- * return (
660
- * <GridPlusContext.Provider value={{
661
- * extensibleColumns: [],
662
- * columnState: undefined,
663
- * onSaveColumnState: () => {},
664
- * applyToGlobal: () => {},
665
- * resetCurrent: () => {},
666
- * resetAll: () => {},
667
- * queryFormItems: [],
668
- * ...schemeManager // 展开方案管理状态
669
- * }}>
670
- * <MyGrid />
671
- * </GridPlusContext.Provider>
672
- * );
673
- * }
674
- *
675
- * // 3. 在子组件中使用
676
- * function MyGrid() {
677
- * const {
678
- * columnSchemes,
679
- * saveColumnScheme,
680
- * setCurrentColumnScheme
681
- * } = useGridSchemes();
682
- *
683
- * const gridId = 'my-grid';
684
- * const schemes = columnSchemes?.[gridId] || [];
685
- *
686
- * const handleSave = async () => {
687
- * await saveColumnScheme?.(gridId, newScheme);
688
- * };
689
- * }
690
- * ```
633
+ /**
634
+ * 在组件中使用集中式方案管理
635
+ *
636
+ * ⚠️ 必须在 Provider 中传入 SchemeManager 状态,否则抛出错误
637
+ *
638
+ * @example
639
+ * ```tsx
640
+ * // 1. 创建适配器和方案管理器
641
+ * function App() {
642
+ * const adapter = useMemo(
643
+ * () => new BackendApiSchemeAdapter({
644
+ * apiBaseUrl: 'https://api.example.com',
645
+ * getToken: () => localStorage.getItem('token'),
646
+ * getUserId: () => localStorage.getItem('userId')
647
+ * }),
648
+ * []
649
+ * );
650
+ *
651
+ * const schemeManager = useSchemeManager({
652
+ * adapter,
653
+ * autoLoad: true,
654
+ * showErrorMessage: true,
655
+ * currentUserId: currentUser?.id
656
+ * });
657
+ *
658
+ * // 2. 传入 Provider
659
+ * return (
660
+ * <GridPlusContext.Provider value={{
661
+ * extensibleColumns: [],
662
+ * columnState: undefined,
663
+ * onSaveColumnState: () => {},
664
+ * applyToGlobal: () => {},
665
+ * resetCurrent: () => {},
666
+ * resetAll: () => {},
667
+ * queryFormItems: [],
668
+ * ...schemeManager // 展开方案管理状态
669
+ * }}>
670
+ * <MyGrid />
671
+ * </GridPlusContext.Provider>
672
+ * );
673
+ * }
674
+ *
675
+ * // 3. 在子组件中使用
676
+ * function MyGrid() {
677
+ * const {
678
+ * columnSchemes,
679
+ * saveColumnScheme,
680
+ * setCurrentColumnScheme
681
+ * } = useGridSchemes();
682
+ *
683
+ * const gridId = 'my-grid';
684
+ * const schemes = columnSchemes?.[gridId] || [];
685
+ *
686
+ * const handleSave = async () => {
687
+ * await saveColumnScheme?.(gridId, newScheme);
688
+ * };
689
+ * }
690
+ * ```
691
691
  */
692
692
  function useGridSchemes() {
693
693
  var context = (0, _react.useContext)(_gridContext.GridPlusContext);
@@ -23,13 +23,13 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Re
23
23
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
24
24
  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; }
25
25
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
26
- 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); } /**
27
- * AG-Grid Plus 错误边界组件
28
- * 用于捕获 React 渲染错误并提供友好的错误提示
26
+ 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); } /**
27
+ * AG-Grid Plus 错误边界组件
28
+ * 用于捕获 React 渲染错误并提供友好的错误提示
29
29
  */
30
- /**
31
- * Grid Plus 错误边界组件
32
- * 捕获子组件树中的 JavaScript 错误,记录错误并展示降级 UI
30
+ /**
31
+ * Grid Plus 错误边界组件
32
+ * 捕获子组件树中的 JavaScript 错误,记录错误并展示降级 UI
33
33
  */
34
34
  var ErrorBoundary = exports.ErrorBoundary = /*#__PURE__*/function (_Component) {
35
35
  _inherits(ErrorBoundary, _Component);
@@ -38,8 +38,8 @@ var ErrorBoundary = exports.ErrorBoundary = /*#__PURE__*/function (_Component) {
38
38
  var _this;
39
39
  _classCallCheck(this, ErrorBoundary);
40
40
  _this = _super.call(this, props);
41
- /**
42
- * 重置错误状态,重新渲染组件
41
+ /**
42
+ * 重置错误状态,重新渲染组件
43
43
  */
44
44
  _defineProperty(_assertThisInitialized(_this), "handleRetry", function () {
45
45
  _this.setState({