@huanban/rulego-editor-react 1.0.0 → 1.0.2

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.
package/README.md CHANGED
@@ -1,16 +1,27 @@
1
- # @huanban/editor-react
1
+ # @huanban/rulego-editor-react
2
2
 
3
- RuleGo 规则链编辑器 React 适配层。提供开箱即用的编辑器、工作流列表、信息面板等组件。
3
+ > RuleGo 规则链编辑器 React 适配层 — 薄封装 `HuanbanRulegoEditor`,提供 React 组件 + Hooks
4
4
 
5
- ## 安装
5
+ [![npm version](https://img.shields.io/npm/v/@huanban/rulego-editor-react.svg)](https://www.npmjs.com/package/@huanban/rulego-editor-react)
6
+ [![license](https://img.shields.io/npm/l/@huanban/rulego-editor-react.svg)](https://github.com/openclaw/rulego-editor/blob/main/LICENSE)
7
+
8
+ ## 设计理念
9
+
10
+ **React 版是 `@huanban/rulego-editor-core` 的薄封装**,不重写任何编辑器逻辑。所有功能(工具栏、侧边栏、右键菜单、属性面板、小地图等)都由 core 包的 `HuanbanRulegoEditor` 提供,React 版只做:
11
+
12
+ 1. 生命周期管理(挂载时创建实例、卸载时销毁)
13
+ 2. React Hooks 封装(方便在函数组件中使用)
14
+ 3. Props → Options 的桥接
15
+
16
+ ## 📦 安装
6
17
 
7
18
  ```bash
8
- npm install @huanban/editor-react
19
+ npm install @huanban/rulego-editor-react
9
20
  # 或
10
- pnpm add @huanban/editor-react
21
+ pnpm add @huanban/rulego-editor-react
11
22
  ```
12
23
 
13
- > **自动安装的依赖:** `@logicflow/core@2.1.11`、`@logicflow/extension@2.1.11`、`@huanban/editor-core`
24
+ > **自动安装的依赖:** `@huanban/rulego-editor-core`、`@logicflow/core`、`@logicflow/extension`
14
25
  > **需要宿主项目提供:** `react >= 16.8`、`react-dom >= 16.8`
15
26
 
16
27
  ---
@@ -20,7 +31,7 @@ pnpm add @huanban/editor-react
20
31
  **一行搞定所有样式**(logicflow 基础样式 + 扩展样式 + 编辑器组件样式):
21
32
 
22
33
  ```tsx
23
- import '@huanban/editor-react/style.css'
34
+ import '@huanban/rulego-editor-react/style.css'
24
35
  ```
25
36
 
26
37
  ---
@@ -29,56 +40,21 @@ import '@huanban/editor-react/style.css'
29
40
 
30
41
  | 组件 | 用途 | 说明 |
31
42
  |------|------|------|
32
- | `RuleGoEditor` | 规则链编辑器 | 完整的可视化编辑器 |
43
+ | `RuleGoEditor` | 规则链编辑器 | 完整的可视化编辑器(内置工具栏、侧边栏、属性面板等全部 UI)|
33
44
  | `WorkflowList` | 工作流列表 | 展示所有规则链,支持搜索、创建、删除 |
34
45
  | `WorkflowInfoPanel` | 工作流信息面板 | 展示单条链的详细信息和配置 |
35
46
 
36
47
  ---
37
48
 
38
- ## 一、WorkflowList工作流列表
49
+ ## 一、RuleGoEditor规则链编辑器
39
50
 
40
- 展示所有规则链,支持搜索、分页、创建、删除、编辑跳转。
51
+ 完整的可视化规则链编辑器,**内置全部 UI**,只需传入 `apiBase` + `data` 即可。
41
52
 
42
53
  ### 基本用法
43
54
 
44
55
  ```tsx
45
- import { WorkflowList } from '@huanban/editor-react'
46
- import '@huanban/editor-react/style.css'
47
-
48
- function WorkflowPage() {
49
- return (
50
- <WorkflowList
51
- apiBase="http://localhost:9090/api/v1"
52
- onEdit={(item) => {
53
- // 跳转到编辑页
54
- window.location.href = `/editor/${item.id}`
55
- }}
56
- />
57
- )
58
- }
59
- ```
60
-
61
- ### Props
62
-
63
- | 属性 | 类型 | 必填 | 说明 |
64
- |------|------|------|------|
65
- | `apiBase` | `string` | ✅ | 后端 API 地址,如 `http://localhost:9090/api/v1` |
66
- | `onEdit` | `(item: WorkflowItem) => void` | ❌ | 点击"编辑"按钮的回调 |
67
- | `customRoutes` | `RuleChainRoutes` | ❌ | 自定义 API 路由映射 |
68
- | `customIcons` | `WorkflowListIcons` | ❌ | 自定义图标 |
69
- | `theme` | `WorkflowTheme` | ❌ | 自定义主题色 |
70
-
71
- ---
72
-
73
- ## 二、RuleGoEditor — 规则链编辑器
74
-
75
- 完整的可视化规则链编辑器,支持拖拽节点、连线、属性编辑、撤销/重做。
76
-
77
- ### 基本用法
78
-
79
- ```tsx
80
- import { RuleGoEditor } from '@huanban/editor-react'
81
- import '@huanban/editor-react/style.css'
56
+ import { RuleGoEditor } from '@huanban/rulego-editor-react'
57
+ import '@huanban/rulego-editor-react/style.css'
82
58
 
83
59
  function EditorPage({ chainId }: { chainId: string }) {
84
60
  const [chainData, setChainData] = useState(null)
@@ -89,54 +65,83 @@ function EditorPage({ chainId }: { chainId: string }) {
89
65
  .then(data => setChainData(data))
90
66
  }, [chainId])
91
67
 
92
- const handleSave = (data) => {
93
- fetch(`http://localhost:9090/api/v1/rule-chains/${chainId}`, {
94
- method: 'PUT',
95
- headers: { 'Content-Type': 'application/json' },
96
- body: JSON.stringify(data),
97
- })
98
- }
99
-
100
68
  return (
101
69
  <RuleGoEditor
70
+ apiBase="http://localhost:9090/api/v1"
102
71
  data={chainData}
103
- onSave={handleSave}
104
72
  height="100vh"
105
73
  />
106
74
  )
107
75
  }
