11import { Request } from 'express'
2- import * as path from 'path'
3- import { cloneDeep , omit } from 'lodash'
42import {
5- IMessage ,
63 addArrayFilesToStorage ,
7- mapMimeTypeToInputField ,
8- mapExtToInputField ,
94 getFileFromUpload ,
5+ IMessage ,
6+ mapExtToInputField ,
7+ mapMimeTypeToInputField ,
108 removeSpecificFileFromUpload
119} from 'flowise-components'
12- import logger from '../utils/logger'
10+ import { StatusCodes } from 'http-status-codes'
11+ import { cloneDeep , omit } from 'lodash'
12+ import * as path from 'path'
13+ import { v4 as uuidv4 } from 'uuid'
14+ import { ChatType , IExecuteFlowParams , IncomingInput , INodeDirectedGraph , IReactFlowObject , MODE } from '../Interface'
15+ import { FLOWISE_COUNTER_STATUS , FLOWISE_METRIC_COUNTERS } from '../Interface.Metrics'
16+ import { ChatFlow } from '../database/entities/ChatFlow'
17+ import { UpsertHistory } from '../database/entities/UpsertHistory'
18+ import { Variable } from '../database/entities/Variable'
19+ import { Organization } from '../enterprise/database/entities/organization.entity'
20+ import { Workspace } from '../enterprise/database/entities/workspace.entity'
21+ import { getWorkspaceSearchOptions } from '../enterprise/utils/ControllerServiceUtils'
22+ import { InternalFlowiseError } from '../errors/internalFlowiseError'
23+ import { getErrorMessage } from '../errors/utils'
1324import {
1425 buildFlow ,
1526 constructGraphs ,
16- getAllConnectedNodes ,
1727 findMemoryNode ,
18- getMemorySessionId ,
28+ getAllConnectedNodes ,
29+ getAPIOverrideConfig ,
1930 getAppVersion ,
20- getTelemetryFlowObj ,
31+ getMemorySessionId ,
2132 getStartingNodes ,
22- getAPIOverrideConfig
33+ getTelemetryFlowObj
2334} from '../utils'
24- import { validateFlowAPIKey } from './validateKey'
25- import { IncomingInput , INodeDirectedGraph , IReactFlowObject , ChatType , IExecuteFlowParams , MODE } from '../Interface'
26- import { ChatFlow } from '../database/entities/ChatFlow'
2735import { getRunningExpressApp } from '../utils/getRunningExpressApp'
28- import { UpsertHistory } from '../database/entities/UpsertHistory'
29- import { InternalFlowiseError } from '../errors/internalFlowiseError'
30- import { StatusCodes } from 'http-status-codes'
31- import { checkStorage , updateStorageUsage } from './quotaUsage'
32- import { validateFileMimeTypeAndExtensionMatch } from './fileValidation'
33- import { getErrorMessage } from '../errors/utils'
34- import { v4 as uuidv4 } from 'uuid'
35- import { FLOWISE_COUNTER_STATUS , FLOWISE_METRIC_COUNTERS } from '../Interface.Metrics'
36- import { Variable } from '../database/entities/Variable'
37- import { getWorkspaceSearchOptions } from '../enterprise/utils/ControllerServiceUtils'
36+ import logger from '../utils/logger'
3837import { OMIT_QUEUE_JOB_DATA } from './constants'
39- import { Workspace } from '../enterprise/database/entities/workspace.entity'
40- import { Organization } from '../enterprise/database/entities/organization.entity'
38+ import { validateFileMimeTypeAndExtensionMatch } from './fileValidation'
39+ import { checkStorage , updateStorageUsage } from './quotaUsage'
40+ import { validateFlowAPIKey } from './validateKey'
4141
4242export const executeUpsert = async ( {
4343 componentNodes,
@@ -262,7 +262,6 @@ export const upsertVector = async (req: Request, isInternal: boolean = false) =>
262262 }
263263 }
264264
265- // This can be public API, so we can only get orgId from the chatflow
266265 const chatflowWorkspaceId = chatflow . workspaceId
267266 const workspace = await appServer . AppDataSource . getRepository ( Workspace ) . findOneBy ( {
268267 id : chatflowWorkspaceId
@@ -272,6 +271,8 @@ export const upsertVector = async (req: Request, isInternal: boolean = false) =>
272271 }
273272 const workspaceId = workspace . id
274273
274+ if ( workspaceId !== req . user ?. activeWorkspaceId ) throw new InternalFlowiseError ( StatusCodes . UNAUTHORIZED , 'Unauthorized' )
275+
275276 const org = await appServer . AppDataSource . getRepository ( Organization ) . findOneBy ( {
276277 id : workspace . organizationId
277278 } )
0 commit comments