@next-bricks/visual-builder 1.39.16 → 1.39.18
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/dist/bricks.json +6 -6
- package/dist/chunks/{1889.66ac8bcc.js → 1889.d98738ff.js} +2 -2
- package/dist/chunks/{1889.66ac8bcc.js.map → 1889.d98738ff.js.map} +1 -1
- package/dist/chunks/2475.e017360c.js +3 -0
- package/dist/chunks/2475.e017360c.js.map +1 -0
- package/dist/chunks/3171.a98dfd67.js +2 -0
- package/dist/chunks/3171.a98dfd67.js.map +1 -0
- package/dist/chunks/{5522.678c03f6.js → 4577.f016e9de.js} +3 -3
- package/dist/chunks/4577.f016e9de.js.map +1 -0
- package/dist/chunks/5399.610e20b1.js +2 -0
- package/dist/chunks/5399.610e20b1.js.map +1 -0
- package/dist/chunks/5552.3218f2f9.js +2 -0
- package/dist/chunks/5552.3218f2f9.js.map +1 -0
- package/dist/chunks/6376.689d9948.js +2 -0
- package/dist/chunks/6376.689d9948.js.map +1 -0
- package/dist/chunks/7085.15d2b16f.js +3 -0
- package/dist/chunks/7085.15d2b16f.js.map +1 -0
- package/dist/chunks/9118.0e4d0346.js +3 -0
- package/dist/chunks/9118.0e4d0346.js.LICENSE.txt +11 -0
- package/dist/chunks/9118.0e4d0346.js.map +1 -0
- package/dist/chunks/9653.460f1b70.js +2 -0
- package/dist/chunks/9653.460f1b70.js.map +1 -0
- package/dist/chunks/chat-conversation.0ffc333f.js.map +1 -1
- package/dist/chunks/chat-preview.36976c55.js.map +1 -1
- package/dist/chunks/contract-select.c295da96.js +3 -0
- package/dist/chunks/contract-select.c295da96.js.map +1 -0
- package/dist/chunks/generate-snippets-context-menu.56acf448.js.map +1 -1
- package/dist/chunks/main.77514a01.js +2 -0
- package/dist/chunks/main.77514a01.js.map +1 -0
- package/dist/chunks/page-arch-node.379284ad.js +3 -0
- package/dist/chunks/page-arch-node.379284ad.js.map +1 -0
- package/dist/chunks/pre-generated-config-preview.cfbc2a1e.js.map +1 -1
- package/dist/chunks/pre-generated-config.a027788b.js.map +1 -1
- package/dist/chunks/{pre-generated-container.dcfa8cc9.js → pre-generated-container.8dbf4f2a.js} +2 -2
- package/dist/chunks/pre-generated-container.8dbf4f2a.js.map +1 -0
- package/dist/chunks/pre-generated-preview.8e699675.js.map +1 -1
- package/dist/chunks/pre-generated-table-view.8a9d5527.js.map +1 -1
- package/dist/chunks/property-editor.acbb8759.js +2 -0
- package/dist/chunks/property-editor.acbb8759.js.map +1 -0
- package/dist/chunks/raw-data-preview.0bf12da3.js.map +1 -1
- package/dist/chunks/raw-metric-preview.c503481e.js.map +1 -1
- package/dist/chunks/workbench-action-list.c67329ed.js.map +1 -1
- package/dist/chunks/workbench-action.5b993227.js.map +1 -1
- package/dist/chunks/workbench-pane.5c4866a6.js +3 -0
- package/dist/chunks/workbench-pane.5c4866a6.js.map +1 -0
- package/dist/chunks/workbench-sidebar.01731e99.js.map +1 -1
- package/dist/chunks/{workbench-tree.e71a583f.js → workbench-tree.7097bd88.js} +3 -3
- package/dist/chunks/workbench-tree.7097bd88.js.map +1 -0
- package/dist/examples.json +48 -6
- package/dist/index.686cc18c.js +2 -0
- package/dist/index.686cc18c.js.map +1 -0
- package/dist/manifest.json +227 -73
- package/dist/types.json +29 -44
- package/dist-types/chat-conversation/index.d.ts +7 -1
- package/dist-types/chat-preview/index.d.ts +20 -1
- package/dist-types/contract-select/index.d.ts +19 -4
- package/dist-types/generate-snippets-context-menu/index.d.ts +17 -1
- package/dist-types/page-arch-node/index.d.ts +25 -1
- package/dist-types/pre-generated-config/i18n.d.ts +1 -1
- package/dist-types/pre-generated-config/index.d.ts +16 -1
- package/dist-types/pre-generated-config-preview/index.d.ts +13 -1
- package/dist-types/pre-generated-container/index.d.ts +6 -4
- package/dist-types/pre-generated-preview/index.d.ts +6 -1
- package/dist-types/pre-generated-table-view/index.d.ts +1 -1
- package/dist-types/property-editor/index.d.ts +10 -4
- package/dist-types/raw-data-preview/index.d.ts +9 -1
- package/dist-types/raw-metric-preview/index.d.ts +8 -1
- package/dist-types/workbench-action/index.d.ts +7 -0
- package/dist-types/workbench-action-list/index.d.ts +3 -0
- package/dist-types/workbench-pane/index.d.ts +4 -0
- package/dist-types/workbench-sidebar/index.d.ts +2 -0
- package/dist-types/workbench-tree/index.d.ts +19 -6
- package/docs/chat-conversation.md +51 -31
- package/docs/chat-conversation.react.md +115 -0
- package/docs/chat-preview.md +83 -0
- package/docs/chat-preview.react.md +105 -0
- package/docs/contract-select.md +97 -0
- package/docs/contract-select.react.md +95 -0
- package/docs/generate-snippets-context-menu.md +141 -0
- package/docs/generate-snippets-context-menu.react.md +134 -0
- package/docs/page-arch-node.md +87 -1
- package/docs/page-arch-node.react.md +97 -0
- package/docs/pre-generated-config-preview.md +74 -0
- package/docs/pre-generated-config-preview.react.md +82 -0
- package/docs/pre-generated-config.md +96 -0
- package/docs/pre-generated-config.react.md +78 -0
- package/docs/pre-generated-container.md +56 -0
- package/docs/pre-generated-container.react.md +62 -0
- package/docs/pre-generated-preview.md +83 -0
- package/docs/pre-generated-preview.react.md +92 -0
- package/docs/pre-generated-table-view.md +46 -0
- package/docs/pre-generated-table-view.react.md +36 -0
- package/docs/property-editor.md +44 -1
- package/docs/property-editor.react.md +97 -0
- package/docs/raw-data-preview.md +75 -1643
- package/docs/raw-data-preview.react.md +154 -0
- package/docs/raw-metric-preview.md +93 -0
- package/docs/raw-metric-preview.react.md +94 -0
- package/docs/workbench-action-list.md +80 -0
- package/docs/workbench-action-list.react.md +85 -0
- package/docs/workbench-action.md +80 -0
- package/docs/workbench-action.react.md +76 -0
- package/docs/workbench-history-action.md +42 -1
- package/docs/workbench-history-action.react.md +54 -0
- package/docs/workbench-pane.md +105 -0
- package/docs/workbench-pane.react.md +90 -0
- package/docs/workbench-sidebar.md +88 -0
- package/docs/workbench-sidebar.react.md +66 -0
- package/docs/workbench-tree.md +217 -0
- package/docs/workbench-tree.react.md +180 -0
- package/package.json +2 -2
- package/dist/chunks/2475.c80c77ca.js +0 -3
- package/dist/chunks/2475.c80c77ca.js.map +0 -1
- package/dist/chunks/3171.60f0baab.js +0 -2
- package/dist/chunks/3171.60f0baab.js.map +0 -1
- package/dist/chunks/4837.0ceea0f6.js +0 -2
- package/dist/chunks/4837.0ceea0f6.js.map +0 -1
- package/dist/chunks/5399.e52faadf.js +0 -2
- package/dist/chunks/5399.e52faadf.js.map +0 -1
- package/dist/chunks/5522.678c03f6.js.map +0 -1
- package/dist/chunks/5552.d9c38ba9.js +0 -2
- package/dist/chunks/5552.d9c38ba9.js.map +0 -1
- package/dist/chunks/7085.c58ac475.js +0 -3
- package/dist/chunks/7085.c58ac475.js.map +0 -1
- package/dist/chunks/7218.90be246f.js +0 -2
- package/dist/chunks/7218.90be246f.js.map +0 -1
- package/dist/chunks/9653.39737577.js +0 -2
- package/dist/chunks/9653.39737577.js.map +0 -1
- package/dist/chunks/contract-select.ff891ded.js +0 -3
- package/dist/chunks/contract-select.ff891ded.js.map +0 -1
- package/dist/chunks/main.819ae305.js +0 -2
- package/dist/chunks/main.819ae305.js.map +0 -1
- package/dist/chunks/page-arch-node.974674c0.js +0 -3
- package/dist/chunks/page-arch-node.974674c0.js.map +0 -1
- package/dist/chunks/pre-generated-container.dcfa8cc9.js.map +0 -1
- package/dist/chunks/property-editor.6de6adf4.js +0 -2
- package/dist/chunks/property-editor.6de6adf4.js.map +0 -1
- package/dist/chunks/workbench-pane.7e85de42.js +0 -3
- package/dist/chunks/workbench-pane.7e85de42.js.map +0 -1
- package/dist/chunks/workbench-tree.e71a583f.js.map +0 -1
- package/dist/index.e12e6fc9.js +0 -2
- package/dist/index.e12e6fc9.js.map +0 -1
- /package/dist/chunks/{2475.c80c77ca.js.LICENSE.txt → 2475.e017360c.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{5522.678c03f6.js.LICENSE.txt → 4577.f016e9de.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{7085.c58ac475.js.LICENSE.txt → 7085.15d2b16f.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{contract-select.ff891ded.js.LICENSE.txt → contract-select.c295da96.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{page-arch-node.974674c0.js.LICENSE.txt → page-arch-node.379284ad.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-pane.7e85de42.js.LICENSE.txt → workbench-pane.5c4866a6.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{workbench-tree.e71a583f.js.LICENSE.txt → workbench-tree.7097bd88.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.generate-snippets-context-menu
|
|
3
|
+
displayName: WrappedVisualBuilderGenerateSnippetsContextMenu
|
|
4
|
+
description: 用于 Visual Builder 的代码片段右键上下文菜单,支持拖拽片段到画布,菜单位置自动适配视口边界
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# visual-builder.generate-snippets-context-menu
|
|
10
|
+
|
|
11
|
+
> 用于 Visual Builder 的代码片段右键上下文菜单,支持拖拽片段到画布,菜单位置自动适配视口边界
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
16
|
+
| -------- | ----------------- | ---- | ------ | ------------------------------------------------------------- |
|
|
17
|
+
| options | `SnippetOption[]` | 否 | - | 菜单选项列表,每组包含标题和子菜单项 |
|
|
18
|
+
| active | `boolean` | 否 | - | 菜单是否处于激活(显示)状态,通过 open/close 方法控制 |
|
|
19
|
+
| position | `Position` | 否 | - | 菜单显示位置,格式为 `[clientX, clientY]`,超出视口时自动修正 |
|
|
20
|
+
|
|
21
|
+
## Events
|
|
22
|
+
|
|
23
|
+
| 事件 | detail | 说明 |
|
|
24
|
+
| --------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------------ |
|
|
25
|
+
| item.drag.start | `SnippetItem` — { text: 片段文本, icon: 图标, dragConf: { format: 数据格式, data: 数据内容 } } | 用户开始拖拽菜单项时触发 |
|
|
26
|
+
| item.drag.end | `SnippetItem` — { text: 片段文本, icon: 图标, dragConf: { format: 数据格式, data: 数据内容 } } | 用户结束拖拽菜单项时触发,同时菜单自动关闭 |
|
|
27
|
+
|
|
28
|
+
## Methods
|
|
29
|
+
|
|
30
|
+
| 方法 | 参数 | 返回值 | 说明 |
|
|
31
|
+
| ----- | ---------------------------------- | ------ | ------------------------------ |
|
|
32
|
+
| open | `({ position }: OpenInfo) => void` | `void` | 打开上下文菜单并定位到指定位置 |
|
|
33
|
+
| close | `() => void` | `void` | 关闭上下文菜单 |
|
|
34
|
+
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
### Basic
|
|
38
|
+
|
|
39
|
+
展示代码片段上下文菜单的基本用法,右键点击区域后显示菜单,可拖拽菜单项。
|
|
40
|
+
|
|
41
|
+
```yaml preview
|
|
42
|
+
- brick: div
|
|
43
|
+
properties:
|
|
44
|
+
textContent: 右键点击此区域打开菜单
|
|
45
|
+
style:
|
|
46
|
+
padding: 40px
|
|
47
|
+
border: 1px dashed #ccc
|
|
48
|
+
textAlign: center
|
|
49
|
+
userSelect: none
|
|
50
|
+
events:
|
|
51
|
+
contextmenu:
|
|
52
|
+
target: "#snippet-menu"
|
|
53
|
+
method: open
|
|
54
|
+
args:
|
|
55
|
+
- position:
|
|
56
|
+
- "<% EVENT.clientX %>"
|
|
57
|
+
- "<% EVENT.clientY %>"
|
|
58
|
+
- brick: visual-builder.generate-snippets-context-menu
|
|
59
|
+
properties:
|
|
60
|
+
id: snippet-menu
|
|
61
|
+
options:
|
|
62
|
+
- title: 基础组件
|
|
63
|
+
children:
|
|
64
|
+
- text: 按钮
|
|
65
|
+
icon:
|
|
66
|
+
lib: antd
|
|
67
|
+
icon: border
|
|
68
|
+
dragConf:
|
|
69
|
+
format: text/plain
|
|
70
|
+
data:
|
|
71
|
+
brick: eo-button
|
|
72
|
+
properties:
|
|
73
|
+
textContent: 新按钮
|
|
74
|
+
- text: 输入框
|
|
75
|
+
icon:
|
|
76
|
+
lib: antd
|
|
77
|
+
icon: edit
|
|
78
|
+
dragConf:
|
|
79
|
+
format: text/plain
|
|
80
|
+
data:
|
|
81
|
+
brick: eo-input
|
|
82
|
+
- title: 布局组件
|
|
83
|
+
children:
|
|
84
|
+
- text: 卡片
|
|
85
|
+
icon:
|
|
86
|
+
lib: antd
|
|
87
|
+
icon: credit-card
|
|
88
|
+
tooltip: 拖拽以添加卡片
|
|
89
|
+
dragConf:
|
|
90
|
+
format: text/plain
|
|
91
|
+
data:
|
|
92
|
+
brick: eo-card
|
|
93
|
+
events:
|
|
94
|
+
item.drag.start:
|
|
95
|
+
action: console.log
|
|
96
|
+
item.drag.end:
|
|
97
|
+
action: console.log
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### With Disabled Items
|
|
101
|
+
|
|
102
|
+
展示带有禁用状态的菜单项,禁用项不可拖拽。
|
|
103
|
+
|
|
104
|
+
```yaml preview
|
|
105
|
+
- brick: div
|
|
106
|
+
properties:
|
|
107
|
+
textContent: 右键点击此区域打开菜单(部分选项已禁用)
|
|
108
|
+
style:
|
|
109
|
+
padding: 40px
|
|
110
|
+
border: 1px dashed #ccc
|
|
111
|
+
textAlign: center
|
|
112
|
+
userSelect: none
|
|
113
|
+
events:
|
|
114
|
+
contextmenu:
|
|
115
|
+
target: "#snippet-menu-disabled"
|
|
116
|
+
method: open
|
|
117
|
+
args:
|
|
118
|
+
- position:
|
|
119
|
+
- "<% EVENT.clientX %>"
|
|
120
|
+
- "<% EVENT.clientY %>"
|
|
121
|
+
- brick: visual-builder.generate-snippets-context-menu
|
|
122
|
+
properties:
|
|
123
|
+
id: snippet-menu-disabled
|
|
124
|
+
options:
|
|
125
|
+
- title: 组件列表
|
|
126
|
+
children:
|
|
127
|
+
- text: 按钮(可用)
|
|
128
|
+
icon:
|
|
129
|
+
lib: antd
|
|
130
|
+
icon: border
|
|
131
|
+
dragConf:
|
|
132
|
+
format: text/plain
|
|
133
|
+
data:
|
|
134
|
+
brick: eo-button
|
|
135
|
+
- text: 表格(禁用)
|
|
136
|
+
icon:
|
|
137
|
+
lib: antd
|
|
138
|
+
icon: table
|
|
139
|
+
disabled: true
|
|
140
|
+
tooltip: 该组件在当前场景不可用
|
|
141
|
+
```
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.generate-snippets-context-menu
|
|
3
|
+
displayName: WrappedVisualBuilderGenerateSnippetsContextMenu
|
|
4
|
+
description: 用于 Visual Builder 的代码片段右键上下文菜单,支持拖拽片段到画布,菜单位置自动适配视口边界
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedVisualBuilderGenerateSnippetsContextMenu
|
|
10
|
+
|
|
11
|
+
> 用于 Visual Builder 的代码片段右键上下文菜单,支持拖拽片段到画布,菜单位置自动适配视口边界
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedVisualBuilderGenerateSnippetsContextMenu } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| -------- | ----------------- | ---- | ------ | ------------------------------------------------------------- |
|
|
23
|
+
| options | `SnippetOption[]` | 否 | - | 菜单选项列表,每组包含标题和子菜单项 |
|
|
24
|
+
| active | `boolean` | 否 | - | 菜单是否处于激活(显示)状态,通过 open/close 方法控制 |
|
|
25
|
+
| position | `Position` | 否 | - | 菜单显示位置,格式为 `[clientX, clientY]`,超出视口时自动修正 |
|
|
26
|
+
|
|
27
|
+
## Events
|
|
28
|
+
|
|
29
|
+
| 事件 | detail | 说明 |
|
|
30
|
+
| --------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------------ |
|
|
31
|
+
| onItemDragStart | `SnippetItem` — { text: 片段文本, icon: 图标, dragConf: { format: 数据格式, data: 数据内容 } } | 用户开始拖拽菜单项时触发 |
|
|
32
|
+
| onItemDragEnd | `SnippetItem` — { text: 片段文本, icon: 图标, dragConf: { format: 数据格式, data: 数据内容 } } | 用户结束拖拽菜单项时触发,同时菜单自动关闭 |
|
|
33
|
+
|
|
34
|
+
## Methods
|
|
35
|
+
|
|
36
|
+
| 方法 | 参数 | 返回值 | 说明 |
|
|
37
|
+
| ----- | ---------------------------------- | ------ | ------------------------------ |
|
|
38
|
+
| open | `({ position }: OpenInfo) => void` | `void` | 打开上下文菜单并定位到指定位置 |
|
|
39
|
+
| close | `() => void` | `void` | 关闭上下文菜单 |
|
|
40
|
+
|
|
41
|
+
## Examples
|
|
42
|
+
|
|
43
|
+
### Basic
|
|
44
|
+
|
|
45
|
+
展示代码片段上下文菜单的基本用法,右键点击区域后显示菜单,可拖拽菜单项。
|
|
46
|
+
|
|
47
|
+
```tsx
|
|
48
|
+
const menuRef = useRef<any>();
|
|
49
|
+
|
|
50
|
+
<div
|
|
51
|
+
style={{ padding: "40px", border: "1px dashed #ccc", textAlign: "center", userSelect: "none" }}
|
|
52
|
+
onContextMenu={(e) => {
|
|
53
|
+
e.preventDefault();
|
|
54
|
+
menuRef.current?.open({ position: [e.clientX, e.clientY] });
|
|
55
|
+
}}
|
|
56
|
+
>
|
|
57
|
+
右键点击此区域打开菜单
|
|
58
|
+
</div>
|
|
59
|
+
<WrappedVisualBuilderGenerateSnippetsContextMenu
|
|
60
|
+
ref={menuRef}
|
|
61
|
+
options={[
|
|
62
|
+
{
|
|
63
|
+
title: "基础组件",
|
|
64
|
+
children: [
|
|
65
|
+
{
|
|
66
|
+
text: "按钮",
|
|
67
|
+
icon: { lib: "antd", icon: "border" },
|
|
68
|
+
dragConf: {
|
|
69
|
+
format: "text/plain",
|
|
70
|
+
data: { brick: "eo-button", properties: { textContent: "新按钮" } },
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
text: "输入框",
|
|
75
|
+
icon: { lib: "antd", icon: "edit" },
|
|
76
|
+
dragConf: { format: "text/plain", data: { brick: "eo-input" } },
|
|
77
|
+
},
|
|
78
|
+
],
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
title: "布局组件",
|
|
82
|
+
children: [
|
|
83
|
+
{
|
|
84
|
+
text: "卡片",
|
|
85
|
+
icon: { lib: "antd", icon: "credit-card" },
|
|
86
|
+
tooltip: "拖拽以添加卡片",
|
|
87
|
+
dragConf: { format: "text/plain", data: { brick: "eo-card" } },
|
|
88
|
+
},
|
|
89
|
+
],
|
|
90
|
+
},
|
|
91
|
+
]}
|
|
92
|
+
onItemDragStart={(e) => console.log(e.detail)}
|
|
93
|
+
onItemDragEnd={(e) => console.log(e.detail)}
|
|
94
|
+
/>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### With Disabled Items
|
|
98
|
+
|
|
99
|
+
展示带有禁用状态的菜单项,禁用项不可拖拽。
|
|
100
|
+
|
|
101
|
+
```tsx
|
|
102
|
+
const menuRef = useRef<any>();
|
|
103
|
+
|
|
104
|
+
<div
|
|
105
|
+
style={{ padding: "40px", border: "1px dashed #ccc", textAlign: "center", userSelect: "none" }}
|
|
106
|
+
onContextMenu={(e) => {
|
|
107
|
+
e.preventDefault();
|
|
108
|
+
menuRef.current?.open({ position: [e.clientX, e.clientY] });
|
|
109
|
+
}}
|
|
110
|
+
>
|
|
111
|
+
右键点击此区域打开菜单(部分选项已禁用)
|
|
112
|
+
</div>
|
|
113
|
+
<WrappedVisualBuilderGenerateSnippetsContextMenu
|
|
114
|
+
ref={menuRef}
|
|
115
|
+
options={[
|
|
116
|
+
{
|
|
117
|
+
title: "组件列表",
|
|
118
|
+
children: [
|
|
119
|
+
{
|
|
120
|
+
text: "按钮(可用)",
|
|
121
|
+
icon: { lib: "antd", icon: "border" },
|
|
122
|
+
dragConf: { format: "text/plain", data: { brick: "eo-button" } },
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
text: "表格(禁用)",
|
|
126
|
+
icon: { lib: "antd", icon: "table" },
|
|
127
|
+
disabled: true,
|
|
128
|
+
tooltip: "该组件在当前场景不可用",
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
},
|
|
132
|
+
]}
|
|
133
|
+
/>
|
|
134
|
+
```
|
package/docs/page-arch-node.md
CHANGED
|
@@ -1,9 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.page-arch-node
|
|
3
|
+
displayName: WrappedVisualBuilderPageArchNode
|
|
4
|
+
description: Visual Builder 页面架构图节点,支持页面(page)和看板(board)两种类型,可内联编辑标签、追加子节点、显示外链和子节点
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# visual-builder.page-arch-node
|
|
10
|
+
|
|
11
|
+
> Visual Builder 页面架构图节点,支持页面(page)和看板(board)两种类型,可内联编辑标签、追加子节点、显示外链和子节点
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
16
|
+
| ------------------ | ------------------- | ---- | ------ | ---------------------------------------------------------------------------------------- |
|
|
17
|
+
| label | `string` | 否 | - | 节点标签文字,支持内联双击编辑 |
|
|
18
|
+
| type | `"page" \| "board"` | 否 | - | 节点类型,"page" 渲染为页面缩略图样式(高 130px),"board" 渲染为列表图标样式(高 70px) |
|
|
19
|
+
| external | `ExtraNodeData` | 否 | - | 外部链接节点数据,仅 type="page" 时显示,点击触发 external.click 事件 |
|
|
20
|
+
| subNodes | `ExtraNodeData[]` | 否 | - | 子节点列表,仅 type="page" 时显示,每个子节点可双击和右键操作 |
|
|
21
|
+
| active | `boolean` | 否 | - | 是否为当前激活节点,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
22
|
+
| notSynced | `boolean` | 否 | - | 是否标记为未同步状态,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
23
|
+
| disableChildAppend | `boolean` | 否 | - | 是否禁用追加子节点按钮,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
24
|
+
| autoFocusOnce | `string` | 否 | - | 自动聚焦标识符,设置后节点首次挂载时会自动进入标签编辑模式,同一标识符只触发一次 |
|
|
25
|
+
|
|
26
|
+
## Events
|
|
27
|
+
|
|
28
|
+
| 事件 | detail | 说明 |
|
|
29
|
+
| -------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
|
|
30
|
+
| label.editing.change | `boolean` — 当前标签是否正在编辑 | 节点标签编辑状态变化时触发 |
|
|
31
|
+
| label.change | `string` — 编辑完成后的新标签文字 | 节点标签编辑完成(失焦)后触发 |
|
|
32
|
+
| node.click | `void` | 点击节点主体区域时触发 |
|
|
33
|
+
| node.dblclick | `void` | 双击节点主体区域时触发 |
|
|
34
|
+
| node.contextmenu | `ContextMenuDetail` — { clientX: 鼠标 X 坐标, clientY: 鼠标 Y 坐标 } | 在节点上触发右键菜单时触发 |
|
|
35
|
+
| child.append | `void` | 点击节点的添加子节点按钮时触发 |
|
|
36
|
+
| external.click | `ExtraNodeData` — { id: 外链节点 ID, label: 外链节点标签 } | 点击节点的外链区域时触发 |
|
|
37
|
+
| subNode.dblclick | `ExtraNodeData` — { id: 子节点 ID, label: 子节点标签 } | 双击子节点时触发 |
|
|
38
|
+
| subNode.contextmenu | `SubNodeContextMenuData` — { node: { id: 子节点 ID, label: 子节点标签 }, clientX: 鼠标 X 坐标, clientY: 鼠标 Y 坐标 } | 在子节点上触发右键菜单时触发 |
|
|
2
39
|
|
|
3
40
|
## Examples
|
|
4
41
|
|
|
5
42
|
### Basic
|
|
6
43
|
|
|
44
|
+
展示页面架构图节点的基本用法,包含节点标签和页面类型。
|
|
45
|
+
|
|
7
46
|
```yaml preview
|
|
8
47
|
brick: visual-builder.page-arch-node
|
|
9
48
|
properties:
|
|
@@ -11,8 +50,21 @@ properties:
|
|
|
11
50
|
type: page
|
|
12
51
|
```
|
|
13
52
|
|
|
53
|
+
### Board Type
|
|
54
|
+
|
|
55
|
+
展示看板类型节点,渲染为带列表图标的简洁样式。
|
|
56
|
+
|
|
57
|
+
```yaml preview
|
|
58
|
+
brick: visual-builder.page-arch-node
|
|
59
|
+
properties:
|
|
60
|
+
label: 看板视图
|
|
61
|
+
type: board
|
|
62
|
+
```
|
|
63
|
+
|
|
14
64
|
### With SubNodes
|
|
15
65
|
|
|
66
|
+
展示包含子节点的页面节点,子节点以骨架屏样式列于节点内部。
|
|
67
|
+
|
|
16
68
|
```yaml preview
|
|
17
69
|
brick: visual-builder.page-arch-node
|
|
18
70
|
properties:
|
|
@@ -22,3 +74,37 @@ properties:
|
|
|
22
74
|
- label: 详情
|
|
23
75
|
id: detail
|
|
24
76
|
```
|
|
77
|
+
|
|
78
|
+
### With External Link
|
|
79
|
+
|
|
80
|
+
展示带外链节点的页面节点,外链区域可点击触发跳转事件。
|
|
81
|
+
|
|
82
|
+
```yaml preview
|
|
83
|
+
brick: visual-builder.page-arch-node
|
|
84
|
+
properties:
|
|
85
|
+
label: 主机列表
|
|
86
|
+
type: page
|
|
87
|
+
external:
|
|
88
|
+
id: host-detail
|
|
89
|
+
label: 主机详情
|
|
90
|
+
subNodes:
|
|
91
|
+
- label: IP 列
|
|
92
|
+
id: ip-col
|
|
93
|
+
- label: 主机名列
|
|
94
|
+
id: hostname-col
|
|
95
|
+
events:
|
|
96
|
+
label.change:
|
|
97
|
+
action: console.log
|
|
98
|
+
node.click:
|
|
99
|
+
action: console.log
|
|
100
|
+
child.append:
|
|
101
|
+
action: console.log
|
|
102
|
+
external.click:
|
|
103
|
+
action: console.log
|
|
104
|
+
subNode.dblclick:
|
|
105
|
+
action: console.log
|
|
106
|
+
subNode.contextmenu:
|
|
107
|
+
action: console.log
|
|
108
|
+
node.contextmenu:
|
|
109
|
+
action: console.log
|
|
110
|
+
```
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.page-arch-node
|
|
3
|
+
displayName: WrappedVisualBuilderPageArchNode
|
|
4
|
+
description: Visual Builder 页面架构图节点,支持页面(page)和看板(board)两种类型,可内联编辑标签、追加子节点、显示外链和子节点
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedVisualBuilderPageArchNode
|
|
10
|
+
|
|
11
|
+
> Visual Builder 页面架构图节点,支持页面(page)和看板(board)两种类型,可内联编辑标签、追加子节点、显示外链和子节点
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedVisualBuilderPageArchNode } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| ------------------ | ------------------- | ---- | ------ | ---------------------------------------------------------------------------------------- |
|
|
23
|
+
| label | `string` | 否 | - | 节点标签文字,支持内联双击编辑 |
|
|
24
|
+
| type | `"page" \| "board"` | 否 | - | 节点类型,"page" 渲染为页面缩略图样式(高 130px),"board" 渲染为列表图标样式(高 70px) |
|
|
25
|
+
| external | `ExtraNodeData` | 否 | - | 外部链接节点数据,仅 type="page" 时显示,点击触发 external.click 事件 |
|
|
26
|
+
| subNodes | `ExtraNodeData[]` | 否 | - | 子节点列表,仅 type="page" 时显示,每个子节点可双击和右键操作 |
|
|
27
|
+
| active | `boolean` | 否 | - | 是否为当前激活节点,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
28
|
+
| notSynced | `boolean` | 否 | - | 是否标记为未同步状态,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
29
|
+
| disableChildAppend | `boolean` | 否 | - | 是否禁用追加子节点按钮,仅控制 CSS 样式(render: false),不触发重新渲染 |
|
|
30
|
+
| autoFocusOnce | `string` | 否 | - | 自动聚焦标识符,设置后节点首次挂载时会自动进入标签编辑模式,同一标识符只触发一次 |
|
|
31
|
+
|
|
32
|
+
## Events
|
|
33
|
+
|
|
34
|
+
| 事件 | detail | 说明 |
|
|
35
|
+
| -------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------ |
|
|
36
|
+
| onLabelEditingChange | `boolean` — 当前标签是否正在编辑 | 节点标签编辑状态变化时触发 |
|
|
37
|
+
| onLabelChange | `string` — 编辑完成后的新标签文字 | 节点标签编辑完成(失焦)后触发 |
|
|
38
|
+
| onNodeClick | `void` | 点击节点主体区域时触发 |
|
|
39
|
+
| onNodeDblclick | `void` | 双击节点主体区域时触发 |
|
|
40
|
+
| onNodeContextmenu | `ContextMenuDetail` — { clientX: 鼠标 X 坐标, clientY: 鼠标 Y 坐标 } | 在节点上触发右键菜单时触发 |
|
|
41
|
+
| onChildAppend | `void` | 点击节点的添加子节点按钮时触发 |
|
|
42
|
+
| onExternalClick | `ExtraNodeData` — { id: 外链节点 ID, label: 外链节点标签 } | 点击节点的外链区域时触发 |
|
|
43
|
+
| onSubNodeDblclick | `ExtraNodeData` — { id: 子节点 ID, label: 子节点标签 } | 双击子节点时触发 |
|
|
44
|
+
| onSubNodeContextmenu | `SubNodeContextMenuData` — { node: { id: 子节点 ID, label: 子节点标签 }, clientX: 鼠标 X 坐标, clientY: 鼠标 Y 坐标 } | 在子节点上触发右键菜单时触发 |
|
|
45
|
+
|
|
46
|
+
## Examples
|
|
47
|
+
|
|
48
|
+
### Basic
|
|
49
|
+
|
|
50
|
+
展示页面架构图节点的基本用法,包含节点标签和页面类型。
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<WrappedVisualBuilderPageArchNode label="名称" type="page" />
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Board Type
|
|
57
|
+
|
|
58
|
+
展示看板类型节点,渲染为带列表图标的简洁样式。
|
|
59
|
+
|
|
60
|
+
```tsx
|
|
61
|
+
<WrappedVisualBuilderPageArchNode label="看板视图" type="board" />
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### With SubNodes
|
|
65
|
+
|
|
66
|
+
展示包含子节点的页面节点,子节点以骨架屏样式列于节点内部。
|
|
67
|
+
|
|
68
|
+
```tsx
|
|
69
|
+
<WrappedVisualBuilderPageArchNode
|
|
70
|
+
label="列表"
|
|
71
|
+
type="page"
|
|
72
|
+
subNodes={[{ label: "详情", id: "detail" }]}
|
|
73
|
+
/>
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### With External Link
|
|
77
|
+
|
|
78
|
+
展示带外链节点的页面节点,外链区域可点击触发跳转事件。
|
|
79
|
+
|
|
80
|
+
```tsx
|
|
81
|
+
<WrappedVisualBuilderPageArchNode
|
|
82
|
+
label="主机列表"
|
|
83
|
+
type="page"
|
|
84
|
+
external={{ id: "host-detail", label: "主机详情" }}
|
|
85
|
+
subNodes={[
|
|
86
|
+
{ label: "IP 列", id: "ip-col" },
|
|
87
|
+
{ label: "主机名列", id: "hostname-col" },
|
|
88
|
+
]}
|
|
89
|
+
onLabelChange={(e) => console.log(e.detail)}
|
|
90
|
+
onNodeClick={(e) => console.log(e.detail)}
|
|
91
|
+
onChildAppend={(e) => console.log(e.detail)}
|
|
92
|
+
onExternalClick={(e) => console.log(e.detail)}
|
|
93
|
+
onSubNodeDblclick={(e) => console.log(e.detail)}
|
|
94
|
+
onSubNodeContextmenu={(e) => console.log(e.detail)}
|
|
95
|
+
onNodeContextmenu={(e) => console.log(e.detail)}
|
|
96
|
+
/>
|
|
97
|
+
```
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.pre-generated-config-preview
|
|
3
|
+
displayName: WrappedVisualBuilderPreGeneratedConfigPreview
|
|
4
|
+
description: AI 预生成配置预览构件,在 iframe 中将属性列表渲染为表格或描述列表,用于直观展示配置结果
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# visual-builder.pre-generated-config-preview
|
|
10
|
+
|
|
11
|
+
> AI 预生成配置预览构件,在 iframe 中将属性列表渲染为表格或描述列表,用于直观展示配置结果
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
16
|
+
| ---------- | --------------------------- | ---- | ------ | --------------------------------------------------------------------------- |
|
|
17
|
+
| previewUrl | `string` | 否 | - | 预览 iframe 的地址,默认使用内置预览地址 |
|
|
18
|
+
| container | `"table" \| "descriptions"` | 否 | - | 容器类型,"table" 渲染为表格,"descriptions" 渲染为描述列表,默认为 "table" |
|
|
19
|
+
| attrList | `ObjectAttr[]` | 否 | - | 属性列表,每项包含 id、name,以及可选的可视化配置 |
|
|
20
|
+
| mockList | `Record<string, unknown>[]` | 否 | - | 模拟数据列表,用于填充预览中的真实数据 |
|
|
21
|
+
|
|
22
|
+
## Examples
|
|
23
|
+
|
|
24
|
+
### Table Preview
|
|
25
|
+
|
|
26
|
+
以表格形式预览属性列表配置。
|
|
27
|
+
|
|
28
|
+
```yaml preview
|
|
29
|
+
brick: visual-builder.pre-generated-config-preview
|
|
30
|
+
properties:
|
|
31
|
+
container: table
|
|
32
|
+
attrList:
|
|
33
|
+
- id: name
|
|
34
|
+
name: 名称
|
|
35
|
+
- id: ip
|
|
36
|
+
name: IP 地址
|
|
37
|
+
- id: status
|
|
38
|
+
name: 运营状态
|
|
39
|
+
- id: createTime
|
|
40
|
+
name: 创建时间
|
|
41
|
+
mockList:
|
|
42
|
+
- name: 主机-001
|
|
43
|
+
ip: "192.168.1.1"
|
|
44
|
+
status: 运行中
|
|
45
|
+
createTime: "2024-01-01"
|
|
46
|
+
- name: 主机-002
|
|
47
|
+
ip: "192.168.1.2"
|
|
48
|
+
status: 已停止
|
|
49
|
+
createTime: "2024-01-02"
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Descriptions Preview
|
|
53
|
+
|
|
54
|
+
以描述列表形式预览属性配置,适合展示单条记录的详细信息。
|
|
55
|
+
|
|
56
|
+
```yaml preview
|
|
57
|
+
brick: visual-builder.pre-generated-config-preview
|
|
58
|
+
properties:
|
|
59
|
+
container: descriptions
|
|
60
|
+
attrList:
|
|
61
|
+
- id: name
|
|
62
|
+
name: 名称
|
|
63
|
+
- id: ip
|
|
64
|
+
name: IP 地址
|
|
65
|
+
- id: status
|
|
66
|
+
name: 运营状态
|
|
67
|
+
- id: createTime
|
|
68
|
+
name: 创建时间
|
|
69
|
+
mockList:
|
|
70
|
+
- name: 主机-001
|
|
71
|
+
ip: "192.168.1.1"
|
|
72
|
+
status: 运行中
|
|
73
|
+
createTime: "2024-01-01"
|
|
74
|
+
```
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: visual-builder.pre-generated-config-preview
|
|
3
|
+
displayName: WrappedVisualBuilderPreGeneratedConfigPreview
|
|
4
|
+
description: AI 预生成配置预览构件,在 iframe 中将属性列表渲染为表格或描述列表,用于直观展示配置结果
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/visual-builder"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedVisualBuilderPreGeneratedConfigPreview
|
|
10
|
+
|
|
11
|
+
> AI 预生成配置预览构件,在 iframe 中将属性列表渲染为表格或描述列表,用于直观展示配置结果
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedVisualBuilderPreGeneratedConfigPreview } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| ---------- | --------------------------- | ---- | ------ | --------------------------------------------------------------------------- |
|
|
23
|
+
| previewUrl | `string` | 否 | - | 预览 iframe 的地址,默认使用内置预览地址 |
|
|
24
|
+
| container | `"table" \| "descriptions"` | 否 | - | 容器类型,"table" 渲染为表格,"descriptions" 渲染为描述列表,默认为 "table" |
|
|
25
|
+
| attrList | `ObjectAttr[]` | 否 | - | 属性列表,每项包含 id、name,以及可选的可视化配置 |
|
|
26
|
+
| mockList | `Record<string, unknown>[]` | 否 | - | 模拟数据列表,用于填充预览中的真实数据 |
|
|
27
|
+
|
|
28
|
+
## Examples
|
|
29
|
+
|
|
30
|
+
### Table Preview
|
|
31
|
+
|
|
32
|
+
以表格形式预览属性列表配置。
|
|
33
|
+
|
|
34
|
+
```tsx
|
|
35
|
+
<WrappedVisualBuilderPreGeneratedConfigPreview
|
|
36
|
+
container="table"
|
|
37
|
+
attrList={[
|
|
38
|
+
{ id: "name", name: "名称" },
|
|
39
|
+
{ id: "ip", name: "IP 地址" },
|
|
40
|
+
{ id: "status", name: "运营状态" },
|
|
41
|
+
{ id: "createTime", name: "创建时间" },
|
|
42
|
+
]}
|
|
43
|
+
mockList={[
|
|
44
|
+
{
|
|
45
|
+
name: "主机-001",
|
|
46
|
+
ip: "192.168.1.1",
|
|
47
|
+
status: "运行中",
|
|
48
|
+
createTime: "2024-01-01",
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
name: "主机-002",
|
|
52
|
+
ip: "192.168.1.2",
|
|
53
|
+
status: "已停止",
|
|
54
|
+
createTime: "2024-01-02",
|
|
55
|
+
},
|
|
56
|
+
]}
|
|
57
|
+
/>
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Descriptions Preview
|
|
61
|
+
|
|
62
|
+
以描述列表形式预览属性配置,适合展示单条记录的详细信息。
|
|
63
|
+
|
|
64
|
+
```tsx
|
|
65
|
+
<WrappedVisualBuilderPreGeneratedConfigPreview
|
|
66
|
+
container="descriptions"
|
|
67
|
+
attrList={[
|
|
68
|
+
{ id: "name", name: "名称" },
|
|
69
|
+
{ id: "ip", name: "IP 地址" },
|
|
70
|
+
{ id: "status", name: "运营状态" },
|
|
71
|
+
{ id: "createTime", name: "创建时间" },
|
|
72
|
+
]}
|
|
73
|
+
mockList={[
|
|
74
|
+
{
|
|
75
|
+
name: "主机-001",
|
|
76
|
+
ip: "192.168.1.1",
|
|
77
|
+
status: "运行中",
|
|
78
|
+
createTime: "2024-01-01",
|
|
79
|
+
},
|
|
80
|
+
]}
|
|
81
|
+
/>
|
|
82
|
+
```
|