@nokecy/qc-ui 1.0.59 → 1.0.60

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 (180) hide show
  1. package/dist/cjs/deleteConfirm/index.d.ts +31 -0
  2. package/dist/cjs/deleteConfirm/index.js +64 -0
  3. package/dist/cjs/fullScreenAlert/index.d.ts +25 -4
  4. package/dist/cjs/fullScreenAlert/index.js +50 -17
  5. package/dist/cjs/generatedListPage/ConfigurableToolbar.d.ts +35 -0
  6. package/dist/cjs/generatedListPage/ConfigurableToolbar.js +179 -0
  7. package/dist/cjs/generatedListPage/GeneratedListPage.d.ts +8 -0
  8. package/dist/cjs/generatedListPage/GeneratedListPage.js +545 -0
  9. package/dist/cjs/generatedListPage/OptionsColumn.d.ts +9 -0
  10. package/dist/cjs/generatedListPage/OptionsColumn.js +135 -0
  11. package/dist/cjs/generatedListPage/PerformanceMonitor.d.ts +55 -0
  12. package/dist/cjs/generatedListPage/PerformanceMonitor.js +277 -0
  13. package/dist/cjs/generatedListPage/RequestManager.d.ts +97 -0
  14. package/dist/cjs/generatedListPage/RequestManager.js +404 -0
  15. package/dist/cjs/generatedListPage/_utils/AccessWrapper.d.ts +16 -0
  16. package/dist/cjs/generatedListPage/_utils/AccessWrapper.js +26 -0
  17. package/dist/cjs/generatedListPage/_utils/defaultHandlers.d.ts +22 -0
  18. package/dist/cjs/generatedListPage/_utils/defaultHandlers.js +127 -0
  19. package/dist/cjs/generatedListPage/index.d.ts +20 -0
  20. package/dist/cjs/generatedListPage/index.js +92 -0
  21. package/dist/cjs/generatedListPage/types.d.ts +221 -0
  22. package/dist/cjs/generatedListPage/types.js +5 -0
  23. package/dist/cjs/generatedListPage/usePermissionCheck.d.ts +66 -0
  24. package/dist/cjs/generatedListPage/usePermissionCheck.js +150 -0
  25. package/dist/cjs/generatedListPage/useRequestManager.d.ts +35 -0
  26. package/dist/cjs/generatedListPage/useRequestManager.js +121 -0
  27. package/dist/cjs/importModal/index.d.ts +21 -3
  28. package/dist/cjs/importModal/index.js +30 -10
  29. package/dist/cjs/index.d.ts +9 -1
  30. package/dist/cjs/index.js +21 -0
  31. package/dist/cjs/standardFormDialog/FormValidation.d.ts +150 -0
  32. package/dist/cjs/standardFormDialog/FormValidation.js +229 -0
  33. package/dist/cjs/standardFormDialog/PortalManager.d.ts +94 -0
  34. package/dist/cjs/standardFormDialog/PortalManager.js +259 -0
  35. package/dist/cjs/standardFormDialog/StandardFormDialog.d.ts +10 -0
  36. package/dist/cjs/standardFormDialog/StandardFormDialog.js +516 -0
  37. package/dist/cjs/standardFormDialog/index.d.ts +7 -0
  38. package/dist/cjs/standardFormDialog/index.js +83 -0
  39. package/dist/cjs/standardFormDialog/types.d.ts +107 -0
  40. package/dist/cjs/standardFormDialog/types.js +5 -0
  41. package/dist/cjs/standardFormDialog/useStandardFormSchema.d.ts +68 -0
  42. package/dist/cjs/standardFormDialog/useStandardFormSchema.js +197 -0
  43. package/dist/cjs/standardFormDialog/withStandardForm.d.ts +193 -0
  44. package/dist/cjs/standardFormDialog/withStandardForm.js +388 -0
  45. package/dist/esm/deleteConfirm/index.d.ts +31 -0
  46. package/dist/esm/deleteConfirm/index.js +57 -0
  47. package/dist/esm/fullScreenAlert/index.d.ts +25 -4
  48. package/dist/esm/fullScreenAlert/index.js +50 -18
  49. package/dist/esm/generatedListPage/ConfigurableToolbar.d.ts +35 -0
  50. package/dist/esm/generatedListPage/ConfigurableToolbar.js +171 -0
  51. package/dist/esm/generatedListPage/GeneratedListPage.d.ts +8 -0
  52. package/dist/esm/generatedListPage/GeneratedListPage.js +535 -0
  53. package/dist/esm/generatedListPage/OptionsColumn.d.ts +9 -0
  54. package/dist/esm/generatedListPage/OptionsColumn.js +127 -0
  55. package/dist/esm/generatedListPage/PerformanceMonitor.d.ts +55 -0
  56. package/dist/esm/generatedListPage/PerformanceMonitor.js +272 -0
  57. package/dist/esm/generatedListPage/RequestManager.d.ts +97 -0
  58. package/dist/esm/generatedListPage/RequestManager.js +398 -0
  59. package/dist/esm/generatedListPage/_utils/AccessWrapper.d.ts +16 -0
  60. package/dist/esm/generatedListPage/_utils/AccessWrapper.js +20 -0
  61. package/dist/esm/generatedListPage/_utils/defaultHandlers.d.ts +22 -0
  62. package/dist/esm/generatedListPage/_utils/defaultHandlers.js +122 -0
  63. package/dist/esm/generatedListPage/index.d.ts +20 -0
  64. package/dist/esm/generatedListPage/index.js +26 -0
  65. package/dist/esm/generatedListPage/types.d.ts +221 -0
  66. package/dist/esm/generatedListPage/types.js +1 -0
  67. package/dist/esm/generatedListPage/usePermissionCheck.d.ts +66 -0
  68. package/dist/esm/generatedListPage/usePermissionCheck.js +145 -0
  69. package/dist/esm/generatedListPage/useRequestManager.d.ts +35 -0
  70. package/dist/esm/generatedListPage/useRequestManager.js +116 -0
  71. package/dist/esm/importModal/index.d.ts +21 -3
  72. package/dist/esm/importModal/index.js +29 -10
  73. package/dist/esm/index.d.ts +9 -1
  74. package/dist/esm/index.js +6 -1
  75. package/dist/esm/standardFormDialog/FormValidation.d.ts +150 -0
  76. package/dist/esm/standardFormDialog/FormValidation.js +223 -0
  77. package/dist/esm/standardFormDialog/PortalManager.d.ts +94 -0
  78. package/dist/esm/standardFormDialog/PortalManager.js +253 -0
  79. package/dist/esm/standardFormDialog/StandardFormDialog.d.ts +10 -0
  80. package/dist/esm/standardFormDialog/StandardFormDialog.js +508 -0
  81. package/dist/esm/standardFormDialog/index.d.ts +7 -0
  82. package/dist/esm/standardFormDialog/index.js +6 -0
  83. package/dist/esm/standardFormDialog/types.d.ts +107 -0
  84. package/dist/esm/standardFormDialog/types.js +1 -0
  85. package/dist/esm/standardFormDialog/useStandardFormSchema.d.ts +68 -0
  86. package/dist/esm/standardFormDialog/useStandardFormSchema.js +191 -0
  87. package/dist/esm/standardFormDialog/withStandardForm.d.ts +193 -0
  88. package/dist/esm/standardFormDialog/withStandardForm.js +382 -0
  89. package/dist/umd/qc-ui.min.js +1 -1
  90. package/package.json +1 -1
  91. package/dist/esm/ConfirmPro/index.d.ts.map +0 -1
  92. package/dist/esm/ag-grid-plus/_utils/boolSelect.d.ts.map +0 -1
  93. package/dist/esm/ag-grid-plus/_utils/customGroupCellRenderer.d.ts.map +0 -1
  94. package/dist/esm/ag-grid-plus/_utils/processColumnGroups.d.ts.map +0 -1
  95. package/dist/esm/ag-grid-plus/_utils/processFormColumnState.d.ts.map +0 -1
  96. package/dist/esm/ag-grid-plus/ag-gridPlus.d.ts.map +0 -1
  97. package/dist/esm/ag-grid-plus/context/gridContext.d.ts.map +0 -1
  98. package/dist/esm/ag-grid-plus/gridManager/index.d.ts.map +0 -1
  99. package/dist/esm/ag-grid-plus/index.d.ts.map +0 -1
  100. package/dist/esm/ag-grid-plus/interface.d.ts.map +0 -1
  101. package/dist/esm/ag-grid-plus/locale.d.ts.map +0 -1
  102. package/dist/esm/ag-grid-plus/queryForm/index.d.ts.map +0 -1
  103. package/dist/esm/ag-grid-plus/queryForm/queryForm.d.ts.map +0 -1
  104. package/dist/esm/ag-grid-plus/setting/diySetting/index.d.ts.map +0 -1
  105. package/dist/esm/ag-grid-plus/setting/index.d.ts.map +0 -1
  106. package/dist/esm/ag-grid-plus/settingItem/index.d.ts.map +0 -1
  107. package/dist/esm/ag-grid-plus/toolBar/index.d.ts.map +0 -1
  108. package/dist/esm/ag-grid-plus/toolBar/style.d.ts.map +0 -1
  109. package/dist/esm/ag-grid-plus/utils.d.ts.map +0 -1
  110. package/dist/esm/array-table/arrayAddBtn.d.ts.map +0 -1
  111. package/dist/esm/array-table/arrayBase.d.ts.map +0 -1
  112. package/dist/esm/array-table/index.d.ts.map +0 -1
  113. package/dist/esm/array-table/interface.d.ts.map +0 -1
  114. package/dist/esm/array-table/preview.d.ts.map +0 -1
  115. package/dist/esm/array-table/utils.d.ts.map +0 -1
  116. package/dist/esm/array-table-index/index.d.ts.map +0 -1
  117. package/dist/esm/card/index.d.ts.map +0 -1
  118. package/dist/esm/dashboard/dashboard/components/index.d.ts.map +0 -1
  119. package/dist/esm/dashboard/dashboard/components/modal/index.d.ts.map +0 -1
  120. package/dist/esm/dashboard/dashboard/components/toolbar/index.d.ts.map +0 -1
  121. package/dist/esm/dashboard/dashboard/components/toolbar/style/index.d.ts.map +0 -1
  122. package/dist/esm/dashboard/dashboard/index.d.ts.map +0 -1
  123. package/dist/esm/dashboard/dashboard/service.d.ts.map +0 -1
  124. package/dist/esm/dashboard/dashboard/utils.d.ts.map +0 -1
  125. package/dist/esm/dashboard/index.d.ts.map +0 -1
  126. package/dist/esm/dashboard/utils.d.ts.map +0 -1
  127. package/dist/esm/dashboard/widget/index.d.ts.map +0 -1
  128. package/dist/esm/dashboard/widget/selector/index.d.ts.map +0 -1
  129. package/dist/esm/dashboard/widget/utils.d.ts.map +0 -1
  130. package/dist/esm/dialogSelect/index.d.ts.map +0 -1
  131. package/dist/esm/draggableModal/index.d.ts.map +0 -1
  132. package/dist/esm/editable/index.d.ts.map +0 -1
  133. package/dist/esm/editable/style.d.ts.map +0 -1
  134. package/dist/esm/extensible-grid/index.d.ts.map +0 -1
  135. package/dist/esm/extensible-grid/interface.d.ts.map +0 -1
  136. package/dist/esm/formDesigner/FormDesigner.d.ts.map +0 -1
  137. package/dist/esm/formDesigner/ProCard/index.d.ts.map +0 -1
  138. package/dist/esm/formDesigner/arrayTable/arrayTableSchema.d.ts.map +0 -1
  139. package/dist/esm/formDesigner/arrayTable/index.d.ts.map +0 -1
  140. package/dist/esm/formDesigner/arrayTable/preview.d.ts.map +0 -1
  141. package/dist/esm/formDesigner/index.d.ts.map +0 -1
  142. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/index.d.ts.map +0 -1
  143. package/dist/esm/formDesigner/preWidgets/arrayTableIndex/preview.d.ts.map +0 -1
  144. package/dist/esm/formDesigner/preWidgets/card/index.d.ts.map +0 -1
  145. package/dist/esm/formDesigner/preWidgets/card/preview.d.ts.map +0 -1
  146. package/dist/esm/formDesigner/preWidgets/index.d.ts.map +0 -1
  147. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/index.d.ts.map +0 -1
  148. package/dist/esm/formDesigner/preWidgets/preDefineProperty1/preview.d.ts.map +0 -1
  149. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/index.d.ts.map +0 -1
  150. package/dist/esm/formDesigner/preWidgets/preDefineProperty10/preview.d.ts.map +0 -1
  151. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/index.d.ts.map +0 -1
  152. package/dist/esm/formDesigner/preWidgets/preDefineProperty2/preview.d.ts.map +0 -1
  153. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/index.d.ts.map +0 -1
  154. package/dist/esm/formDesigner/preWidgets/preDefineProperty3/preview.d.ts.map +0 -1
  155. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/index.d.ts.map +0 -1
  156. package/dist/esm/formDesigner/preWidgets/preDefineProperty4/preview.d.ts.map +0 -1
  157. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/index.d.ts.map +0 -1
  158. package/dist/esm/formDesigner/preWidgets/preDefineProperty5/preview.d.ts.map +0 -1
  159. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/index.d.ts.map +0 -1
  160. package/dist/esm/formDesigner/preWidgets/preDefineProperty6/preview.d.ts.map +0 -1
  161. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/index.d.ts.map +0 -1
  162. package/dist/esm/formDesigner/preWidgets/preDefineProperty7/preview.d.ts.map +0 -1
  163. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/index.d.ts.map +0 -1
  164. package/dist/esm/formDesigner/preWidgets/preDefineProperty8/preview.d.ts.map +0 -1
  165. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/index.d.ts.map +0 -1
  166. package/dist/esm/formDesigner/preWidgets/preDefineProperty9/preview.d.ts.map +0 -1
  167. package/dist/esm/formDesigner/preWidgets/utils.d.ts.map +0 -1
  168. package/dist/esm/formDesigner/widgets/ActionsWidget.d.ts.map +0 -1
  169. package/dist/esm/formDesigner/widgets/LogoWidget.d.ts.map +0 -1
  170. package/dist/esm/formDesigner/widgets/PreviewWidget.d.ts.map +0 -1
  171. package/dist/esm/formDesigner/widgets/SchemaEditorWidget.d.ts.map +0 -1
  172. package/dist/esm/formDesigner/widgets/index.d.ts.map +0 -1
  173. package/dist/esm/formPro/context/formProContext.d.ts.map +0 -1
  174. package/dist/esm/formPro/formLayoutPro.d.ts.map +0 -1
  175. package/dist/esm/formPro/index.d.ts.map +0 -1
  176. package/dist/esm/fullScreenAlert/index.d.ts.map +0 -1
  177. package/dist/esm/importModal/index.d.ts.map +0 -1
  178. package/dist/esm/index.d.ts.map +0 -1
  179. package/dist/esm/queryBuilder/index.d.ts.map +0 -1
  180. package/dist/esm/toolBar/index.d.ts.map +0 -1
