@huanban/rulego-editor-core 1.3.18 → 1.4.0

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 (225) hide show
  1. package/README.md +153 -2
  2. package/assets/images/discovery-dark.svg +1 -0
  3. package/assets/images/discovery.svg +1 -0
  4. package/assets/images/nacos-dark.svg +1 -0
  5. package/assets/images/nacos.svg +1 -0
  6. package/assets/theme-icons/ant-blue/discovery-dark.svg +1 -0
  7. package/assets/theme-icons/ant-blue/discovery.svg +1 -0
  8. package/assets/theme-icons/ant-blue/nacos-dark.svg +1 -0
  9. package/assets/theme-icons/ant-blue/nacos.svg +1 -0
  10. package/assets/theme-icons/apple/discovery-dark.svg +1 -0
  11. package/assets/theme-icons/apple/discovery.svg +1 -0
  12. package/assets/theme-icons/apple/nacos-dark.svg +1 -0
  13. package/assets/theme-icons/apple/nacos.svg +1 -0
  14. package/assets/theme-icons/colorful/discovery-dark.svg +1 -0
  15. package/assets/theme-icons/colorful/discovery.svg +1 -0
  16. package/assets/theme-icons/colorful/nacos-dark.svg +1 -0
  17. package/assets/theme-icons/colorful/nacos.svg +1 -0
  18. package/assets/theme-icons/dark/discovery-dark.svg +1 -0
  19. package/assets/theme-icons/dark/discovery.svg +1 -0
  20. package/assets/theme-icons/dark/nacos-dark.svg +1 -0
  21. package/assets/theme-icons/dark/nacos.svg +1 -0
  22. package/assets/theme-icons/default/discovery-dark.svg +1 -0
  23. package/assets/theme-icons/default/discovery.svg +1 -0
  24. package/assets/theme-icons/default/nacos-dark.svg +1 -0
  25. package/assets/theme-icons/default/nacos.svg +1 -0
  26. package/assets/theme-icons/elegant/discovery-dark.svg +1 -0
  27. package/assets/theme-icons/elegant/discovery.svg +1 -0
  28. package/assets/theme-icons/elegant/nacos-dark.svg +1 -0
  29. package/assets/theme-icons/elegant/nacos.svg +1 -0
  30. package/assets/theme-icons/github/discovery-dark.svg +1 -0
  31. package/assets/theme-icons/github/discovery.svg +1 -0
  32. package/assets/theme-icons/github/nacos-dark.svg +1 -0
  33. package/assets/theme-icons/github/nacos.svg +1 -0
  34. package/assets/theme-icons/icon-theme-manifest.json +30 -14
  35. package/assets/theme-icons/icon-theme-overview.svg +1599 -1287
  36. package/assets/theme-icons/material/discovery-dark.svg +1 -0
  37. package/assets/theme-icons/material/discovery.svg +1 -0
  38. package/assets/theme-icons/material/nacos-dark.svg +1 -0
  39. package/assets/theme-icons/material/nacos.svg +1 -0
  40. package/assets/theme-icons/modern/discovery-dark.svg +1 -0
  41. package/assets/theme-icons/modern/discovery.svg +1 -0
  42. package/assets/theme-icons/modern/nacos-dark.svg +1 -0
  43. package/assets/theme-icons/modern/nacos.svg +1 -0
  44. package/assets/theme-icons/nature/discovery-dark.svg +1 -0
  45. package/assets/theme-icons/nature/discovery.svg +1 -0
  46. package/assets/theme-icons/nature/nacos-dark.svg +1 -0
  47. package/assets/theme-icons/nature/nacos.svg +1 -0
  48. package/assets/theme-icons/tailwind/discovery-dark.svg +1 -0
  49. package/assets/theme-icons/tailwind/discovery.svg +1 -0
  50. package/assets/theme-icons/tailwind/nacos-dark.svg +1 -0
  51. package/assets/theme-icons/tailwind/nacos.svg +1 -0
  52. package/assets/theme-icons/tech/discovery-dark.svg +1 -0
  53. package/assets/theme-icons/tech/discovery.svg +1 -0
  54. package/assets/theme-icons/tech/nacos-dark.svg +1 -0
  55. package/assets/theme-icons/tech/nacos.svg +1 -0
  56. package/assets/theme-icons/vscode/discovery-dark.svg +1 -0
  57. package/assets/theme-icons/vscode/discovery.svg +1 -0
  58. package/assets/theme-icons/vscode/nacos-dark.svg +1 -0
  59. package/assets/theme-icons/vscode/nacos.svg +1 -0
  60. package/dist/ai/copilot-markdown.d.ts +40 -0
  61. package/dist/ai/copilot-transport.d.ts +39 -0
  62. package/dist/api/AIManager.d.ts +5 -4
  63. package/dist/api/ApiProvider.d.ts +17 -69
  64. package/dist/api/ComponentCatalogCache.d.ts +27 -0
  65. package/dist/api/DebugSocketClient.d.ts +18 -25
  66. package/dist/api/RuleChainAPI.d.ts +24 -145
  67. package/dist/api/StreamParser.d.ts +0 -10
  68. package/dist/api/index.d.ts +4 -14
  69. package/dist/api/response-utils.d.ts +4 -22
  70. package/dist/api/types.d.ts +44 -179
  71. package/dist/chunks/editor-core-code-editor-CRki2wA_.js +512 -0
  72. package/dist/chunks/editor-core-default-components-BjF65lar.js +9448 -0
  73. package/dist/chunks/editor-core-dialogs-CkFLaC8Q.js +17176 -0
  74. package/dist/chunks/editor-core-icons-BqeFofNA.js +668 -0
  75. package/dist/chunks/editor-core-json-diff-RHsPeX-w.js +199 -0
  76. package/dist/chunks/editor-core-locales-i6o28vm2.js +4159 -0
  77. package/dist/chunks/editor-core-node-patches-BJTT3TuX.js +8060 -0
  78. package/dist/chunks/editor-core-node-views-BOaPVdmN.js +1288 -0
  79. package/dist/chunks/editor-core-property-drawers-lLsBIoCa.js +8035 -0
  80. package/dist/chunks/editor-core-standalone-CHXk3ukc.js +11270 -0
  81. package/dist/chunks/editor-core-styles-C1TbLgCK.js +8841 -0
  82. package/dist/chunks/vendor-logicflow-core-runtime-Cp6IBEjB.js +217 -0
  83. package/dist/chunks/vendor-logicflow-shared-C7YynLDn.js +4 -0
  84. package/dist/chunks/xlsx-BopDBbWb.js +24176 -0
  85. package/dist/core/ActionRegistry.d.ts +47 -0
  86. package/dist/core/AutoLayout.d.ts +1 -48
  87. package/dist/core/ComponentDocService.d.ts +28 -0
  88. package/dist/core/ComponentRegistry.d.ts +1 -125
  89. package/dist/core/DataAdapter.d.ts +4 -89
  90. package/dist/core/DiagnosticService.d.ts +15 -0
  91. package/dist/core/EditorCore.d.ts +22 -212
  92. package/dist/core/EditorWorkspace.d.ts +111 -0
  93. package/dist/core/EventBus.d.ts +0 -86
  94. package/dist/core/ExplorerTreeStore.d.ts +43 -0
  95. package/dist/core/FieldCapabilityRegistry.d.ts +16 -0
  96. package/dist/core/FieldChangeRegistry.d.ts +48 -0
  97. package/dist/core/HistoryManager.d.ts +0 -123
  98. package/dist/core/I18nManager.d.ts +0 -120
  99. package/dist/core/Optimizations.d.ts +0 -14
  100. package/dist/core/OptionSourceRegistry.d.ts +38 -0
  101. package/dist/core/RuleChainChatManager.d.ts +0 -37
  102. package/dist/core/RuleChainValidator.d.ts +0 -79
  103. package/dist/core/StateStore.d.ts +4 -140
  104. package/dist/core/ThemeManager.d.ts +0 -141
  105. package/dist/core/ValidationEngine.d.ts +0 -103
  106. package/dist/core/component-palette.d.ts +20 -0
  107. package/dist/core/component-payload.d.ts +0 -9
  108. package/dist/core/connection-status.d.ts +77 -0
  109. package/dist/core/context-menu-position.d.ts +27 -0
  110. package/dist/core/cron-schedule.d.ts +85 -0
  111. package/dist/core/debug-panel.d.ts +6 -0
  112. package/dist/core/editor-capabilities.d.ts +95 -0
  113. package/dist/core/editor-dock.d.ts +100 -0
  114. package/dist/core/editor-panel.d.ts +68 -0
  115. package/dist/core/explorer-tree.d.ts +27 -0
  116. package/dist/core/field-protocol.d.ts +32 -0
  117. package/dist/core/foundation-tokens.d.ts +38 -0
  118. package/dist/core/graph-operations.d.ts +34 -0
  119. package/dist/core/hover-tools.d.ts +26 -0
  120. package/dist/core/index.d.ts +68 -16
  121. package/dist/core/infer-run-input.d.ts +11 -0
  122. package/dist/core/key-value-editor.d.ts +6 -0
  123. package/dist/core/overlay-layers.d.ts +28 -0
  124. package/dist/core/recent-components.d.ts +51 -0
  125. package/dist/core/run-guard.d.ts +7 -0
  126. package/dist/core/runtime-field-dictionary.d.ts +68 -0
  127. package/dist/core/runtime-limits.d.ts +0 -5
  128. package/dist/core/save-conflict.d.ts +4 -0
  129. package/dist/core/server-status.d.ts +34 -0
  130. package/dist/core/simple-array.d.ts +4 -0
  131. package/dist/core/table-protocol.d.ts +36 -0
  132. package/dist/core/table-spreadsheet.d.ts +3 -0
  133. package/dist/core/test-cases.d.ts +54 -0
  134. package/dist/core/toolbar-icons.d.ts +4 -0
  135. package/dist/core/topology-rules.d.ts +17 -0
  136. package/dist/core/virtual-window.d.ts +20 -0
  137. package/dist/core/workspace-tab-actions.d.ts +13 -0
  138. package/dist/defaults/components.d.ts +0 -9
  139. package/dist/defaults/index.d.ts +0 -15
  140. package/dist/defaults/locale-en-US.d.ts +0 -24
  141. package/dist/defaults/locale-zh-CN.d.ts +0 -39
  142. package/dist/defaults/official-component-fallbacks.d.ts +0 -8
  143. package/dist/extensions/ClipboardExtension.d.ts +0 -23
  144. package/dist/extensions/KeyboardExtension.d.ts +0 -17
  145. package/dist/extensions/MenuExtension.d.ts +0 -23
  146. package/dist/iconRegistry.d.ts +0 -22
  147. package/dist/index.cjs +11320 -0
  148. package/dist/index.d.ts +25 -47
  149. package/dist/index.esm.js +1123 -99614
  150. package/dist/index.umd.js +3380 -1471
  151. package/dist/models/BaseNodeModel.d.ts +0 -32
  152. package/dist/models/index.d.ts +0 -1
  153. package/dist/nodes/AgentOrchestrationNode.d.ts +0 -24
  154. package/dist/nodes/GroupNode.d.ts +0 -38
  155. package/dist/nodes/HeadlessHtmlNode.d.ts +0 -16
  156. package/dist/nodes/SwitchNode.d.ts +0 -22
  157. package/dist/nodes/UnknownNodeModel.d.ts +0 -19
  158. package/dist/standalone/HuanbanRulegoEditor.d.ts +202 -401
  159. package/dist/standalone/ai-model-policy.d.ts +0 -1
  160. package/dist/standalone/ai-providers.d.ts +0 -1
  161. package/dist/standalone/auth-fetch.d.ts +2 -46
  162. package/dist/standalone/browser-assets.d.ts +0 -8
  163. package/dist/standalone/canvas-view.d.ts +6 -0
  164. package/dist/standalone/code-editor-language-loaders.d.ts +2 -0
  165. package/dist/standalone/code-editor-language-loaders.legacy.d.ts +7 -0
  166. package/dist/standalone/code-editor.d.ts +3 -87
  167. package/dist/standalone/connection-status-binding.d.ts +8 -0
  168. package/dist/standalone/custom-nodes.d.ts +0 -26
  169. package/dist/standalone/drawer-unsaved-guard.d.ts +2 -9
  170. package/dist/standalone/edge-label-quick-editor.d.ts +2 -0
  171. package/dist/standalone/editor-actions.d.ts +4 -0
  172. package/dist/standalone/editor-chain-info.d.ts +5 -38
  173. package/dist/standalone/editor-context-menu.d.ts +0 -21
  174. package/dist/standalone/editor-debug-ws.d.ts +37 -145
  175. package/dist/standalone/editor-delete.d.ts +0 -1
  176. package/dist/standalone/editor-dialogs.d.ts +16 -66
  177. package/dist/standalone/editor-events.d.ts +0 -27
  178. package/dist/standalone/editor-overlays.d.ts +14 -0
  179. package/dist/standalone/editor-property-drawers.d.ts +13 -71
  180. package/dist/standalone/editor-route-settings.d.ts +7 -55
  181. package/dist/standalone/editor-sidebar.d.ts +0 -18
  182. package/dist/standalone/editor-styles.d.ts +0 -11
  183. package/dist/standalone/editor-toast.d.ts +1 -2
  184. package/dist/standalone/editor-toolbar.d.ts +5 -80
  185. package/dist/standalone/editor-tour.d.ts +7 -0
  186. package/dist/standalone/editor-trace-overlay.d.ts +0 -5
  187. package/dist/standalone/full-json-dialog.d.ts +5 -1
  188. package/dist/standalone/group-node.d.ts +1 -51
  189. package/dist/standalone/icon-utils.d.ts +0 -20
  190. package/dist/standalone/index.d.ts +10 -7
  191. package/dist/standalone/json-diff.d.ts +0 -1
  192. package/dist/standalone/keyboard-events.d.ts +0 -1
  193. package/dist/standalone/layout-scheduler.d.ts +0 -6
  194. package/dist/standalone/lifecycle.d.ts +0 -5
  195. package/dist/standalone/logger.d.ts +0 -32
  196. package/dist/standalone/models-dev-catalog.d.ts +0 -1
  197. package/dist/standalone/node-copy.d.ts +7 -4
  198. package/dist/standalone/node-definitions.d.ts +0 -63
  199. package/dist/standalone/node-identity.d.ts +0 -1
  200. package/dist/standalone/node-theme.d.ts +8 -0
  201. package/dist/standalone/node-views-data.d.ts +0 -20
  202. package/dist/standalone/official-node-view-patches.d.ts +1 -14
  203. package/dist/standalone/outline-style.d.ts +7 -0
  204. package/dist/standalone/run-history-format.d.ts +0 -1
  205. package/dist/standalone/security-utils.d.ts +1 -5
  206. package/dist/standalone/shared-node-manager.d.ts +31 -0
  207. package/dist/standalone/themes.d.ts +0 -48
  208. package/dist/tools/tool-editor.d.ts +0 -1
  209. package/dist/types/component.d.ts +105 -87
  210. package/dist/types/editor.d.ts +16 -169
  211. package/dist/types/events.d.ts +30 -107
  212. package/dist/types/index.d.ts +3 -10
  213. package/dist/types/rule-chain.d.ts +0 -90
  214. package/dist/utils/GraphUtils.d.ts +0 -10
  215. package/dist/utils/helpers.d.ts +0 -80
  216. package/dist/utils/index.d.ts +0 -5
  217. package/dist/utils/pinyin-search.d.ts +0 -57
  218. package/dist/utils/relation-utils.d.ts +0 -1
  219. package/dist/utils/textUtils.d.ts +0 -12
  220. package/dist/version.d.ts +2 -3
  221. package/dist/xlsx-qn1xoUuv.cjs +105 -0
  222. package/package.json +19 -5
  223. package/vite-chunks.d.ts +11 -0
  224. package/vite-chunks.mjs +120 -0
  225. package/dist/index.cjs.js +0 -9515
