vscode-behavior3 2.1.2 → 2.2.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.
@@ -1 +1 @@
1
- <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 256 256" height="200px" width="200px" xmlns="http://www.w3.org/2000/svg"><path d="M160,116h48a20,20,0,0,0,20-20V48a20,20,0,0,0-20-20H160a20,20,0,0,0-20,20V60H128a28,28,0,0,0-28,28v28H76v-4A20,20,0,0,0,56,92H24A20,20,0,0,0,4,112v32a20,20,0,0,0,20,20H56a20,20,0,0,0,20-20v-4h24v28a28,28,0,0,0,28,28h12v12a20,20,0,0,0,20,20h48a20,20,0,0,0,20-20V160a20,20,0,0,0-20-20H160a20,20,0,0,0-20,20v12H128a4,4,0,0,1-4-4V88a4,4,0,0,1,4-4h12V96A20,20,0,0,0,160,116ZM52,140H28V116H52Zm112,24h40v40H164Zm0-112h40V92H164Z"></path></svg>
1
+ <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 256 256" height="200px" width="200px" xmlns="http://www.w3.org/2000/svg"><path d="M160,112h48a16,16,0,0,0,16-16V48a16,16,0,0,0-16-16H160a16,16,0,0,0-16,16V64H128a24,24,0,0,0-24,24v32H72v-8A16,16,0,0,0,56,96H24A16,16,0,0,0,8,112v32a16,16,0,0,0,16,16H56a16,16,0,0,0,16-16v-8h32v32a24,24,0,0,0,24,24h16v16a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V160a16,16,0,0,0-16-16H160a16,16,0,0,0-16,16v16H128a8,8,0,0,1-8-8V88a8,8,0,0,1,8-8h16V96A16,16,0,0,0,160,112ZM56,144H24V112H56v32Zm104,16h48v48H160Zm0-112h48V96H160Z"></path></svg>
Binary file
@@ -5,8 +5,12 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <link rel="stylesheet" href="./codicons/codicon.css" />
7
7
  <title>Behavior3 Editor</title>
8
- <script type="module" crossorigin src="./assets/editor-RJ_NkY97.js"></script>
9
- <link rel="stylesheet" crossorigin href="./assets/editor-Ko79XsIi.css">
8
+ <script type="module" crossorigin src="./assets/editor-DaW6jFnb.js"></script>
9
+ <link rel="modulepreload" crossorigin href="./assets/rolldown-runtime-BYbx6iT9.js">
10
+ <link rel="modulepreload" crossorigin href="./assets/graph-vendor-ww5KcpJ-.js">
11
+ <link rel="modulepreload" crossorigin href="./assets/ui-vendor-CpXf__no.js">
12
+ <link rel="modulepreload" crossorigin href="./assets/vendor-BuywoAnb.js">
13
+ <link rel="stylesheet" crossorigin href="./assets/editor-BxvY-Wyu.css">
10
14
  </head>
11
15
  <body>
12
16
  <div id="root"></div>
@@ -46,6 +46,7 @@
46
46
  "reload": "Reload",
47
47
  "reset": "Reset",
48
48
  "reset.confirm": "Reset to original value?",
49
+ "reset.defaultConfirm": "Reset to default value?",
49
50
  "rename": "Rename...",
50
51
  "replace": "Replace",
51
52
  "reportIssue": "Report Issue",
@@ -45,6 +45,7 @@
45
45
  "reload": "重新加载",
46
46
  "reset": "重置",
47
47
  "reset.confirm": "重置为原始值?",
48
+ "reset.defaultConfirm": "重置为默认值?",
48
49
  "rename": "重命名...",
49
50
  "replace": "替换",
50
51
  "reportIssue": "问题反馈",
@@ -1 +1 @@
1
- <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 256 256" height="200px" width="200px" xmlns="http://www.w3.org/2000/svg"><path d="M160,116h48a20,20,0,0,0,20-20V48a20,20,0,0,0-20-20H160a20,20,0,0,0-20,20V60H128a28,28,0,0,0-28,28v28H76v-4A20,20,0,0,0,56,92H24A20,20,0,0,0,4,112v32a20,20,0,0,0,20,20H56a20,20,0,0,0,20-20v-4h24v28a28,28,0,0,0,28,28h12v12a20,20,0,0,0,20,20h48a20,20,0,0,0,20-20V160a20,20,0,0,0-20-20H160a20,20,0,0,0-20,20v12H128a4,4,0,0,1-4-4V88a4,4,0,0,1,4-4h12V96A20,20,0,0,0,160,116ZM52,140H28V116H52Zm112,24h40v40H164Zm0-112h40V92H164Z"></path></svg>
1
+ <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 256 256" height="200px" width="200px" xmlns="http://www.w3.org/2000/svg"><path d="M160,112h48a16,16,0,0,0,16-16V48a16,16,0,0,0-16-16H160a16,16,0,0,0-16,16V64H128a24,24,0,0,0-24,24v32H72v-8A16,16,0,0,0,56,96H24A16,16,0,0,0,8,112v32a16,16,0,0,0,16,16H56a16,16,0,0,0,16-16v-8h32v32a24,24,0,0,0,24,24h16v16a16,16,0,0,0,16,16h48a16,16,0,0,0,16-16V160a16,16,0,0,0-16-16H160a16,16,0,0,0-16,16v16H128a8,8,0,0,1-8-8V88a8,8,0,0,1,8-8h16V96A16,16,0,0,0,160,112ZM56,144H24V112H56v32Zm104,16h48v48H160Zm0-112h48V96H160Z"></path></svg>
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "vscode-behavior3",
3
3
  "displayName": "%extension.displayName%",
