From 426b1bef8b3baff928266c9c403deb66c64c2a92 Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Fri, 8 Aug 2025 22:17:21 +0800 Subject: [PATCH] feat(ui): workflow designer node drawer base --- ui/package-lock.json | 634 +++++++++--------- ui/package.json | 16 +- ui/src/components/DrawerForm.tsx | 20 +- ui/src/components/access/AccessEditDrawer.tsx | 25 +- .../certificate/CertificateDetailDrawer.tsx | 20 +- .../workflow/WorkflowRunDetailDrawer.tsx | 20 +- .../workflow/designer/NodeDrawer.tsx | 175 +++++ .../workflow/designer/NodeRender.tsx | 10 +- .../workflow/designer/nodes/BusinessNode.tsx | 10 + .../workflow/designer/nodes/ConditionNode.tsx | 8 + .../workflow/designer/nodes/EndNode.tsx | 1 + .../workflow/designer/nodes/StartNode.tsx | 1 + .../workflow/designer/nodes/TryCatchNode.tsx | 2 + .../workflow/designer/nodes/_shared.tsx | 10 +- .../workflow/designer/nodes/typings.ts | 4 +- ui/src/global.css | 5 + ui/src/i18n/locales/en/nls.workflow.json | 1 + ui/src/i18n/locales/zh/nls.workflow.json | 1 + .../pages/workflows/WorkflowDetailDesign.tsx | 15 +- 19 files changed, 628 insertions(+), 350 deletions(-) create mode 100644 ui/src/components/workflow/designer/NodeDrawer.tsx diff --git a/ui/package-lock.json b/ui/package-lock.json index 5fdc5ff89..a335601bf 100644 --- a/ui/package-lock.json +++ b/ui/package-lock.json @@ -12,9 +12,9 @@ "@codemirror/lang-yaml": "^6.1.2", "@codemirror/language": "^6.11.2", "@codemirror/legacy-modes": "^6.5.1", - "@flowgram.ai/document": "^0.3.3", - "@flowgram.ai/fixed-layout-editor": "^0.3.3", - "@flowgram.ai/minimap-plugin": "^0.3.3", + "@flowgram.ai/document": "^0.3.4", + "@flowgram.ai/fixed-layout-editor": "^0.3.4", + "@flowgram.ai/minimap-plugin": "^0.3.4", "@tabler/icons-react": "^3.34.1", "@uiw/codemirror-extensions-basic-setup": "^4.24.2", "@uiw/codemirror-theme-vscode": "^4.24.2", @@ -35,9 +35,9 @@ "react-copy-to-clipboard": "^5.1.0", "react-dom": "^18.3.1", "react-i18next": "^15.6.1", - "react-router-dom": "^7.7.1", + "react-router-dom": "^7.8.0", "tailwind-merge": "^3.3.1", - "zod": "^4.0.14", + "zod": "^4.0.15", "zustand": "^5.0.7" }, "devDependencies": { @@ -57,14 +57,14 @@ "eslint-import-resolver-typescript": "^4.4.4", "eslint-plugin-better-tailwindcss": "^3.7.4", "eslint-plugin-import": "^2.32.0", - "eslint-plugin-prettier": "^5.5.3", + "eslint-plugin-prettier": "^5.5.4", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.20", - "fs-extra": "^11.3.0", + "fs-extra": "^11.3.1", "prettier": "^3.6.2", "tailwindcss": "^4.1.11", "typescript": "^5.8.3", - "typescript-eslint": "^8.38.0", + "typescript-eslint": "^8.39.0", "vite": "^6.3.5" } }, @@ -2785,12 +2785,12 @@ } }, "node_modules/@flowgram.ai/background-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/background-plugin/-/background-plugin-0.3.3.tgz", - "integrity": "sha512-lI6wLXUbaTxNhPwHlkkRLwD+9J79m7wogfYmpK+fkM3a1FtyK9nZy340LtUKHwQhEvdgTZK/7l8uIgLVvJXQUA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/background-plugin/-/background-plugin-0.3.4.tgz", + "integrity": "sha512-fGJZIIaGVQwVs0fTd5dHjRnxQEzpZqtqPaHfyh40CX33x7NjtgPIPwUoNMkVoQ7+IFJAvNxShqiVAbkTbbxdYQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -2800,11 +2800,11 @@ } }, "node_modules/@flowgram.ai/command": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/command/-/command-0.3.3.tgz", - "integrity": "sha512-8TcCXlsbqzu/JgqxS8JKImwRcqXiiMEHZdy/LBKAaq4xaKqdv7UNweZpYugoUvMQwCqEsjje/wOAhHlYkacqhA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/command/-/command-0.3.4.tgz", + "integrity": "sha512-Vl/eX/mt78UThjpiU0iVD7BGNU/zus3lOrlGNt+fOjdr9QsOtDu6R4jjUA/6lxWGMuiEkVhFupILEhK3kVe9zA==", "dependencies": { - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -2814,12 +2814,12 @@ } }, "node_modules/@flowgram.ai/core": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/core/-/core-0.3.3.tgz", - "integrity": "sha512-rmJ9OnBSBdSrCNtt46LHem//Tu8UxilSC9EYseER+r0y5UPFMmNpet39ptJCfbo73Az5hIMu3nhFb6N1HpnVUw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/core/-/core-0.3.4.tgz", + "integrity": "sha512-bs0UwHNkc9pprx3R3HiOGRL9BmDuoxMCdAZH+mrJecq17axzqt2X+qUNtCnji7CHVHw/r11oJy2DsJot52iaIg==", "dependencies": { - "@flowgram.ai/command": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/command": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "@phosphor/messaging": "^1.3.0", "@tweenjs/tween.js": "^18", "clsx": "^1.1.1", @@ -2859,12 +2859,12 @@ } }, "node_modules/@flowgram.ai/document": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/document/-/document-0.3.3.tgz", - "integrity": "sha512-AwOuHflCTNyXFUNhY6JR3fo/ajYDNRd0wtZYvrKaCGgCbqQNzyQ3LiNAu1B/GBP+uSR/4ZeEIq7jOlsE/lr+CA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/document/-/document-0.3.4.tgz", + "integrity": "sha512-tLftf4Z90EGBEaweYGczE5RZLK0DGAQ6Z9QB3BANpf1QjzYeKZNcucDLqJk6f/WqInjVzYDqBt0me9O8/FpEdQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "nanoid": "^4.0.2", @@ -2889,29 +2889,29 @@ } }, "node_modules/@flowgram.ai/editor": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/editor/-/editor-0.3.3.tgz", - "integrity": "sha512-k/37uzRoVEDeEQZ6hOLAlgQsU0FD5WuUYpoM3XurSpnRoh+ox1Tmaxn1DFjggNmfsfqDwNLOl0pUvAMJXqzmKA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/editor/-/editor-0.3.4.tgz", + "integrity": "sha512-MTcE33V48U44aJ2EDpGpsc4H/ve7s24JKy/xK16sT1RhkN8YqYgbR/W1l8ftQ/ofudMgbnrhYqUK6qVGf7HYNw==", "dependencies": { - "@flowgram.ai/background-plugin": "0.3.3", - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/group-plugin": "0.3.3", - "@flowgram.ai/history": "0.3.3", - "@flowgram.ai/history-node-plugin": "0.3.3", - "@flowgram.ai/i18n-plugin": "0.3.3", - "@flowgram.ai/materials-plugin": "0.3.3", - "@flowgram.ai/node": "0.3.3", - "@flowgram.ai/node-core-plugin": "0.3.3", - "@flowgram.ai/node-variable-plugin": "0.3.3", - "@flowgram.ai/playground-react": "0.3.3", - "@flowgram.ai/redux-devtool-plugin": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/shortcuts-plugin": "0.3.3", - "@flowgram.ai/utils": "0.3.3", - "@flowgram.ai/variable-plugin": "0.3.3", + "@flowgram.ai/background-plugin": "0.3.4", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/group-plugin": "0.3.4", + "@flowgram.ai/history": "0.3.4", + "@flowgram.ai/history-node-plugin": "0.3.4", + "@flowgram.ai/i18n-plugin": "0.3.4", + "@flowgram.ai/materials-plugin": "0.3.4", + "@flowgram.ai/node": "0.3.4", + "@flowgram.ai/node-core-plugin": "0.3.4", + "@flowgram.ai/node-variable-plugin": "0.3.4", + "@flowgram.ai/playground-react": "0.3.4", + "@flowgram.ai/redux-devtool-plugin": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/shortcuts-plugin": "0.3.4", + "@flowgram.ai/utils": "0.3.4", + "@flowgram.ai/variable-plugin": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -2921,13 +2921,13 @@ } }, "node_modules/@flowgram.ai/fixed-drag-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-drag-plugin/-/fixed-drag-plugin-0.3.3.tgz", - "integrity": "sha512-co+Nrc/eWDIBo0mdosZdntrrnSp/LHGrDYvsRZ1JQ+M+2GZT67VntegJsetewfjjqFZm4BrgnQn3uUSTTSfp2w==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-drag-plugin/-/fixed-drag-plugin-0.3.4.tgz", + "integrity": "sha512-yNz6giVOFAe1fZpqyqvupmRE78mWftoQmz9L+fXTaYJjmGPgTi5KlwwncoCM8xN7pJ5Dq30VXF5AlYmELThjBQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -2937,29 +2937,29 @@ } }, "node_modules/@flowgram.ai/fixed-history-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-history-plugin/-/fixed-history-plugin-0.3.3.tgz", - "integrity": "sha512-zSt5qtLcz3NVvopMIGqj3L9Fh8b1FRftOUlDkXmW7xoubkavohkwwMJeox0Pt0mo+rQVc+LSLURxQvgiqf8mhA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-history-plugin/-/fixed-history-plugin-0.3.4.tgz", + "integrity": "sha512-L9nKjBH6QUZc9jIfaXmuNOt4fQXYfbB4gS+Ife7G0o2IJteLYUm0i7D02ohRt/B8OYXVL/TUqWLWtOrUcgtPBg==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/history": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/history": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" } }, "node_modules/@flowgram.ai/fixed-layout-core": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-layout-core/-/fixed-layout-core-0.3.3.tgz", - "integrity": "sha512-AQC5qCe13IOE+Gy/KX8qBbW7lGbPdEH0lOi+6kLlWOwMsYEa3FHz6ZquwgsFBU5Ym0ZQ3sRkKn7kilJ3B6F41g==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-layout-core/-/fixed-layout-core-0.3.4.tgz", + "integrity": "sha512-gFnHCBjVTJc5V0UC5Y7KNLMhQuXfpuPItpdwMQYre8xOicxuStdll4SIzBPFm+ihPnO4ymymKeWdl2cAHP1zYg==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -2970,19 +2970,19 @@ } }, "node_modules/@flowgram.ai/fixed-layout-editor": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-layout-editor/-/fixed-layout-editor-0.3.3.tgz", - "integrity": "sha512-FnIDbi26qiWNI8NVU+9HOW/1RimpBQYRvmqGckHDTVOyAD6foQAnokIpm1yTfxwr+KHstCEQuhPeSkzAeUdOXA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/fixed-layout-editor/-/fixed-layout-editor-0.3.4.tgz", + "integrity": "sha512-vgCUiPHCEWdsnuM97SGAPji04ld3QurLaHJ8AexNmYXHW2vQn27RFATaSmX54rD4K8SE7/hcgIm9aJQQ8cr+Ig==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/editor": "0.3.3", - "@flowgram.ai/fixed-drag-plugin": "0.3.3", - "@flowgram.ai/fixed-history-plugin": "0.3.3", - "@flowgram.ai/fixed-layout-core": "0.3.3", - "@flowgram.ai/history": "0.3.3", - "@flowgram.ai/reactive": "0.3.3", - "@flowgram.ai/select-box-plugin": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/editor": "0.3.4", + "@flowgram.ai/fixed-drag-plugin": "0.3.4", + "@flowgram.ai/fixed-history-plugin": "0.3.4", + "@flowgram.ai/fixed-layout-core": "0.3.4", + "@flowgram.ai/history": "0.3.4", + "@flowgram.ai/reactive": "0.3.4", + "@flowgram.ai/select-box-plugin": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -2992,12 +2992,12 @@ } }, "node_modules/@flowgram.ai/form": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/form/-/form-0.3.3.tgz", - "integrity": "sha512-asRhRnzuT5sOrx2kUA4aAy5Oln6LVOjQO+o9ZJkJVLYK06LXXIAMa36Vx56eHBffkmyjk+9nH6G7EKLDgzNsAg==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/form/-/form-0.3.4.tgz", + "integrity": "sha512-3566t7gDGKodpDlo6tnq0IjmIxysqRgf+aq0pgVBeJemalgameHXCEqee8nq7TEemE1fqA5ivHW1q4bdbYouiw==", "dependencies": { - "@flowgram.ai/reactive": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/reactive": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "fast-equals": "^2.0.0", "lodash": "^4.17.21", "nanoid": "^4.0.2" @@ -3008,13 +3008,13 @@ } }, "node_modules/@flowgram.ai/form-core": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/form-core/-/form-core-0.3.3.tgz", - "integrity": "sha512-n4HwCA7CL3ciUQCLZEn3qXXOxHrwPpIn//WYcA57QvjbsnVkr5+ilZrPsFM1EtDoHRVJ//a9KZ8IwByQXa3XsA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/form-core/-/form-core-0.3.4.tgz", + "integrity": "sha512-MNDO2Opl77vgybTJ9R4NDmkRSGXuMopdQei7MC4vckYIqxTQiCbn/NxplFjwa3KpXBdMABjdlRT9ROWzk8kYKA==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -3042,16 +3042,16 @@ } }, "node_modules/@flowgram.ai/free-layout-core": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/free-layout-core/-/free-layout-core-0.3.3.tgz", - "integrity": "sha512-rrOa2jOCp+fZsAPNBalAaRBy5yfpbA40r8SaJy2464pqBoWOc6HJxSN5sJEnPLsou0eq9KqfifidRQ/ck+T20Q==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/free-layout-core/-/free-layout-core-0.3.4.tgz", + "integrity": "sha512-DU+ZPYvtKEF0DiXJw+QSDPPhbs5Wl6vR7bKHChweveKzXqBD3glCBOYl3tWFN92Jkvequ9lj7glmngTj8KsT/Q==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/node": "0.3.3", - "@flowgram.ai/reactive": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/node": "0.3.4", + "@flowgram.ai/reactive": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash-es": "^4.17.21", "nanoid": "^4.0.2", @@ -3080,14 +3080,14 @@ } }, "node_modules/@flowgram.ai/group-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/group-plugin/-/group-plugin-0.3.3.tgz", - "integrity": "sha512-rJrI5I+f0c2MKLNORM8NvvxHrMqYnU30ytkJOeCWvhzbOKBbvjs078lX6FnzNPLk/oNhLxRfGs7jF26Y2/vnxw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/group-plugin/-/group-plugin-0.3.4.tgz", + "integrity": "sha512-rqUo7PYhnaRousBIlQIP65JOjN65ssf6GoifkR1xLEVKhNimdVe6A0pGQ5QfUdCAJy/CgXW+Z1MVGLU1vGouLQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -3097,12 +3097,12 @@ } }, "node_modules/@flowgram.ai/history": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/history/-/history-0.3.3.tgz", - "integrity": "sha512-GivNuR89Y56bR4nuJ9b2Bl5zMfolRie9GgvlpUdMJeMJixozFinNNZsPvGYtdvtCQs2rNg0cB4gMY6tR2b4QQg==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/history/-/history-0.3.4.tgz", + "integrity": "sha512-Q72BwZtAeTBS2QGx12qM+3vdx4COG+Lj8asWrebO9Af1FTMJzqyn1OgwkUfywn6XW3qowb7I+w1daedUZLnDhw==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "nanoid": "^4.0.2", @@ -3110,17 +3110,17 @@ } }, "node_modules/@flowgram.ai/history-node-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/history-node-plugin/-/history-node-plugin-0.3.3.tgz", - "integrity": "sha512-2yVPcvUdtt48Ryu/hKWX7vnlyl2cIIJtIcjOIvV4IT5PJe7AAPAuUHOWc58GrWhDPphNYmXWJPXPCXpDRHRQaQ==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/history-node-plugin/-/history-node-plugin-0.3.4.tgz", + "integrity": "sha512-yLqU7l7YVbWVvXBWRlUaGAVxDm5KyKVjIcCPfSm4roIPyS96+SElRpj4949emucW38UtstBVsNnpFZ5WV9EStw==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/history": "0.3.3", - "@flowgram.ai/node": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/history": "0.3.4", + "@flowgram.ai/node": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -3149,32 +3149,32 @@ } }, "node_modules/@flowgram.ai/i18n": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/i18n/-/i18n-0.3.3.tgz", - "integrity": "sha512-6PYb8gmR260DzDx4J7nQ4i1DpT5Pguzd4yi/aUt7Bd4ABRO8E9LEQPJ//3QoJbKMFSchQJtXaqudcNxsafWjUw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/i18n/-/i18n-0.3.4.tgz", + "integrity": "sha512-SLn7A6x/bnuLqAZo1R4QGZR/i7Pex6/48AW0rokUgair9qm3sMpnX82DCltjG4GbddiKeUPkJLv9KLb7XaAN5Q==", "dependencies": { - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/utils": "0.3.4", "i18n-js": "^4.5.1" } }, "node_modules/@flowgram.ai/i18n-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/i18n-plugin/-/i18n-plugin-0.3.3.tgz", - "integrity": "sha512-Sto5w4LJZOdhygPUcWvGqHMTdLoHt7qCWwe2d16LUT24n8bsoHFtukDNDDB5Lq5Abg/C3BkJRvf+Q+mPy+3rBg==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/i18n-plugin/-/i18n-plugin-0.3.4.tgz", + "integrity": "sha512-XB5uGA+R5d2lbLT7jR8FCz8cguGXxVfE1CFk1KxkG9nCCvlv5ZT1kz8/Lcn1DQkALpK1LOElqCax2YG7vHhYXg==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/i18n": "0.3.3" + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/i18n": "0.3.4" } }, "node_modules/@flowgram.ai/materials-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/materials-plugin/-/materials-plugin-0.3.3.tgz", - "integrity": "sha512-AQr3630xaFRv+OXaUIquCHfQYvo2nYgkz961QuNSg4wjpk6hy0zulwrlZ0CEyLH6mfcuCix5l0AXW0IY/fdsGw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/materials-plugin/-/materials-plugin-0.3.4.tgz", + "integrity": "sha512-3voP3+AH0QnJdroh5GxLOI/JFajYaUVuCPioWC9paHJv8Jp3KBxjbq68HWMEhT37y5yuMFyRH7G62fp9GdMLGg==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -3185,14 +3185,14 @@ } }, "node_modules/@flowgram.ai/minimap-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/minimap-plugin/-/minimap-plugin-0.3.3.tgz", - "integrity": "sha512-BI4hvASrMNhgYNNgDG+Khh3X87fB6LswUPqzzq7X33NBlpKwL3ot663BjFAgWsyCTJsa2WaLuMv2o/Cn2P9ayw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/minimap-plugin/-/minimap-plugin-0.3.4.tgz", + "integrity": "sha512-iqy4VPqOee1HQwYtp659i8xWWCaHYiBK8EOOcfxhDonhSwXKTm+NxfcLFUUzTvEwG54yqMcxfgXjTX0YeDsdKA==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -3204,15 +3204,15 @@ } }, "node_modules/@flowgram.ai/node": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/node/-/node-0.3.3.tgz", - "integrity": "sha512-JZ4UqgefTdS1FI9OuXB/B/pQVwtJK4t15IqBN7NSSTElqcon7Wk6GXZKlqnt/Pz00jwjmJyMDImtspjQ8WW1LA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/node/-/node-0.3.4.tgz", + "integrity": "sha512-r/21XzWZIk7YKWkEF1vimv2jPLYQmsdh0qXfO7sYBwqIH2CrcwPAtH4nVNkvZ/EjUf2q7ZoXc1Ur6MI3IFI+EQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "nanoid": "^4.0.2", @@ -3224,16 +3224,16 @@ } }, "node_modules/@flowgram.ai/node-core-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/node-core-plugin/-/node-core-plugin-0.3.3.tgz", - "integrity": "sha512-OwKuAN/+BtuPnkZNVlUQa9JIGtqjJSUebvH7/Je9z/AgZz0uGNu3LlgCyCj0s18E1xSpwgHskhu9yNr/8XuROw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/node-core-plugin/-/node-core-plugin-0.3.4.tgz", + "integrity": "sha512-aGYp0tfSwFsz4qYTXD55Rgpdt5kUM2aus/5ZKfVbLpvNjGJis7lYbwvlLy3RwEXQActyHaEV+YEIGqcQ14hZXA==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/node": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/node": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -3244,16 +3244,16 @@ } }, "node_modules/@flowgram.ai/node-variable-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/node-variable-plugin/-/node-variable-plugin-0.3.3.tgz", - "integrity": "sha512-5LO1LbV7FrXKF//UJgJamnGyqoQwOIYtUDWofSma2FknIhBWoR+1vx0PuQqg0KCbO21hk4trUuQ1YgMjU4Q/CQ==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/node-variable-plugin/-/node-variable-plugin-0.3.4.tgz", + "integrity": "sha512-u4QGhxpGKTy+2FC/fO6FzCf+JdgFbcT4WDJymlRv7KgeGWSlAOX1WC2ZgmfwBMSbRcpevJe7vUmUrP5RTSN8nA==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/form-core": "0.3.3", - "@flowgram.ai/node": "0.3.3", - "@flowgram.ai/utils": "0.3.3", - "@flowgram.ai/variable-plugin": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/form-core": "0.3.4", + "@flowgram.ai/node": "0.3.4", + "@flowgram.ai/utils": "0.3.4", + "@flowgram.ai/variable-plugin": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -3282,14 +3282,14 @@ } }, "node_modules/@flowgram.ai/playground-react": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/playground-react/-/playground-react-0.3.3.tgz", - "integrity": "sha512-b1G9FVO69JahapJFeGDh5j3bXMQynjnpR1jkwaAzu7KGyrnU24dj2wRNz55jKGSnqQlUSsL1vNtUChdtS9kmHA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/playground-react/-/playground-react-0.3.4.tgz", + "integrity": "sha512-o3+8QJC/Z/7+bcxLkGVScZZCVgP/zmJQaFUYcvAjElw+UPnYJ6gukyYwrTkNpUlXZq2dqGYjUSrIrWZlf/03/Q==", "dependencies": { - "@flowgram.ai/background-plugin": "0.3.3", - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/shortcuts-plugin": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/background-plugin": "0.3.4", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/shortcuts-plugin": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -3299,11 +3299,11 @@ } }, "node_modules/@flowgram.ai/reactive": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/reactive/-/reactive-0.3.3.tgz", - "integrity": "sha512-+nhLrXiMvZM3U9BEptj199LOeRYUTDJlBurLqKAnrEB4xfookIM7bBwdQ8g2vb6EwvKwpv3vWmC05n8u6pMF3Q==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/reactive/-/reactive-0.3.4.tgz", + "integrity": "sha512-A+XrcromfG0+1HzngwanYEVcb42OltqCE7ua1JKBhr9JzvoyFf6wWyDCm8P8Q0JF20vHC/60A+CazBbyBIwATg==", "dependencies": { - "@flowgram.ai/utils": "0.3.3" + "@flowgram.ai/utils": "0.3.4" }, "peerDependencies": { "react": ">=16.8", @@ -3311,12 +3311,12 @@ } }, "node_modules/@flowgram.ai/redux-devtool-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/redux-devtool-plugin/-/redux-devtool-plugin-0.3.3.tgz", - "integrity": "sha512-ja3NeD2rlFFZnaz1LRSIbKpmFX/6Cq0T+grGt4R+De22yKVh5VhlLk6a9g0UAl4EWVo3rWTJNQVocnBJUaUzWw==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/redux-devtool-plugin/-/redux-devtool-plugin-0.3.4.tgz", + "integrity": "sha512-kBjIlIJQMQj+lDSHCScpFv/9a3KLFNPTW2ssWm5RPrqxI2OF7ghXAV9Gk+AFnDCHSOy57g8XbSOIZYbBWJiOMg==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/variable-core": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/variable-core": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2", "styled-components": "^5" @@ -3371,14 +3371,14 @@ } }, "node_modules/@flowgram.ai/renderer": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/renderer/-/renderer-0.3.3.tgz", - "integrity": "sha512-nXLNYipNXsMJOvU0DWGCbDxth76nQhrrkcOr8QvgPnfBTRTEX23y6GpTL/ZapBHzrcKDBy+j6rfIGvpLPzet2A==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/renderer/-/renderer-0.3.4.tgz", + "integrity": "sha512-sN/7rmC0uWpTXVY/lGYFRP+UJcNDcYoBEap5+KxhwMGCC5XbEWTp9+Y4NYJIs/Ephq+7S2um5Ue3lNhg2Lry5Q==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/i18n": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/i18n": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "lodash": "^4.17.21", "reflect-metadata": "~0.2.2" @@ -3389,12 +3389,12 @@ } }, "node_modules/@flowgram.ai/select-box-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/select-box-plugin/-/select-box-plugin-0.3.3.tgz", - "integrity": "sha512-3laQyBI5m9AtJn9f/h9t0LdOYGwt5DFGhyC+gfRJ1mUX5qzhhc+9ywipa/+vzCHWKI5Dupq++q8YpmVj/DgvfQ==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/select-box-plugin/-/select-box-plugin-0.3.4.tgz", + "integrity": "sha512-mqSw5Ayuk/ieBiE4Tqvz6NJW+WVT9qLpnER6MUFAwNFoQAFO5unXx/rF6UjH/42EnM1XCUEHkaJ58nuCOQzMgQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/renderer": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/renderer": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2" }, @@ -3404,13 +3404,13 @@ } }, "node_modules/@flowgram.ai/shortcuts-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/shortcuts-plugin/-/shortcuts-plugin-0.3.3.tgz", - "integrity": "sha512-GDQObmKBdACNcc/7CVk6oYhrDN8AUfN/1/NlOCoBV+ne7n7+cUhYASrVRlLBwwf3U0UXSbakUCgO7Z6WbzUexQ==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/shortcuts-plugin/-/shortcuts-plugin-0.3.4.tgz", + "integrity": "sha512-XeUGslbb3yHyoS9dmPno4bvOQRcCeUvmsRXeAg4I0k7Vgs2IeubJPOy1+HbA+SPkHXLOEqBUJExzrbG5+TTmmw==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2", "styled-components": "^5" @@ -3465,9 +3465,9 @@ } }, "node_modules/@flowgram.ai/utils": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/utils/-/utils-0.3.3.tgz", - "integrity": "sha512-BVVVucjAhYR1Aa4lsug7Nw4FpSXuvZlQpVd8ozkOegXCMsLUREiP4oNL0kWhf7o1cau3uRsVFtVt02ijyIapZQ==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/utils/-/utils-0.3.4.tgz", + "integrity": "sha512-wtgYpcBciubTODOpx+Qls9B5YNmKwvVDiLksWoehhYKH9PlrFSAgnwskNC37M5I+a3AAHFKQT3HUpo9T2CZiOw==", "dependencies": { "clsx": "^1.1.1", "inversify": "^6.0.1", @@ -3505,12 +3505,12 @@ } }, "node_modules/@flowgram.ai/variable-core": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-core/-/variable-core-0.3.3.tgz", - "integrity": "sha512-C5i+QEBxZbI0RzN50IHeYrNNw7XfrFO+rWhXpwcKl8Z9xFjbOeUftOp8h4hSGnR/vTWfbdt852mko1tivfssqg==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-core/-/variable-core-0.3.4.tgz", + "integrity": "sha512-qomM9Pc38Su/Kis0MymbK/zbYca3zXEfIWwIO3RpHURBUXsVsMjLKPEMjGd6sHewlHDzu+wBep3p0Yn+37fS7A==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", "fast-equals": "^2.0.0", "inversify": "^6.0.1", "lodash": "^4.17.21", @@ -3541,15 +3541,15 @@ } }, "node_modules/@flowgram.ai/variable-layout": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-layout/-/variable-layout-0.3.3.tgz", - "integrity": "sha512-rkqyR14S+Lyc96HV5ccH0hSSzroLW2gZFRFYDgoOEGH4ggoyuQSs90+OkMJLQE+xHov5pLAMXAfyy9RhgyIf6w==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-layout/-/variable-layout-0.3.4.tgz", + "integrity": "sha512-6tSsUNbf9tC9DvAD1BX0gWSpxEcs2DNyexnfDqTx4I4bRHqV7wHbVZfCfgWqkORuTBHxTkr+kVW4wFwpaV5dBQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/free-layout-core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", - "@flowgram.ai/variable-core": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/free-layout-core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", + "@flowgram.ai/variable-core": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2", "styled-components": "^5" @@ -3604,16 +3604,16 @@ } }, "node_modules/@flowgram.ai/variable-plugin": { - "version": "0.3.3", - "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-plugin/-/variable-plugin-0.3.3.tgz", - "integrity": "sha512-0LYXLXDbw6gJp60fCggAVkr4AEjfoIZ8cjSIJAziVyGEQ0YjxovCPQhEi+ZbMZcuL+zsc0WpD/ePz0zUa9roBA==", + "version": "0.3.4", + "resolved": "https://registry.npmmirror.com/@flowgram.ai/variable-plugin/-/variable-plugin-0.3.4.tgz", + "integrity": "sha512-RJ+kyNiyJ/pP9scP0OtZ04zfnl7vTJ2KbmEOXEFQ+RGcLpfrf60L4hg6tjZWgdljG9aU0KWgY3YkyFhbERDJXQ==", "dependencies": { - "@flowgram.ai/core": "0.3.3", - "@flowgram.ai/document": "0.3.3", - "@flowgram.ai/free-layout-core": "0.3.3", - "@flowgram.ai/utils": "0.3.3", - "@flowgram.ai/variable-core": "0.3.3", - "@flowgram.ai/variable-layout": "0.3.3", + "@flowgram.ai/core": "0.3.4", + "@flowgram.ai/document": "0.3.4", + "@flowgram.ai/free-layout-core": "0.3.4", + "@flowgram.ai/utils": "0.3.4", + "@flowgram.ai/variable-core": "0.3.4", + "@flowgram.ai/variable-layout": "0.3.4", "inversify": "^6.0.1", "reflect-metadata": "~0.2.2", "styled-components": "^5" @@ -4787,16 +4787,16 @@ "peer": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.38.0.tgz", - "integrity": "sha512-CPoznzpuAnIOl4nhj4tRr4gIPj5AfKgkiJmGQDaq+fQnRJTYlcBjbX3wbciGmpoPf8DREufuPRe1tNMZnGdanA==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.39.0.tgz", + "integrity": "sha512-bhEz6OZeUR+O/6yx9Jk6ohX6H9JSFTaiY0v9/PuKT3oGK0rn0jNplLmyFUGV+a9gfYnVNwGDwS/UkLIuXNb2Rw==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/type-utils": "8.38.0", - "@typescript-eslint/utils": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.39.0", + "@typescript-eslint/type-utils": "8.39.0", + "@typescript-eslint/utils": "8.39.0", + "@typescript-eslint/visitor-keys": "8.39.0", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", @@ -4810,9 +4810,9 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.38.0", + "@typescript-eslint/parser": "^8.39.0", "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore": { @@ -4825,15 +4825,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-8.38.0.tgz", - "integrity": "sha512-Zhy8HCvBUEfBECzIl1PKqF4p11+d0aUJS1GeUiuqK9WmOug8YCmC4h4bjyBvMyAMI9sbRczmrYL5lKg/YMbrcQ==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/parser/-/parser-8.39.0.tgz", + "integrity": "sha512-g3WpVQHngx0aLXn6kfIYCZxM6rRJlWzEkVpqEFLT3SgEDsp9cpCbxxgwnE504q4H+ruSDh/VGS6nqZIDynP+vg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/scope-manager": "8.39.0", + "@typescript-eslint/types": "8.39.0", + "@typescript-eslint/typescript-estree": "8.39.0", + "@typescript-eslint/visitor-keys": "8.39.0", "debug": "^4.3.4" }, "engines": { @@ -4845,17 +4845,17 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/project-service/-/project-service-8.38.0.tgz", - "integrity": "sha512-dbK7Jvqcb8c9QfH01YB6pORpqX1mn5gDZc9n63Ak/+jD67oWXn3Gs0M6vddAN+eDXBCS5EmNWzbSxsn9SzFWWg==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/project-service/-/project-service-8.39.0.tgz", + "integrity": "sha512-CTzJqaSq30V/Z2Og9jogzZt8lJRR5TKlAdXmWgdu4hgcC9Kww5flQ+xFvMxIBWVNdxJO7OifgdOK4PokMIWPew==", "dev": true, "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.38.0", - "@typescript-eslint/types": "^8.38.0", + "@typescript-eslint/tsconfig-utils": "^8.39.0", + "@typescript-eslint/types": "^8.39.0", "debug": "^4.3.4" }, "engines": { @@ -4866,17 +4866,17 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-8.38.0.tgz", - "integrity": "sha512-WJw3AVlFFcdT9Ri1xs/lg8LwDqgekWXWhH3iAF+1ZM+QPd7oxQ6jvtW/JPwzAScxitILUIFs0/AnQ/UWHzbATQ==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/scope-manager/-/scope-manager-8.39.0.tgz", + "integrity": "sha512-8QOzff9UKxOh6npZQ/4FQu4mjdOCGSdO3p44ww0hk8Vu+IGbg0tB/H1LcTARRDzGCC8pDGbh2rissBuuoPgH8A==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0" + "@typescript-eslint/types": "8.39.0", + "@typescript-eslint/visitor-keys": "8.39.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -4887,9 +4887,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.38.0.tgz", - "integrity": "sha512-Lum9RtSE3EroKk/bYns+sPOodqb2Fv50XOl/gMviMKNvanETUuUcC9ObRbzrJ4VSd2JalPqgSAavwrPiPvnAiQ==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.39.0.tgz", + "integrity": "sha512-Fd3/QjmFV2sKmvv3Mrj8r6N8CryYiCS8Wdb/6/rgOXAWGcFuc+VkQuG28uk/4kVNVZBQuuDHEDUpo/pQ32zsIQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -4899,18 +4899,18 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-8.38.0.tgz", - "integrity": "sha512-c7jAvGEZVf0ao2z+nnz8BUaHZD09Agbh+DY7qvBQqLiz8uJzRgVPj5YvOh8I8uEiH8oIUGIfHzMwUcGVco/SJg==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/type-utils/-/type-utils-8.39.0.tgz", + "integrity": "sha512-6B3z0c1DXVT2vYA9+z9axjtc09rqKUPRmijD5m9iv8iQpHBRYRMBcgxSiKTZKm6FwWw1/cI4v6em35OsKCiN5Q==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/utils": "8.38.0", + "@typescript-eslint/types": "8.39.0", + "@typescript-eslint/typescript-estree": "8.39.0", + "@typescript-eslint/utils": "8.39.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, @@ -4923,13 +4923,13 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/types": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/types/-/types-8.38.0.tgz", - "integrity": "sha512-wzkUfX3plUqij4YwWaJyqhiPE5UCRVlFpKn1oCRn2O1bJ592XxWJj8ROQ3JD5MYXLORW84063z3tZTb/cs4Tyw==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/types/-/types-8.39.0.tgz", + "integrity": "sha512-ArDdaOllnCj3yn/lzKn9s0pBQYmmyme/v1HbGIGB0GB/knFI3fWMHloC+oYTJW46tVbYnGKTMDK4ah1sC2v0Kg==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -4940,15 +4940,15 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.38.0.tgz", - "integrity": "sha512-fooELKcAKzxux6fA6pxOflpNS0jc+nOQEEOipXFNjSlBS6fqrJOVY/whSn70SScHrcJ2LDsxWrneFoWYSVfqhQ==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/typescript-estree/-/typescript-estree-8.39.0.tgz", + "integrity": "sha512-ndWdiflRMvfIgQRpckQQLiB5qAKQ7w++V4LlCHwp62eym1HLB/kw7D9f2e8ytONls/jt89TEasgvb+VwnRprsw==", "dev": true, "dependencies": { - "@typescript-eslint/project-service": "8.38.0", - "@typescript-eslint/tsconfig-utils": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/visitor-keys": "8.38.0", + "@typescript-eslint/project-service": "8.39.0", + "@typescript-eslint/tsconfig-utils": "8.39.0", + "@typescript-eslint/types": "8.39.0", + "@typescript-eslint/visitor-keys": "8.39.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -4964,19 +4964,19 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/utils": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-8.38.0.tgz", - "integrity": "sha512-hHcMA86Hgt+ijJlrD8fX0j1j8w4C92zue/8LOPAFioIno+W0+L7KqE8QZKCcPGc/92Vs9x36w/4MPTJhqXdyvg==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/utils/-/utils-8.39.0.tgz", + "integrity": "sha512-4GVSvNA0Vx1Ktwvf4sFE+exxJ3QGUorQG1/A5mRfRNZtkBT2xrA/BCO2H0eALx/PnvCS6/vmYwRdDA41EoffkQ==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", - "@typescript-eslint/scope-manager": "8.38.0", - "@typescript-eslint/types": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0" + "@typescript-eslint/scope-manager": "8.39.0", + "@typescript-eslint/types": "8.39.0", + "@typescript-eslint/typescript-estree": "8.39.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -4987,16 +4987,16 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.38.0.tgz", - "integrity": "sha512-pWrTcoFNWuwHlA9CvlfSsGWs14JxfN1TH25zM5L7o0pRLhsoZkDnTsXfQRJBEWJoV5DL0jf+Z+sxiud+K0mq1g==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/@typescript-eslint/visitor-keys/-/visitor-keys-8.39.0.tgz", + "integrity": "sha512-ldgiJ+VAhQCfIjeOgu8Kj5nSxds0ktPOSO9p4+0VDH2R2pLvQraaM5Oen2d7NxzMCm+Sn/vJT+mv2H5u6b/3fA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "8.38.0", + "@typescript-eslint/types": "8.39.0", "eslint-visitor-keys": "^4.2.1" }, "engines": { @@ -6776,9 +6776,9 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.5.3", - "resolved": "https://registry.npmmirror.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.3.tgz", - "integrity": "sha512-NAdMYww51ehKfDyDhv59/eIItUVzU0Io9H2E8nHNGKEeeqlnci+1gCvrHib6EmZdf6GxF+LCV5K7UC65Ezvw7w==", + "version": "5.5.4", + "resolved": "https://registry.npmmirror.com/eslint-plugin-prettier/-/eslint-plugin-prettier-5.5.4.tgz", + "integrity": "sha512-swNtI95SToIz05YINMA6Ox5R057IMAmWZ26GqPxusAp1TZzj+IdY9tXNWWD3vkF/wEqydCONcwjTFpxybBqZsg==", "dev": true, "dependencies": { "prettier-linter-helpers": "^1.0.0", @@ -7117,9 +7117,9 @@ } }, "node_modules/fs-extra": { - "version": "11.3.0", - "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-11.3.0.tgz", - "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==", + "version": "11.3.1", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-11.3.1.tgz", + "integrity": "sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==", "dev": true, "dependencies": { "graceful-fs": "^4.2.0", @@ -9558,9 +9558,9 @@ } }, "node_modules/react-router": { - "version": "7.7.1", - "resolved": "https://registry.npmmirror.com/react-router/-/react-router-7.7.1.tgz", - "integrity": "sha512-jVKHXoWRIsD/qS6lvGveckwb862EekvapdHJN/cGmzw40KnJH5gg53ujOJ4qX6EKIK9LSBfFed/xiQ5yeXNrUA==", + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/react-router/-/react-router-7.8.0.tgz", + "integrity": "sha512-r15M3+LHKgM4SOapNmsH3smAizWds1vJ0Z9C4mWaKnT9/wD7+d/0jYcj6LmOvonkrO4Rgdyp4KQ/29gWN2i1eg==", "dependencies": { "cookie": "^1.0.1", "set-cookie-parser": "^2.6.0" @@ -9579,11 +9579,11 @@ } }, "node_modules/react-router-dom": { - "version": "7.7.1", - "resolved": "https://registry.npmmirror.com/react-router-dom/-/react-router-dom-7.7.1.tgz", - "integrity": "sha512-bavdk2BA5r3MYalGKZ01u8PGuDBloQmzpBZVhDLrOOv1N943Wq6dcM9GhB3x8b7AbqPMEezauv4PeGkAJfy7FQ==", + "version": "7.8.0", + "resolved": "https://registry.npmmirror.com/react-router-dom/-/react-router-dom-7.8.0.tgz", + "integrity": "sha512-ntInsnDVnVRdtSu6ODmTQ41cbluak/ENeTif7GBce0L6eztFg6/e1hXAysFQI8X25C8ipKmT9cClbJwxx3Kaqw==", "dependencies": { - "react-router": "7.7.1" + "react-router": "7.8.0" }, "engines": { "node": ">=20.0.0" @@ -10740,15 +10740,15 @@ } }, "node_modules/typescript-eslint": { - "version": "8.38.0", - "resolved": "https://registry.npmmirror.com/typescript-eslint/-/typescript-eslint-8.38.0.tgz", - "integrity": "sha512-FsZlrYK6bPDGoLeZRuvx2v6qrM03I0U0SnfCLPs/XCCPCFD80xU9Pg09H/K+XFa68uJuZo7l/Xhs+eDRg2l3hg==", + "version": "8.39.0", + "resolved": "https://registry.npmmirror.com/typescript-eslint/-/typescript-eslint-8.39.0.tgz", + "integrity": "sha512-lH8FvtdtzcHJCkMOKnN73LIn6SLTpoojgJqDAxPm1jCR14eWSGPX8ul/gggBdPMk/d5+u9V854vTYQ8T5jF/1Q==", "dev": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "8.38.0", - "@typescript-eslint/parser": "8.38.0", - "@typescript-eslint/typescript-estree": "8.38.0", - "@typescript-eslint/utils": "8.38.0" + "@typescript-eslint/eslint-plugin": "8.39.0", + "@typescript-eslint/parser": "8.39.0", + "@typescript-eslint/typescript-estree": "8.39.0", + "@typescript-eslint/utils": "8.39.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -10759,7 +10759,7 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", - "typescript": ">=4.8.4 <5.9.0" + "typescript": ">=4.8.4 <6.0.0" } }, "node_modules/unbox-primitive": { @@ -11183,9 +11183,9 @@ } }, "node_modules/zod": { - "version": "4.0.14", - "resolved": "https://registry.npmmirror.com/zod/-/zod-4.0.14.tgz", - "integrity": "sha512-nGFJTnJN6cM2v9kXL+SOBq3AtjQby3Mv5ySGFof5UGRHrRioSJ5iG680cYNjE/yWk671nROcpPj4hAS8nyLhSw==", + "version": "4.0.15", + "resolved": "https://registry.npmmirror.com/zod/-/zod-4.0.15.tgz", + "integrity": "sha512-2IVHb9h4Mt6+UXkyMs0XbfICUh1eUrlJJAOupBHUhLRnKkruawyDddYRCs0Eizt900ntIMk9/4RksYl+FgSpcQ==", "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/ui/package.json b/ui/package.json index fb1f102ad..b6c362f4e 100644 --- a/ui/package.json +++ b/ui/package.json @@ -14,9 +14,9 @@ "@codemirror/lang-yaml": "^6.1.2", "@codemirror/language": "^6.11.2", "@codemirror/legacy-modes": "^6.5.1", - "@flowgram.ai/document": "^0.3.3", - "@flowgram.ai/fixed-layout-editor": "^0.3.3", - "@flowgram.ai/minimap-plugin": "^0.3.3", + "@flowgram.ai/document": "^0.3.4", + "@flowgram.ai/fixed-layout-editor": "^0.3.4", + "@flowgram.ai/minimap-plugin": "^0.3.4", "@tabler/icons-react": "^3.34.1", "@uiw/codemirror-extensions-basic-setup": "^4.24.2", "@uiw/codemirror-theme-vscode": "^4.24.2", @@ -37,9 +37,9 @@ "react-copy-to-clipboard": "^5.1.0", "react-dom": "^18.3.1", "react-i18next": "^15.6.1", - "react-router-dom": "^7.7.1", + "react-router-dom": "^7.8.0", "tailwind-merge": "^3.3.1", - "zod": "^4.0.14", + "zod": "^4.0.15", "zustand": "^5.0.7" }, "devDependencies": { @@ -59,14 +59,14 @@ "eslint-import-resolver-typescript": "^4.4.4", "eslint-plugin-better-tailwindcss": "^3.7.4", "eslint-plugin-import": "^2.32.0", - "eslint-plugin-prettier": "^5.5.3", + "eslint-plugin-prettier": "^5.5.4", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.20", - "fs-extra": "^11.3.0", + "fs-extra": "^11.3.1", "prettier": "^3.6.2", "tailwindcss": "^4.1.11", "typescript": "^5.8.3", - "typescript-eslint": "^8.38.0", + "typescript-eslint": "^8.39.0", "vite": "^6.3.5" } } diff --git a/ui/src/components/DrawerForm.tsx b/ui/src/components/DrawerForm.tsx index f8386b2be..55809df5e 100644 --- a/ui/src/components/DrawerForm.tsx +++ b/ui/src/components/DrawerForm.tsx @@ -1,4 +1,5 @@ import { useTranslation } from "react-i18next"; +import { IconX } from "@tabler/icons-react"; import { useControllableValue } from "ahooks"; import { Button, Drawer, type DrawerProps, Flex, Form, type FormProps, type ModalProps } from "antd"; @@ -73,6 +74,7 @@ const DrawerForm = = any>({ const mergedDrawerProps: DrawerProps = { ...drawerProps, + closeIcon: false, afterOpenChange: (open) => { if (!open && !mergedFormProps.preserve) { formInst.resetFields(); @@ -109,7 +111,7 @@ const DrawerForm = = any>({ + @@ -120,7 +122,21 @@ const DrawerForm = = any>({ } forceRender open={open} - title={title} + title={ + +
{title}
+ {mergedDrawerProps.closeIcon !== false && ( + + +
+ ) : ( + false + ) + } + loading={loading} + maskClosable={!confirmLoading} + open={open} + size="large" + title={ + <> + +
{renderNodeIcon()}
+
{node?.toJSON()?.data?.name}
+