@@ -1,49 +1,32 @@
1
- /**
2
- * @file standalone/editor-dialogs.ts
3
- * @description 弹窗/面板模块 — 从 HuanbanRulegoEditor.ts 中提取
4
- *
5
- * 包含以下弹窗功能:
6
- * - 规则链选择器弹窗 (showRuleChainSelector)
7
- * - 导出 DSL 弹窗 (showExportDialog)
8
- * - 运行面板 Drawer (showRunPanel)
9
- * - 组件管理弹窗 (showComponentManage)
10
- *
11
- * 每个函数接收 editor 实例作为参数 (EditorContext 接口),
12
- * 避免与主类产生循环依赖。
13
- */
14
- /**
15
- * 弹窗模块需要访问的编辑器上下文接口
16
- * 使用接口而非直接引用 HuanbanRulegoEditor 类, 避免循环依赖
17
- */
1
+ import { ApiProvider } from '../api/ApiProvider';
2
+ import type { EditorTestCasesStore } from '../core/test-cases';
18
3
  export interface EditorContext {
19
- /** LogicFlow 实例 */
20
4
  lf: any;
21
- /** EditorCore 数据引擎实例 */
22
5
  core: any;
23
- /** 编辑器配置选项 */
24
6
  opts: any;
25
- /** 编辑器根容器 */
7
+ apiProvider?: ApiProvider;
8
+ serverStatus?: import('../core/server-status').ServerStatusStore;
9
+ capabilities?: import('../core/editor-capabilities').EditorCapabilities;
10
+ connectionStatus?: import('../core/connection-status').ConnectionStatusStore;
26
11
  rootEl?: HTMLElement;
27
- /** 组件列表 */
12
+ _activeDrawerWrapper?: HTMLElement | null;
13
+ _activeModalWrapper?: HTMLElement | null;
28
14
  components: any[];
29
- /** 侧边栏展开的分组集合 */
15
+ testCases?: EditorTestCasesStore;
30
16
  expandedGroups: Set<string>;
31
- /** 节点组件映射 (类型 → 定义) */
32
17
  _nodeComponents: Record<string, any>;
33
- /** 国际化翻译方法 */
34
18
  t(key: string, params?: Record<string, string>): string;
35
- /** 导出当前画布数据 */
36
19
  exportData(): any;
37
- /** 加载规则链数据 */
38
20
  loadData(data: any): void;
39
- /** 渲染侧边栏 */
40
21
  renderSidebar(): void;
41
- /** HTML 转义 */
42
22
  _escapeHtml(str: string): string;
43
- /** 关闭 Drawer */
44
23
  _closeDrawer(): void;
45
- /** 关闭 Modal */
46
24
  _closeModal(): void;
25
+ updateOptions?(patch: Record<string, unknown>): unknown;
26
+ reloadComponents?(options?: {
27
+ forceRefresh?: boolean;
28
+ }): Promise<boolean>;
29
+ acquireSharedConnectionStatuses?(): () => void;
47
30
  }