108
76
  ```
109
77
 
110
- ### 链信息头部
111
-
112
- 编辑器顶部自动展示:
113
- - **链名称** — 当前规则链的 name
114
- - **主链/子链标签** — 根据 `ruleChain.root` 字段判断
115
- - **已停用标签** — 当 `ruleChain.disabled` 为 true 时显示
116
- - **Endpoint 列表** — 如果有 `metadata.endpoints` 则显示类型标签(如 HTTP、MQTT)
78
+ ### 内置功能(无需额外配置)
117
79
 
118
- 可通过 `showChainInfo={false}` 隐藏。
80
+ | 功能 | 说明 |
81
+ |------|------|
82
+ | 工具栏 | 保存、撤销/重做、部署、运行、导入/导出、主题切换、语言切换 |
83
+ | 组件侧边栏 | 按分类展示节点组件,支持搜索(拼音搜索)和拖拽添加 |
84
+ | 右键菜单 | 节点/边/画布右键菜单(复制、删除、查看属性等)|
85
+ | 节点属性面板 | 点击节点弹出属性编辑 Drawer,含 CodeMirror 代码编辑器 |
86
+ | 边属性面板 | 点击连线弹出路由关系编辑 Drawer |
87
+ | 小地图 | 全局视图鸟瞰 |
88
+ | 键盘快捷键 | Ctrl+S 保存 / Ctrl+Z 撤销 / Ctrl+C/V 复制粘贴 |
89
+ | 调试面板 | WebSocket 实时日志 |
119
90
 
120
91
  ### Props
121
92
 
122
93
  | 属性 | 类型 | 默认值 | 说明 |
123
94
  |------|------|--------|------|
124
95
  | `data` | `RuleChainData \| null` | `null` | 规则链数据 |
125
- | `options` | `Partial<EditorOptions>` | `{}` | 编辑器配置 |
126
- | `onSave` | `(data) => void` | - | 保存回调 |
127
- | `onReady` | `({ core, lf }) => void` | - | 编辑器就绪回调 |
96
+ | `apiBase` | `string` | - | 后端 API 地址(如 `http://localhost:9090/api/v1`)|
97
+ | `theme` | `string` | `'modern'` | 主题:`classic` / `dark` / `nature` / `elegant` / `tech` / `modern` |
98
+ | `lang` | `string` | `'zh-CN'` | 语言:`zh-CN` / `en-US` |
99
+ | `toolbarTitle` | `string` | - | 工具栏标题 |
128
100
  | `showChainInfo` | `boolean` | `true` | 是否显示链信息头部 |
