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

Function resolveCanonicalMode

apps/sim/lib/workflows/subblocks/visibility.ts:154–170  ·  view source on GitHub ↗
(
  group: CanonicalGroup,
  values: Record<string, unknown>,
  overrides?: CanonicalModeOverrides
)

Source from the content-addressed store, hash-verified

152 * Determine the active mode for a canonical group.
153 */
154export function resolveCanonicalMode(
155 group: CanonicalGroup,
156 values: Record<string, unknown>,
157 overrides?: CanonicalModeOverrides
158): CanonicalMode {
159 const override = overrides?.[group.canonicalId]
160 if (override === 'advanced' && group.advancedIds.length > 0) return 'advanced'
161 if (override === 'basic' && group.basicId) return 'basic'
162
163 const { basicValue, advancedValue } = getCanonicalValues(group, values)
164 const hasBasic = isNonEmptyValue(basicValue)
165 const hasAdvanced = isNonEmptyValue(advancedValue)
166
167 if (!group.basicId) return 'advanced'
168 if (!hasBasic && hasAdvanced) return 'advanced'
169 return 'basic'
170}
171
172/**
173 * Evaluate a subblock condition against a map of raw values.

Callers 15

getSubBlocksForToolInputFunction · 0.90
backfillCanonicalModesFunction · 0.90
isDormantCanonicalMemberFunction · 0.90
collectSelectorFieldsFunction · 0.90
shouldSerializeSubBlockFunction · 0.90
extractBlockParamsFunction · 0.90
collectBlockFieldIssuesFunction · 0.90
EditorFunction · 0.90

Calls 2

getCanonicalValuesFunction · 0.85
isNonEmptyValueFunction · 0.85

Tested by

no test coverage detected