feat: add create or update workflow trigger (#14708)
### Description This PR focuses on https://github.com/twentyhq/core-team-issues/issues/1476 - introduces the handling of upserted events in the workflow trigger system ## Visual Appearance <img width="1792" height="1039" alt="Screenshot 2025-09-21 at 11 40 28 PM" src="https://github.com/user-attachments/assets/d926b566-f7d3-412b-b1ab-ed2064425f3d" /> <img width="501" height="1025" alt="Screenshot 2025-09-21 at 11 40 39 PM" src="https://github.com/user-attachments/assets/13c3031a-0762-4c80-8df1-fa74ca70a540" /> ### Changes - Added `UPSERTED` action to the `DatabaseEventAction` enum. - Updated the `WorkflowEditTriggerDatabaseEventForm` to support upserted events. --------- Co-authored-by: Thomas Trompette <thomas.trompette@sfr.fr>
This commit is contained in:
-5
@@ -1,17 +1,14 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
|
||||
import { isDefined } from 'class-validator';
|
||||
import { resolveInput } from 'twenty-shared/utils';
|
||||
import { canObjectBeManagedByWorkflow } from 'twenty-shared/workflow';
|
||||
import { Repository } from 'typeorm';
|
||||
|
||||
import { type WorkflowAction } from 'src/modules/workflow/workflow-executor/interfaces/workflow-action.interface';
|
||||
|
||||
import { RecordPositionService } from 'src/engine/core-modules/record-position/services/record-position.service';
|
||||
import { RecordInputTransformerService } from 'src/engine/core-modules/record-transformer/services/record-input-transformer.service';
|
||||
import { FieldActorSource } from 'src/engine/metadata-modules/field-metadata/composite-types/actor.composite-type';
|
||||
import { ObjectMetadataEntity } from 'src/engine/metadata-modules/object-metadata/object-metadata.entity';
|
||||
import { ScopedWorkspaceContextFactory } from 'src/engine/twenty-orm/factories/scoped-workspace-context.factory';
|
||||
import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager';
|
||||
import { WorkflowCommonWorkspaceService } from 'src/modules/workflow/common/workspace-services/workflow-common.workspace-service';
|
||||
@@ -28,8 +25,6 @@ import { type WorkflowCreateRecordActionInput } from 'src/modules/workflow/workf
|
||||
export class CreateRecordWorkflowAction implements WorkflowAction {
|
||||
constructor(
|
||||
private readonly twentyORMGlobalManager: TwentyORMGlobalManager,
|
||||
@InjectRepository(ObjectMetadataEntity)
|
||||
private readonly objectMetadataRepository: Repository<ObjectMetadataEntity>,
|
||||
private readonly scopedWorkspaceContextFactory: ScopedWorkspaceContextFactory,
|
||||
private readonly recordPositionService: RecordPositionService,
|
||||
private readonly recordInputTransformerService: RecordInputTransformerService,
|
||||
|
||||
Reference in New Issue
Block a user