Fix fork display for blueprint & instance views
This commit is contained in:
parent
fa916d3822
commit
45f9ab8467
|
|
@ -108,9 +108,15 @@ export class ElsaWorkflowBlueprintViewerScreen {
|
|||
}
|
||||
|
||||
mapActivityModel(source: ActivityBlueprint): ActivityModel {
|
||||
const descriptors: Array<ActivityDescriptor> = state.activityDescriptors;
|
||||
const descriptor = descriptors.find(x => x.type == source.type);
|
||||
const properties: Array<ActivityDefinitionProperty> = collection.map(source.properties.data, (v, k) => ({name: k, expressions: {'Literal': v}, syntax: SyntaxNames.Literal}));
|
||||
const activityDescriptors: Array<ActivityDescriptor> = state.activityDescriptors;
|
||||
const activityDescriptor = activityDescriptors.find(x => x.type == source.type);
|
||||
const properties: Array<ActivityDefinitionProperty> = collection.map(source.properties.data, (value, key) => {
|
||||
const propertyDescriptor = activityDescriptor.properties.find(x => x.name == key);
|
||||
const defaultSyntax = propertyDescriptor.defaultSyntax || SyntaxNames.Literal;
|
||||
const expressions = {};
|
||||
expressions[defaultSyntax] = value;
|
||||
return ({name: key, expressions: expressions, syntax: defaultSyntax});
|
||||
});
|
||||
|
||||
return {
|
||||
activityId: source.id,
|
||||
|
|
@ -119,7 +125,7 @@ export class ElsaWorkflowBlueprintViewerScreen {
|
|||
name: source.name,
|
||||
type: source.type,
|
||||
properties: properties,
|
||||
outcomes: [...descriptor.outcomes],
|
||||
outcomes: [...activityDescriptor.outcomes],
|
||||
persistOutput: source.persistOutput,
|
||||
persistWorkflow: source.persistWorkflow,
|
||||
saveWorkflowContext: source.saveWorkflowContext,
|
||||
|
|
|
|||
|
|
@ -143,9 +143,15 @@ export class ElsaWorkflowInstanceViewerScreen {
|
|||
}
|
||||
|
||||
mapActivityModel(source: ActivityBlueprint): ActivityModel {
|
||||
const descriptors: Array<ActivityDescriptor> = state.activityDescriptors;
|
||||
const descriptor = descriptors.find(x => x.type == source.type);
|
||||
const properties: Array<ActivityDefinitionProperty> = collection.map(source.properties.data, (v, k) => ({name: k, expressions: {'Literal': v}, syntax: SyntaxNames.Literal}));
|
||||
const activityDescriptors: Array<ActivityDescriptor> = state.activityDescriptors;
|
||||
const activityDescriptor = activityDescriptors.find(x => x.type == source.type);
|
||||
const properties: Array<ActivityDefinitionProperty> = collection.map(source.properties.data, (value, key) => {
|
||||
const propertyDescriptor = activityDescriptor.properties.find(x => x.name == key);
|
||||
const defaultSyntax = propertyDescriptor.defaultSyntax || SyntaxNames.Literal;
|
||||
const expressions = {};
|
||||
expressions[defaultSyntax] = value;
|
||||
return ({name: key, expressions: expressions, syntax: defaultSyntax});
|
||||
});
|
||||
|
||||
return {
|
||||
activityId: source.id,
|
||||
|
|
@ -154,7 +160,7 @@ export class ElsaWorkflowInstanceViewerScreen {
|
|||
name: source.name,
|
||||
type: source.type,
|
||||
properties: properties,
|
||||
outcomes: [...descriptor.outcomes],
|
||||
outcomes: [...activityDescriptor.outcomes],
|
||||
persistOutput: source.persistOutput,
|
||||
persistWorkflow: source.persistWorkflow,
|
||||
saveWorkflowContext: source.saveWorkflowContext,
|
||||
|
|
|
|||
|
|
@ -11,14 +11,14 @@ export class ForkPlugin implements ElsaPlugin {
|
|||
|
||||
onActivityDesignDisplaying(context: ActivityDesignDisplayContext) {
|
||||
const activityModel = context.activityModel;
|
||||
|
||||
|
||||
if (activityModel.type !== 'Fork')
|
||||
return;
|
||||
|
||||
const props = activityModel.properties || [];
|
||||
const syntax = SyntaxNames.Json;
|
||||
const branches = props.find(x => x.name == 'Branches') || { expressions: {'Json': '[]'}, syntax: syntax };
|
||||
const branches = props.find(x => x.name == 'Branches') || {expressions: {'Json': '[]'}, syntax: syntax};
|
||||
const expression = branches.expressions[syntax];
|
||||
context.outcomes = parseJson(expression) || [];
|
||||
context.outcomes = !!expression['$values'] ? expression['$values'] : parseJson(expression) || [];
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue