import {MountOrchestrator, Transformer, arr0} from '../Transform.js'; import { Derivative, UnitOfWork } from '../ts-refs/trans-render/types.js'; export async function getDerivedVal( transformer: Transformer, uow: UnitOfWork, d: Derivative, matchingElement: Element, ){ switch(typeof d){ case 'number':{ return await transformer.getNumberUVal(uow, d); } case 'function':{ const {model} = transformer; return await d(model, transformer, uow, matchingElement); } case 'object': { if(Array.isArray(d)){ return await transformer.getArrayVal(uow, d); }else{ return await transformer.getComplexDerivedVal(uow, d); } } case 'string': { const {model} = transformer; return (model[d])(model, transformer, uow, matchingElement); } } }