129
- | `builtinUi` | `boolean` | `true` | 是否使用内置 UI |
130
101
  | `height` | `string \| number` | `'100%'` | 编辑器高度 |
131
102
  | `width` | `string \| number` | `'100%'` | 编辑器宽度 |
132
103
  | `className` | `string` | `''` | 自定义 className |
133
104
  | `style` | `CSSProperties` | `{}` | 自定义样式 |
105
+ | `onReady` | `({ core, lf }) => void` | - | 编辑器就绪回调 |
134
106
  | `onNodeClick` | `(node) => void` | - | 节点点击回调 |
135
107
  | `onNodeDbClick` | `(node) => void` | - | 节点双击回调 |
136
108
  | `onEdgeClick` | `(edge) => void` | - | 边点击回调 |
137
- | `renderSidebar` | `({ groups, core }) => ReactNode` | - | 自定义侧边栏 |
138
- | `renderToolbar` | `({ canUndo, canRedo, core }) => ReactNode` | - | 自定义工具栏 |
139
- | `renderPanel` | `({ nodeView, nodeModel, core }) => ReactNode` | - | 自定义属性面板 |
109
+ | `onSaveSuccess` | `(data) => void` | - | 保存成功回调 |
110
+ | `onDeploySuccess` | `() => void` | - | 部署成功回调 |
111
+
112
+ ---
113
+
114
+ ## 二、WorkflowList — 工作流列表
115
+
116
+ 展示所有规则链,支持搜索、分页、创建、删除、编辑跳转。
117
+
118
+ ### 基本用法
119
+
120
+ ```tsx
121
+ import { WorkflowList } from '@huanban/rulego-editor-react'
122
+ import '@huanban/rulego-editor-react/style.css'
123
+
124
+ function WorkflowPage() {
125
+ return (
126
+ <WorkflowList
127
+ apiBase="http://localhost:9090/api/v1"
128
+ onEdit={(item) => {
129
+ window.location.href = `/editor/${item.id}`
130
+ }}
131
+ />
132
+ )
133
+ }
134
+ ```
135
+
136
+ ### Props
137
+
138
+ | 属性 | 类型 | 必填 | 说明 |
139
+ |------|------|------|------|
140
+ | `apiBase` | `string` | ✅ | 后端 API 地址 |
141
+ | `onEdit` | `(item: WorkflowItem) => void` | ❌ | 点击"编辑"按钮的回调 |
142
+ | `customRoutes` | `RuleChainRoutes` | ❌ | 自定义 API 路由映射 |
143
+ | `customIcons` | `WorkflowListIcons` | ❌ | 自定义图标 |
144
+ | `theme` | `WorkflowTheme` | ❌ | 自定义主题色 |
140
145
 
141
146
  ---
142
147
 