4
4
  "description": "%extension.description%",
5
- "version": "2.1.2",
5
+ "version": "2.2.0",
6
6
  "publisher": "codetypess",
7
7
  "repository": {
8
8
  "type": "git",
@@ -36,6 +36,7 @@
36
36
  "dist/extension.js",
37
37
  "dist/webview/",
38
38
  "icon.png",
39
+ "LICENSE",
39
40
  "media/icons/icon.svg",
40
41
  "package.nls.json",
41
42
  "package.nls.zh-cn.json",
@@ -48,8 +49,8 @@
48
49
  },
49
50
  "license": "MIT",
50
51
  "engines": {
51
- "node": ">=18",
52
- "vscode": "^1.85.0"
52
+ "node": ">=20.19",
53
+ "vscode": "^1.105.0"
53
54
  },
54
55
  "categories": [
55
56
  "Other"
@@ -124,12 +125,14 @@
124
125
  {
125
126
  "command": "behavior3.createProject",
126
127
  "title": "%command.createProject.title%",
127
- "category": "%command.category%"
128
+ "category": "%command.category%",
129
+ "icon": "$(new-collection)"
128
130
  },
129
131
  {
130
132
  "command": "behavior3.createTree",
131
133
  "title": "%command.createTree.title%",
132
- "category": "%command.category%"
134
+ "category": "%command.category%",
135
+ "icon": "$(new-file)"
133
136
  },
134
137
  {
135
138
  "command": "behavior3.openSettings",
@@ -146,6 +149,12 @@
146
149
  "title": "%command.toggleEditorMode.title%",
147
150
  "category": "%command.category%",
148
151
  "icon": "$(edit-code)"
152
+ },
153
+ {
154
+ "command": "behavior3.toggleInspectorNodeJson",
155
+ "title": "%command.toggleInspectorNodeJson.title%",
156
+ "category": "%command.category%",
157
+ "icon": "$(code)"
149
158
  }
150
159
  ],
151
160
  "keybindings": [
@@ -168,12 +177,34 @@
168
177
  }
169
178
  ],
