- Introduced a new server package with Fastify for handling API requests and workflows. - Implemented user authentication and authorization with JWT and cookie management. - Added endpoints for managing workflows, runs, and user accounts. - Established a dashboard for monitoring workflow status and statistics. - Included a script sandbox for executing user-defined scripts securely. - Updated README with setup instructions and API documentation. - Configured database migrations for user management. - Enhanced logging capabilities for better traceability.
16 lines
553 B
JavaScript
16 lines
553 B
JavaScript
export function parseScriptStep(step) {
|
|
if (typeof step === "string") return { script: step, config: null };
|
|
if (step?.script) return { script: step.script, config: step.config ?? null };
|
|
throw new Error(`Invalid script step: ${JSON.stringify(step)}`);
|
|
}
|
|
|
|
/**
|
|
* Resolve an HTTP path under the owner namespace: /notify -> /u/alice/notify
|
|
* @param {string} owner
|
|
* @param {string} triggerPath
|
|
*/
|
|
export function namespacedPath(owner, triggerPath) {
|
|
const cleaned = String(triggerPath).replace(/^\/+/, "");
|
|
return `/u/${owner}/${cleaned}`;
|
|
}
|