update dependencies

This commit is contained in:
codetypes committed 2025-03-02 20:36:05 +08:00
1 parent 3de6903594
commit d251c7914e
22 files changed
+3722 -395

No files matched your search

+2 -3
View File
@@ -35,7 +35,6 @@ import {
isNodeArgArray,
isNodeArgOptional,
isValidVariableName,
nodeDefs,
} from "../misc/b3util";
import { Hotkey, isMacos } from "../misc/keys";
import { mergeClassNames } from "../misc/util";
@@ -121,7 +120,7 @@ const NodeInspector: FC = () => {
// set form values
useEffect(() => {
const data = workspace.editingNode.data;
const def = nodeDefs.get(workspace.editingNode.data.name);
const def = workspace.nodeDefs.get(workspace.editingNode.data.name);
form.resetFields();
form.setFieldValue("id", data.id);
form.setFieldValue("name", data.name);
@@ -237,7 +236,7 @@ const NodeInspector: FC = () => {
}, [workspace.allFiles, workspace.fileTree]);
const editingNode = workspace.editingNode;
const def = nodeDefs.get(editingNode.data.name);
const def = workspace.nodeDefs.get(editingNode.data.name);
const disabled = !editingNode.editable;
// update value
+15 -13
View File
@@ -12,7 +12,7 @@ import { useSetting } from "../contexts/setting-context";
import { useWorkspace } from "../contexts/workspace-context";
import * as b3util from "../misc/b3util";
import i18n from "../misc/i18n";
import { Hotkey, isMacos, sendInputEvent } from "../misc/keys";
import { Hotkey, isMacos } from "../misc/keys";
const MenuItemLabel: FC<FlexProps> = (itemProps) => {
return (
@@ -175,9 +175,9 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.undo",
label: t("undo"),
enabled: enabled,
accelerator: Hotkey.Undo,
accelerator: Hotkey.Undo.replaceAll(".", "+"),
click: () => {
sendInputEvent(Hotkey.Undo);
// sendInputEvent(Hotkey.Undo);
getFocusedWebContents()?.undo();
},
},
@@ -185,9 +185,9 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.redo",
label: t("redo"),
enabled: enabled,
accelerator: Hotkey.Redo,
accelerator: Hotkey.Redo.replaceAll(".", "+"),
click: () => {
sendInputEvent(Hotkey.Redo);
// sendInputEvent(Hotkey.Redo);
getFocusedWebContents()?.redo();
},
},
@@ -196,9 +196,9 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.copy",
label: t("copy"),
enabled: enabled,
accelerator: Hotkey.Copy,
accelerator: Hotkey.Copy.replaceAll(".", "+"),
click: () => {
sendInputEvent(Hotkey.Copy);
// sendInputEvent(Hotkey.Copy);
getFocusedWebContents()?.copy();
},
},
@@ -206,9 +206,9 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.paste",
label: t("paste"),
enabled: enabled,
accelerator: Hotkey.Paste,
accelerator: Hotkey.Paste.replaceAll(".", "+"),
click: () => {
sendInputEvent(Hotkey.Paste);
// sendInputEvent(Hotkey.Paste);
getFocusedWebContents()?.paste();
},
},
@@ -216,7 +216,7 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.cut",
label: t("cut"),
enabled: enabled,
accelerator: Hotkey.Cut,
accelerator: Hotkey.Cut.replaceAll(".", "+"),
click: () => {
getFocusedWebContents()?.cut();
},
@@ -225,7 +225,7 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.selectAll",
label: t("selectAll"),
enabled: enabled,
accelerator: Hotkey.SelectAll,
accelerator: Hotkey.SelectAll.replaceAll(".", "+"),
click: () => {
getFocusedWebContents()?.selectAll();
},
@@ -235,16 +235,18 @@ export const Menu: FC<LayoutProps> = () => {
id: "menu.edit.insertNode",
label: t("insertNode"),
enabled: enabled,
accelerator: Hotkey.Enter.replaceAll(".", "+"),
click: () => {
workspace.editing?.dispatch("insert");
// workspace.editing?.dispatch("insert");
},
},
{
id: "menu.edit.deleteNode",
label: t("deleteNode"),
enabled: enabled,
accelerator: Hotkey.Backspace.replaceAll(".", "+"),
click: () => {
workspace.editing?.dispatch("delete");
// workspace.editing?.dispatch("delete");
},
},
],
+6 -2
View File
@@ -1,6 +1,7 @@
import G6 from "@antv/g6";
import { useWorkspace } from "../contexts/workspace-context";
import { TreeGraphData, getNodeType } from "../misc/b3type";
import { checkTreeData, nodeDefs, workdir } from "../misc/b3util";
import { checkTreeData, getNodeDefs } from "../misc/b3util";
import i18n from "../misc/i18n";
import { isMacos } from "../misc/keys";
@@ -141,6 +142,7 @@ G6.registerNode(
},
draw(cfg, group) {
const data = cfg as TreeGraphData;
const nodeDefs = getNodeDefs();
const nodeDef = nodeDefs.get(data.name);
let classify = getNodeType(nodeDef);
let color = nodeDef.color || NODE_COLORS[classify] || NODE_COLORS["Other"];
@@ -257,7 +259,9 @@ G6.registerNode(
});
// icon
const img = nodeDef.icon ? `file:///${workdir}/${nodeDef.icon}` : `./icons/${classify}.svg`;
const img = nodeDef.icon
? `file:///${useWorkspace.getState().workdir}/${nodeDef.icon}`
: `./icons/${classify}.svg`;
addShape("image", {
attrs: {
x: 5,
+3 -3
View File
@@ -155,7 +155,7 @@ export type WorkspaceStore = {
loadTrees: () => void;
loadNodeDefs: () => void;
nodeDefs: Map<string, NodeDef>;
nodeDefs: b3util.NodeDefs;
// edit node
editingNode?: EditNode | null;
@@ -609,11 +609,11 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
}
},
nodeDefs: new Map(),
nodeDefs: new b3util.NodeDefs(),
loadNodeDefs: () => {
const workspace = get();
b3util.initWorkdir(workspace.workdir, message.error.bind(message));
set({ nodeDefs: b3util.nodeDefs });
set({ nodeDefs: b3util.getNodeDefs() });
workspace.editing?.dispatch("refresh");
},
+12 -6
View File
@@ -16,8 +16,15 @@ import {
import Path from "./path";
import { readJson } from "./util";
export let workdir: string = "";
export class NodeDefs extends Map<string, NodeDef> {
get(key: string): NodeDef {
return super.get(key) ?? unknownNodeDef;
}
}
let workdir: string = "";
let alertError: (msg: string, duration?: number) => void = () => {};
let nodeDefs: NodeDefs = new NodeDefs();
const unknownNodeDef: NodeDef = {
name: "unknown",
@@ -25,16 +32,15 @@ const unknownNodeDef: NodeDef = {
type: "Action",
};
export const nodeDefs = new (class extends Map<string, NodeDef> {
get(key: string): NodeDef {
return super.get(key) ?? unknownNodeDef;
}
})();
export const getNodeDefs = () => {
return nodeDefs;
};
export const initWorkdir = (path: string, handler: typeof alertError) => {
workdir = path;
alertError = handler;
const nodeDefData = readJson(`${workdir}/node-config.b3-setting`) as NodeDef[];
nodeDefs = new NodeDefs();
for (const v of nodeDefData) {
nodeDefs.set(v.name, v);
}
+5
View File
@@ -1 +1,6 @@
/// <reference types="vite/client" />
interface Window {
// expose in the `electron/preload/index.ts`
ipcRenderer: import("electron").IpcRenderer;
}