Skip to content

Commit 046501a

Browse files
authored
fix spread any on tag supress other errors (#352)
1 parent fe272d5 commit 046501a

File tree

6 files changed

+23
-22
lines changed

6 files changed

+23
-22
lines changed

packages/svelte2tsx/src/htmlxtojsx.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ export function convertHtmlxToJsx(
185185
//bind group on input
186186
if (attr.name == 'group' && el.name == 'input') {
187187
str.remove(attr.start, attr.expression.start);
188-
str.appendLeft(attr.expression.start, '{...__sveltets_any(');
188+
str.appendLeft(attr.expression.start, '{...__sveltets_empty(');
189189

190190
const endBrackets = ')}';
191191
if (isShortHandAttribute(attr)) {
@@ -213,7 +213,7 @@ export function convertHtmlxToJsx(
213213
//one way binding
214214
if (oneWayBindingAttributes.has(attr.name) && el.type == 'Element') {
215215
str.remove(attr.start, attr.expression.start);
216-
str.appendLeft(attr.expression.start, `{...__sveltets_any(`);
216+
str.appendLeft(attr.expression.start, `{...__sveltets_empty(`);
217217
if (isShortHandAttribute(attr)) {
218218
// eslint-disable-next-line max-len
219219
str.appendLeft(

packages/svelte2tsx/svelte-shims.d.ts

+6-5
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ type SvelteComponent = import('*.svelte').default
3838

3939
declare var process: NodeJS.Process & { browser: boolean }
4040

41-
declare function __sveltets_ensureAnimation<U extends any[]>(animation: SvelteAnimation<U>, ...args: U): any;
42-
declare function __sveltets_ensureAction<U extends any[]>(action: SvelteAction<U>, ...args: U): any;
43-
declare function __sveltets_ensureTransition<U extends any[]>(transition: SvelteTransition<U>, ...args: U): any;
44-
declare function __sveltets_ensureFunction(expression: (e: Event & { detail?: any }) => unknown ) : any;
45-
declare function __sveltets_ensureType<T>(type: AConstructorTypeOf<T>, el: T): any;
41+
declare function __sveltets_ensureAnimation<U extends any[]>(animation: SvelteAnimation<U>, ...args: U): {};
42+
declare function __sveltets_ensureAction<U extends any[]>(action: SvelteAction<U>, ...args: U): {};
43+
declare function __sveltets_ensureTransition<U extends any[]>(transition: SvelteTransition<U>, ...args: U): {};
44+
declare function __sveltets_ensureFunction(expression: (e: Event & { detail?: any }) => unknown ): {};
45+
declare function __sveltets_ensureType<T>(type: AConstructorTypeOf<T>, el: T): {};
4646
declare function __sveltets_instanceOf<T>(type: AConstructorTypeOf<T>): T;
4747
declare function __sveltets_allPropsType(): SvelteAllProps
4848
declare function __sveltets_restPropsType(): SvelteRestProps
@@ -51,5 +51,6 @@ declare function __sveltets_partial_with_any<T>(obj: T): Partial<T> & SvelteAllP
5151
declare function __sveltets_with_any<T>(obj: T): T & SvelteAllProps
5252
declare function __sveltets_store_get<T=any>(store: SvelteStore<T>): T
5353
declare function __sveltets_any(dummy: any): any;
54+
declare function __sveltets_empty(dummy: any): {};
5455
declare function __sveltets_componentType(): AConstructorTypeOf<SvelteComponent>
5556
declare function __sveltets_invalidate<T>(getValue: () => T): T
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
<><input type="radio" {...__sveltets_any(group)} value="Plain"/>
2-
<input type="radio" value="Plain" {...__sveltets_any(group)}/></>
1+
<><input type="radio" {...__sveltets_empty(group)} value="Plain"/>
2+
<input type="radio" value="Plain" {...__sveltets_empty(group)}/></>
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<><input type="radio" {...__sveltets_any(tortilla)} value="Plain"/></>
1+
<><input type="radio" {...__sveltets_empty(tortilla)} value="Plain"/></>
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
<><div type="text"
2-
{...__sveltets_any(width=__sveltets_instanceOf(HTMLDivElement).clientWidth)}
3-
{...__sveltets_any(height=__sveltets_instanceOf(HTMLDivElement).clientHeight)}
4-
{...__sveltets_any(offsetWidth=__sveltets_instanceOf(HTMLDivElement).offsetWidth)}
5-
{...__sveltets_any(offsetHeight=__sveltets_instanceOf(HTMLDivElement).offsetHeight)}
2+
{...__sveltets_empty(width=__sveltets_instanceOf(HTMLDivElement).clientWidth)}
3+
{...__sveltets_empty(height=__sveltets_instanceOf(HTMLDivElement).clientHeight)}
4+
{...__sveltets_empty(offsetWidth=__sveltets_instanceOf(HTMLDivElement).offsetWidth)}
5+
{...__sveltets_empty(offsetHeight=__sveltets_instanceOf(HTMLDivElement).offsetHeight)}
66
/>
77

88
<video
99
src={clip}
10-
{...__sveltets_any(duration=__sveltets_instanceOf(HTMLMediaElement).duration)}
11-
{...__sveltets_any(buffered=__sveltets_instanceOf(HTMLMediaElement).buffered)}
12-
{...__sveltets_any(seekable=__sveltets_instanceOf(HTMLMediaElement).seekable)}
13-
{...__sveltets_any(seeking=__sveltets_instanceOf(HTMLMediaElement).seeking)}
14-
{...__sveltets_any(played=__sveltets_instanceOf(HTMLMediaElement).played)}
15-
{...__sveltets_any(ended=__sveltets_instanceOf(HTMLMediaElement).ended)}
16-
></video></>
10+
{...__sveltets_empty(duration=__sveltets_instanceOf(HTMLMediaElement).duration)}
11+
{...__sveltets_empty(buffered=__sveltets_instanceOf(HTMLMediaElement).buffered)}
12+
{...__sveltets_empty(seekable=__sveltets_instanceOf(HTMLMediaElement).seekable)}
13+
{...__sveltets_empty(seeking=__sveltets_instanceOf(HTMLMediaElement).seeking)}
14+
{...__sveltets_empty(played=__sveltets_instanceOf(HTMLMediaElement).played)}
15+
{...__sveltets_empty(ended=__sveltets_instanceOf(HTMLMediaElement).ended)}
16+
></video></>

packages/svelte2tsx/test/svelte2tsx/samples/binding-group-store/expected.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<></>;function render() {
2-
<><input id="dom-input" type="radio" {...__sveltets_any(__sveltets_store_get(compile_options).generate)} value="dom"/></>
2+
<><input id="dom-input" type="radio" {...__sveltets_empty(__sveltets_store_get(compile_options).generate)} value="dom"/></>
33
return { props: {}, slots: {}, getters: {} }}
44

55
export default class Input__SvelteComponent_ {

0 commit comments

Comments
 (0)