New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@node-ts/bus-workflow

Package Overview
Dependencies
Maintainers
1
Versions
62
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@node-ts/bus-workflow - npm Package Compare versions

Comparing version 0.3.1 to 0.4.0

4

dist/workflow/decorators/handles.d.ts

@@ -6,3 +6,3 @@ import { Message } from '@node-ts/bus-messages';

import { WorkflowWithHandler } from './handler-workflow';
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core';
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core';
export declare const WORKFLOW_HANDLES_METADATA_KEY: unique symbol;

@@ -24,2 +24,2 @@ export declare class WorkflowHandlesMetadata {

*/
export declare function Handles<MessageType extends Message, WorkflowDataType extends WorkflowData, KeyType extends string, TargetType extends WorkflowWithHandler<MessageType, WorkflowDataType, KeyType> = WorkflowWithHandler<MessageType, WorkflowDataType, KeyType>>(messageConstructor: ClassConstructor<MessageType>, messageLookup: (message: MessageType, messageOptions: MessageOptions) => string | undefined, workflowDataProperty: keyof WorkflowDataType & string): (target: TargetType, propertyKey: KeyType) => void;
export declare function Handles<MessageType extends Message, WorkflowDataType extends WorkflowData, KeyType extends string, TargetType extends WorkflowWithHandler<MessageType, WorkflowDataType, KeyType> = WorkflowWithHandler<MessageType, WorkflowDataType, KeyType>>(messageConstructor: ClassConstructor<MessageType>, messageLookup: (message: MessageType, messageOptions: MessageAttributes) => string | undefined, workflowDataProperty: keyof WorkflowDataType & string): (target: TargetType, propertyKey: KeyType) => void;
import { Message } from '@node-ts/bus-messages';
import { WorkflowData } from './workflow-data';
import { MessageOptions } from '@node-ts/bus-core';
import { MessageAttributes } from '@node-ts/bus-core';
export declare class MessageWorkflowMapping<MessageType extends Message, WorkflowDataType extends WorkflowData> {
lookupMessage: (message: MessageType, messageOptions?: MessageOptions) => string | undefined;
lookupMessage: (message: MessageType, messageOptions?: MessageAttributes) => string | undefined;
readonly workflowDataProperty: keyof WorkflowDataType & string;

@@ -12,3 +12,3 @@ /**

*/
constructor(lookupMessage: (message: MessageType, messageOptions?: MessageOptions) => string | undefined, workflowDataProperty: keyof WorkflowDataType & string);
constructor(lookupMessage: (message: MessageType, messageOptions?: MessageAttributes) => string | undefined, workflowDataProperty: keyof WorkflowDataType & string);
}
import { Persistence } from './persistence';
import { WorkflowData } from '../workflow-data';
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core';
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core';
import { MessageWorkflowMapping } from '../message-workflow-mapping';

@@ -17,5 +17,5 @@ import { Message } from '@node-ts/bus-messages';

initializeWorkflow<TWorkflowData extends WorkflowData>(workflowDataConstructor: ClassConstructor<TWorkflowData>, _: MessageWorkflowMapping<Message, WorkflowData>[]): Promise<void>;
getWorkflowData<WorkflowDataType extends WorkflowData, MessageType extends Message>(workflowDataConstructor: ClassConstructor<WorkflowDataType>, messageMap: MessageWorkflowMapping<MessageType, WorkflowDataType>, message: MessageType, messageOptions: MessageOptions, includeCompleted?: boolean | undefined): Promise<WorkflowDataType[]>;
getWorkflowData<WorkflowDataType extends WorkflowData, MessageType extends Message>(workflowDataConstructor: ClassConstructor<WorkflowDataType>, messageMap: MessageWorkflowMapping<MessageType, WorkflowDataType>, message: MessageType, messageOptions: MessageAttributes, includeCompleted?: boolean | undefined): Promise<WorkflowDataType[]>;
saveWorkflowData<WorkflowDataType extends WorkflowData>(workflowData: WorkflowDataType): Promise<void>;
length(workflowDataConstructor: ClassConstructor<WorkflowData>): number;
}
import { Message } from '@node-ts/bus-messages';
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core';
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core';
import { WorkflowData } from '../workflow-data';