170
179
  "menus": {
171
- "editor/title": [
180
+ "view/title": [
181
+ {
182
+ "command": "behavior3.build",
183
+ "when": "view == behavior3.inspectorView",
184
+ "group": "navigation@1"
185
+ },
172
186
  {
173
187
  "command": "behavior3.toggleEditorMode",
174
- "when": "activeCustomEditorId == 'behavior3.treeEditor' || resourceExtname == .json",
175
- "group": "navigation@0"
188
+ "when": "view == behavior3.inspectorView",
189
+ "group": "navigation@2"
176
190
  },
191
+ {
192
+ "command": "behavior3.toggleInspectorNodeJson",
193
+ "when": "view == behavior3.inspectorView && behavior3.inspectorSidebarMode",
194
+ "group": "navigation@2.5"
195
+ },
196
+ {
197
+ "command": "behavior3.createProject",
198
+ "when": "view == behavior3.inspectorView",
199
+ "group": "navigation@3"
200
+ },
201
+ {
202
+ "command": "behavior3.createTree",
203
+ "when": "view == behavior3.inspectorView",
204
+ "group": "navigation@4"
205
+ }
206
+ ],
207
+ "editor/title": [
177
208
  {
178
209
  "command": "behavior3.build",
179
210
  "when": "activeCustomEditorId == 'behavior3.treeEditor'",
@@ -262,11 +293,11 @@
262
293
  },
263
294
  "scripts": {
264
295
  "vscode:prepublish": "npm run build",
265
- "build": "node esbuild.js && vite build",
296
+ "build": "node esbuild.js && node scripts/vite-webview.mjs --production",
266
297
  "build:cli": "node esbuild.js --cli",
267
- "build:dev": "node esbuild.js --dev && vite build --mode development",
298
+ "build:dev": "node esbuild.js --dev && node scripts/vite-webview.mjs --development",
268
299
  "watch:ext": "node esbuild.js --watch",
269
- "watch:webview": "vite build --watch --mode development",
300
+ "watch:webview": "node scripts/vite-webview.mjs --watch --development",
270
301
  "dev": "npm run watch:webview",
271
302
  "package": "vsce package",
272
303
  "pack:npm": "npm pack --dry-run",
@@ -282,17 +313,18 @@
282
313
  },
283
314
  "devDependencies": {
284
315
  "@ant-design/icons": "^6.1.1",
285
- "@antv/g6": "^5.0.51",
316
+ "@antv/g6": "^5.1.1",
286
317
  "@types/node": "^20.19.37",
287
318
  "@types/react": "^18.3.12",
288
319
  "@types/react-dom": "^18.3.1",
289
- "@types/vscode": "^1.85.0",
290
- "@vitejs/plugin-react": "^4.3.4",
291
- "@vscode/vsce": "^3.7.1",
320
+ "@types/vscode": "^1.105.0",
321
+ "@vitejs/plugin-react": "^5.2.0",
322
+ "@vscode/vsce": "^3.9.1",
292
323
  "ahooks": "^3.8.0",
293
324
  "antd": "^6.3.4",
294
325
  "autoprefixer": "^10.4.20",
295
- "esbuild": "^0.24.0",
326
+ "chokidar": "^4.0.3",
327
+ "esbuild": "^0.27.3",
296
328
  "i18next": "^23.12.2",
297
329
  "nanoid": "^5.1.6",
298
330
  "postcss": "^8.4.49",
@@ -307,7 +339,7 @@
307
339
  "ts-key-enum": "^2.0.12",
308
340
  "typescript": "^5.8.2",
309
341
  "usehooks-ts": "^3.1.0",
310
- "vite": "^6.3.5",
342
+ "vite": "^8.0.12",
311
343
  "zustand": "^5.0.3"
312
344
  }
313
345
  }
package/package.nls.json CHANGED
@@ -12,9 +12,10 @@
12
12
  "command.runBatchProcessScript.title": "Run as Batch Process",
13
13
  "command.createProject.title": "Create Project",
14
14
  "command.openSettings.title": "Open Node Config (.b3-setting)",
15
- "command.createTree.title": "Create Behavior3 File",
15
+ "command.createTree.title": "Create Behavior Tree File",
16
16
  "command.openWithEditor.title": "Open with Behavior3",
17
17
  "command.toggleEditorMode.title": "Toggle Text / Behavior3",
18
+ "command.toggleInspectorNodeJson.title": "Toggle Node JSON",
18
19
  "configuration.title": "Behavior3 Editor",
19
20
  "configuration.checkExpr.description": "Enable expression validation.",
20
21
  "configuration.language.description": "Editor UI language. The default follows the VS Code display language; you can also force a language.",
@@ -12,9 +12,10 @@
12
12
  "command.runBatchProcessScript.title": "作为批处理运行",
13
13
  "command.createProject.title": "创建项目",
14
14
  "command.openSettings.title": "打开节点配置 (.b3-setting)",
15
- "command.createTree.title": "创建 Behavior3 文件",
15
+ "command.createTree.title": "创建行为树文件",
16
16
  "command.openWithEditor.title": "使用 Behavior3 打开",
17
17
  "command.toggleEditorMode.title": "切换文本 / Behavior3",
18
+ "command.toggleInspectorNodeJson.title": "切换节点 JSON",
18
19
  "configuration.title": "Behavior3 编辑器",
19
20
  "configuration.checkExpr.description": "启用表达式校验。",
20
21
  "configuration.language.description": "编辑器界面语言。默认跟随 VS Code 显示语言,也可手动指定。",
@@ -62,6 +62,7 @@ export interface NodeArgChecker {
62
62
  }
63
63
 
64
64
  export type BuildScript = {
65
+ shouldUpgradeTree?: (path: string, tree: TreeData) => boolean;
65
66
  onProcessTree?: (tree: TreeData, path: string, errors: string[]) => TreeData | null;
66
67
  onProcessNode?: (node: NodeData, errors: string[]) => NodeData | null;
67
68
  onWriteFile?: (path: string, tree: TreeData) => void;
@@ -91,6 +92,7 @@ export type BuildRuntime = {
91
92
 
92
93
  export declare class Hook implements BuildScript {
93
94
  constructor(env: BuildEnv);
95
+ shouldUpgradeTree?(path: string, tree: TreeData): boolean;
94
96
  onProcessTree?(tree: TreeData, path: string, errors: string[]): TreeData | null;
95
97
  onProcessNode?(node: NodeData, errors: string[]): NodeData | null;
96
98
  onWriteFile?(path: string, tree: TreeData): void;
@@ -4,8 +4,7 @@ export type { NodeDef };
4
4
  export type NodeType = NodeDef["type"] | "Other" | "Error";
5
5
  export type NodeArg = Exclude<NodeDef["args"], undefined>[number];
6
6
 
7
- export const DOCUMENT_VERSION = "2.1.0";
8
- export const VERSION = DOCUMENT_VERSION;
7
+ export const DOCUMENT_VERSION = "2.2.0";
9
8
 
10
9
  export interface NodeData {
11
10
  id: string;
@@ -1 +0,0 @@
1
- html,body,#root{width:100%;height:100%;margin:0;padding:0}body{overflow:hidden;color:var(--ant-color-text)}body[data-webview-kind=inspector-sidebar]{--b3-inspector-sidebar-min-width: 300px;--b3-inspector-form-label-width: 110px}body[data-theme=dark]{--b3-panel-border: var(--vscode-sideBar-border, var(--vscode-panel-border, #30363d));--b3-panel-title: var(--vscode-sideBarTitle-foreground, var(--vscode-foreground, #e6edf3));--b3-graph-bg: var(--vscode-editor-background, #010409);--b3-graph-edge: #a3b1bf;--b3-text-muted: var(--vscode-descriptionForeground, #8b949e);--b3-filter-hover-bg: var(--vscode-list-hoverBackground, #30363d);--b3-filter-selected-bg: var(--vscode-list-activeSelectionBackground, #2f81f7);--b3-filter-selected-hover-bg: var( --vscode-list-inactiveSelectionBackground, var(--vscode-list-activeSelectionBackground, #388bfd) );--b3-search-bg: var(--vscode-editorWidget-background, var(--vscode-input-background, #161b22));--b3-search-border-accent: var(--vscode-focusBorder, #f78166);--b3-search-shadow: #0000005c;--b3-override-bar: #d39a21;--b3-node-content-bg: #ffffff;--b3-node-text: #111827;--b3-node-muted: #4b5563;--b3-node-divider: #666666;--b3-node-highlight-bg: #0d1117;--b3-node-highlight-text: #ffffff;--b3-node-gray-fill: #0d1117;--b3-node-gray-border: #30363d;--b3-node-gray-rail: #30363d;--b3-node-gray-text: #666666;--b3-node-id-text: var(--vscode-editorLineNumber-activeForeground, #ffffff);--b3-node-id-stroke: #000000;--b3-node-selection-base: var(--vscode-editor-background, #24303d);--b3-node-selection-strength: 58%;--b3-node-focus-ring: rgba(255, 171, 0, .22);--b3-node-focus-color: var(--vscode-focusBorder, #ffab00);--b3-node-focus-opacity: .45;--b3-node-variable-hover-bg: var(--vscode-list-hoverBackground, rgba(23, 105, 221, .08));--b3-node-variable-active-hover-bg: rgba(255, 255, 255, .14);--b3-subtree-outline: var(--vscode-descriptionForeground, var(--vscode-panel-border, #a5b1be));--b3-warning-text: var(--vscode-errorForeground, #b42318);--b3-drop-before: var(--vscode-editorWarning-foreground, #faad14);--b3-drop-child: var(--vscode-errorForeground, #ff4d4f);--b3-drag-source: var(--vscode-list-dropBackground, #ffa500);--b3-collapse-bg: var(--vscode-editorWidget-background, #ffffff);--b3-collapse-border: var(--vscode-panel-border, #666666);--b3-collapse-text: var(--vscode-descriptionForeground, #666666)}body[data-theme=light]{--b3-panel-border: var(--vscode-sideBar-border, var(--vscode-panel-border, #d0d7de));--b3-panel-title: var(--vscode-sideBarTitle-foreground, var(--vscode-foreground, #1f2328));--b3-graph-bg: var(--vscode-editor-background, #f6f8fa);--b3-graph-edge: #a3b1bf;--b3-text-muted: var(--vscode-descriptionForeground, #57606a);--b3-filter-hover-bg: var(--vscode-list-hoverBackground, #eaeef2);--b3-filter-selected-bg: var(--vscode-list-activeSelectionBackground, #0969da);--b3-filter-selected-hover-bg: var( --vscode-list-inactiveSelectionBackground, var(--vscode-list-activeSelectionBackground, #1f6feb) );--b3-search-bg: var(--vscode-editorWidget-background, var(--vscode-input-background, #ffffff));--b3-search-border-accent: var(--vscode-focusBorder, #0969da);--b3-search-shadow: #1f232826;--b3-override-bar: #d39a21;--b3-node-content-bg: #ffffff;--b3-node-text: #111827;--b3-node-muted: #4b5563;--b3-node-divider: #666666;--b3-node-highlight-bg: #0d1117;--b3-node-highlight-text: #ffffff;--b3-node-gray-fill: #0d1117;--b3-node-gray-border: #30363d;--b3-node-gray-rail: #30363d;--b3-node-gray-text: #666666;--b3-node-id-text: var( --vscode-editorLineNumber-activeForeground, var(--vscode-foreground, #1f2328) );--b3-node-id-stroke: #ffffff;--b3-node-selection-base: var(--vscode-editor-background, #ffffff);--b3-node-selection-strength: 38%;--b3-node-focus-ring: rgba(191, 135, 0, .28);--b3-node-focus-color: var(--vscode-focusBorder, #9a6700);--b3-node-focus-opacity: .5;--b3-node-variable-hover-bg: var(--vscode-list-hoverBackground, rgba(9, 105, 218, .1));--b3-node-variable-active-hover-bg: rgba(255, 255, 255, .18);--b3-subtree-outline: var(--vscode-descriptionForeground, var(--vscode-panel-border, #6e7781));--b3-warning-text: var(--vscode-errorForeground, #cf222e);--b3-drop-before: var(--vscode-editorWarning-foreground, #9a6700);--b3-drop-child: var(--vscode-errorForeground, #cf222e);--b3-drag-source: var(--vscode-list-dropBackground, #fb8500);--b3-collapse-bg: var(--vscode-editorWidget-background, #ffffff);--b3-collapse-border: var(--vscode-panel-border, #8c959f);--b3-collapse-text: var(--vscode-descriptionForeground, #57606a)}body[data-webview-kind=inspector-sidebar][data-theme=dark]{--b3-panel-border: var( --vscode-sideBarSectionHeader-border, var(--vscode-sideBar-border, #2b2b2b) );--b3-panel-title: var(--vscode-sideBarTitle-foreground, var(--vscode-foreground, #cccccc))}body[data-webview-kind=inspector-sidebar][data-theme=light]{--b3-panel-border: var( --vscode-sideBarSectionHeader-border, var(--vscode-sideBar-border, #e5e5e5) );--b3-panel-title: var(--vscode-sideBarTitle-foreground, var(--vscode-foreground, #3c3c3c))}.b3-shell{height:100%}.b3-body{display:flex;flex-direction:row;min-height:0;flex:1}.b3-content{flex:1 1 0;width:0;min-height:0;padding:0;overflow:hidden;background:var(--b3-graph-bg)}.b3-sider{border-left:1px solid var(--b3-panel-border);overflow:hidden}.b3-sider-embedded.ant-layout-sider{min-width:320px!important;max-width:460px;height:100%;background:transparent!important}.b3-sider-embedded>.ant-layout-sider-children{height:100%;background:transparent}.b3-inspector{height:100%;display:flex;flex-direction:column}.b3-inspector-empty{height:100%;padding:20px 16px;text-align:center}.b3-inspector-header{padding:12px;border-bottom:1px solid var(--b3-panel-border)}.b3-inspector-header-row{min-width:0}.b3-inspector-banner{margin:12px 12px 0}.b3-inspector-header .ant-typography{font-size:18px;font-weight:600;line-height:1.35;color:var(--b3-panel-title)}.b3-inspector-content{--b3-inspector-content-padding: 16px;min-height:0;flex:1;overflow:auto;padding:var(--b3-inspector-content-padding)}.b3-inspector-skeleton-content{display:flex;flex-direction:column;gap:10px}.b3-inspector-skeleton-title.ant-skeleton.ant-skeleton-element,.b3-inspector-skeleton-title .ant-skeleton-input{width:120px}.b3-inspector-skeleton-row{display:grid;grid-template-columns:var(--b3-inspector-form-label-width, 110px) minmax(0,1fr);column-gap:8px;align-items:center}.b3-inspector-skeleton-label.ant-skeleton.ant-skeleton-element,.b3-inspector-skeleton-label .ant-skeleton-input{width:72px;justify-self:end}.b3-inspector-skeleton-field.ant-skeleton.ant-skeleton-element,.b3-inspector-skeleton-field .ant-skeleton-input{width:100%}.b3-inspector-skeleton-section.ant-skeleton.ant-skeleton-element,.b3-inspector-skeleton-section .ant-skeleton-input{width:96px;margin-top:4px}.b3-inspector-form .ant-form-item{margin-bottom:8px}.b3-inspector-form .ant-form-item-label{min-width:var(--b3-inspector-form-label-width, 110px);max-width:var(--b3-inspector-form-label-width, 110px);flex:0 0 var(--b3-inspector-form-label-width, 110px);padding-right:0}.b3-inspector-form .ant-form-item-label>label{width:100%;height:auto;min-height:32px;align-items:flex-start;justify-content:flex-end;color:var(--ant-color-text);line-height:1.35}.b3-form-label{display:inline-flex;align-items:flex-start;justify-content:flex-end;width:100%;max-width:100%;min-width:0;padding-top:calc((32px - 1.35em)/2)}.b3-form-label-text{min-width:0;flex:1 1 auto;text-align:right;white-space:normal;word-break:break-word;overflow-wrap:anywhere}.b3-form-required-mark{color:var(--ant-color-error);margin-right:4px}.b3-form-label-colon{flex:0 0 auto;padding-left:2px;white-space:nowrap}.b3-inspector-form .ant-form-item-control{min-width:0}.b3-inspector-form .ant-form-item-control-input,.b3-inspector-form .ant-form-item-control-input-content{min-width:0;width:100%}.b3-inspector-form .ant-form-item-explain{font-size:small;word-break:break-word}.b3-inspector-form .b3-section-divider.ant-divider-horizontal.ant-divider-with-text{margin-bottom:0}.b3-inspector-form .b3-section-divider+.ant-form-item,.b3-inspector-form .b3-section-divider+.b3-list-block,.b3-inspector-form .b3-section-divider+.b3-override-bar{margin-top:6px}.b3-section-title{margin:0;font-size:1em;font-weight:600}.b3-inspector-form .ant-select,.b3-inspector-form .ant-select-auto-complete,.b3-inspector-form .ant-input-number{width:100%}.b3-list-block{display:flex;flex-direction:column;row-gap:0}.b3-inspector .ant-btn.ant-btn-dashed{background:transparent}.b3-inspector .ant-btn.ant-btn-dashed:not(:disabled):not(.ant-btn-disabled):hover,.b3-inspector .ant-btn.ant-btn-dashed:not(:disabled):not(.ant-btn-disabled):focus-visible{background:var(--ant-color-fill-tertiary)}.b3-decl-group{margin-bottom:5px}.b3-subtree-path-row{margin-bottom:6px}.b3-decl-vars{display:flex;flex-direction:column;row-gap:2px}.b3-var-row,.b3-var-row-compact{width:100%}.b3-var-counter{display:flex;align-items:center;justify-content:flex-start;gap:4px;min-width:40px;max-width:40px;padding:0 6px 0 5px;cursor:pointer;color:var(--ant-color-text-secondary);background:var(--ant-color-fill-tertiary);border:1px solid var(--ant-color-border);border-right:0;border-radius:6px 0 0 6px}.b3-custom-type-badge{display:flex;align-items:center;justify-content:center;height:32px;flex:0 0 40px;min-width:40px;max-width:40px;padding:0 6px;color:var(--ant-color-text-secondary);background:var(--ant-color-fill-tertiary);border:1px solid var(--ant-color-border);border-right:0;border-radius:6px 0 0 6px;cursor:help;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:700;letter-spacing:.04em}.b3-custom-type-badge .codicon{font-size:16px}.b3-custom-type-badge.is-string{color:var(--ant-color-blue-3)}.b3-custom-type-badge.is-number{color:var(--ant-color-gold-3)}.b3-custom-type-badge.is-boolean{color:var(--ant-color-green-3)}.b3-custom-type-badge.is-invalid{color:var(--ant-color-error)}.b3-inline-remove{margin-top:10px;color:var(--ant-color-text-tertiary);cursor:pointer}.b3-inline-remove:hover{color:var(--ant-color-error)}.b3-inline-remove-compact{color:var(--ant-color-text-tertiary);cursor:pointer}.b3-inline-remove-compact:hover{color:var(--ant-color-error)}.b3-inline-action{color:var(--ant-color-text-tertiary);cursor:pointer}.b3-inline-action:hover{color:var(--ant-color-text)}.b3-row-spacer{width:14px}.b3-node-subtree-button{margin-top:12px}.b3-override-bar{position:relative}.b3-override-rail{position:absolute;top:0;left:calc(-1 * var(--b3-inspector-content-padding, 16px));bottom:0;width:6px;cursor:pointer;border-radius:0;background:var(--b3-override-bar)}.b3-markdown{padding:0 4px;margin-bottom:12px;color:var(--ant-color-text-secondary);font-size:13px;word-break:break-word}.b3-markdown code{padding:.15em .3em;border-radius:6px;background:color-mix(in srgb,var(--ant-color-fill) 72%,transparent);white-space:break-spaces}body[data-webview-kind=inspector-sidebar] .b3-inspector{overflow-x:auto;overflow-y:hidden}body[data-webview-kind=inspector-sidebar] .b3-inspector-header,body[data-webview-kind=inspector-sidebar] .b3-inspector-banner,body[data-webview-kind=inspector-sidebar] .b3-inspector-content,body[data-webview-kind=inspector-sidebar] .b3-inspector-skeleton-content{min-width:var(--b3-inspector-sidebar-min-width)}body[data-webview-kind=inspector-sidebar] .b3-inspector-form.ant-form:not(.ant-form-inline) .ant-form-item{flex-wrap:nowrap}body[data-webview-kind=inspector-sidebar] .b3-inspector-form.ant-form:not(.ant-form-inline) .ant-form-item .ant-form-item-label{padding:0!important;margin:0!important}body[data-webview-kind=inspector-sidebar] .b3-inspector-form .ant-form-item:last-child{margin-bottom:0!important}body[data-webview-kind=inspector-sidebar] .b3-inspector-form .b3-section-divider+.ant-form-item,body[data-webview-kind=inspector-sidebar] .b3-inspector-form .b3-section-divider+.b3-list-block,body[data-webview-kind=inspector-sidebar] .b3-inspector-form .b3-section-divider+.b3-override-bar{margin-top:4px}.b3-search-overlay{position:absolute;top:0;right:0;z-index:100;width:100%;justify-content:flex-end;padding:10px 10px 0 0}.b3-search-box{align-items:center;padding:4px 10px;border-left:3px solid var(--b3-search-border-accent);border-radius:4px;background:var(--b3-search-bg);box-shadow:0 0 8px 2px var(--b3-search-shadow)}.b3-search-input{width:220px}.b3-search-input.ant-input-affix-wrapper.ant-input-affix-wrapper-sm{border-radius:2px;padding-top:1px;padding-bottom:1px}.b3-search-suffix{align-items:center}.b3-search-counter{min-width:40px;padding:0 10px 0 5px;color:var(--b3-text-muted)}.b3-search-filter:hover{background-color:var(--b3-filter-hover-bg)!important}.b3-search-filter-selected{background-color:var(--b3-filter-selected-bg)!important}.b3-search-filter-selected:hover{background-color:var(--b3-filter-selected-hover-bg)!important}.b3-graph-shell{position:relative;width:100%;height:100%;min-height:0}.b3-context-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;font-size:17px;line-height:1}.b3-graph{position:relative;width:100%;height:100%;min-height:0;cursor:grab;-webkit-user-select:none;user-select:none;background:var(--b3-graph-bg)}.b3-graph.is-panning{cursor:grabbing}.b3-graph-viewport{position:relative;width:100%;height:100%;overflow:hidden}.b3-graph-world{position:absolute;left:0;top:0;transform-origin:0 0}.b3-graph-edges{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none;shape-rendering:geometricPrecision}.b3-graph-edges path{fill:none;stroke:var(--b3-graph-edge)}.b3-graph-nodes{position:absolute;top:0;right:0;bottom:0;left:0}.b3-graph-node{--b3-node-scale: 1;box-sizing:border-box;position:absolute;left:0;top:0;overflow:visible}.b3-node-floating-id{position:absolute;top:calc(50% + 2px * var(--b3-node-scale));right:calc(100% + 3px * var(--b3-node-scale));z-index:1;color:var(--b3-node-id-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:calc(20px * var(--b3-node-scale));font-weight:700;line-height:1;white-space:nowrap;pointer-events:none;transform:translateY(-50%) scale(calc(1 / var(--b3-node-scale)));transform-origin:right center;text-shadow:0 0 1px var(--b3-node-id-stroke),0 1px 0 var(--b3-node-id-stroke),1px 0 0 var(--b3-node-id-stroke),-1px 0 0 var(--b3-node-id-stroke),0 -1px 0 var(--b3-node-id-stroke)}.b3-node-floating-id.is-gray{color:var(--b3-node-gray-text)}.b3-node{--b3-node-accent: #707070;box-sizing:border-box;position:relative;width:calc(100% * var(--b3-node-scale));height:calc(100% * var(--b3-node-scale));overflow:visible;isolation:isolate;transform:scale(calc(1 / var(--b3-node-scale)));transform-origin:0 0;border-width:calc(2px * var(--b3-node-scale));border-style:solid;border-color:var(--b3-node-accent);border-radius:calc(4px * var(--b3-node-scale));background:var(--b3-node-accent);transition:border-color .12s ease,box-shadow .12s ease,opacity .15s ease}.b3-node:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:0;border-radius:calc(14px * var(--b3-node-scale));background:transparent;box-shadow:0 0 0 0 transparent;pointer-events:none;transition:opacity .12s ease,box-shadow .12s ease}.b3-node:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;transition:opacity .12s ease}.b3-node:hover,.b3-node.is-selected{box-shadow:none}.b3-node.is-selected:before{opacity:1;box-shadow:0 0 0 calc(10px * var(--b3-node-scale)) color-mix(in srgb,var(--b3-node-accent) var(--b3-node-selection-strength),var(--b3-node-selection-base))}.b3-node.is-focused{box-shadow:0 0 0 calc(3px * var(--b3-node-scale)) var(--b3-node-focus-ring)}.b3-node.is-drag-source{opacity:.7}.b3-node.is-drop-before,.b3-node.is-drop-after{border-color:var(--b3-drop-before)}.b3-node.is-drop-child{border-color:var(--b3-drop-child)}.b3-node.is-drop-before:after,.b3-node.is-drop-after:after,.b3-node.is-drop-child:after{opacity:1}.b3-node.is-drop-before:after{top:0;right:0;bottom:50%;left:0;background:color-mix(in srgb,var(--b3-drop-before) 22%,transparent)}.b3-node.is-drop-after:after{top:50%;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--b3-drop-before) 22%,transparent)}.b3-node.is-drop-child:after{top:0;right:0;bottom:0;left:50%;background:color-mix(in srgb,var(--b3-drop-child) 24%,transparent)}.b3-node.is-gray{opacity:.45}.b3-node.has-var-hit{box-shadow:none}.b3-node .ant-card-body{padding:0}.b3-node-shell{box-sizing:border-box;display:grid;grid-template-columns:calc(40px * var(--b3-node-scale)) minmax(0,1fr);height:100%;min-height:calc(60px * var(--b3-node-scale));overflow:hidden;border-radius:calc(2px * var(--b3-node-scale))}.b3-node-icon-rail{display:flex;align-items:center;justify-content:center;background:transparent}.b3-node-icon{width:calc(30px * var(--b3-node-scale));height:calc(30px * var(--b3-node-scale));object-fit:contain;pointer-events:none}.b3-node-content{box-sizing:border-box;height:100%;min-width:0;background:var(--b3-node-content-bg);border-radius:0 calc(2px * var(--b3-node-scale)) calc(2px * var(--b3-node-scale)) 0;padding:calc(2px * var(--b3-node-scale)) calc(8px * var(--b3-node-scale)) calc(6px * var(--b3-node-scale)) calc(6px * var(--b3-node-scale))}.b3-node-header{display:flex;align-items:flex-start;justify-content:space-between;gap:calc(4px * var(--b3-node-scale));min-height:calc(20px * var(--b3-node-scale))}.b3-node-title{overflow:hidden;color:var(--b3-node-text);font-size:calc(14px * var(--b3-node-scale));font-weight:700;line-height:calc(20px * var(--b3-node-scale));text-overflow:ellipsis;white-space:nowrap}.b3-node-header-icons{display:flex;align-items:flex-start;gap:calc(2px * var(--b3-node-scale));flex:0 0 auto}.b3-node-flag-icon{width:calc(16px * var(--b3-node-scale));height:calc(16px * var(--b3-node-scale));object-fit:contain;margin-top:calc(4px * var(--b3-node-scale));pointer-events:none}.b3-node-status-icon{width:calc(20px * var(--b3-node-scale));height:calc(20px * var(--b3-node-scale));object-fit:contain;flex:0 0 auto;margin-top:calc(3px * var(--b3-node-scale));pointer-events:none}.b3-node-divider{height:calc(1px * var(--b3-node-scale));margin:0 0 calc(5px * var(--b3-node-scale));background:var(--b3-node-divider)}.b3-node-detail-row{display:flex;align-items:flex-start;gap:0;min-width:0;padding:0;margin:0;color:var(--b3-node-text);font-size:calc(12px * var(--b3-node-scale));line-height:calc(20px * var(--b3-node-scale));border-radius:calc(4px * var(--b3-node-scale))}.b3-node-detail-row.is-active{color:var(--b3-node-highlight-text);background:var(--b3-node-highlight-bg)}.b3-node-detail-row.is-subtle{color:var(--b3-node-muted)}.b3-node-detail-row.is-warning{color:var(--b3-warning-text)}.b3-node-detail-row.is-mark{font-weight:700}.b3-node-detail-label{flex:0 0 auto;color:inherit;font-weight:400}.b3-node-detail-value{min-width:0;flex:1;word-break:break-word}.b3-node-detail-row.is-active .b3-node-detail-label,.b3-node-detail-row.is-active .b3-node-detail-value,.b3-node-detail-row.is-active .b3-node-json-punctuation{color:inherit}.b3-node-detail-row.is-mark .b3-node-detail-value{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.b3-node-detail-row.is-mark .b3-node-detail-label{font-weight:700}.b3-node-detail-row.is-subtle .b3-node-detail-label{color:var(--b3-node-muted)}.b3-node-detail-row.is-warning .b3-node-detail-label{color:var(--b3-warning-text)}.b3-node-variable-button{padding:0;margin:0;color:inherit;font:inherit;font-weight:inherit;line-height:inherit;background:transparent;border:0;border-radius:calc(2px * var(--b3-node-scale));cursor:pointer}.b3-node-variable-button:hover{color:inherit;background:var(--b3-node-variable-hover-bg)}.b3-node-variable-button.is-active{color:inherit;font-weight:inherit}.b3-node-detail-row.is-active .b3-node-variable-button:hover{background:var(--b3-node-variable-active-hover-bg)}.b3-node-json-punctuation{color:inherit}.b3-node.is-composite{--b3-node-accent: #34d800}.b3-node.is-decorator{--b3-node-accent: #b2eb35}.b3-node.is-condition{--b3-node-accent: #f72585}.b3-node.is-action{--b3-node-accent: #1769dd}.b3-node.is-other{--b3-node-accent: #707070}.b3-node.is-error{--b3-node-accent: #ff0000}.b3-loading{height:100%}