Compare commits

...

1 Commits

Author SHA1 Message Date
seer-by-sentry[bot]
974c2f4dd1 feat(frontend): ES2022 compatibility for Agent Run Draft View 2025-10-29 23:21:23 +00:00

View File

@@ -141,18 +141,28 @@ export function AgentRunDraftView({
const requiredInputs = new Set(
agentInputSchema.required as string[] | undefined,
);
return [
nonEmptyInputs.isSupersetOf(requiredInputs),
[...requiredInputs.difference(nonEmptyInputs)],
];
// ES2022-compatible: Check if nonEmptyInputs is a superset of requiredInputs
const isSuperset = Array.from(requiredInputs).every((item) =>
nonEmptyInputs.has(item),
);
// ES2022-compatible: Get difference (items in requiredInputs not in nonEmptyInputs)
const difference = Array.from(requiredInputs).filter(
(item) => !nonEmptyInputs.has(item),
);
return [isSuperset, difference];
}, [agentInputSchema.required, inputValues]);
const [allCredentialsAreSet, missingCredentials] = useMemo(() => {
const availableCredentials = new Set(Object.keys(inputCredentials));
const allCredentials = new Set(Object.keys(agentCredentialsInputFields));
return [
availableCredentials.isSupersetOf(allCredentials),
[...allCredentials.difference(availableCredentials)],
];
// ES2022-compatible: Check if availableCredentials is a superset of allCredentials
const isSuperset = Array.from(allCredentials).every((item) =>
availableCredentials.has(item),
);
// ES2022-compatible: Get difference (items in allCredentials not in availableCredentials)
const difference = Array.from(allCredentials).filter(
(item) => !availableCredentials.has(item),
);
return [isSuperset, difference];
}, [agentCredentialsInputFields, inputCredentials]);
const notifyMissingInputs = useCallback(
(needPresetName: boolean = true) => {