@@ -0,0 +1,253 @@
1
+ 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); }
2
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ 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); }
5
+ 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; }
6
+ 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; } }
7
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
8
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
9
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
10
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
11
+ 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; }
12
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
13
+ 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); }
14
+ /**
15
+ * FormDialog Portal 管理器
16
+ *
17
+ * 负责管理 FormDialog Portal 的生命周期,避免 Portal ID 冲突
18
+ * 和内存泄漏问题
19
+ */
20
+ var PortalManager = /*#__PURE__*/function () {
21
+ function PortalManager() {
22
+ _classCallCheck(this, PortalManager);
23
+ _defineProperty(this, "portals", new Map());
24
+ _defineProperty(this, "cleanupTimer", null);
25
+ // 启动定期清理任务
26
+ this.startCleanupTimer();
27
+ }
28
+
29
+ /**
30
+ * 生成唯一的 Portal ID
31
+ * @param prefix Portal ID 前缀
32
+ * @param formId 表单 ID
33
+ * @param entityId 实体 ID (可选)
34
+ * @returns 唯一的 Portal ID
35
+ */
36
+ _createClass(PortalManager, [{
37
+ key: "generatePortalId",
38
+ value: function generatePortalId(prefix, formId, entityId) {
39
+ var timestamp = Date.now();
40
+ var random = Math.random().toString(36).substr(2, 9);
41
+
42
+ // 基础 ID: prefix.formId
43
+ var baseId = "".concat(prefix, ".").concat(formId);
44
+
45
+ // 如果是编辑模式,包含 entityId
46
+ var scopedId = entityId ? "".concat(baseId, ".").concat(entityId) : baseId;
47
+
48
+ // 添加时间戳和随机数确保唯一性
49
+ var uniqueId = "".concat(scopedId, ".").concat(timestamp, ".").concat(random);
50
+ return uniqueId;
51
+ }
52
+
53
+ /**
54
+ * 注册 Portal
55
+ * @param id Portal ID
56
+ * @param formId 表单 ID
57
+ * @param prefix Portal 前缀
58
+ */
59
+ }, {
60
+ key: "register",
61
+ value: function register(id, formId, prefix) {
62
+ var now = Date.now();
63
+ this.portals.set(id, {
64
+ id: id,
65
+ formId: formId,
66
+ prefix: prefix,
67
+ createdAt: now,
68
+ lastAccessedAt: now,
69
+ isOpen: true
70
+ });
71
+ console.debug("[PortalManager] Registered portal: ".concat(id));
72
+ }
73
+
74
+ /**
75
+ * 更新 Portal 访问时间
76
+ * @param id Portal ID
77
+ */
78
+ }, {
79
+ key: "updateAccess",
80
+ value: function updateAccess(id) {
81
+ var portal = this.portals.get(id);
82
+ if (portal) {
83
+ portal.lastAccessedAt = Date.now();
84
+ }
85
+ }
86
+
87
+ /**
88
+ * 标记 Portal 为关闭状态
89
+ * @param id Portal ID
90
+ */
91
+ }, {
92
+ key: "markAsClosed",
93
+ value: function markAsClosed(id) {
94
+ var portal = this.portals.get(id);
95
+ if (portal) {
96
+ portal.isOpen = false;
97
+ portal.lastAccessedAt = Date.now();
98
+ console.debug("[PortalManager] Marked portal as closed: ".concat(id));
99
+ }
100
+ }
101
+
102
+ /**
103
+ * 取消注册 Portal
104
+ * @param id Portal ID
105
+ */
106
+ }, {
107
+ key: "unregister",
108
+ value: function unregister(id) {
109
+ if (this.portals.delete(id)) {
110
+ console.debug("[PortalManager] Unregistered portal: ".concat(id));
111
+ }
112
+ }
113
+
114
+ /**
115
+ * 检查 Portal 是否存在
116
+ * @param id Portal ID
117
+ */
118
+ }, {
119
+ key: "exists",
120
+ value: function exists(id) {
121
+ return this.portals.has(id);
122
+ }
123
+
124
+ /**
125
+ * 获取 Portal 信息
126
+ * @param id Portal ID
127
+ */
128
+ }, {
129
+ key: "getPortal",
130
+ value: function getPortal(id) {
131
+ return this.portals.get(id);
132
+ }
133
+
134
+ /**
135
+ * 获取所有 Portal 列表
136
+ */
137
+ }, {
138
+ key: "getAllPortals",
139
+ value: function getAllPortals() {
140
+ return Array.from(this.portals.values());
141
+ }
142
+
143
+ /**
144
+ * 清理过期的 Portal
145
+ * 清理规则:
146
+ * 1. 已关闭且超过 5 分钟未访问
147
+ * 2. 创建超过 30 分钟的 Portal
148
+ */
149
+ }, {
150
+ key: "cleanup",
151
+ value: function cleanup() {
152
+ var _this = this;
153
+ var now = Date.now();
154
+ var CLOSED_TIMEOUT = 5 * 60 * 1000; // 5 分钟
155
+ var MAX_AGE = 30 * 60 * 1000; // 30 分钟
156
+
157
+ var cleanedCount = 0;
158
+ Array.from(this.portals.entries()).forEach(function (_ref) {
159
+ var _ref2 = _slicedToArray(_ref, 2),
160
+ id = _ref2[0],
161
+ portal = _ref2[1];
162
+ var age = now - portal.createdAt;
163
+ var inactiveDuration = now - portal.lastAccessedAt;
164
+
165
+ // 清理条件
166
+ var shouldClean = !portal.isOpen && inactiveDuration > CLOSED_TIMEOUT ||
167
+ // 已关闭且长时间未访问
168
+ age > MAX_AGE; // 或者存在时间过长
169
+
170
+ if (shouldClean) {
171
+ _this.portals.delete(id);
172
+ cleanedCount++;
173
+ console.debug("[PortalManager] Cleaned up portal: ".concat(id));
174
+ }
175
+ });
176
+ if (cleanedCount > 0) {
177
+ console.info("[PortalManager] Cleanup completed: removed ".concat(cleanedCount, " portals"));
178
+ }
179
+ }
180
+
181
+ /**
182
+ * 启动定期清理定时器
183
+ */
184
+ }, {
185
+ key: "startCleanupTimer",
186
+ value: function startCleanupTimer() {
187
+ var _this2 = this;
188
+ // 每 2 分钟执行一次清理
189
+ this.cleanupTimer = setInterval(function () {
190
+ _this2.cleanup();
191
+ }, 2 * 60 * 1000);
192
+ }
193
+
194
+ /**
195
+ * 停止清理定时器
196
+ */
197
+ }, {
198
+ key: "stopCleanupTimer",
199
+ value: function stopCleanupTimer() {
200
+ if (this.cleanupTimer) {
201
+ clearInterval(this.cleanupTimer);
202
+ this.cleanupTimer = null;
203
+ }
204
+ }
205
+
206
+ /**
207
+ * 清空所有 Portal
208
+ */
209
+ }, {
210
+ key: "clear",
211
+ value: function clear() {
212
+ this.portals.clear();
213
+ console.info('[PortalManager] All portals cleared');
214
+ }
215
+
216
+ /**
217
+ * 获取统计信息
218
+ */
219
+ }, {
220
+ key: "getStats",
221
+ value: function getStats() {
222
+ var allPortals = this.getAllPortals();
223
+ return {
224
+ total: allPortals.length,
225
+ open: allPortals.filter(function (p) {
226
+ return p.isOpen;
227
+ }).length,
228
+ closed: allPortals.filter(function (p) {
229
+ return !p.isOpen;
230
+ }).length
231
+ };
232
+ }
233
+ }], [{
234
+ key: "getInstance",
235
+ value:
236
+ // 单例模式
237
+ function getInstance() {
238
+ if (!PortalManager.instance) {
239
+ PortalManager.instance = new PortalManager();
240
+ }
241
+ return PortalManager.instance;
242
+ }
243
+ }]);
244
+ return PortalManager;
245
+ }(); // 导出单例实例
246
+ _defineProperty(PortalManager, "instance", void 0);
247
+ export var portalManager = PortalManager.getInstance();
248
+
249
+ // 开发模式下暴露到全局,方便调试
250
+ if (process.env.NODE_ENV === 'development') {
251
+ window.__PORTAL_MANAGER__ = portalManager;
252
+ }
253
+ export default portalManager;
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { StandardFormDialogProps } from './types';
3
+ /**
4
+ * 带错误边界的StandardFormDialog组件
5
+ */
6
+ declare const StandardFormDialogWithErrorBoundary: React.FC<StandardFormDialogProps & {
7
+ useFormSchema?: (formId: string, config: any) => any;
8
+ useSchemaField?: (config: any) => any;
9
+ }>;
10
+ export default StandardFormDialogWithErrorBoundary;