@deliverr/serverless-offline-step-functions
Version:
Serverless Offline Plugin to Support Step Functions for Local Development
28 lines (27 loc) • 1.27 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PassExecutor = void 0;
const StateProcessor_1 = require("../../StateProcessor");
const StateTypeExecutor_1 = require("../StateTypeExecutor");
class PassExecutor extends StateTypeExecutor_1.StateTypeExecutor {
execute(context, definition, json) {
this.logger.log(`* * * Passed Task ${context.State.Name} * * *`);
const input = this.processInput(json, definition);
return Promise.resolve({
Next: definition.Next,
End: definition.End,
json: this.processOutput(input, input, definition),
});
}
processInput(json, stateDefinition) {
const proccessedInputJson = StateProcessor_1.StateProcessor.processInputPath(json, stateDefinition.InputPath);
return proccessedInputJson;
}
processOutput(input, output, stateDefinition) {
let outputJson = output || '{}';
outputJson = StateProcessor_1.StateProcessor.processResultPath(JSON.parse(input), JSON.parse(output), stateDefinition.ResultPath);
outputJson = StateProcessor_1.StateProcessor.processOutputPath(outputJson, stateDefinition.OutputPath);
return outputJson;
}
}
exports.PassExecutor = PassExecutor;