48
31
  export interface RunPanelOptions {
49
32
  fromNodeId?: string;
@@ -53,49 +36,16 @@ export interface RunPanelOptions {
53
36
  section?: string;
54
37
  }
55
38
  export type SettingsDialogTab = 'user' | 'setting' | 'ai' | 'skills';
39
+ export type ComponentManageDialogTab = 'installed' | 'market' | 'dsl' | 'shared';
56
40
  export interface SettingsDialogOptions {
57
- /** Keep the current drawer mounted while settings opens, avoiding canvas reflow flicker. */
58
41
  preserveDrawer?: boolean;
59
- /** Open settings as fullscreen. Defaults to a large dialog. */
60
42
  fullscreen?: boolean;
61
43
  }
62
44
  export declare function normalizeComponentMarketItems(raw: unknown): any[];
63
45
  export declare function normalizeComponentsListItems(raw: unknown): any[];
64
- /**
65
- * 显示规则链选择器左侧抽屉 — 支持主链/子链 Tab、搜索、分页、远程 API。
66
- * 数据来源优先级: apiBase / rulesApi 真实后端 → opts.ruleItems 本地兜底。
67
- * @param ctx - 编辑器上下文
68
- */
69
46
  export declare function showRuleChainSelector(ctx: EditorContext): void;
70
- /**
71
- * 显示设置弹窗 — 对齐官方 SettingDialog 的账号设置、系统设置、AI 助手、全局技能入口。
72
- * 若宿主提供 onSettingsClick,则保持组件化 slot 能力,由宿主完全接管。
73
- */
74
47
  export declare function showSettingsDialog(ctx: EditorContext, initialTab?: SettingsDialogTab, options?: SettingsDialogOptions): void;
75
- /**
76
- * 显示导入 DSL 弹窗。
77
- * 支持文件选择、拖拽、粘贴 JSON,并复用与导出编辑一致的校验和 loadData 路径。
78
- */
79
48
  export declare function showImportDialog(ctx: EditorContext): void;
80
- /**
81
- * 显示导出 DSL 弹窗。
82
- * 支持下载 JSON、下载画布 PNG 截图、复制 JSON,以及编辑当前规则链 JSON 后应用到画布。
83
- * slot: onExportDSL 可劫持, 传入 { json, imageDataUrl }
84
- * @param ctx - 编辑器上下文
85
- */
86
49
  export declare function showExportDialog(ctx: EditorContext): void;
87
- /**
88
- * 显示运行面板
89
- * 可发送消息到规则链并查看响应
90
- * slot: onRunClick 可劫持
91
- * @param ctx - 编辑器上下文
92
- */
93
50
  export declare function showRunPanel(ctx: EditorContext, options?: RunPanelOptions): void;
94
- /**
95
- * 显示组件管理弹窗
96
- * 已安装列表 + 组件市场(搜索/安装)
97
- * slot: onComponentManage 可劫持
98
- * @param ctx - 编辑器上下文
99
- */
100
- export declare function showComponentManage(ctx: EditorContext): void;
101
- //# sourceMappingURL=editor-dialogs.d.ts.map
51
+ export declare function showComponentManage(ctx: EditorContext, initialTab?: ComponentManageDialogTab): void;
@@ -1,29 +1,2 @@
1
- /**
2
- * @file standalone/editor-events.ts
3
- * @description LogicFlow 事件桥接模块
4
- *
5
- * 从 HuanbanRulegoEditor 主文件中提取的事件桥接逻辑,
6
- * 负责将 LogicFlow 画布事件(节点点击/双击/添加/删除、边事件等)
7
- * 桥接到 EditorCore 事件总线和外部回调。
8
- *
9
- * @param editor - HuanbanRulegoEditor 实例引用
10
- */
11
1
  export { showEditorToast } from './editor-toast';
12
- /**
13
- * 桥接 LogicFlow 画布事件到 EditorCore + 外部回调
14
- *
15
- * 桥接的事件包括:
16
- * - editor:data-loaded → 渲染画布 + 自适应视图
17
- * - graph:transform → 隐藏节点操作菜单
18
- * - blank:click → 清除选中状态
19
- * - node:click → 显示快捷编辑条
20
- * - node:dbclick → 打开属性编辑 Drawer
21
- * - node:add / node:delete → 状态更新
22
- * - node:dnd-add → 拖拽添加节点
23
- * - edge:click / edge:add / edge:delete / edge:dbclick → 边事件
24
- * - node:drop → 更新布局信息
25
- *
26
- * @param editor - 编辑器实例 (需要含 lf / core / opts 等属性)
27
- */
28
2
  export declare function bridgeEvents(editor: any): () => void;
29
- //# sourceMappingURL=editor-events.d.ts.map
@@ -0,0 +1,14 @@
1
+ import type { ComponentDefinition } from '../types/component';
2
+ export interface NodePickerOpenOptions {
3
+ clientX?: number;
4
+ clientY?: number;
5
+ sourceNodeId?: string;
6
+ edgeId?: string;
7
+ excludeInputNodes?: boolean;
8
+ onSelect?: (component: ComponentDefinition, node: unknown) => void;
9
+ }
10
+ export declare function openCommandPalette(editor: any): void;
11
+ export declare function openShortcutHelp(editor: any): void;
12
+ export declare function openNodePicker(editor: any, options?: NodePickerOpenOptions): void;
13
+ export declare function openComponentDocs(editor: any, initialType?: string): Promise<void>;
14
+ export declare function closeSharedOverlay(editor: any): void;
@@ -1,59 +1,27 @@
1
- /**
2
- * @file standalone/editor-property-drawers.ts
3
- * @description 属性编辑 Drawer 模块 — 从 HuanbanRulegoEditor.ts 中提取
4
- *
5
- * 包含以下功能:
6
- * - 节点属性编辑 Drawer (showNodePropertyDrawer) — 详情 / 调试日志 / 帮助 三个 Tab
7
- * - 边属性编辑 Drawer (showEdgePropertyDrawer) — 链接标签的 checkbox 或文本输入
8
- * - 调试日志渲染 (renderDebugTable / renderDebugTerminal / renderDebugEmpty)
9
- * - CodeMirror 6 代码编辑器集成 (JS/JSON/Lua 语法高亮+校验)
10
- *
11
- * 每个函数接收 editor 实例作为参数 (PropertyDrawerContext 接口),
12
- * 避免与主类产生循环依赖。
13
- */
14
- /**
15
- * 属性 Drawer 模块需要访问的编辑器上下文接口
16
- */
1
+ import type { ServerStatus, ServerStatusState } from '../core/server-status';
17
2
  export interface PropertyDrawerContext {
18
- /** LogicFlow 实例 */
19
3
  lf: any;
20
- /** EditorCore 数据引擎实例 */
21
4
  core: any;
22
- /** 编辑器配置选项 (需要 apiBase, showDebugLog 等) */
23
5
  opts: any;
24
- /** 国际化翻译方法 */
6
+ serverStatus?: {
7
+ recordWebSocketStatus: (status: string, closeCode?: number | null, message?: string) => ServerStatus | void;
8
+ setReconnectAttempt?: (attempt: number) => unknown;
9
+ setServerStatus?: (status: ServerStatus, details?: Partial<ServerStatusState>) => unknown;
10
+ };
25
11
  t(key: string, params?: Record<string, string>): string;
26
- /** HTML 转义工具方法 */
27
12
  _escapeHtml(str: string): string;
28
- /** 关闭 Drawer */
13
+ _activeDrawerWrapper?: HTMLElement | null;
14
+ _activeModalWrapper?: HTMLElement | null;
29
15
  _closeDrawer(): void;
30
- /** 标记画布存在未保存修改 */
16
+ _closeModal?(): void;
31
17
  _markDirty?(reason?: string): void;
32
- /** 当前正在添加的节点 (可变状态, 供取消时删除) */
33
18
  _currentAddNode: any;
34
- /** 当前正在添加的边 (可变状态, 供取消时删除) */
35
19
  _currentAddEdge: any;
20
+ _propertyOptionsController?: AbortController;
21
+ _propertyDrawerRequestGeneration?: number;
36
22
  }
37
- /**
38
- * 渲染调试日志 — 表格视图
39
- * @param ctx - 编辑器上下文 (需要 t() 和 _escapeHtml())
40
- * @param wrapper - drawer 外层 DOM
41
- * @param items - API 返回的日志条目数组
42
- */
43
23
  export declare function renderDebugTable(ctx: PropertyDrawerContext, wrapper: HTMLElement, items: any[]): void;
44
- /**
45
- * 渲染调试日志 — 终端视图
46
- * @param ctx - 编辑器上下文
47
- * @param wrapper - drawer 外层 DOM
48
- * @param items - API 返回的日志条目数组
49
- */
50
24
  export declare function renderDebugTerminal(ctx: PropertyDrawerContext, wrapper: HTMLElement, items: any[]): void;
51
- /**
52
- * 渲染调试日志空/错误状态
53
- * @param ctx - 编辑器上下文
54
- * @param wrapper - drawer 外层 DOM
55
- * @param msg - 显示的提示文本
56
- */
57
25
  export declare function renderDebugEmpty(_ctx: PropertyDrawerContext, wrapper: HTMLElement, msg: string): void;
58
26
  interface DebugLogPage {
59
27
  items: any[];
@@ -76,33 +44,7 @@ export interface NodeRelationSummarySection {
76
44
  title: string;
77
45
  rows: NodeRelationSummaryRow[];
78
46
  }
79
- /**
80
- * 构建节点详情页的关系/匹配协议摘要。画布渲染保持官方 GroupNode 简洁样式,
81
- * 复杂协议字段集中在 Drawer 中呈现,避免导出协议值和 UI 标签混淆。
82
- */
83
47
  export declare function buildNodeRelationSummary(model: any, nodeView: any, ctx?: PropertyDrawerContext): NodeRelationSummarySection[];
84
- /**
85
- * 显示节点属性编辑 Drawer — 照搬原版 NodePropertyDrawer.vue + NodePropertyForm.vue
86
- * 包含三个 Tab: 详情、调试日志、帮助
87
- * 支持字段类型: Boolean, map, array, jsScript, int, float, 普通文本
88
- *
89
- * @param ctx - 编辑器上下文
90
- * @param model - 节点的 model 数据
91
- * @param nodeView - 组件定义 (含 fields 字段描述)
92
- * @param fromAdd - 是否从拖入/新增触发
93
- */
94
- export declare function showNodePropertyDrawer(ctx: PropertyDrawerContext, model: any, nodeView: any, fromAdd: boolean): void;
95
- /**
96
- * 显示边属性编辑 Drawer — 照搬原版 EdgePropertyDrawer.vue
97
- * 支持 relationTypes 多选标签 (如源节点定义了 relationTypes)
98
- *
99
- * @param ctx - 编辑器上下文
100
- * @param edgeModel - 边数据
101
- * @param sourceNodeView - 源节点的组件定义 (含 relationTypes)
102
- * @param fromAdd - 是否从新增触发
103
- * @param usedRelationTypes - 已被同源节点其他边占用的 relationTypes (用于禁用下拉选项)
104
- * @param sourceNodeModel - 源节点 RuleGo model,用于动态提取 cases/router 关系
105
- */
106
- export declare function showEdgePropertyDrawer(ctx: PropertyDrawerContext, edgeModel: any, sourceNodeView: any, fromAdd: boolean, usedRelationTypes?: string[], sourceNodeModel?: any): void;
48
+ export declare function showNodePropertyDrawer(sourceContext: PropertyDrawerContext, model: any, nodeView: any, fromAdd: boolean): void;
49
+ export declare function showEdgePropertyDrawer(sourceContext: PropertyDrawerContext, edgeModel: any, sourceNodeView: any, fromAdd: boolean, usedRelationTypes?: string[], sourceNodeModel?: any): void;
107
50
  export {};
108
- //# sourceMappingURL=editor-property-drawers.d.ts.map
@@ -1,51 +1,24 @@
1
- /**
2
- * @file standalone/editor-route-settings.ts
3
- * @description 端点/定时器节点的路由设置弹窗模块
4
- *
5
- * 功能概述:
6
- * - 提供居中弹窗 (Modal) 用于配置端点节点的路由器 (Routers)
7
- * - 根据端点类型 (nodeView.router) 动态渲染:
8
- * · from.path: 标签/描述/必填/placeholder 由 router 配置决定
9
- * · from.processors / to.processors: 可通过 hide 控制隐藏
10
- * · endpoint/http: 额外显示 HTTP 方法下拉 和 "等待执行结果" 开关
11
- * · endpoint/mcpServer: 额外显示 "工具描述" 和 "入参 JsonSchema"
12
- * - 处理器下拉列表从 /api/v1/components 的 builtins.endpoints 中获取
13
- * - 支持添加/编辑/删除多条路由规则 (表格 + 弹窗编辑表单)
14
- * - 数据存储在 endpoint config 的 routers[] 中
15
- *
16
- * 架构参考:
17
- * 线上版本的 RouterPropertyTable + RouterItemForm 两层结构
18
- * - RouterPropertyTable: 路由列表表格,按 router 配置动态显示列
19
- * - RouterItemForm: 编辑单条路由的弹窗表单
20
- *
21
- * @see node-views-data.ts 中 ENDPOINT_VIEWS 的 router 配置
22
- * @see editor-property-drawers.ts 节点属性 Drawer 中通过按钮触发本模块
23
- * @see DataAdapter.ts 数据适配器负责 routers/processors 的持久化
24
- */
25
1
  import type { PropertyDrawerContext } from './editor-property-drawers';
26
- /**
27
- * 路由条目的数据结构
28
- * 对应线上 RuleEndpointConfig.routers[] 中每一项
29
- */
30
2
  export interface RouterItem {
31
- /** 唯一标识 */
32
3
  id?: string;
33
- /** 来源配置: path 为触发路径/主题/cron 等 */
34
4
  from?: {
35
5
  path?: string;
36
6
  processors?: string[];
37
7
  [key: string]: unknown;
38
8
  };
39
- /** 目标配置: path 为目标规则链, wait 为是否等待结果 */
40
9
  to?: {
41
10
  path?: string;
42
11
  processors?: string[];
43
12
  wait?: boolean;
44
13
  [key: string]: unknown;
45
14
  };
46
- /** 附加参数: [0]=HTTP方法/MCP描述, [1]=MCP inputSchema 等 */
47
15
  params?: string[];
48
16
  }
17
+ export interface RouteSettingsTabDraft {
18
+ readonly model: any;
19
+ snapshot(): RouterItem[];
20
+ applyTo(targetModel: any): void;
21
+ }
49
22
  export interface RouteTableRenderOptions {
50
23
  nodeType: string;
51
24
  pathLabel: string;
@@ -70,29 +43,8 @@ export interface RouteTableRenderOptions {
70
43
  export declare function routePathPreviewPrefix(nodeType: string, params?: string[]): string;
71
44
  export declare function isReservedHuanbanWsPath(path: string): boolean;
72
45
  export declare function normalizeRouterItemForEndpoint(nodeType: string, routerItem: RouterItem): RouterItem;
46
+ export declare function createRouteSettingsTabDraft(model: any): RouteSettingsTabDraft;
73
47
  export declare function renderRouteTableHeader(row: Element, options: RouteTableRenderOptions): void;
74
48
  export declare function renderRouteTableBody(tbody: Element, routers: RouterItem[], options: RouteTableRenderOptions, startIndex?: number): void;
75
- /**
76
- * 将路由设置内容渲染到指定的 Tab 容器中
77
- *
78
- * 与 showRouteSettingsModal 不同,此函数不创建弹窗 overlay,
79
- * 而是将路由列表表格直接渲染到传入的 DOM 容器中。
80
- * 编辑/新增单条路由时仍然使用弹窗 (showRouterItemForm)。
81
- *
82
- * @param ctx - 编辑器上下文
83
- * @param model - 当前端点节点的 model 数据
84
- * @param container - 路由设置 Tab 的 DOM 容器
85
- */
86
- export declare function renderRouteSettingsTabContent(ctx: PropertyDrawerContext, model: any, container: HTMLElement): Promise<void>;
87
- /**
88
- * 显示路由设置弹窗
89
- *
90
- * 实现架构 (参照线上 RouterPropertyTable + RouterItemForm):
91
- * 1. 主弹窗: 路由列表表格 + 新增/编辑/删除操作
92
- * 2. 编辑弹窗: 单条路由的表单编辑, 字段根据 router 配置动态渲染
93
- *
94
- * @param ctx - 编辑器上下文 (PropertyDrawerContext)
95
- * @param model - 当前节点的 model 数据
96
- */
49
+ export declare function renderRouteSettingsTabContent(ctx: PropertyDrawerContext, model: any, container: HTMLElement, draft?: RouteSettingsTabDraft, signal?: AbortSignal): Promise<void>;
97
50
  export declare function showRouteSettingsModal(ctx: PropertyDrawerContext, model: any): Promise<void>;
98
- //# sourceMappingURL=editor-route-settings.d.ts.map
@@ -1,14 +1,3 @@
1
- /**
2
- * @file standalone/editor-sidebar.ts
3
- * @description 侧边栏渲染模块 — Node-RED 风格的组件节点块列表
4
- *
5
- * 从 HuanbanRulegoEditor 主文件中提取的侧边栏渲染逻辑,包含:
6
- * - renderSidebar: 渲染分类分组的组件列表(支持搜索过滤)
7
- * - 分组折叠/展开交互
8
- * - 节点块拖拽到画布 (lf.dnd.startDrag)
9
- *
10
- * @param editor - HuanbanRulegoEditor 实例引用
11
- */
12
1
  import type { ComponentDefinition } from '../types/component';
13
2
  export interface DragNodeData {
14
3
  type: string;
@@ -18,13 +7,6 @@ export interface DragNodeData {
18
7
  view: ComponentDefinition;
19
8
  };
20
9
  }
21
- /**
22
- * 渲染侧边栏组件列表
23
- * 按 category 分组展示,支持搜索过滤、折叠/展开
24
- *
25
- * @param editor - 编辑器实例 (需要含 sidebarGroupsEl / searchInputEl / components / expandedGroups / lf / rootEl 等)
26
- */
27
10
  export declare function renderSidebar(editor: any): void;
28
11
  export declare function buildDragNodeData(comp: ComponentDefinition & Record<string, any>, label?: string, allComponents?: Array<ComponentDefinition & Record<string, any>>): DragNodeData;
29
12
  export declare function inferNodeType(comp: ComponentDefinition & Record<string, any>): string;
30
- //# sourceMappingURL=editor-sidebar.d.ts.map
@@ -1,12 +1 @@
1
- /**
2
- * editor-styles.ts
3
- * ================
4
- * 功能:编辑器 CSS 样式注入
5
- *
6
- * 包含编辑器所有 UI 组件的 CSS 样式定义,
7
- * 使用 CSS 变量实现主题切换支持。
8
- * 所有类名以 huanban_ 前缀避免冲突。
9
- */
10
- /** 注入编辑器 CSS 到页面 */
11
1
  export declare function injectStyles(): void;
12
- //# sourceMappingURL=editor-styles.d.ts.map
@@ -1,2 +1 @@
1
- export declare function showEditorToast(editor: any, message: string, type?: 'error' | 'info'): void;
2
- //# sourceMappingURL=editor-toast.d.ts.map
1
+ export declare function showEditorToast(_editor: any, message: string, type?: 'error' | 'info'): void;
@@ -1,104 +1,29 @@
1
- /**
2
- * @file standalone/editor-toolbar.ts
3
- * @description 工具栏事件处理、语言切换、主题切换
4
- *
5
- * 从 HuanbanRulegoEditor 主文件中提取的模块,包含:
6
- * - handleToolbarClick: 工具栏按钮点击事件分发
7
- * - _toggleLocale: 中英文切换
8
- * - _refreshToolbarTexts: 刷新工具栏按钮文字
9
- * - _refreshSidebarTexts: 刷新侧边栏标题和搜索框
10
- * - 主题相关: _currentThemeLabel / _applyTheme / _toggleThemeMenu / _closeThemeMenu / _refreshThemeDropdown
11
- *
12
- * 所有函数接收 editor 实例 (通过 this as any 传入),
13
- * 通过 editor 访问 lf、core、rootEl、sidebarEl、i18n 等内部属性。
14
- *
15
- * @param editor - HuanbanRulegoEditor 实例引用
16
- */
17
1
  type ExternalOperationResult = void | boolean | {
18
2
  success?: boolean;
19
3
  ok?: boolean;
20
4
  code?: unknown;
21
5
  status?: unknown;
6
+ error?: unknown;
7
+ err?: unknown;
22
8
  msg?: string;
23
9
  message?: string;
24
10
  };
25
11
  export declare function isExternalOperationSuccess(result: ExternalOperationResult): boolean;
26
- /**
27
- * 工具栏按钮点击事件处理
28
- * 根据 data-action 分发到对应的处理函数
29
- *
30
- * @param editor - 编辑器实例
31
- * @param e - 原始点击事件
32
- */
33
- export declare function handleToolbarClick(editor: any, e: Event): void;
12
+ export declare function handleToolbarClick(editor: any, e: Event): void | Promise<void>;
34
13
  export declare function updateToolbarHistoryState(editor: any, state?: {
35
14
  undoAble?: boolean;
36
15
  redoAble?: boolean;
37
16
  }): void;
38
17
  export declare function bindFullscreenState(editor: any): () => void;
39
- /**
40
- * 切换语言(中英文互切)并刷新工具栏 + 侧边栏文本
41
- * 不销毁重建 UI,仅精准更新 DOM 内的按钮文字
42
- *
43
- * @param editor - 编辑器实例
44
- */
45
18
  export declare function toggleLocale(editor: any): void;
46
- /**
47
- * 语言切换后刷新工具栏按钮文字
48
- * 通过 data-action 精准更新每个按钮的 textContent
49
- *
50
- * @param editor - 编辑器实例
51
- */
19
+ export declare function setEditorLocale(editor: any, nextLocale: string, persist?: boolean): void;
52
20
  export declare function refreshToolbarTexts(editor: any): void;
53
- /**
54
- * 语言切换后刷新侧边栏标题和搜索框占位符
55
- *
56
- * @param editor - 编辑器实例
57
- */
58
21
  export declare function refreshSidebarTexts(editor: any): void;
59
- /**
60
- * 获取当前主题的显示名称(根据当前语言自动选择中/英文)
61
- *
62
- * @param editor - 编辑器实例
63
- * @returns 当前主题的本地化显示名称
64
- */
65
22
  export declare function currentThemeLabel(editor: any): string;
66
- /**
67
- * 应用指定主题 — 设置 data-theme 属性,更新 UI
68
- *
69
- * @param editor - 编辑器实例
70
- * @param themeId - 主题标识,如 'default'、'dark'、'nature'...
71
- */
72
23
  export declare function applyTheme(editor: any, themeId: string): void;
73
- /**
74
- * 切换主题下拉菜单的显示/隐藏
75
- * 使用 fixed 定位避免被 toolbar overflow 裁剪
76
- *
77
- * @param editor - 编辑器实例
78
- */
79
24
  export declare function toggleThemeMenu(editor: any, target?: Element | null): void;
80
- /**
81
- * 关闭主题下拉菜单
82
- *
83
- * @param editor - 编辑器实例
84
- */
85
25
  export declare function closeThemeMenu(editor: any): void;
86
- /**
87
- * 刷新主题下拉菜单的选项文本和 active 状态
88
- * 在语言切换时需要更新选项的显示文本
89
- *
90
- * @param editor - 编辑器实例
91
- */
92
26
  export declare function refreshThemeDropdown(editor: any): void;
93
- /**
94
- * 注册全局键盘快捷键
95
- * - Ctrl/Cmd + S: 保存
96
- * - Ctrl/Cmd + Z: 撤销
97
- * - Ctrl/Cmd + Shift + Z: 重做
98
- *
99
- * @param editor - 编辑器实例
100
- * @returns 清理函数 (用于 destroy 时移除监听)
101
- */
27
+ export declare function cancelPendingEditorSave(editor: any): void;
102
28
  export declare function setupKeyboardShortcuts(editor: any): () => void;
103
29
  export {};
104
- //# sourceMappingURL=editor-toolbar.d.ts.map
@@ -0,0 +1,7 @@
1
+ export interface EditorTourHandle {
2
+ close: () => void;
3
+ getStepIndex: () => number;
4
+ }
5
+ export declare function isEditorTourDone(): boolean;
6
+ export declare function closeEditorTour(editor: object): void;
7
+ export declare function startEditorTour(editor: any): boolean;
@@ -1,7 +1,3 @@
1
- /**
2
- * @file editor-trace-overlay.ts
3
- * @description 规则链追溯模式 — 在 LogicFlow 画布上叠加调试日志数据
4
- */
5
1
  import type { HuanbanRulegoEditor } from './HuanbanRulegoEditor';
6
2
  interface DebugLogItem {
7
3
  ts: number;
@@ -21,4 +17,3 @@ export declare function enterTraceMode(editor: HuanbanRulegoEditor, logs: DebugL
21
17
  export declare function exitTraceMode(editor: HuanbanRulegoEditor): void;
22
18
  export declare function isTraceActive(): boolean;
23
19
  export {};
24
- //# sourceMappingURL=editor-trace-overlay.d.ts.map
@@ -5,6 +5,10 @@ export interface FullJsonDialogOptions {
5
5
  fileNamePrefix?: string;
6
6
  t?: (key: string, params?: Record<string, string>) => string;
7
7
  notify?: (message: string, type?: 'success' | 'error' | 'info') => void;
8
+ modalOwner?: {
9
+ _activeModalWrapper?: HTMLElement | null;
10
+ _closeModal?: () => void;
11
+ };
12
+ parentOwner?: HTMLElement | null;
8
13
  }
9
14
  export declare function showFullJsonDialog(options: FullJsonDialogOptions): void;
10
- //# sourceMappingURL=full-json-dialog.d.ts.map
@@ -1,41 +1,4 @@
1
- /**
2
- * @file standalone/group-node.ts
3
- * @description 节点组(group-node)自定义图元注册
4
- *
5
- * 节点组是一种特殊的画布元素,不是普通的矩形节点,而是一个**容器节点**,
6
- * 可以包含其他子节点在内部,支持拖拽调整大小、折叠/展开等操作。
7
- *
8
- * 使用 LogicFlow 的 DynamicGroup 插件作为基类实现,视觉效果为:
9
- * - 虚线边框、半透明背景的大矩形容器
10
- * - 默认 300x200 尺寸
11
- * - 只有左右两个锚点
12
- * - 支持折叠/展开
13
- * - 支持自由调整大小
14
- * - 限制子节点不能拖出容器外
15
- *
16
- * 以下组件类型会被注册为 group-node(对应后端配置):
17
- * - switch → 条件分支 (cases[])
18
- * - inclusive → 包含网关 (cases[],继承 switch)
19
- * - while → 循环 (condition, do→目标节点ID)
20
- * - for → 遍历 (range, do→目标节点ID, mode)
21
- * - groupFilter → 过滤器组 (allMatches, nodeIds→拖入节点, timeout)
22
- * - groupAction → 动作组 (nodeIds→拖入节点, matchRelationType, matchNum, timeout)
23
- * - iterator → 迭代器 (已弃用,用 for 替代)
24
- *
25
- * 注意: fork(并行分支)是简单的消息广播器,不是容器节点,使用 simple-node 渲染。
26
- *
27
- * 使用方式:
28
- * import { registerGroupNode, GROUP_NODE_TYPES } from './group-node'
29
- * registerGroupNode(lf)
30
- *
31
- * @see custom-nodes.ts 基础节点注册
32
- * @see DynamicGroup LogicFlow 分组插件
33
- */
34
1
  import LogicFlow from '@logicflow/core';
35
- /**
36
- * 需要渲染为 group-node 的组件类型列表
37
- * 这些组件在画布上会展示为可包含子节点的容器
38
- */
39
2
  export declare const GROUP_NODE_TYPES: string[];
40
3
  type GroupNodeTranslator = (key: 'onlyRightAnchorOut' | 'notToInput' | 'onlyLeftAnchorIn', fallback: string) => string;
41
4
  export declare function isGroupAppendAllowed(nodeData: {
@@ -43,19 +6,6 @@ export declare function isGroupAppendAllowed(nodeData: {
43
6
  } | null | undefined): boolean;
44
7
  export declare function fillGroupNodeFields(lf: any, groupLfId: string): void;
45
8
  export declare function setupGroupEventListeners(lf: any): void;
46
- export declare function restoreParentGroup(lf: any): void;
47
- /**
48
- * 注册 group-node 自定义图元到 LogicFlow 实例
49
- *
50
- * group-node 继承自 DynamicGroup 插件,拥有以下特性:
51
- * 1. 容器功能 — 可以包含其他子节点
52
- * 2. 折叠/展开 — 支持 collapsible 属性
53
- * 3. 自由调整大小 — 支持 resizable 属性
54
- * 4. 限制子节点 — 子节点不能拖出容器外
55
- * 5. 只有左右两个锚点
56
- *
57
- * @param lf - LogicFlow 画布实例
58
- */
9
+ export declare function restoreParentGroup(lf: any): number;
59
10
  export declare function registerGroupNode(lf: LogicFlow, translate?: GroupNodeTranslator): void;
60
11
  export {};
61
- //# sourceMappingURL=group-node.d.ts.map
@@ -1,27 +1,7 @@
1
- /**
2
- * icon-utils.ts
3
- * =============
4
- * 功能:图标 URL 解析工具
5
- *
6
- * 提供 resolveIconUrl 函数,优先使用内联 data URL(从 ICON_REGISTRY 查找),
7
- * 找不到时回退到默认图标(齿轮)。
8
- *
9
- * 使用方式:
10
- * import { resolveIconUrl } from './icon-utils'
11
- * const url = resolveIconUrl('images/delay.svg')
12
- */
13
1
  import { DEFAULT_ICON_URL, normalizeIconTheme, type IconThemeName } from '../iconRegistry';
14
2
  export { DEFAULT_ICON_URL, normalizeIconTheme };
15
3
  export type { IconThemeName };
16
4
  export interface ResolveIconUrlOptions {
17
- /** 当前编辑器主题;支持 ICON_THEME_NAMES 以及 light/blue/antd 等 alias */
18
5
  theme?: string | null;
19
6
  }
20
- /**
21
- * 解析图标 URL — 优先使用内联 data URL,找不到时回退到默认图标
22
- * @param iconPath - 图标路径,如 'images/delay.svg' 或组件自定义的 icon
23
- * @param optionsOrTheme - 可选主题配置,字符串会作为 theme 处理
24
- * @returns data URL(注册表匹配 / http(s) 链接 / 默认齿轮图标)
25
- */
26
7
  export declare function resolveIconUrl(iconPath: string, optionsOrTheme?: string | ResolveIconUrlOptions): string;
27
- //# sourceMappingURL=icon-utils.d.ts.map
@@ -1,10 +1,14 @@
1
- /**
2
- * @file standalone/index.ts
3
- * @description HuanbanRulegoEditor 入口的 barrel 导出
4
- */
5
1
  export { HuanbanRulegoEditor, applyComponentsRuntimePayloadOptions, normalizeComponentsPayload, normalizeComponentsRawPayload, } from './HuanbanRulegoEditor';
6
- export type { AIAssistantOpenOptions, HuanbanRulegoEditorOptions } from './HuanbanRulegoEditor';
7
- /** 调试日志工具 — 可通过 setDebug(true) 开启编辑器内部调试日志 */
2
+ export type { AIAssistantOpenOptions, EditorSaveHandler, EditorSaveHandlerResult, EditorSaveConflictContext, EditorSaveMode, EditorSaveResult, EditorOptionsUpdateResult, ExternalDataUpdatePolicy, EditorShellPersistenceOptions, EditorRecentComponentsOptions, EditorRunTestCasesOptions, HuanbanRulegoEditorLoadOptions, HuanbanRulegoEditorOptions, } from './HuanbanRulegoEditor';
3
+ export type { ComponentManageDialogTab, SettingsDialogTab } from './editor-dialogs';
4
+ export type { NodePickerOpenOptions } from './editor-overlays';
5
+ export { closeEditorTour, isEditorTourDone, startEditorTour } from './editor-tour';
6
+ export type { EditorTourHandle } from './editor-tour';
7
+ export { adapterComponentsLocal, adapterRuntimeComponent } from './node-definitions';
8
+ export type { RuntimeComponentAdapterOptions } from './node-definitions';
9
+ export { confirmDrawerUnsavedClose } from './drawer-unsaved-guard';
10
+ export type { DrawerCloseDecision, DrawerGuardI18nContext } from './drawer-unsaved-guard';
11
+ export type { DebugWsCallbacks, DebugWsStatusDetails, DebugWsStatusReason, DebugWebSocketOptions, WsStatus, } from './editor-debug-ws';
8
12
  export { debugLog, setDebug, isDebug } from './logger';
9
13
  export { escapeHtml, escapeAttr, setSafeText, safeUrl, safeImageUrl, safeCssColor, sanitizeRichHtml, sanitizeDescription, redactSensitive, formatJsonBounded, parseJsonBounded, } from './security-utils';
10
14
  export { DEFAULT_ICON_URL, normalizeIconTheme, resolveIconUrl } from './icon-utils';
@@ -13,4 +17,3 @@ export { HUANBAN_FAVICON_DATA_URI, HUANBAN_FAVICON_SVG, HUANBAN_FAVICON_SVG_PATH
13
17
  export { getThemeList, normalizeEditorTheme, THEME_PRESETS } from './themes';
14
18
  export type { ThemeVars } from './themes';
15
19
  export type { RichHtmlPolicy, RedactOptions, FormatJsonBoundedOptions, ParseJsonBoundedOptions, } from './security-utils';
16
- //# sourceMappingURL=index.d.ts.map