diff --git a/packages/core/src/__tests__/__snapshots__/alpine.test.ts.snap b/packages/core/src/__tests__/__snapshots__/alpine.test.ts.snap index 8f5690c779..d4bdc46ea9 100644 --- a/packages/core/src/__tests__/__snapshots__/alpine.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/alpine.test.ts.snap @@ -1609,7 +1609,7 @@ exports[`Alpine.js > jsx > Javascript Test > defaultProps 1`] = ` @@ -4076,7 +4076,7 @@ exports[`Alpine.js > jsx > Typescript Test > defaultProps 1`] = ` diff --git a/packages/core/src/__tests__/__snapshots__/angular.import.test.ts.snap b/packages/core/src/__tests__/__snapshots__/angular.import.test.ts.snap index b96ffae7da..c999eb1b13 100644 --- a/packages/core/src/__tests__/__snapshots__/angular.import.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/angular.import.test.ts.snap @@ -2689,6 +2689,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -2717,7 +2719,7 @@ const defaultProps = { @@ -2729,6 +2731,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } @@ -7017,6 +7020,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -7045,7 +7050,7 @@ const defaultProps = { @@ -7057,6 +7062,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } diff --git a/packages/core/src/__tests__/__snapshots__/angular.mapper.test.ts.snap b/packages/core/src/__tests__/__snapshots__/angular.mapper.test.ts.snap index 0e972b516d..505a6f1dd8 100644 --- a/packages/core/src/__tests__/__snapshots__/angular.mapper.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/angular.mapper.test.ts.snap @@ -2739,6 +2739,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -2767,7 +2769,7 @@ const defaultProps = { @@ -2779,6 +2781,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } @@ -7157,6 +7160,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -7185,7 +7190,7 @@ const defaultProps = { @@ -7197,6 +7202,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } diff --git a/packages/core/src/__tests__/__snapshots__/angular.test.ts.snap b/packages/core/src/__tests__/__snapshots__/angular.test.ts.snap index 8cba44386e..64da4bb6ec 100644 --- a/packages/core/src/__tests__/__snapshots__/angular.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/angular.test.ts.snap @@ -5517,6 +5517,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -5545,7 +5547,7 @@ const defaultProps = { @@ -5557,6 +5559,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } @@ -5580,6 +5583,8 @@ import { CommonModule } from \\"@angular/common\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -5608,7 +5613,7 @@ const defaultProps = { @@ -5622,6 +5627,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } @@ -14433,6 +14439,8 @@ import { Output, EventEmitter, Component, Input } from \\"@angular/core\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -14461,7 +14469,7 @@ const defaultProps = { @@ -14473,6 +14481,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } @@ -14496,6 +14505,8 @@ import { CommonModule } from \\"@angular/common\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -14524,7 +14535,7 @@ const defaultProps = { @@ -14538,6 +14549,7 @@ export class Button { @Input() openLinkInNewTab: ButtonProps[\\"openLinkInNewTab\\"] = defaultProps[\\"openLinkInNewTab\\"]; @Input() text: ButtonProps[\\"text\\"] = defaultProps[\\"text\\"]; + @Input() buttonText: ButtonProps[\\"buttonText\\"]; @Output() onClick = new EventEmitter(); } diff --git a/packages/core/src/__tests__/__snapshots__/html.test.ts.snap b/packages/core/src/__tests__/__snapshots__/html.test.ts.snap index e45864e7da..6b527cb43e 100644 --- a/packages/core/src/__tests__/__snapshots__/html.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/html.test.ts.snap @@ -3645,7 +3645,7 @@ exports[`Html > jsx > Javascript Test > defaultProps 1`] = ` @@ -3705,7 +3705,7 @@ exports[`Html > jsx > Javascript Test > defaultProps 1`] = ` }); document.querySelectorAll(\\"[data-el='div-2']\\").forEach((el) => { - renderTextNode(el, props.text); + renderTextNode(el, props.buttonText); }); destroyAnyNodes(); @@ -9335,7 +9335,7 @@ exports[`Html > jsx > Typescript Test > defaultProps 1`] = ` @@ -9395,7 +9395,7 @@ exports[`Html > jsx > Typescript Test > defaultProps 1`] = ` }); document.querySelectorAll(\\"[data-el='div-2']\\").forEach((el) => { - renderTextNode(el, props.text); + renderTextNode(el, props.buttonText); }); destroyAnyNodes(); diff --git a/packages/core/src/__tests__/__snapshots__/lit.test.ts.snap b/packages/core/src/__tests__/__snapshots__/lit.test.ts.snap index dee0b3cd36..74866fa70a 100644 --- a/packages/core/src/__tests__/__snapshots__/lit.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/lit.test.ts.snap @@ -2608,6 +2608,8 @@ import { customElement, property, state, query } from \\"lit/decorators.js\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -2632,6 +2634,7 @@ export default class Button extends LitElement { @property() openLinkInNewTab: any; @property() text: any; @property() onClick: any; + @property() buttonText: any; render() { return html\` @@ -2657,7 +2660,7 @@ export default class Button extends LitElement { event ) => this.onClick(event)} > - \${this.text} + \${this.buttonText} \` : null @@ -6813,6 +6816,8 @@ import { customElement, property, state, query } from \\"lit/decorators.js\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -6837,6 +6842,7 @@ export default class Button extends LitElement { @property() openLinkInNewTab: any; @property() text: any; @property() onClick: any; + @property() buttonText: any; render() { return html\` @@ -6862,7 +6868,7 @@ export default class Button extends LitElement { event ) => this.onClick(event)} > - \${this.text} + \${this.buttonText} \` : null diff --git a/packages/core/src/__tests__/__snapshots__/marko.test.ts.snap b/packages/core/src/__tests__/__snapshots__/marko.test.ts.snap index 450e49c601..08dd29ddb0 100644 --- a/packages/core/src/__tests__/__snapshots__/marko.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/marko.test.ts.snap @@ -1528,7 +1528,7 @@ exports[`Marko > jsx > Javascript Test > defaultProps 1`] = ` ...(props.attributes) on-click(event => input.onClick(event)) > - \${input.text} + \${input.buttonText} " `; @@ -3718,7 +3718,7 @@ exports[`Marko > jsx > Typescript Test > defaultProps 1`] = ` ...(props.attributes) on-click(event => input.onClick(event)) > - \${input.text} + \${input.buttonText} " `; diff --git a/packages/core/src/__tests__/__snapshots__/parse-jsx.test.ts.snap b/packages/core/src/__tests__/__snapshots__/parse-jsx.test.ts.snap index b4ee750e18..16654db23b 100644 --- a/packages/core/src/__tests__/__snapshots__/parse-jsx.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/parse-jsx.test.ts.snap @@ -7776,7 +7776,7 @@ exports[`Parse JSX > defaultProps 1`] = ` "@type": "@builder.io/mitosis/node", "bindings": { "_text": { - "code": "props.text", + "code": "props.buttonText", }, }, "children": [], @@ -7880,6 +7880,8 @@ exports[`Parse JSX > defaultProps 1`] = ` "export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; diff --git a/packages/core/src/__tests__/__snapshots__/preact.test.ts.snap b/packages/core/src/__tests__/__snapshots__/preact.test.ts.snap index d5ecdaf091..ea7d5c8bcf 100644 --- a/packages/core/src/__tests__/__snapshots__/preact.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/preact.test.ts.snap @@ -1823,7 +1823,7 @@ export default function Button(props) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} @@ -4941,6 +4941,8 @@ import { h, Fragment } from \\"preact\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -4968,7 +4970,7 @@ export default function Button(props: ButtonProps) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/qwik.test.ts.snap b/packages/core/src/__tests__/__snapshots__/qwik.test.ts.snap index 9cfe970af2..8f7d988c7e 100644 --- a/packages/core/src/__tests__/__snapshots__/qwik.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/qwik.test.ts.snap @@ -2891,7 +2891,7 @@ export const Button = component$((props) => { {...props.attributes} onClick$={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} @@ -5890,6 +5890,8 @@ import { Fragment, component$, h } from \\"@builder.io/qwik\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -5912,7 +5914,7 @@ export const Button = component$((props: ButtonProps) => { {...props.attributes} onClick$={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/react-native.test.ts.snap b/packages/core/src/__tests__/__snapshots__/react-native.test.ts.snap index 55e58e1a34..9bfc0f43db 100644 --- a/packages/core/src/__tests__/__snapshots__/react-native.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/react-native.test.ts.snap @@ -1746,7 +1746,7 @@ export default function Button(props) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} @@ -4781,6 +4781,8 @@ import { View, StyleSheet, Image, Text } from \\"react-native\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -4808,7 +4810,7 @@ export default function Button(props: ButtonProps) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/react.test.ts.snap b/packages/core/src/__tests__/__snapshots__/react.test.ts.snap index 9289f13680..713d4d6367 100644 --- a/packages/core/src/__tests__/__snapshots__/react.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/react.test.ts.snap @@ -1774,7 +1774,7 @@ export default function Button(props) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} @@ -4806,6 +4806,8 @@ exports[`React > jsx > Typescript Test > defaultProps 1`] = ` export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -4833,7 +4835,7 @@ export default function Button(props: ButtonProps) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/rsc.test.ts.snap b/packages/core/src/__tests__/__snapshots__/rsc.test.ts.snap index cdfcf62178..b20f2a5389 100644 --- a/packages/core/src/__tests__/__snapshots__/rsc.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/rsc.test.ts.snap @@ -1617,7 +1617,7 @@ export default function Button(props) { {!props.link ? ( <> ) : null} @@ -4486,6 +4486,8 @@ exports[`RSC > jsx > Typescript Test > defaultProps 1`] = ` export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -4511,7 +4513,7 @@ export default function Button(props: ButtonProps) { {!props.link ? ( <> ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/solid.test.ts.snap b/packages/core/src/__tests__/__snapshots__/solid.test.ts.snap index cd27cf2e74..fe07cfe3ae 100644 --- a/packages/core/src/__tests__/__snapshots__/solid.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/solid.test.ts.snap @@ -3835,7 +3835,7 @@ function Button(props) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} @@ -3870,7 +3870,7 @@ function Button(props) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} @@ -10249,6 +10249,8 @@ exports[`Solid > jsx > Typescript Test > defaultProps 1`] = ` export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -10272,7 +10274,7 @@ function Button(props: ButtonProps) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} @@ -10290,6 +10292,8 @@ import { css } from \\"solid-styled-components\\"; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -10314,7 +10318,7 @@ function Button(props: ButtonProps) { {...props.attributes} onClick={(event) => props.onClick(event)} > - {props.text} + {props.buttonText} diff --git a/packages/core/src/__tests__/__snapshots__/stencil.test.ts.snap b/packages/core/src/__tests__/__snapshots__/stencil.test.ts.snap index f32e77ee3c..a1b248e9a8 100644 --- a/packages/core/src/__tests__/__snapshots__/stencil.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/stencil.test.ts.snap @@ -2014,6 +2014,7 @@ export default class Button { @Prop() openLinkInNewTab: any; @Prop() text: any; @Prop() onClick: any; + @Prop() buttonText: any; render() { return ( @@ -2037,7 +2038,7 @@ export default class Button { {...props.attributes} onClick={(event) => this.onClick(event)} > - {this.text} + {this.buttonText} ) : null} @@ -4832,6 +4833,7 @@ export default class Button { @Prop() openLinkInNewTab: any; @Prop() text: any; @Prop() onClick: any; + @Prop() buttonText: any; render() { return ( @@ -4855,7 +4857,7 @@ export default class Button { {...props.attributes} onClick={(event) => this.onClick(event)} > - {this.text} + {this.buttonText} ) : null} diff --git a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap index fdf5fd9012..d26210140c 100644 --- a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap @@ -1525,6 +1525,7 @@ exports[`Svelte > jsx > Javascript Test > defaultProps 1`] = ` export let onClick = () => { console.log(\\"hi\\"); }; + export let buttonText;
@@ -1546,7 +1547,7 @@ exports[`Svelte > jsx > Javascript Test > defaultProps 1`] = ` onClick(event); }} > - {text} + {buttonText} {/if}
" @@ -4164,6 +4165,8 @@ exports[`Svelte > jsx > Typescript Test > defaultProps 1`] = ` export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -4178,6 +4181,7 @@ exports[`Svelte > jsx > Typescript Test > defaultProps 1`] = ` export let onClick: ButtonProps[\\"onClick\\"] = () => { console.log(\\"hi\\"); }; + export let buttonText: ButtonProps[\\"buttonText\\"];
@@ -4199,7 +4203,7 @@ exports[`Svelte > jsx > Typescript Test > defaultProps 1`] = ` onClick(event); }} > - {text} + {buttonText} {/if}
" diff --git a/packages/core/src/__tests__/__snapshots__/vue-composition.test.ts.snap b/packages/core/src/__tests__/__snapshots__/vue-composition.test.ts.snap index e4d5f00d6b..bc20885494 100644 --- a/packages/core/src/__tests__/__snapshots__/vue-composition.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/vue-composition.test.ts.snap @@ -1814,7 +1814,7 @@ exports[`Vue > jsx > Javascript Test > defaultProps 1`] = ` @@ -1823,12 +1823,13 @@ exports[`Vue > jsx > Javascript Test > defaultProps 1`] = ` " `; @@ -1857,7 +1858,7 @@ exports[`Vue > jsx > Javascript Test > defaultPropsOutsideComponent 1`] = ` " `; @@ -4783,7 +4787,7 @@ export interface ButtonProps { const props = withDefaults(defineProps(), { link: \\"https://builder.io/\\", - attributes: {}, + attributes: undefined, openLinkInNewTab: false, text: \\"default text\\", onClick: () => {}, @@ -5831,7 +5835,7 @@ exports[`Vue > svelte > Javascript Test > classDirective 1`] = ` " @@ -2095,7 +2096,7 @@ export default { props: { link: { default: \\"https://builder.io/\\" }, - attributes: { default: {} }, + attributes: { default: undefined }, openLinkInNewTab: { default: false }, text: { default: \\"default text\\" }, onClick: { default: () => {} }, @@ -5422,7 +5423,7 @@ exports[`Vue > jsx > Typescript Test > defaultProps 1`] = ` @@ -5432,6 +5433,8 @@ exports[`Vue > jsx > Typescript Test > defaultProps 1`] = ` export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -5442,7 +5445,7 @@ export default { props: { link: { default: \\"https://builder.io/\\" }, - attributes: { default: {} }, + attributes: { default: undefined }, openLinkInNewTab: { default: false }, text: { default: \\"default text\\" }, onClick: { @@ -5450,6 +5453,7 @@ export default { console.log(\\"hi\\"); }, }, + buttonText: { default: undefined }, }, }; " @@ -5490,7 +5494,7 @@ export default { props: { link: { default: \\"https://builder.io/\\" }, - attributes: { default: {} }, + attributes: { default: undefined }, openLinkInNewTab: { default: false }, text: { default: \\"default text\\" }, onClick: { default: () => {} }, @@ -6705,7 +6709,7 @@ exports[`Vue > svelte > Javascript Test > classDirective 1`] = ` export default { name: \\"my-component\\", - props: { disabled: { default: {} } }, + props: { disabled: { default: undefined } }, data() { return { focus: true }; @@ -7109,7 +7113,7 @@ exports[`Vue > svelte > Typescript Test > classDirective 1`] = ` export default { name: \\"my-component\\", - props: { disabled: { default: {} } }, + props: { disabled: { default: undefined } }, data() { return { focus: true }; diff --git a/packages/core/src/__tests__/__snapshots__/webcomponent.test.ts.snap b/packages/core/src/__tests__/__snapshots__/webcomponent.test.ts.snap index 08fea820c8..8d8f56d2c0 100644 --- a/packages/core/src/__tests__/__snapshots__/webcomponent.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/webcomponent.test.ts.snap @@ -8160,6 +8160,8 @@ exports[`webcomponent > jsx > Javascript Test > defaultProps 1`] = ` "export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -8191,6 +8193,7 @@ class Button extends HTMLElement { \\"openLinkInNewTab\\", \\"text\\", \\"onClick\\", + \\"buttonText\\", ]; // used to keep track of all nodes created by show/for @@ -8238,7 +8241,7 @@ class Button extends HTMLElement { \`; @@ -8325,7 +8328,7 @@ class Button extends HTMLElement { }); this._root.querySelectorAll(\\"[data-el='div-button-2']\\").forEach((el) => { - this.renderTextNode(el, this.props.text); + this.renderTextNode(el, this.props.buttonText); }); } @@ -20612,6 +20615,8 @@ exports[`webcomponent > jsx > Typescript Test > defaultProps 1`] = ` "export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value + link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -20643,6 +20648,7 @@ class Button extends HTMLElement { \\"openLinkInNewTab\\", \\"text\\", \\"onClick\\", + \\"buttonText\\", ]; // used to keep track of all nodes created by show/for @@ -20690,7 +20696,7 @@ class Button extends HTMLElement { \`; @@ -20777,7 +20783,7 @@ class Button extends HTMLElement { }); this._root.querySelectorAll(\\"[data-el='div-button-2']\\").forEach((el) => { - this.renderTextNode(el, this.props.text); + this.renderTextNode(el, this.props.buttonText); }); } diff --git a/packages/core/src/__tests__/data/default-props/default-props.raw.tsx b/packages/core/src/__tests__/data/default-props/default-props.raw.tsx index 22cf02b3ff..218182518d 100644 --- a/packages/core/src/__tests__/data/default-props/default-props.raw.tsx +++ b/packages/core/src/__tests__/data/default-props/default-props.raw.tsx @@ -3,6 +3,7 @@ import { Show, useDefaultProps } from '@builder.io/mitosis'; export interface ButtonProps { attributes?: any; text?: string; + buttonText?: string; // no default value link?: string; openLinkInNewTab?: boolean; onClick?: () => void; @@ -31,7 +32,7 @@ export default function Button(props: ButtonProps) { diff --git a/packages/core/src/generators/angular.ts b/packages/core/src/generators/angular.ts index f7fd0148b6..3991057489 100644 --- a/packages/core/src/generators/angular.ts +++ b/packages/core/src/generators/angular.ts @@ -444,7 +444,7 @@ export const componentToAngular: TranspilerGenerator = .map((prop) => { const value = json.defaultProps!.hasOwnProperty(prop) ? json.defaultProps![prop]?.code - : '{}'; + : 'undefined'; return `${prop}: ${value}`; }) .join(','); diff --git a/packages/core/src/generators/react/generator.ts b/packages/core/src/generators/react/generator.ts index e3dddf4ca8..f91e5e777d 100644 --- a/packages/core/src/generators/react/generator.ts +++ b/packages/core/src/generators/react/generator.ts @@ -571,7 +571,7 @@ const _componentToReact = ( .map((prop) => { const value = json.defaultProps!.hasOwnProperty(prop) ? json.defaultProps![prop]?.code - : '{}'; + : 'undefined'; return `${prop}: ${value}`; }) .join(','); diff --git a/packages/core/src/generators/vue/compositionApi.ts b/packages/core/src/generators/vue/compositionApi.ts index f16c0b4e8e..074594074f 100644 --- a/packages/core/src/generators/vue/compositionApi.ts +++ b/packages/core/src/generators/vue/compositionApi.ts @@ -25,7 +25,7 @@ const getCompositionPropDefinition = ({ .map((prop) => { const value = component.defaultProps!.hasOwnProperty(prop) ? component.defaultProps![prop]?.code - : '{}'; + : 'undefined'; return `${prop}: ${value}`; }) .join(','); diff --git a/packages/core/src/generators/vue/optionsApi.ts b/packages/core/src/generators/vue/optionsApi.ts index c8bdc8fd13..1e11f958c4 100644 --- a/packages/core/src/generators/vue/optionsApi.ts +++ b/packages/core/src/generators/vue/optionsApi.ts @@ -167,7 +167,7 @@ export function generateOptionsApiScript( .map((prop) => { const value = component.defaultProps!.hasOwnProperty(prop) ? component.defaultProps![prop]?.code - : '{}'; + : 'undefined'; return `${prop}: { default: ${value} }`; }) .join(',');