INNER CODE UNIT · TypeScript
valueExpression
f5/unovis · packages/mcp/src/codegen/index.ts:123
function valueExpression (value: unknown, emit: Emit): string | undefined {
if (value === undefined) return undefined
if (isAccessorRef(value)) return accessorExpression(value, emit)
// Map data: import the topojson instead of inlining megabytes
const marker = (value as { $unovisMap?: string })?.$unovisMap
if (marker) {
emit.mapImports.add(marker)
return marker
}
if (isBigMapPayload(value)) return undefined
if (Array.isArray(value)) {
const parts = value.map(item => valueExpression(item, emit)).filter((v): v is string => v !== undefined)
return `[${parts.join(', ')}]`
}
if (typeof value === 'object' && value !== null) {
const entries = Object.entries(value)