Fix SendHttpRequest outcomes
This commit is contained in:
parent
648bdcb1a3
commit
b8e7368fd9
|
|
@ -1,16 +1,30 @@
|
|||
import {eventBus, ElsaPlugin} from "../services";
|
||||
import {EventTypes} from "../models";
|
||||
import {ActivityDesignDisplayContext, EventTypes, SyntaxNames} from "../models";
|
||||
import {h} from "@stencil/core";
|
||||
import {
|
||||
ActivityEditorAppearingEventArgs,
|
||||
ActivityEditorDisappearingEventArgs
|
||||
} from "../components/screens/workflow-definition-editor/elsa-activity-editor-modal/elsa-activity-editor-modal";
|
||||
import {parseJson} from "../utils/utils";
|
||||
|
||||
export class SendHttpRequestPlugin implements ElsaPlugin {
|
||||
constructor() {
|
||||
eventBus.on(EventTypes.ActivityEditor.Appearing, this.onActivityEditorAppearing);
|
||||
eventBus.on(EventTypes.ActivityEditor.Disappearing, this.onActivityEditorDisappearing);
|
||||
eventBus.on(EventTypes.ActivityDesignDisplaying, this.onActivityDesignDisplaying);
|
||||
}
|
||||
|
||||
onActivityDesignDisplaying(context: ActivityDesignDisplayContext) {
|
||||
const activityModel = context.activityModel;
|
||||
|
||||
if (activityModel.type !== 'SendHttpRequest')
|
||||
return;
|
||||
|
||||
const props = activityModel.properties || [];
|
||||
const syntax = SyntaxNames.Json;
|
||||
const branches = props.find(x => x.name == 'SupportedStatusCodes') || {expressions: {'Json': '[]'}, syntax: syntax};
|
||||
const expression = branches.expressions[syntax] || [];
|
||||
context.outcomes = !!expression['$values'] ? expression['$values'] : Array.isArray(expression) ? expression : parseJson(expression) || [];
|
||||
}
|
||||
|
||||
onActivityEditorAppearing = (args: ActivityEditorAppearingEventArgs) => {
|
||||
|
|
|
|||
Loading…
Reference in a new issue