fix variadic input and ouput

This commit is contained in:
codetypes committed 2025-03-15 22:34:04 +08:00
1 parent 61431893bf
commit 46d13cac7b
8 files changed
+95 -496

No files matched your search

+6 -2
View File
@@ -686,10 +686,14 @@ export const Editor: FC<EditorProps> = ({ onUpdate: updateState, data: editor, .
const root = b3util.createFileData(editor.data);
const treeModel = {
name: Path.basenameWithoutExt(path),
root,
desc: editor.desc,
firstid: editor.firstid ?? 1,
export: editor.export,
desc: editor.desc,
declare: {
imports: editor.declare.imports.map((v) => v.path).sort(),
vars: editor.declare.vars.sort((a, b) => a.name.localeCompare(b.name)),
},
root,
} as TreeModel;
editor.modifiedTime = Date.now();
fs.writeFileSync(path, JSON.stringify(treeModel, null, 2));
+3 -6
View File
@@ -36,6 +36,7 @@ import {
isNodeArgArray,
isNodeArgOptional,
isValidVariableName,
isVariadic,
} from "../misc/b3util";
import { Hotkey, isMacos } from "../misc/keys";
import { mergeClassNames } from "../misc/util";
@@ -119,10 +120,6 @@ const NodeInspector: FC = () => {
const { t } = useTranslation();
const [form] = Form.useForm();
const isVariadic = (arr: string[], i: number) => {
return arr[i].endsWith("...") && i === arr.length - 1;
};
const validateFieldsLater = useDebounceCallback(
() => form.validateFields({ recursive: true }),
100
@@ -203,7 +200,7 @@ const NodeInspector: FC = () => {
node.input?.forEach((v, i) => {
let desc: string;
const inputDef = node.def.input;
if (inputDef && i >= inputDef.length && isVariadic(inputDef, inputDef.length - 1)) {
if (inputDef && i >= inputDef.length && isVariadic(inputDef, -1)) {
desc = inputDef[inputDef.length - 1];
} else {
desc = inputDef?.[i] ?? "<unknown>";
@@ -215,7 +212,7 @@ const NodeInspector: FC = () => {
node.output?.forEach((v, i) => {
let desc: string;
const outputDef = node.def.output;
if (outputDef && i >= outputDef.length && isVariadic(outputDef, outputDef.length - 1)) {
if (outputDef && i >= outputDef.length && isVariadic(outputDef, -1)) {
desc = outputDef[outputDef.length - 1];
} else {
desc = outputDef?.[i] ?? "<unknown>";