![Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility](https://cdn.sanity.io/images/cgdhsj6q/production/97774ea8c88cc8f4bed2766c31994ebc38116948-1664x1366.png?w=400&fit=max&auto=format)
Security News
Deno 2.2 Improves Dependency Management and Expands Node.js Compatibility
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
sequential-workflow-editor
Advanced tools
Powerful workflow editor builder for sequential workflows. Written in TypeScript. Mainly designed to work with the Sequential Workflow Designer component. To execute your model you may use the Sequential Workflow Machine or any other workflow engine. It supports front-end and back-end strict validation of the model. 0 external dependencies.
📝 Check the documentation for more details.
🤩 Don't miss the pro version.
Pro:
Install the sequential-workflow-editor-model
package in your front-end project or your common project for front-end and back-end (check this article):
npm i sequential-workflow-editor-model
Install the sequential-workflow-editor
package in your front-end project:
npm i sequential-workflow-editor
At the beginning you need to create a model of your workflow for the editor. In this short tutorial let's consider the following workflow:
import { Definition, Step } from 'sequential-workflow-model';
export interface MyDefinition extends Definition {
properties: {
inputs: VariableDefinitions;
};
}
export interface LogStep extends Step {
type: 'log';
componentType: 'task';
properties: {
message: string;
};
}
Now we can create a model for the step:
import { createStepModel, createStringValueModel } from 'sequential-workflow-editor-model';
export const logStepModel = createStepModel<LogStep>('log', 'task', step => {
step.property('message')
.value(
createStringValueModel({
minLength: 1
})
)
.label('Message to log');
});
If your workflow contains global properties you can create a root model:
import { createRootModel, createVariableDefinitionsValueModel } from 'sequential-workflow-editor-model';
export const rootModel = createRootModel<MyDefinition>(root => {
root.property('inputs')
.value(
createVariableDefinitionsValueModel({})
);
);
Now we can create a definition model:
import { createDefinitionModel } from 'sequential-workflow-editor-model';
export const definitionModel = createDefinitionModel<MyDefinition>(model => {
model.valueTypes(['string', 'number']);
model.root(rootModel);
model.steps([logStepModel]);
});
To create an editor provider you need to pass a definition model to the EditorProvider.create
method. The provider requires a unique identifier generator. You can use the Uid
class from the sequential-workflow-designer
package.
import { EditorProvider } from 'sequential-workflow-editor';
import { Uid } from 'sequential-workflow-designer';
export const editorProvider = EditorProvider.create(definitionModel, {
uidGenerator: Uid.next
});
We have everything to attach the editor provider to a designer. For the Sequential Workflow Designer you need to pass the following options:
import { Designer } from 'sequential-workflow-designer';
const designer = Designer.create(placeholder, startDefinition, {
editors: {
rootEditorProvider: editorProvider.createRootEditorProvider(),
stepEditorProvider: editorProvider.createStepEditorProvider()
},
validator: {
step: editorProvider.createStepValidator(),
root: editorProvider.createRootValidator()
},
// ...
});
That's it! Check the source code of our demo to see the final code.
This project is released under the MIT license.
FAQs
![Sequential Workflow Editor](.github/cover.png)
The npm package sequential-workflow-editor receives a total of 143 weekly downloads. As such, sequential-workflow-editor popularity was classified as not popular.
We found that sequential-workflow-editor demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Deno 2.2 enhances Node.js compatibility, improves dependency management, adds OpenTelemetry support, and expands linting and task automation for developers.
Security News
React's CRA deprecation announcement sparked community criticism over framework recommendations, leading to quick updates acknowledging build tools like Vite as valid alternatives.
Security News
Ransomware payment rates hit an all-time low in 2024 as law enforcement crackdowns, stronger defenses, and shifting policies make attacks riskier and less profitable.