From 17ce1d41dffd403dd3f9ddb72197746341f62032 Mon Sep 17 00:00:00 2001
From: Simon H <5968653+dummdidumm@users.noreply.github.com>
Date: Thu, 1 Dec 2022 10:50:16 +0100
Subject: [PATCH] (fix) getter type is nonnullable (#1751)
#1750
---
.../fixtures/getters/component-with-getters.svelte | 7 +++++++
.../diagnostics/fixtures/getters/expected.json | 10 ++++++++++
.../diagnostics/fixtures/getters/expectedv2.json | 10 ++++++++++
.../features/diagnostics/fixtures/getters/input.svelte | 8 ++++++++
.../svelte2tsx/src/svelte2tsx/nodes/ExportedNames.ts | 8 +++++++-
packages/svelte2tsx/svelte-shims.d.ts | 1 +
.../test/svelte2tsx/samples/export-class/expected.tsx | 2 +-
.../test/svelte2tsx/samples/export-class/expectedv2.ts | 2 +-
.../samples/ts-$$Props-with-$$props/expected.tsx | 2 +-
.../samples/ts-$$Props-with-$$props/expectedv2.ts | 2 +-
.../svelte2tsx/samples/ts-$$generics-dts/expected.tsx | 2 +-
.../svelte2tsx/samples/ts-$$generics-dts/expectedv2.ts | 2 +-
.../test/svelte2tsx/samples/ts-$$generics/expected.tsx | 2 +-
.../svelte2tsx/samples/ts-$$generics/expectedv2.ts | 2 +-
.../svelte2tsx/samples/ts-export-const/expected.tsx | 6 +++---
.../svelte2tsx/samples/ts-export-const/expectedv2.ts | 6 +++---
.../uses-accessors-attr-not-present/expected.tsx | 2 +-
.../uses-accessors-attr-not-present/expectedv2.ts | 2 +-
.../samples/uses-accessors-attr-present/expected.tsx | 2 +-
.../samples/uses-accessors-attr-present/expectedv2.ts | 2 +-
.../uses-accessors-mustachetag-false/expected.tsx | 2 +-
.../uses-accessors-mustachetag-false/expectedv2.ts | 2 +-
.../uses-accessors-mustachetag-true/expected.tsx | 2 +-
.../uses-accessors-mustachetag-true/expectedv2.ts | 2 +-
.../uses-accessors-no-svelte-options/expected.tsx | 2 +-
.../uses-accessors-no-svelte-options/expectedv2.ts | 2 +-
26 files changed, 67 insertions(+), 25 deletions(-)
create mode 100644 packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/component-with-getters.svelte
create mode 100644 packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expected.json
create mode 100644 packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expectedv2.json
create mode 100644 packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/input.svelte
diff --git a/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/component-with-getters.svelte b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/component-with-getters.svelte
new file mode 100644
index 000000000..7a5c61b75
--- /dev/null
+++ b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/component-with-getters.svelte
@@ -0,0 +1,7 @@
+
diff --git a/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expected.json b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expected.json
new file mode 100644
index 000000000..bc8bb3570
--- /dev/null
+++ b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expected.json
@@ -0,0 +1,10 @@
+[
+ {
+ "range": { "start": { "line": 5, "character": 4 }, "end": { "line": 5, "character": 22 } },
+ "severity": 1,
+ "source": "ts",
+ "message": "This comparison appears to be unintentional because the types 'boolean' and 'string' have no overlap.",
+ "code": 2367,
+ "tags": []
+ }
+]
diff --git a/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expectedv2.json b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expectedv2.json
new file mode 100644
index 000000000..bc8bb3570
--- /dev/null
+++ b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/expectedv2.json
@@ -0,0 +1,10 @@
+[
+ {
+ "range": { "start": { "line": 5, "character": 4 }, "end": { "line": 5, "character": 22 } },
+ "severity": 1,
+ "source": "ts",
+ "message": "This comparison appears to be unintentional because the types 'boolean' and 'string' have no overlap.",
+ "code": 2367,
+ "tags": []
+ }
+]
diff --git a/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/input.svelte b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/input.svelte
new file mode 100644
index 000000000..fb2396279
--- /dev/null
+++ b/packages/language-server/test/plugins/typescript/features/diagnostics/fixtures/getters/input.svelte
@@ -0,0 +1,8 @@
+
+
\ No newline at end of file
diff --git a/packages/svelte2tsx/src/svelte2tsx/nodes/ExportedNames.ts b/packages/svelte2tsx/src/svelte2tsx/nodes/ExportedNames.ts
index b8e026de3..22ffdcfa3 100644
--- a/packages/svelte2tsx/src/svelte2tsx/nodes/ExportedNames.ts
+++ b/packages/svelte2tsx/src/svelte2tsx/nodes/ExportedNames.ts
@@ -195,7 +195,13 @@ export class ExportedNames {
createClassGetters(): string {
return Array.from(this.getters)
- .map((name) => `\n get ${name}() { return this.$$prop_def.${name} }`)
+ .map(
+ (name) =>
+ // getters are const/classes/functions, which are always defined.
+ // We have to remove the `| undefined` from the type here because it was necessary to
+ // be added in a previous step so people are not expected to provide these as props.
+ `\n get ${name}() { return __sveltets_2_nonNullable(this.$$prop_def.${name}) }`
+ )
.join('');
}
diff --git a/packages/svelte2tsx/svelte-shims.d.ts b/packages/svelte2tsx/svelte-shims.d.ts
index f970f8a57..539626234 100644
--- a/packages/svelte2tsx/svelte-shims.d.ts
+++ b/packages/svelte2tsx/svelte-shims.d.ts
@@ -231,6 +231,7 @@ declare function __sveltets_2_createComponentAny(props: Record): _S
declare function __sveltets_2_any(...dummy: any[]): any;
declare function __sveltets_2_empty(...dummy: any[]): {};
declare function __sveltets_2_union(t1:T1,t2?:T2,t3?:T3,t4?:T4,t5?:T5): T1 & T2 & T3 & T4 & T5;
+declare function __sveltets_2_nonNullable(type: T): NonNullable;
declare function __sveltets_2_cssProp(prop: Record): {};
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expected.tsx
index d1680387e..540c8f500 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expected.tsx
@@ -7,5 +7,5 @@
return { props: {Foo: Foo}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['Foo'], __sveltets_1_with_any_event(render()))) {
- get Foo() { return this.$$prop_def.Foo }
+ get Foo() { return __sveltets_2_nonNullable(this.$$prop_def.Foo) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expectedv2.ts
index 669d9d301..ce46e4c70 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/export-class/expectedv2.ts
@@ -7,5 +7,5 @@ async () => {};
return { props: {Foo: Foo}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['Foo'], __sveltets_1_with_any_event(render()))) {
- get Foo() { return this.$$prop_def.Foo }
+ get Foo() { return __sveltets_2_nonNullable(this.$$prop_def.Foo) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expected.tsx
index 2edbe8f68..27656eccb 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expected.tsx
@@ -16,5 +16,5 @@
return { props: {...__sveltets_1_ensureRightProps<{}>(__sveltets_1_any("") as $$Props), ...__sveltets_1_ensureRightProps>({}), ...{} as unknown as $$Props, ...{c: c} as {c?: typeof c}}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_with_any_event(render())) {
- get c() { return this.$$prop_def.c }
+ get c() { return __sveltets_2_nonNullable(this.$$prop_def.c) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expectedv2.ts
index c2215535c..b3863c8b0 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$Props-with-$$props/expectedv2.ts
@@ -16,5 +16,5 @@ $$props;};
return { props: {...__sveltets_1_ensureRightProps<{}>(__sveltets_1_any("") as $$Props), ...__sveltets_1_ensureRightProps>({}), ...{} as unknown as $$Props, ...{c: c} as {c?: typeof c}}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_with_any_event(render())) {
- get c() { return this.$$prop_def.c }
+ get c() { return __sveltets_2_nonNullable(this.$$prop_def.c) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expected.tsx
index ee9e4f373..803cba7e5 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expected.tsx
@@ -37,5 +37,5 @@ export type InputEvents = ReturnType<__sv
export type InputSlots = ReturnType<__sveltets_Render['slots']>;
export default class Input extends SvelteComponentTyped, InputEvents, InputSlots> {
- get getA() { return this.$$prop_def.getA }
+ get getA() { return __sveltets_2_nonNullable(this.$$prop_def.getA) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expectedv2.ts
index ee9e4f373..803cba7e5 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics-dts/expectedv2.ts
@@ -37,5 +37,5 @@ export type InputEvents = ReturnType<__sv
export type InputSlots = ReturnType<__sveltets_Render['slots']>;
export default class Input extends SvelteComponentTyped, InputEvents, InputSlots> {
- get getA() { return this.$$prop_def.getA }
+ get getA() { return __sveltets_2_nonNullable(this.$$prop_def.getA) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expected.tsx
index b83ea75e8..f4930e520 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expected.tsx
@@ -38,5 +38,5 @@ class __sveltets_Render {
export default class Input__SvelteComponent_ extends Svelte2TsxComponent['props']>, ReturnType<__sveltets_Render['events']>, ReturnType<__sveltets_Render['slots']>> {
- get getA() { return this.$$prop_def.getA }
+ get getA() { return __sveltets_2_nonNullable(this.$$prop_def.getA) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expectedv2.ts
index f981c47fd..a4344f7b9 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-$$generics/expectedv2.ts
@@ -38,5 +38,5 @@ class __sveltets_Render {
export default class Input__SvelteComponent_ extends Svelte2TsxComponent['props']>, ReturnType<__sveltets_Render['events']>, ReturnType<__sveltets_Render['slots']>> {
- get getA() { return this.$$prop_def.getA }
+ get getA() { return __sveltets_2_nonNullable(this.$$prop_def.getA) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expected.tsx
index 29e699583..7d150402f 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expected.tsx
@@ -8,7 +8,7 @@
return { props: {name: name , SOME: SOME , CONSTANT: CONSTANT} as {name?: string, SOME?: typeof SOME, CONSTANT?: typeof CONSTANT}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_with_any_event(render())) {
- get name() { return this.$$prop_def.name }
- get SOME() { return this.$$prop_def.SOME }
- get CONSTANT() { return this.$$prop_def.CONSTANT }
+ get name() { return __sveltets_2_nonNullable(this.$$prop_def.name) }
+ get SOME() { return __sveltets_2_nonNullable(this.$$prop_def.SOME) }
+ get CONSTANT() { return __sveltets_2_nonNullable(this.$$prop_def.CONSTANT) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expectedv2.ts
index df23619b5..515973265 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/ts-export-const/expectedv2.ts
@@ -8,7 +8,7 @@ async () => {};
return { props: {name: name , SOME: SOME , CONSTANT: CONSTANT} as {name?: string, SOME?: typeof SOME, CONSTANT?: typeof CONSTANT}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_with_any_event(render())) {
- get name() { return this.$$prop_def.name }
- get SOME() { return this.$$prop_def.SOME }
- get CONSTANT() { return this.$$prop_def.CONSTANT }
+ get name() { return __sveltets_2_nonNullable(this.$$prop_def.name) }
+ get SOME() { return __sveltets_2_nonNullable(this.$$prop_def.SOME) }
+ get CONSTANT() { return __sveltets_2_nonNullable(this.$$prop_def.CONSTANT) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expected.tsx
index 1b7697338..ab7fb8bf8 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expected.tsx
@@ -9,5 +9,5 @@
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expectedv2.ts
index 0018c767b..5b997e0eb 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-not-present/expectedv2.ts
@@ -9,5 +9,5 @@ async () => { { svelteHTML.createElement("svelte:options", {});}
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expected.tsx
index a3eb04069..f1422aea2 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expected.tsx
@@ -12,7 +12,7 @@
return { props: {foo: foo , foo2: foo2 , class: clazz , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','foo2','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
get foo() { return this.$$prop_def.foo }
/**accessor*/
set foo(_) {}
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expectedv2.ts
index dcae20b09..54ec0259e 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-attr-present/expectedv2.ts
@@ -12,7 +12,7 @@ async () => { { svelteHTML.createElement("svelte:options", {"accessors":true,})
return { props: {foo: foo , foo2: foo2 , class: clazz , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','foo2','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
get foo() { return this.$$prop_def.foo }
/**accessor*/
set foo(_) {}
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expected.tsx
index 7114ee7bf..aa5962cce 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expected.tsx
@@ -9,5 +9,5 @@
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expectedv2.ts
index 7632f66ef..081e6024f 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-false/expectedv2.ts
@@ -9,5 +9,5 @@ async () => { { svelteHTML.createElement("svelte:options", { "accessors":false,
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expected.tsx
index 7acc71e83..97092b752 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expected.tsx
@@ -12,7 +12,7 @@
return { props: {foo: foo , foo2: foo2 , class: clazz , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','foo2','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
get foo() { return this.$$prop_def.foo }
/**accessor*/
set foo(_) {}
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expectedv2.ts
index 4b825ed55..5f00a26d9 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-mustachetag-true/expectedv2.ts
@@ -12,7 +12,7 @@ async () => { { svelteHTML.createElement("svelte:options", { "accessors":true,}
return { props: {foo: foo , foo2: foo2 , class: clazz , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','foo2','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
get foo() { return this.$$prop_def.foo }
/**accessor*/
set foo(_) {}
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expected.tsx b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expected.tsx
index ff2ba3e0a..2b02711f9 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expected.tsx
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expected.tsx
@@ -8,5 +8,5 @@
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file
diff --git a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expectedv2.ts b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expectedv2.ts
index 96a343314..12b3b00df 100644
--- a/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expectedv2.ts
+++ b/packages/svelte2tsx/test/svelte2tsx/samples/uses-accessors-no-svelte-options/expectedv2.ts
@@ -8,5 +8,5 @@ async () => {};
return { props: {foo: foo , bar: bar}, slots: {}, events: {} }}
export default class Input__SvelteComponent_ extends __sveltets_1_createSvelte2TsxComponent(__sveltets_1_partial(['foo','bar'], __sveltets_1_with_any_event(render()))) {
- get bar() { return this.$$prop_def.bar }
+ get bar() { return __sveltets_2_nonNullable(this.$$prop_def.bar) }
}
\ No newline at end of file