1.0.1 • Published 9 months ago

@recr0ns/temporal v1.0.1

Weekly downloads
-
License
ISC
Repository
-
Last release
9 months ago

ASAP NestJS Temporal Module and helpers

Basic usage

  1. Create module / configure it / register workflows and activities
//# temporal.module.ts

export const LocalTemporalModule: DynamicModule = TemporalModule.forRootAsync({
  // Import activities services as extra providers
  extraProviders: [...taskActivities],

  // Inject required services include your activity services
  inject: [ConfigService, TaskActivities],

  // Use injected dependencies to configure temporal worker
  useFactory: async (config: ConfigService, taskActivities: TaskActivities) => {
    const temporal = cfg.get((_) => _.temporal);

    return {
      address: temporal.address,
      namespace: temporal.namespace,
      queue: temporal.queue,
      activities: [taskActivities], // pass as array
      workflowPath: path.resolve(__dirname, './workflows.js'),
    };
  },
});
  1. Register this module to RootModule
//# app.module.ts

@Module({
  imports: [
    ConfigModule,
    LocalTemporalModule, // <- Your module
  ],
})
export class AppModule {}