optimize import path

This commit is contained in:
codetypes committed 2025-03-01 00:30:28 +08:00
1 parent 8bce01dd66
commit cd84575197
15 files changed
+186 -229

No files matched your search

+1 -1
View File
@@ -1,7 +1,7 @@
import { readJson, writeJson } from "@/misc/util";
import { app } from "@electron/remote";
import * as fs from "fs";
import { create } from "zustand";
import { readJson, writeJson } from "../misc/util";
const settingPath = app.getPath("userData") + "/settings.json";
+54 -30
View File
@@ -1,15 +1,16 @@
import { NodeDef, NodeModel, TreeGraphData, TreeModel, unknownNodeDef } from "@/misc/b3type";
import * as b3util from "@/misc/b3util";
import { message } from "@/misc/hooks";
import i18n from "@/misc/i18n";
import Path from "@/misc/path";
import { readJson, writeJson } from "@/misc/util";
import { Matrix, TreeGraph } from "@antv/g6";
import { BrowserWindow, dialog } from "@electron/remote";
import { ipcRenderer } from "electron";
import * as fs from "fs";
import React from "react";
import { create } from "zustand";
import { NodeDef, NodeModel, TreeGraphData, TreeModel } from "../misc/b3type";
import * as b3util from "../misc/b3util";
import { message } from "../misc/hooks";
import i18n from "../misc/i18n";
import Path from "../misc/path";
import { zhNodeDef } from "../misc/template";
import { readJson, writeJson } from "../misc/util";
import { useSetting } from "./setting-context";
let buildDir: string | undefined;
@@ -151,7 +152,9 @@ export type WorkspaceStore = {
watch(): void;
loadTrees: () => void;
loadNodeDefs: () => void;
nodeDefs: Map<string, NodeDef>;
// edit node
editingNode?: EditNode | null;
@@ -164,11 +167,6 @@ export type WorkspaceStore = {
// edit tree
editingTree?: EditTree | null;
onEditingTree: (editor: EditorStore) => void;
// node setting
nodeDefs: Map<string, NodeDef>;
getNodeDef: (name: string) => NodeDef;
hasNodeDef: (name: string) => boolean;
};
const loadFileTree = (workdir: string, filename: string) => {
@@ -249,7 +247,48 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
});
if (path) {
const workspace = get();
b3util.createProject(path);
fs.writeFileSync(Path.dirname(path) + "/node-config.b3-setting", zhNodeDef());
fs.writeFileSync(
Path.dirname(path) + "/example.json",
JSON.stringify(
{
name: "example",
root: {
id: 1,
name: "Sequence",
children: [
{
id: 2,
name: "Log",
args: {
str: "hello",
},
},
{
id: 3,
name: "Wait",
args: {
time: 1,
},
},
],
},
},
null,
2
)
);
fs.writeFileSync(
path,
JSON.stringify(
{
nodeConf: "node-config.b3-setting",
metadata: [],
},
null,
2
)
);
workspace.init(path);
}
},
@@ -569,14 +608,11 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
}
},
nodeDefs: new Map(),
loadNodeDefs: () => {
const workspace = get();
const nodeDefData = readJson(`${workspace.workdir}/node-config.b3-setting`) as NodeDef[];
const nodeDefs: Map<string, NodeDef> = new Map();
for (const v of nodeDefData) {
nodeDefs.set(v.name, v);
}
set({ nodeDefs });
b3util.initWorkdir(workspace.workdir, message.error.bind(message));
set({ nodeDefs: b3util.nodeDefs });
workspace.editing?.dispatch("refresh");
},
@@ -616,16 +652,4 @@ export const useWorkspace = create<WorkspaceStore>((set, get) => ({
editingNode: null,
});
},
// node def
nodeDefs: new Map(),
getNodeDef: (name) => {
const workspace = get();
unknownNodeDef.desc = i18n.t("node.unknown.desc");
return workspace.nodeDefs.get(name) || unknownNodeDef;
},
hasNodeDef: (name) => {
const workspace = get();
return workspace.nodeDefs.has(name);
},
}));