Releases: nocode-js/sequential-workflow-editor
0.9.2
0.9.1
0.9.0
0.8.0
0.7.2
We added a new type of a validator: step validator. It allows to restrict a placement of a step in a definition. For example, you can enforce that a step can be placed only inside a specific step.
createStepModel<WriteSocketStep>('writeSocket', 'task', step => {
step.validator({
validate(context: StepValidatorContext) {
const parentTypes = context.getParentStepTypes();
return parentTypes.includes('socket');
? null // No errors
: 'The write socket step must be inside a socket.';
}
});
});Additionally we've renamed:
- the
CustomValidatorContextclass toPropertyValidatorContext, - the
customValidatormethod of thePropertyModelBuilderclass tovalidator.
0.7.1
This version renames all *ValueModel functions to create*ValueModel, adding the create prefix.
// Old
stringValueModel({ ... });
// New
createStringValueModel({ ... });This version doesn't introduce breaking changes. The old functions are still available, but they are deprecated.
0.7.0
0.6.0
- This version brings small visual improvements.
- Added a new value model: string dictionary (
stringDictionaryValueModel({ ... })). This value model allows you to specify a dictionary of string values. - The string value model now supports multiline mode.
stringValueModel({ multiline: true })
stringValueModel({ multiline: 10 })Breaking changes:
The createStepEditorProvider() method of the EditorProvider class now returns a new type of editor provider. This method no longer accepts any arguments.
type StepEditorProvider = (step: Step, context: StepEditorContext, definition: Definition) => HTMLElement;
EditorProvider.createStepEditorProvider(): StepEditorProvider;The ValueKnownType enum is renamed to WellKnownValueType.
0.5.0
The DefinitionValidator class supports the validation of the whole definition. Use the validate method to validate a definition deeply. This method will validate all steps in the definition at once. Now you may easily validate a definition in the back-end before saving it to the storage.
const validator = DefinitionValidator.create(definitionModel, definitionWalker);
if (validator.validate(definition)) {
throw new Error('Invalid definition');
}Breaking changes:
- Renamed the
ModelValidatorclass toDefinitionValidator.