Skip to content

Commit

Permalink
for component too
Browse files Browse the repository at this point in the history
  • Loading branch information
patricklx committed Jan 29, 2024
1 parent eb75445 commit d7f88cb
Show file tree
Hide file tree
Showing 14 changed files with 196 additions and 190 deletions.
291 changes: 154 additions & 137 deletions packages/core/src/transform/template/template-to-typescript.ts

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion test-packages/ts-ember-app/app/components/bar/index.hbs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{{this.name}}-{{@grault}}

{{! @glint-expect-error: invalid arg }}
{{@waldo}}
{{@waldo}}
8 changes: 4 additions & 4 deletions test-packages/ts-ember-app/app/components/ember-component.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@
{{@optional}}
{{@hasDefault}}

{{!--
{{!
This pair of checks needs to work in this app, which uses DT types, and the
preview/stable types app which does *not*.
--}}
{{get this "required"}}
}}
{{get this 'required'}}

{{! @glint-expect-error: non-existent property }}
{{get this "unrelated"}}
{{get this 'unrelated'}}
</div>

{{#if this.showFunctionHelpers}}
Expand Down
61 changes: 25 additions & 36 deletions test-packages/ts-ember-app/app/components/foo.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,9 @@

<Bar @grault={{0}} />

<Bar
{{! @glint-expect-error: wrong type }}
@grault={{this.obj.a}}
/>
<Bar {{! @glint-expect-error: wrong type }} @grault={{this.obj.a}} />

<Bar
{{! @glint-expect-error: bad arg }}
@fred={{2}}
/>
<Bar {{! @glint-expect-error: bad arg }} @fred={{2}} />

{{! @glint-expect-error: missing required arg }}
<Bar />
Expand All @@ -22,78 +16,73 @@

<Qux />

<this.MaybeComponent @arg="hi" />
<this.MaybeComponent @arg='hi' />

{{! @glint-expect-error: missing required arg }}
<this.MaybeComponent />

{{! @glint-expect-error: missing required arg }}
<EmberComponent />

<EmberComponent @required="req" />
<EmberComponent @required='req' />

<EmberComponent
{{! @glint-expect-error: bad type for `required` }}
@required={{1}}
/>
<EmberComponent {{! @glint-expect-error: bad type for `required` }} @required={{1}} />

<EmberComponent @required="req" @optional={{1}} />
<EmberComponent @required='req' @optional={{1}} />

<EmberComponent
@required="req"

@required='req'
{{! @glint-expect-error: bad type for `optional` }}
@optional="opt"
@optional='opt'
/>

<EmberComponent @required="req" @hasDefault="override" />
<EmberComponent @required='req' @hasDefault='override' />

<EmberComponent
@required="req"

@required='req'
{{! @glint-expect-error: bad type for `hasDefault` }}
@hasDefault={{false}}
/>

<EmberComponent @required="hi">
<EmberComponent @required='hi'>
{{! @glint-expect-error: bad named block }}
<:foo>hello</:foo>
</EmberComponent>

<WrapperComponent @value="req" as |WC|>
<WC.InnerComponent @optional={{1}} class="custom" />
<WrapperComponent @value='req' as |WC|>
<WC.InnerComponent @optional={{1}} class='custom' />

{{! should work, even though MaybeComponent might not be present }}
<WC.MaybeComponent @key="hi" />
<WC.MaybeComponent @key='hi' />

{{! @glint-expect-error: strings aren't invokable }}
<WC.stringValue />
</WrapperComponent>

{{repeat "foo" 3}}
{{repeat 'foo' 3}}

{{! @glint-expect-error: missing second arg }}
{{repeat "foo"}}
{{repeat 'foo'}}

{{! @glint-expect-error: incorrect type for second arg }}
{{repeat "foo" "bar"}}
{{repeat 'foo' 'bar'}}

{{affix "fuel" prefix="re" suffix="ing"}}
{{affix 'fuel' prefix='re' suffix='ing'}}

{{affix "fuel" prefix="re"}}
{{affix 'fuel' prefix='re'}}

{{affix "fuel" suffix="ing"}}
{{affix 'fuel' suffix='ing'}}

{{affix "fuel"}}
{{affix 'fuel'}}

{{! @glint-expect-error: missing positional arg }}
{{affix prefix="re" suffix="ing"}}
{{affix prefix='re' suffix='ing'}}

{{! @glint-expect-error: extra positional arg }}
{{affix "fuel" "up" prefix="re" suffix="ing"}}
{{affix 'fuel' 'up' prefix='re' suffix='ing'}}

{{! @glint-expect-error: incorrect type for named arg }}
{{affix "fuel" prefix=1 suffix="ing"}}
{{affix 'fuel' prefix=1 suffix='ing'}}

{{! @glint-expect-error: incorrect named arg given }}
{{affix "fuel" prefix="re" suff="ing"}}
{{affix 'fuel' prefix='re' suff='ing'}}
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
{{this}}

{{! @glint-expect-error }}
{{@foo}}
{{@foo}}
2 changes: 1 addition & 1 deletion test-packages/ts-ember-app/app/components/nocheck-me.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@

<Bar />

{{repeat "foo"}}
{{repeat 'foo'}}
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{{@message}}, world
{{@message}}, world
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Hello!
Hello!
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Hello!
Hello!
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{{yield (hash InnerComponent=(component "ember-component" required=@value))}}
{{yield (hash InnerComponent=(component 'ember-component' required=@value))}}
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
{{this.plugh}}

{{! @glint-expect-error: invalid arg }}
{{@thud}}
{{@thud}}
6 changes: 3 additions & 3 deletions test-packages/ts-ember-app/app/templates/application.hbs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{{page-title "TsEmberApp"}}
{{page-title 'TsEmberApp'}}

{{!-- The following component displays Ember's default welcome message. --}}
{{! The following component displays Ember's default welcome message. }}
<WelcomePage />
{{!-- Feel free to remove this! --}}
{{! Feel free to remove this! }}

{{outlet}}
2 changes: 1 addition & 1 deletion test-packages/ts-ember-app/app/templates/classic-route.hbs
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{{@model.message}}

{{this.model.message}}
{{this.model.message}}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{{this.name}}

{{! @glint-expect-error: bad property }}
{{this.xyzzy}}
{{this.xyzzy}}

0 comments on commit d7f88cb

Please sign in to comment.