Skip to content

feat(language-service): completions for output $event properties - #34570

Closed
ayazhafiz wants to merge 8 commits into
angular:masterfrom
ayazhafiz:i/$event-type
Closed

ayazhafiz wants to merge 8 commits into
angular:masterfrom
ayazhafiz:i/$event-type

Conversation

@ayazhafiz

@ayazhafiz ayazhafiz commented Dec 26, 2019 •

Copy link
Copy Markdown
Contributor

This commit adds support for completions of properties on $event
variables in bound outputs.

This is the second major PR to support completions for $event
variables (angular/vscode-ng-language-service#531).
The final completion support that must be provided is for $event
variables in bindings targeting DOM events, like (click).

PR Checklist

Please check if your PR fulfills the following requirements:

PR Type

What kind of change does this PR introduce?

  • Feature

Does this PR introduce a breaking change?

  • Yes
  • No

@ayazhafiz ayazhafiz changed the title I/$event type feat(language-service): completions for output $event properties Dec 26, 2019
@ayazhafiz

ayazhafiz commented Dec 26, 2019 •

Copy link
Copy Markdown
Contributor Author

@atscott atscott added the area: language-service Issues related to Angular's VS Code language service label Jan 9, 2020
@ngbot ngbot Bot added this to the needsTriage milestone Jan 9, 2020
ayazhafiz added a commit to ayazhafiz/angular that referenced this pull request Jan 13, 2020
Adds a `typeArguments` method to the `Symbol` interface, cleaning up how
type parameters of a TypeScript type are currently found. This will be
necessary for providing completions for `$event` variables' properties
(angular#34570).

This commit also performs some fly-by cleanups seen while implementing
the `typeArguments` methods. There is more clean up to do in the
`typescript_symbols` file, but the scope of this commit didn't need to
get larger.
atscott pushed a commit that referenced this pull request Jan 13, 2020
#34571)

Adds a `typeArguments` method to the `Symbol` interface, cleaning up how
type parameters of a TypeScript type are currently found. This will be
necessary for providing completions for `$event` variables' properties
(#34570).

This commit also performs some fly-by cleanups seen while implementing
the `typeArguments` methods. There is more clean up to do in the
`typescript_symbols` file, but the scope of this commit didn't need to
get larger.

PR Close #34571
atscott pushed a commit that referenced this pull request Jan 13, 2020
#34571)

Adds a `typeArguments` method to the `Symbol` interface, cleaning up how
type parameters of a TypeScript type are currently found. This will be
necessary for providing completions for `$event` variables' properties
(#34570).

This commit also performs some fly-by cleanups seen while implementing
the `typeArguments` methods. There is more clean up to do in the
`typescript_symbols` file, but the scope of this commit didn't need to
get larger.

PR Close #34571
@ayazhafiz
ayazhafiz marked this pull request as ready for review January 18, 2020 17:39
@ayazhafiz
ayazhafiz requested review from a team and kyliau January 18, 2020 17:39
@ayazhafiz ayazhafiz added target: patch This PR is targeted for the next patch release feature Label used to distinguish feature request from other issues and removed state: blocked labels Jan 23, 2020

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we could pull it out into utils.ts (in subsequent PR).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will make a PR to fix this later today, as it is blocking the CI tests.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cool, I'll mark this PR as blocked for now. Thanks!

@ayazhafiz

Copy link
Copy Markdown
Contributor Author

@andrius-pra if you would like to review

@kyliau kyliau left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like some comments were resolved but the updates were not reflected in the code. Could you please double check?

@ayazhafiz

Copy link
Copy Markdown
Contributor Author

It looks like some comments were resolved but the updates were not reflected in the code. Could you please double check?

My bad; should be pushed up now.

@ayazhafiz
ayazhafiz requested a review from kyliau January 27, 2020 18:56
ayazhafiz pushed a commit to ayazhafiz/angular that referenced this pull request Jan 27, 2020
This commit makes `findOutputBinding` a utility function for the
language service, which will be used by the `expression_diagnostics`
module in angular#34570. Keeping the function in `locate_symbol` results in a
circular dependency between `expression_diagnostics` and
`locate_symbol`.
AndrewKushnir pushed a commit that referenced this pull request Jan 27, 2020
…#34997)

This commit makes `findOutputBinding` a utility function for the
language service, which will be used by the `expression_diagnostics`
module in #34570. Keeping the function in `locate_symbol` results in a
circular dependency between `expression_diagnostics` and
`locate_symbol`.

PR Close #34997
AndrewKushnir pushed a commit that referenced this pull request Jan 27, 2020
…#34997)

This commit makes `findOutputBinding` a utility function for the
language service, which will be used by the `expression_diagnostics`
module in #34570. Keeping the function in `locate_symbol` results in a
circular dependency between `expression_diagnostics` and
`locate_symbol`.

PR Close #34997
ayazhafiz and others added 8 commits January 27, 2020 15:55
This commit adds a completion for the `$event` variable in bound event
expressions.

This is the first in a series of PRs to support completions for
properties on `$event` variables (angular/vscode-ng-language-service#531).
This commit adds support for completions of properties on `$event`
variables in bound outputs.

This is the second major PR to support completions for `$event`
variables (angular/vscode-ng-language-service#531).
The final completion support that must be provided is for `$event`
variables in bindings targeting DOM events, like `(click)`.
@ayazhafiz ayazhafiz added the action: merge The PR is ready for merge by the caretaker label Jan 28, 2020
AndrewKushnir pushed a commit that referenced this pull request Jan 28, 2020
…34570)

This commit adds support for completions of properties on `$event`
variables in bound outputs.

This is the second major PR to support completions for `$event`
variables (angular/vscode-ng-language-service#531).
The final completion support that must be provided is for `$event`
variables in bindings targeting DOM events, like `(click)`.

PR Close #34570
AndrewKushnir pushed a commit that referenced this pull request Jan 28, 2020
This commit adds a completion for the `$event` variable in bound event
expressions.

This is the first in a series of PRs to support completions for
properties on `$event` variables (angular/vscode-ng-language-service#531).

PR Close #34570
AndrewKushnir pushed a commit that referenced this pull request Jan 28, 2020
…34570)

This commit adds support for completions of properties on `$event`
variables in bound outputs.

This is the second major PR to support completions for `$event`
variables (angular/vscode-ng-language-service#531).
The final completion support that must be provided is for `$event`
variables in bindings targeting DOM events, like `(click)`.

PR Close #34570
@angular-automatic-lock-bot

Copy link
Copy Markdown

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot Bot locked and limited conversation to collaborators Feb 28, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

action: merge The PR is ready for merge by the caretaker area: language-service Issues related to Angular's VS Code language service cla: yes feature Label used to distinguish feature request from other issues target: patch This PR is targeted for the next patch release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants