MCPcopy Index your code
hub / github.com/simstudioai/sim / useAvailableEnvVarKeys

Function useAvailableEnvVarKeys

apps/sim/hooks/use-available-env-vars.ts:4–32  ·  view source on GitHub ↗
(workspaceId?: string)

Source from the content-addressed store, hash-verified

2import { usePersonalEnvironment, useWorkspaceEnvironment } from '@/hooks/queries/environment'
3
4export function useAvailableEnvVarKeys(workspaceId?: string): Set<string> | undefined {
5 const { data: personalEnv, isLoading: personalLoading } = usePersonalEnvironment()
6 const { data: workspaceEnvData, isLoading: workspaceLoading } = useWorkspaceEnvironment(
7 workspaceId || ''
8 )
9
10 return useMemo(() => {
11 if (personalLoading || (workspaceId && workspaceLoading)) {
12 return undefined
13 }
14
15 const keys = new Set<string>()
16
17 if (personalEnv) {
18 Object.keys(personalEnv).forEach((key) => keys.add(key))
19 }
20
21 if (workspaceId && workspaceEnvData) {
22 if (workspaceEnvData.workspace) {
23 Object.keys(workspaceEnvData.workspace).forEach((key) => keys.add(key))
24 }
25 if (workspaceEnvData.personal) {
26 Object.keys(workspaceEnvData.personal).forEach((key) => keys.add(key))
27 }
28 }
29
30 return keys
31 }, [personalEnv, workspaceEnvData, personalLoading, workspaceLoading, workspaceId])
32}
33
34export function createShouldHighlightEnvVar(
35 availableEnvVars: Set<string> | undefined

Callers 5

MCPFunction · 0.90
ConditionInputFunction · 0.90
tool-input.tsxFile · 0.90
code.tsxFile · 0.90
useSubflowEditorFunction · 0.90

Calls 3

usePersonalEnvironmentFunction · 0.90
useWorkspaceEnvironmentFunction · 0.90
addMethod · 0.45

Tested by

no test coverage detected