cardbuddy 0.7.0 → 0.8.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.
- package/README.md +21 -0
- package/dist/preview-editor/assets/index-BQKzMPBq.js +79 -0
- package/dist/preview-editor/assets/index-D3zp47Dg.css +1 -0
- package/dist/preview-editor/index.html +2 -2
- package/dist/server-core/codeBridge.js +359 -0
- package/dist/server-core/index.js +8 -2
- package/dist/standalone.js +18 -3
- package/dist/vendored/App.vue +17 -13
- package/dist/vendored/api.js +102 -32
- package/dist/vendored/components/ApiCallPanel.vue +13 -1
- package/dist/vendored/components/ApiPayloadTree.vue +34 -1
- package/dist/vendored/components/ComponentPalette.vue +45 -38
- package/dist/vendored/components/DebugPanel.vue +146 -39
- package/dist/vendored/components/EventEditor.vue +27 -3
- package/dist/vendored/components/LogValue.vue +2 -1
- package/dist/vendored/components/PropControl.vue +6 -2
- package/dist/vendored/components/setters/SetCode.vue +111 -3
- package/dist/vendored/styles/app.css +366 -82
- package/dist/vendored/styles/card-gallery.css +3 -2
- package/dist/vendored/styles/dropdown.css +3 -0
- package/dist/vendored/styles/node-inspector.css +176 -119
- package/dist/vendored/styles/setters.css +91 -2
- package/dist/vendored/styles/structure-tree.css +25 -12
- package/package.json +1 -1
- package/dist/preview-editor/assets/index-BlscexDE.js +0 -79
- package/dist/preview-editor/assets/index-dlbSPb5W.css +0 -1
package/README.md
CHANGED
|
@@ -72,6 +72,7 @@ cardbuddy --preview # 等价短参 -p
|
|
|
72
72
|
| `DSL_EDITOR_SRC` | _(空)_ | 内核开发用:指向本地编辑器 `preview/` 源码,绕过 vendored 快照调试。 |
|
|
73
73
|
| `DSL_DEV_PREVIEW` | `0` | 设为 `1` 等价于 `--preview`:同端口托管打包后的编辑器前端并自动打开浏览器。 |
|
|
74
74
|
| `DSL_PREVIEW_ROOT` | _(空)_ | 自定义 preview 前端构建产物目录(默认包内 `dist/preview-editor/`,回退 `cwd/dist`)。 |
|
|
75
|
+
| `DSL_EDITOR_CMD` | _(空)_ | 代码桥外部编辑器命令(如 `code` / `cursor` / 带参数整串),按 shell 语义执行并追加临时文件路径;缺省按平台拉起 VSCode(mac `open -a`、win `cmd /s /c "code"`、linux `code`),CLI 缺失再回退 `vscode://` 协议。 |
|
|
75
76
|
|
|
76
77
|
---
|
|
77
78
|
|
|
@@ -110,9 +111,29 @@ DSL_DEV_HTTPS=1 cardbuddy
|
|
|
110
111
|
| `GET /__history` | 自包含 | 编辑历史 |
|
|
111
112
|
| `GET /__screenshot/:id` | 自包含(需 Playwright + 系统 Chrome)| 无头截图 |
|
|
112
113
|
| `GET /__events` (SSE) | 自包含 | `cards-changed` 实时推送 |
|
|
114
|
+
| `POST /__code-bridge` | 自包含 | 代码桥:代码写临时 js 并拉起外部编辑器,返回 `{ id, file }` |
|
|
115
|
+
| `GET /__code-bridge/:id` | 自包含 | 代码桥:拉取外部保存后的最新代码(LF 归一) |
|
|
116
|
+
| `POST /__code-bridge/:id/heartbeat` | 自包含 | 代码桥:会话心跳(前端 5s 一次) |
|
|
117
|
+
| `DELETE /__code-bridge/:id` | 自包含 | 代码桥:结束会话并删除临时文件 |
|
|
113
118
|
|
|
114
119
|
> **FinMall 凭据只在本机**:`/__sync` `/__save` `/__preview` 由本地服务代理 FinMall,凭据存于本机 `skills/finmall-card-sync` 与 `.env.finmall`,公网前端永不接触。
|
|
115
120
|
|
|
121
|
+
### VSCode 代码桥(事件面板代码编辑区)
|
|
122
|
+
|
|
123
|
+
事件配置面板的代码编辑区底栏右侧有 VSCode 图标:点击后把当前代码片段写到
|
|
124
|
+
`os.tmpdir()/cardbuddy-code-bridge/<session>.js` 并用外部编辑器打开;编辑器内**保存**即经
|
|
125
|
+
文件监听 + SSE(`code-bridge-changed`)实时回写编辑区(桥接期间 Web 编辑区只读,避免双向冲突)。
|
|
126
|
+
|
|
127
|
+
- **清除语义**:会话结束 = 再次点击图标断开 / 面板关闭 / 组件卸载(前端 `DELETE`),
|
|
128
|
+
或心跳 TTL 兜底(20s 无心跳即删,覆盖关浏览器 / 崩溃);服务启动时清扫 >24h 残留。
|
|
129
|
+
VSCode 标签页关闭事件不装扩展拿不到,故不以「关标签」为清除时机。
|
|
130
|
+
- **回声环防护**:服务端写入哈希去重(忽略自写回声);前端回写用 `updateCode(code, false)`
|
|
131
|
+
不触发 onUpdate,不会把收到的内容再写回临时文件。
|
|
132
|
+
- 换编辑器:`DSL_EDITOR_CMD=cursor` 或任意命令整串(按 shell 语义执行,开发者自配环境变量)。
|
|
133
|
+
- **拉起方式**(任一级 spawn 失败或非 0 退出自动降下一级):
|
|
134
|
+
win `code "<file>"` → `vscode://` 协议;mac `open -a "Visual Studio Code"` → `code` CLI → `vscode://` 协议;
|
|
135
|
+
linux `code` → `xdg-open vscode://`。文件监听 win/mac/linux 均走 chokidar(原子保存改名覆盖可捕)。
|
|
136
|
+
|
|
116
137
|
---
|
|
117
138
|
|
|
118
139
|
## 依赖:FinMall skill
|