@@ -32,3 +32,3 @@ import { MessageWorkflowMapping } from '../message-workflow-mapping';

*/
getWorkflowData<WorkflowDataType extends WorkflowData, MessageType extends Message>(workflowDataConstructor: ClassConstructor<WorkflowDataType>, messageMap: MessageWorkflowMapping<MessageType, WorkflowDataType>, message: MessageType, messageOptions: MessageOptions, includeCompleted?: boolean): Promise<WorkflowDataType[]>;
getWorkflowData<WorkflowDataType extends WorkflowData, MessageType extends Message>(workflowDataConstructor: ClassConstructor<WorkflowDataType>, messageMap: MessageWorkflowMapping<MessageType, WorkflowDataType>, message: MessageType, messageOptions: MessageAttributes, includeCompleted?: boolean): Promise<WorkflowDataType[]>;
/**

@@ -35,0 +35,0 @@ * Saves a new workflow data model or updates an existing one. Persistence implementations should take care

@@ -8,7 +8,7 @@ import { Message } from '@node-ts/bus-messages';

import { Persistence } from '../persistence';
import { MessageOptions } from '@node-ts/bus-core';
import { MessageAttributes } from '@node-ts/bus-core';
export declare class HandlesProxy<TMessage extends Message, TWorkflowData extends WorkflowData> extends WorkflowHandlerProxy<TMessage, TWorkflowData> {
private messageMapping;
constructor(handler: WorkflowHandlerFn<TMessage, TWorkflowData>, workflowDataConstructor: WorkflowDataConstructor<TWorkflowData>, messageMapping: MessageWorkflowMapping<TMessage, TWorkflowData>, persistence: Persistence, logger: Logger);
getWorkflowData(message: TMessage, messageOptions: MessageOptions): Promise<TWorkflowData[]>;
getWorkflowData(message: TMessage, messageOptions: MessageAttributes): Promise<TWorkflowData[]>;
}
import { Message } from '@node-ts/bus-messages';
import { WorkflowData } from '../workflow-data';
import { MessageOptions } from '@node-ts/bus-core';
export declare type WorkflowHandlerFn<TMessage extends Message, TWorkflowData extends WorkflowData> = (message: TMessage, data: Readonly<TWorkflowData>, messageOptions: MessageOptions) => Promise<Partial<TWorkflowData>> | Promise<void> | Partial<TWorkflowData> | void;
import { MessageAttributes } from '@node-ts/bus-core';
export declare type WorkflowHandlerFn<TMessage extends Message, TWorkflowData extends WorkflowData> = (message: TMessage, data: Readonly<TWorkflowData>, messageOptions: MessageAttributes) => Promise<Partial<TWorkflowData>> | Promise<void> | Partial<TWorkflowData> | void;
import { Message } from '@node-ts/bus-messages';
import { WorkflowData, WorkflowDataConstructor } from '../workflow-data';
import { Logger } from '@node-ts/logger-core';
import { Handler, MessageOptions } from '@node-ts/bus-core';
import { Handler, MessageAttributes } from '@node-ts/bus-core';
import { WorkflowHandlerFn } from './workflow-handler-fn';

@@ -15,5 +15,5 @@ import { Persistence } from '../persistence';

constructor(handler: WorkflowHandlerFn<TMessage, TWorkflowData>, workflowDataConstructor: WorkflowDataConstructor<TWorkflowData>, persistence: Persistence, logger: Logger);
handle(message: TMessage, messageOptions: MessageOptions): Promise<void>;
abstract getWorkflowData(message: TMessage, messageOptions: MessageOptions): Promise<TWorkflowData[]>;
handle(message: TMessage, messageOptions: MessageAttributes): Promise<void>;
abstract getWorkflowData(message: TMessage, messageOptions: MessageAttributes): Promise<TWorkflowData[]>;
private persist;
}
{
"name": "@node-ts/bus-workflow",
"description": "A workflow engine for orchestrating logic flows in distributed applications.",
"version": "0.3.1",
"version": "0.4.0",
"license": "MIT",

@@ -24,3 +24,3 @@ "main": "./dist/index.js",

"devDependencies": {
"@node-ts/bus-core": "^0.3.1",
"@node-ts/bus-core": "^0.4.0",
"@node-ts/code-standards": "^0.0.10",

@@ -59,3 +59,3 @@ "@node-ts/logger-core": "^0.0.17",

],
"gitHead": "18b72030c51a4929214537554ff0707a640af5b3"
"gitHead": "4dd4642852cb2af8e8f0941ce313045a57f1beed"
}

@@ -7,3 +7,3 @@ import { Message } from '@node-ts/bus-messages'

import { WorkflowWithHandler } from './handler-workflow'
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core'
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core'

@@ -42,3 +42,3 @@ export const WORKFLOW_HANDLES_METADATA_KEY = Symbol.for('node-ts/bus/workflow-handles-steps')

messageConstructor: ClassConstructor<MessageType>,
messageLookup: (message: MessageType, messageOptions: MessageOptions) => string | undefined,
messageLookup: (message: MessageType, messageOptions: MessageAttributes) => string | undefined,
workflowDataProperty: keyof WorkflowDataType & string

@@ -45,0 +45,0 @@ ): (target: TargetType, propertyKey: KeyType) => void {

import { Message } from '@node-ts/bus-messages'
import { WorkflowData } from './workflow-data'
import { MessageOptions } from '@node-ts/bus-core'
import { MessageAttributes } from '@node-ts/bus-core'

@@ -13,3 +13,3 @@ export class MessageWorkflowMapping<MessageType extends Message, WorkflowDataType extends WorkflowData> {

constructor (
public lookupMessage: (message: MessageType, messageOptions?: MessageOptions) => string | undefined,
public lookupMessage: (message: MessageType, messageOptions?: MessageAttributes) => string | undefined,
readonly workflowDataProperty: keyof WorkflowDataType & string

@@ -16,0 +16,0 @@ ) {

@@ -7,3 +7,3 @@ import { InMemoryPersistence } from './in-memory-persistence'

import { Logger } from '@node-ts/logger-core'
import { MessageOptions } from '@node-ts/bus-core';
import { MessageAttributes } from '@node-ts/bus-core';

@@ -24,3 +24,3 @@ describe('InMemoryPersistence', () => {

describe('when getting workflow data', () => {
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()

@@ -99,3 +99,3 @@ beforeEach(async () => {

const workflowId = 'abc'
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()

@@ -102,0 +102,0 @@ beforeEach(async () => {

import { Persistence } from './persistence'
import { WorkflowData, WorkflowStatus } from '../workflow-data'
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core'
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core'
import { MessageWorkflowMapping } from '../message-workflow-mapping'

@@ -39,3 +39,3 @@ import { Message } from '@node-ts/bus-messages'

message: MessageType,
messageOptions: MessageOptions,
messageOptions: MessageAttributes,
includeCompleted?: boolean | undefined

@@ -42,0 +42,0 @@ ): Promise<WorkflowDataType[]> {

import { Message } from '@node-ts/bus-messages'
import { ClassConstructor, MessageOptions } from '@node-ts/bus-core'
import { ClassConstructor, MessageAttributes } from '@node-ts/bus-core'
import { WorkflowData } from '../workflow-data'

@@ -43,3 +43,3 @@ import { MessageWorkflowMapping } from '../message-workflow-mapping'

message: MessageType,
messageOptions: MessageOptions,
messageOptions: MessageAttributes,
includeCompleted?: boolean

@@ -46,0 +46,0 @@ ): Promise<WorkflowDataType[]>

@@ -10,3 +10,3 @@ import { IMock, It, Mock, Times } from 'typemoq'

import { WorkflowStatus } from '../workflow-data'
import { MessageOptions } from '@node-ts/bus-core';
import { MessageAttributes } from '@node-ts/bus-core';

@@ -39,3 +39,3 @@ describe('HandlesProxy', () => {

let command: TestCommand
let messageOptions: MessageOptions
let messageOptions: MessageAttributes
let dataInput: TestWorkflowData

@@ -46,3 +46,3 @@ let dataOutput: Partial<TestWorkflowData>

command = new TestCommand('value')
messageOptions = new MessageOptions()
messageOptions = new MessageAttributes()

@@ -101,3 +101,3 @@ dataInput = new TestWorkflowData()

let comand: TestCommand
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()

@@ -104,0 +104,0 @@ beforeEach(() => {

@@ -8,3 +8,3 @@ import { Message } from '@node-ts/bus-messages'

import { Persistence } from '../persistence'
import { MessageOptions } from '@node-ts/bus-core'
import { MessageAttributes } from '@node-ts/bus-core'

@@ -24,3 +24,3 @@ export class HandlesProxy<TMessage extends Message, TWorkflowData extends WorkflowData>

async getWorkflowData (message: TMessage, messageOptions: MessageOptions): Promise<TWorkflowData[]> {
async getWorkflowData (message: TMessage, messageOptions: MessageAttributes): Promise<TWorkflowData[]> {
const searchValue = this.messageMapping.lookupMessage(message, messageOptions)

@@ -27,0 +27,0 @@

@@ -8,3 +8,3 @@ import { IMock, It, Mock, Times } from 'typemoq'

import { WorkflowStatus } from '../workflow-data'
import { MessageOptions } from '@node-ts/bus-core'
import { MessageAttributes } from '@node-ts/bus-core'

@@ -34,3 +34,3 @@ describe('StartedByProxy', () => {

let command: TestCommand
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()
let dataOutput: Partial<TestWorkflowData>

@@ -73,3 +73,3 @@

let command: TestCommand
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()

@@ -76,0 +76,0 @@ beforeEach(async () => {

import { Message } from '@node-ts/bus-messages'
import { WorkflowData } from '../workflow-data'
import { MessageOptions } from '@node-ts/bus-core'
import { MessageAttributes } from '@node-ts/bus-core'

@@ -8,3 +8,3 @@ export type WorkflowHandlerFn<TMessage extends Message, TWorkflowData extends WorkflowData> = (

data: Readonly<TWorkflowData>,
messageOptions: MessageOptions
messageOptions: MessageAttributes
) => Promise<Partial<TWorkflowData>> | Promise<void> | Partial<TWorkflowData> | void
import { Message } from '@node-ts/bus-messages'
import { WorkflowData, WorkflowDataConstructor, WorkflowStatus } from '../workflow-data'
import { Logger } from '@node-ts/logger-core'
import { Handler, MessageOptions } from '@node-ts/bus-core'
import { Handler, MessageAttributes } from '@node-ts/bus-core'
import { WorkflowHandlerFn } from './workflow-handler-fn'

@@ -24,3 +24,3 @@ import { Persistence } from '../persistence'

async handle (message: TMessage, messageOptions: MessageOptions): Promise<void> {
async handle (message: TMessage, messageOptions: MessageAttributes): Promise<void> {
this.logger.debug('Getting workflow data for message', { message, messageOptions })

@@ -77,3 +77,3 @@

abstract getWorkflowData (message: TMessage, messageOptions: MessageOptions): Promise<TWorkflowData[]>
abstract getWorkflowData (message: TMessage, messageOptions: MessageAttributes): Promise<TWorkflowData[]>

@@ -80,0 +80,0 @@ private async persist (data: TWorkflowData): Promise<void> {

import { Container } from 'inversify'
import { BusModule, Bus, BUS_SYMBOLS, ApplicationBootstrap, MessageOptions } from '@node-ts/bus-core'
import { BusModule, Bus, BUS_SYMBOLS, ApplicationBootstrap, MessageAttributes } from '@node-ts/bus-core'
import { Persistence } from './persistence'

@@ -64,3 +64,3 @@ import { BUS_WORKFLOW_SYMBOLS } from '../bus-workflow-symbols'

let workflowData: TestWorkflowData[]
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()

@@ -135,3 +135,3 @@ beforeAll(async () => {

describe('when a workflow is completed in a StartedBy handler', () => {
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()
const propertyMapping = new MessageWorkflowMapping<TestCommand, TestWorkflowStartedByCompletesData> (

@@ -158,3 +158,3 @@ cmd => cmd.property1,

describe('when a StartedBy handler returns a discardStep', () => {
const messageOptions = new MessageOptions()
const messageOptions = new MessageAttributes()
const propertyMapping = new MessageWorkflowMapping<TestCommand, TestWorkflowStartedByDiscardData> (

@@ -161,0 +161,0 @@ cmd => cmd.property1,

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc