UNPKG

@builder.io/mitosis

Version:

Write components once, run everywhere. Compiles to Vue, React, Solid, and Liquid. Import code from Figma and Builder.io

16 lines (15 loc) 807 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getSignalInputs = void 0; const getSignalInputs = ({ props, json, writeableSignals, requiredSignals, }) => { const propsTypeRef = json.propsTypeRef !== 'any' ? json.propsTypeRef : undefined; return props .map((prop) => { const hasDefaultProp = json.defaultProps && json.defaultProps.hasOwnProperty(prop); const propType = propsTypeRef ? `${propsTypeRef}["${prop}"]` : 'any'; const defaultProp = hasDefaultProp ? `defaultProps["${prop}"]` : ''; return `${prop} = ${writeableSignals.includes(prop) ? 'model' : 'input'}${requiredSignals.includes(prop) ? '.required' : ''}<${propType}>(${defaultProp})`; }) .join('\n'); }; exports.getSignalInputs = getSignalInputs;