@@ -6,6 +6,7 @@ import { toError } from '@sim/utils/errors'
66import { generateId } from '@sim/utils/id'
77import { and , eq , isNull , min , ne } from 'drizzle-orm'
88import { generateRequestId } from '@/lib/core/utils/request'
9+ import { getNextWorkflowColor } from '@/lib/workflows/colors'
910import { buildDefaultWorkflowArtifacts } from '@/lib/workflows/defaults'
1011import { archiveWorkflow , restoreWorkflow } from '@/lib/workflows/lifecycle'
1112import type { OrchestrationErrorCode } from '@/lib/workflows/orchestration/types'
@@ -212,6 +213,7 @@ export async function performCreateWorkflow(
212213 ? params . sortOrder
213214 : await nextWorkflowSortOrder ( params . workspaceId , folderId )
214215 const now = new Date ( )
216+ const color = params . color ?? getNextWorkflowColor ( )
215217 const { workflowState, subBlockValues, startBlockId } = buildDefaultWorkflowArtifacts ( )
216218
217219 await db . transaction ( async ( tx ) => {
@@ -223,7 +225,7 @@ export async function performCreateWorkflow(
223225 sortOrder,
224226 name,
225227 description : params . description ,
226- color : params . color ,
228+ color,
227229 lastSynced : now ,
228230 createdAt : now ,
229231 updatedAt : now ,
@@ -248,7 +250,7 @@ export async function performCreateWorkflow(
248250 metadata : {
249251 name,
250252 description : params . description || undefined ,
251- color : params . color ,
253+ color,
252254 workspaceId : params . workspaceId ,
253255 folderId : folderId || undefined ,
254256 sortOrder,
@@ -261,7 +263,7 @@ export async function performCreateWorkflow(
261263 id : workflowId ,
262264 name,
263265 description : params . description ,
264- color : params . color ,
266+ color,
265267 workspaceId : params . workspaceId ,
266268 folderId,
267269 sortOrder,
0 commit comments