feat: add script dry-run functionality and enhance script management

- Introduced a new dry-run endpoint for executing scripts without saving changes.
- Implemented a dedicated ScriptDryRunPage for user interaction with dry-run functionality.
- Enhanced ScriptsPage to support navigation to the dry-run feature.
- Added LogViewer component for displaying logs during script execution.
- Created ScriptEditPage for editing scripts with integrated dry-run capabilities.
- Updated workflows to include new scripts for fetching and notifying data.
- Improved overall user experience with better navigation and error handling.
This commit is contained in:
2026-08-14 15:37:30 +07:00
parent 389f94f950
commit 8519c92ed1
17 changed files with 810 additions and 176 deletions
+25
View File
@@ -0,0 +1,25 @@
export const NEW_SCRIPT_TEMPLATE = `export default async function main(ctx) {
return ctx;
}
`;
export const DEFAULT_INPUT_CONTEXT = `{
"data": {},
"config": {}
}
`;
export function normalizeScriptName(name) {
const trimmed = name.trim();
if (!trimmed) return "";
return trimmed.endsWith(".js") ? trimmed : `${trimmed}.js`;
}
export function prettyJson(value) {
if (value === null || value === undefined) return "";
try {
return JSON.stringify(value, null, 2);
} catch {
return String(value);
}
}