diff --git a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap index 871e946bb5..374ea64b13 100644 --- a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap +++ b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap @@ -1344,8 +1344,6 @@ exports[`Svelte > jsx > Javascript Test > basicForwardRef 1`] = ` " @@ -1364,8 +1362,6 @@ exports[`Svelte > jsx > Javascript Test > basicForwardRefMetadata 1`] = ` " @@ -3691,8 +3687,6 @@ exports[`Svelte > jsx > Typescript Test > basicForwardRef 1`] = ` @@ -3718,8 +3712,6 @@ exports[`Svelte > jsx > Typescript Test > basicForwardRefMetadata 1`] = ` diff --git a/packages/core/src/generators/svelte/svelte.ts b/packages/core/src/generators/svelte/svelte.ts index 8490b597b0..200db1c25e 100644 --- a/packages/core/src/generators/svelte/svelte.ts +++ b/packages/core/src/generators/svelte/svelte.ts @@ -135,13 +135,16 @@ export const componentToSvelte: TranspilerGenerator = let json = fastClone(component); json = runPreJsonPlugins(json, options.plugins); - const refs = Array.from(getRefs(json)); useBindValue(json, options); gettersToFunctions(json); const props = Array.from(getProps(json)).filter((prop) => !isSlotProperty(prop)); + const refs = Array.from(getRefs(json)) + .map(stripStateAndProps({ json, options })) + .filter((x) => !props.includes(x)); + json = runPostJsonPlugins(json, options.plugins); const css = collectCss(json); @@ -276,7 +279,7 @@ export const componentToSvelte: TranspilerGenerator = ${functionsString.length < 4 ? '' : functionsString} ${getterString.length < 4 ? '' : getterString} - ${refs.map((ref) => `let ${stripStateAndProps({ json, options })(ref)}`).join('\n')} + ${refs.map((ref) => `let ${ref}`).join('\n')} ${ options.stateType === 'proxies'