@mastra/core
Version:
208 lines (205 loc) • 7.74 kB
JavaScript
;
var chunkCJAAPSS7_cjs = require('../chunk-CJAAPSS7.cjs');
var chunk5Z776ZCD_cjs = require('../chunk-5Z776ZCD.cjs');
// src/workflows/state-reader.ts
var getStep = (state, stepId) => state.steps?.[stepId];
var getFirstStepResult = (step) => {
return Array.isArray(step) ? step.find((result) => result?.status === "suspended") ?? step[0] : step;
};
var getNestedSuspendPath = (step) => {
const path = getFirstStepResult(step)?.suspendPayload?.__workflow_meta?.path;
return Array.isArray(path) ? path.filter((part) => typeof part === "string") : [];
};
function getWorkflowStepOutput(state, stepId) {
const step = getStep(state, stepId);
return Array.isArray(step) ? step.map((result) => result?.output) : step?.output;
}
function getWorkflowStepPayload(state, stepId) {
const step = getStep(state, stepId);
return Array.isArray(step) ? step.map((result) => result?.payload) : step?.payload;
}
function getWorkflowResumeLabel(state, label) {
const resumeLabel = state.resumeLabels?.[label];
return resumeLabel ? { ...resumeLabel } : void 0;
}
function getWorkflowResumeLabels(state) {
return Object.entries(state.resumeLabels ?? {}).reduce(
(labels, [label, value]) => {
labels[label] = { ...value };
return labels;
},
{}
);
}
function getWorkflowSuspendedSteps(state) {
return Object.entries(state.suspendedPaths ?? {}).map(([stepId, executionPath]) => {
const step = getStep(state, stepId);
const firstStepResult = getFirstStepResult(step);
const nestedPath = getNestedSuspendPath(step);
const path = nestedPath.length > 0 ? nestedPath[0] === stepId ? nestedPath : [stepId, ...nestedPath] : [stepId];
const resumeLabels = Object.entries(state.resumeLabels ?? {}).reduce(
(labels, [label, value]) => {
if (value.stepId === stepId) {
labels[label] = { ...value };
}
return labels;
},
{}
);
return {
stepId,
path,
executionPath,
step,
payload: Array.isArray(step) ? step.map((result) => result?.payload) : step?.payload,
suspendPayload: firstStepResult?.suspendPayload,
suspendOutput: firstStepResult?.suspendOutput,
resumeLabels
};
});
}
function getWorkflowSuspendedStep(state) {
return getWorkflowSuspendedSteps(state)[0];
}
function createWorkflowStateReader(state) {
return {
getStatus: () => state.status,
getResult: () => state.result,
getError: () => state.error,
getStepOutput: (stepId) => getWorkflowStepOutput(state, stepId),
getStepPayload: (stepId) => getWorkflowStepPayload(state, stepId),
getSuspendedStep: () => getWorkflowSuspendedStep(state),
getSuspendedSteps: () => getWorkflowSuspendedSteps(state),
getResumeLabel: (label) => getWorkflowResumeLabel(state, label),
getResumeLabels: () => getWorkflowResumeLabels(state)
};
}
Object.defineProperty(exports, "DefaultExecutionEngine", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.DefaultExecutionEngine; }
});
Object.defineProperty(exports, "ExecutionEngine", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.ExecutionEngine; }
});
Object.defineProperty(exports, "Run", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.Run; }
});
Object.defineProperty(exports, "Scheduler", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.Scheduler; }
});
Object.defineProperty(exports, "Workflow", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.Workflow; }
});
Object.defineProperty(exports, "WorkflowScheduler", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.WorkflowScheduler; }
});
Object.defineProperty(exports, "cleanStepResult", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.cleanStepResult; }
});
Object.defineProperty(exports, "cloneStep", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.cloneStep; }
});
Object.defineProperty(exports, "cloneWorkflow", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.cloneWorkflow; }
});
Object.defineProperty(exports, "createDeprecationProxy", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createDeprecationProxy; }
});
Object.defineProperty(exports, "createEventedWorkflow", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createEventedWorkflow; }
});
Object.defineProperty(exports, "createRestartExecutionParams", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createRestartExecutionParams; }
});
Object.defineProperty(exports, "createStep", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createStep; }
});
Object.defineProperty(exports, "createTimeTravelExecutionParams", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createTimeTravelExecutionParams; }
});
Object.defineProperty(exports, "createWorkflow", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.createWorkflow; }
});
Object.defineProperty(exports, "getResumeLabelsByStepId", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.getResumeLabelsByStepId; }
});
Object.defineProperty(exports, "getStepIds", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.getStepIds; }
});
Object.defineProperty(exports, "getStepResult", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.getStepResult; }
});
Object.defineProperty(exports, "hydrateSerializedStepErrors", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.hydrateSerializedStepErrors; }
});
Object.defineProperty(exports, "isProcessor", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.isProcessor; }
});
Object.defineProperty(exports, "mapVariable", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.mapVariable; }
});
Object.defineProperty(exports, "runCountDeprecationMessage", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.runCountDeprecationMessage; }
});
Object.defineProperty(exports, "validateStepInput", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.validateStepInput; }
});
Object.defineProperty(exports, "validateStepRequestContext", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.validateStepRequestContext; }
});
Object.defineProperty(exports, "validateStepResumeData", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.validateStepResumeData; }
});
Object.defineProperty(exports, "validateStepStateData", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.validateStepStateData; }
});
Object.defineProperty(exports, "validateStepSuspendData", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.validateStepSuspendData; }
});
Object.defineProperty(exports, "waitForSuspendedSnapshot", {
enumerable: true,
get: function () { return chunkCJAAPSS7_cjs.waitForSuspendedSnapshot; }
});
Object.defineProperty(exports, "computeNextFireAt", {
enumerable: true,
get: function () { return chunk5Z776ZCD_cjs.computeNextFireAt; }
});
Object.defineProperty(exports, "validateCron", {
enumerable: true,
get: function () { return chunk5Z776ZCD_cjs.validateCron; }
});
exports.createWorkflowStateReader = createWorkflowStateReader;
exports.getWorkflowResumeLabel = getWorkflowResumeLabel;
exports.getWorkflowResumeLabels = getWorkflowResumeLabels;
exports.getWorkflowStepOutput = getWorkflowStepOutput;
exports.getWorkflowStepPayload = getWorkflowStepPayload;
exports.getWorkflowSuspendedStep = getWorkflowSuspendedStep;
exports.getWorkflowSuspendedSteps = getWorkflowSuspendedSteps;
//# sourceMappingURL=index.cjs.map
//# sourceMappingURL=index.cjs.map