@@ -147,8 +152,8 @@ function EditorPage({ chainId }: { chainId: string }) {
147
152
  ### 基本用法
148
153
 
149
154
  ```tsx
150
- import { WorkflowInfoPanel } from '@huanban/editor-react'
151
- import '@huanban/editor-react/style.css'
155
+ import { WorkflowInfoPanel } from '@huanban/rulego-editor-react'
156
+ import '@huanban/rulego-editor-react/style.css'
152
157
 
153
158
  function InfoPage({ workflowItem }) {
154
159
  return (
@@ -177,12 +182,12 @@ function InfoPage({ workflowItem }) {
177
182
 
178
183
  ## 四、完整项目示例
179
184
 
180
- 将三个组件组合使用的完整示例:
185
+ 三个组件组合使用:
181
186
 
182
187
  ```tsx
183
188
  import { useState, useEffect } from 'react'
184
- import { WorkflowList, RuleGoEditor, WorkflowInfoPanel } from '@huanban/editor-react'
185
- import '@huanban/editor-react/style.css'
189
+ import { WorkflowList, RuleGoEditor, WorkflowInfoPanel } from '@huanban/rulego-editor-react'
190
+ import '@huanban/rulego-editor-react/style.css'
186
191
 
187
192
  const API_BASE = 'http://localhost:9090/api/v1'
188
193
 
@@ -191,7 +196,6 @@ function App() {
191
196
  const [chainId, setChainId] = useState('')
192
197
  const [chainData, setChainData] = useState(null)
193
198
 
194
- // 加载链数据
195
199
  useEffect(() => {
196
200
  if (!chainId) return
197
201
  fetch(`${API_BASE}/rule-chains/${chainId}`)
@@ -199,15 +203,6 @@ function App() {
199
203
  .then(data => setChainData(data))
200
204
  }, [chainId])
201
205
 
202
- // 保存
203
- const handleSave = (data) => {
204
- fetch(`${API_BASE}/rule-chains/${chainId}`, {
205
- method: 'PUT',
206
- headers: { 'Content-Type': 'application/json' },
207
- body: JSON.stringify(data),
208
- })
209
- }
210
-
211
206
  if (view === 'list') {
212
207
  return (
213
208
  <WorkflowList
@@ -221,14 +216,11 @@ function App() {
221
216
  }
222
217
 
223
218
  return (
224
- <div style={{ display: 'flex', height: '100vh' }}>
225
- <div style={{ flex: 1 }}>
226
- <RuleGoEditor
227
- data={chainData}
228
- onSave={handleSave}
229
- />
230
- </div>
231
- </div>
219
+ <RuleGoEditor
220
+ apiBase={API_BASE}
221
+ data={chainData}
222
+ height="100vh"
223
+ />
232
224
  )
233
225
  }
234
226
  ```
@@ -237,34 +229,16 @@ function App() {
237
229
 
238
230
  ## 五、Hooks
239
231
 
240
- 适用于需要完全自定义 UI 的场景:
232
+ 适用于需要完全自定义 UI 的高级场景:
241
233
 
242
234
  | Hook | 说明 |
243
235
  |------|------|
244
236
  | `useEditorCore` | 创建和管理 EditorCore 实例 |
245
- | `useEditorTheme` | 主题切换 (亮色/暗色/蓝色) |
246
- | `useEditorI18n` | 国际化切换 (中文/英文) |
237
+ | `useEditorTheme` | 主题切换 |
238
+ | `useEditorI18n` | 国际化切换 |
247
239
  | `useKeyboardShortcuts` | 键盘快捷键绑定 |
248
240
  | `useClipboard` | 节点复制/粘贴 |
249
241
 
250
- ```tsx
251
- import { useEditorCore, useEditorTheme } from '@huanban/editor-react'
252
-
253
- function MyCustomEditor() {
254
- const { core, isReady, componentGroups } = useEditorCore({
255
- url: 'http://localhost:9090/api/v1',
256
- })
257
- const { setTheme } = useEditorTheme(core)
258
-
259
- return (
260
- <div>
261
- <button onClick={() => setTheme('dark')}>暗色</button>
262
- {/* 自定义的编辑器 UI */}
263
- </div>
264
- )
265
- }
266
- ```
267
-
268
242
  ---
269
243
 
270
244
  ## 六、Next.js 集成
@@ -275,12 +249,12 @@ function MyCustomEditor() {
275
249
  import dynamic from 'next/dynamic'
276
250
 
277
251
  const RuleGoEditor = dynamic(
278
- () => import('@huanban/editor-react').then(m => ({ default: m.RuleGoEditor })),
252
+ () => import('@huanban/rulego-editor-react').then(m => ({ default: m.RuleGoEditor })),
279
253
  { ssr: false }
280
254
  )
281
255
 
282
256
  export default function EditorPage() {
283
- return <RuleGoEditor data={chainData} onSave={handleSave} />
257
+ return <RuleGoEditor apiBase={API_BASE} data={chainData} />
284
258
  }
285
259
  ```
286
260
 
@@ -288,11 +262,11 @@ export default function EditorPage() {
288
262
 
289
263
  ```tsx
290
264
  'use client'
291
- import { RuleGoEditor } from '@huanban/editor-react'
292
- import '@huanban/editor-react/style.css'
265
+ import { RuleGoEditor } from '@huanban/rulego-editor-react'
266
+ import '@huanban/rulego-editor-react/style.css'
293
267
 
294
268
  export default function EditorPage() {
295
- return <RuleGoEditor data={chainData} onSave={handleSave} />
269
+ return <RuleGoEditor apiBase={API_BASE} data={chainData} />
296
270
  }
297
271
  ```
298
272
 
@@ -302,9 +276,10 @@ export default function EditorPage() {
302
276
 
303
277
  | 版本 | 变更 |
304
278
  |------|------|
305
- | 0.6.0 | 编辑器顶部新增链信息头部(名称 + 主链/子链 + endpoint);样式打包优化(一个 style.css 包含所有样式);依赖锁定 logicflow 2.1.11 |
279
+ | 1.0.0 | 🎉 正式版。包名改为 `@huanban/rulego-editor-react`。架构重写为薄封装(直接使用 core HuanbanRulegoEditor,不再重复实现 UI)。内置 apiBase 直接保存/部署。|
280
+ | 0.7.0 | 重写为薄封装 HuanbanRulegoEditor |
281
+ | 0.6.0 | 链信息头部、样式打包优化 |
306
282
  | 0.5.0 | WorkflowList、WorkflowInfoPanel 组件 |
307
- | 0.4.0 | 初始版本 |
308
283
 
309
284
  ## License
310
285
 
@@ -51,6 +51,11 @@ export interface RuleGoEditorProps {
51
51
  apiBase?: string;
52
52
  /** 请求超时毫秒数, 默认 5000 */
53
53
  fetchTimeout?: number;
54
+ /**
55
+ * 自定义请求头 — 用于注入 Authorization Token 等认证信息
56
+ * 支持静态对象或动态函数(每次请求时调用获取最新 Token)
57
+ */
58
+ fetchHeaders?: Record<string, string> | (() => Record<string, string>);
54
59
  /** 初始规则链数据 */
55
60
  data?: RuleChainData | null;
56
61
  /** 初始组件列表 */
@@ -1 +1 @@
1
- {"version":3,"file":"RuleGoEditor.d.ts","sourceRoot":"","sources":["../../src/components/RuleGoEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAA6D,MAAM,OAAO,CAAA;AACjF,OAAO,EACL,mBAAmB,EACpB,MAAM,6BAA6B,CAAA;AAIpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACrF,OAAO,SAAS,MAAM,iBAAiB,CAAA;AAMvC;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAEhC,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,gBAAgB;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAG3B,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uBAAuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,cAAc;IACd,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;IAC3B,aAAa;IACb,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAGlC,uBAAuB;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,cAAc;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uBAAuB;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,eAAe;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,eAAe;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,iBAAiB;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,iBAAiB;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IAGtB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IAGf,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB;IACrB,SAAS,CAAC,EAAE,GAAG,EAAE,CAAA;IACjB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAGrC,YAAY;IACZ,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,EAAE,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,CAAA;IAC5D,WAAW;IACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IAChC,WAAW;IACX,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,WAAW;IACX,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACvC,UAAU;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,WAAW;IACX,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,aAAa;IACb,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,IAAI,CAAA;IACtC,WAAW;IACX,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACrE,WAAW;IACX,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,aAAa;IACb,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,KAAK,IAAI,CAAA;IAC9E,YAAY;IACZ,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,IAAI,CAAA;IAC5C,YAAY;IACZ,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,aAAa;IACb,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAGxC,cAAc;IACd,SAAS,CAAC,EAAE,GAAG,EAAE,CAAA;IACjB,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAA;IAClC,mBAAmB;IACnB,EAAE,EAAE,SAAS,GAAG,IAAI,CAAA;IACpB,oBAAoB;IACpB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IACvB,aAAa;IACb,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAA;IACvC,aAAa;IACb,cAAc,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,KAAK,IAAI,CAAA;IAC3D,WAAW;IACX,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,CAAA;IACtC,YAAY;IACZ,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B;AAMD;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,YAAY,2FAqOhB,CAAA;AAIF,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"RuleGoEditor.d.ts","sourceRoot":"","sources":["../../src/components/RuleGoEditor.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,KAA6D,MAAM,OAAO,CAAA;AACjF,OAAO,EACL,mBAAmB,EACpB,MAAM,6BAA6B,CAAA;AAIpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACrF,OAAO,SAAS,MAAM,iBAAiB,CAAA;AAMvC;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAEhC,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACxB,sBAAsB;IACtB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,gBAAgB;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY;IACZ,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAG3B,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,uBAAuB;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IACtE,cAAc;IACd,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI,CAAA;IAC3B,aAAa;IACb,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAA;IAGlC,uBAAuB;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,cAAc;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,uBAAuB;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,eAAe;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,eAAe;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,iBAAiB;IACjB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,iBAAiB;IACjB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,mBAAmB;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IAGtB,uBAAuB;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;IAGf,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,qBAAqB;IACrB,SAAS,CAAC,EAAE,GAAG,EAAE,CAAA;IACjB,sBAAsB;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAGrC,YAAY;IACZ,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,EAAE,EAAE,SAAS,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,CAAA;IAC5D,WAAW;IACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IAChC,WAAW;IACX,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,WAAW;IACX,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACvC,UAAU;IACV,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,WAAW;IACX,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,aAAa;IACb,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,IAAI,CAAA;IACtC,WAAW;IACX,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACrE,WAAW;IACX,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACtC,aAAa;IACb,iBAAiB,CAAC,EAAE,MAAM,IAAI,CAAA;IAC9B,aAAa;IACb,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,WAAW;IACX,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,KAAK,IAAI,CAAA;IAC9E,YAAY;IACZ,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,KAAK,IAAI,CAAA;IAC5C,YAAY;IACZ,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7C,aAAa;IACb,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAGxC,cAAc;IACd,SAAS,CAAC,EAAE,GAAG,EAAE,CAAA;IACjB,iBAAiB;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAA;IAClC,mBAAmB;IACnB,EAAE,EAAE,SAAS,GAAG,IAAI,CAAA;IACpB,oBAAoB;IACpB,IAAI,EAAE,UAAU,GAAG,IAAI,CAAA;IACvB,aAAa;IACb,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAA;IACvC,aAAa;IACb,cAAc,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,KAAK,IAAI,CAAA;IAC3D,WAAW;IACX,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,CAAA;IACtC,YAAY;IACZ,aAAa,EAAE,MAAM,IAAI,CAAA;CAC1B;AAMD;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,YAAY,2FAuOhB,CAAA;AAIF,eAAe,YAAY,CAAA"}