Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add improved parents type #11

Merged
merged 2 commits into from
Sep 21, 2021
Merged

Add improved parents type #11

merged 2 commits into from
Sep 21, 2021

Conversation

wooorm
Copy link
Member

@wooorm wooorm commented Sep 18, 2021

Initial checklist

  • I read the support docs
  • I read the contributing guide
  • I agree to follow the code of conduct
  • I searched issues and couldn’t find anything (or linked relevant results below)
  • If applicable, I’ve added docs and tests

Description of changes

Previously, a basic Parent from @types/unist was used, as an array, for the second parameter of a visitor (parents). This changes that to instead use an array of descendants in tree which implement the abstract Parent interface. This is not perfect, because several parents can’t be found in certain nodes practically, but it will at least help folks narrow.

Related to syntax-tree/unist-util-visit#30.

/cc @crossjs

Previously, a basic `Parent` from `@types/unist` was used, as an array,
for the second parameter of a visitor (`parents`).
This changes that to instead use an array of descendants in `tree`
which implement the abstract `Parent` interface.
This is not perfect, because several parents can’t be found in certain
nodes practically, but it will at least help folks narrow.

Related to syntax-tree/unist-util-visit#30.
@wooorm wooorm added 🦋 type/enhancement This is great to have 🧒 semver/minor This is backwards-compatible change ☂️ area/types This affects typings 🙆 yes/confirmed This is confirmed and ready to be worked on 👍 phase/yes Post is accepted and can be worked on labels Sep 18, 2021
@github-actions

This comment has been minimized.

@wooorm wooorm changed the title Fix tests for change in eslint or xo Add improved parents type Sep 18, 2021
Copy link
Member

@ChristianMurphy ChristianMurphy left a comment

Choose a reason for hiding this comment

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

Could we also test this with some of the complex trees later in the tests?
The new behavior looks good
Screenshot from 2021-09-20 20-39-44

But the original node seems, off?

Screenshot from 2021-09-20 20-39-35

@wooorm
Copy link
Member Author

wooorm commented Sep 21, 2021

Fixed!

@wooorm
Copy link
Member Author

wooorm commented Sep 21, 2021

A bit annoying that expectType<Content>(never) is fine? 🤔

@wooorm wooorm added the 💪 phase/solved Post is done label Sep 21, 2021
@github-actions github-actions bot removed 👍 phase/yes Post is accepted and can be worked on 🙆 yes/confirmed This is confirmed and ready to be worked on labels Sep 21, 2021
@wooorm wooorm merged commit 40f2917 into main Sep 21, 2021
@wooorm wooorm deleted the parents branch September 21, 2021 07:21
@github-actions
Copy link

Hi! This was closed. Team: If this was merged, please describe when this is likely to be released. Otherwise, please add one of the no/* labels.

wooorm added a commit to syntax-tree/unist-util-visit that referenced this pull request Sep 21, 2021
Previously, a basic `Parent` from `@types/unist` was used for the third
parameter of a visitor (`parent`).
This changes that to instead use an array of descendants in `tree`
which implement the abstract `Parent` interface and can have `node`
as a child.

Closes GH-30.
Related-to:  syntax-tree/unist-util-visit-parents#11.
wooorm added a commit to syntax-tree/unist-util-visit that referenced this pull request Sep 23, 2021
Previously, a basic `Parent` from `@types/unist` was used for the third parameter of a visitor (`parent`). This changes that to instead use an array of descendants in `tree` which implement the abstract `Parent` interface and can have `node` as a child.

Closes GH-30.
Closes GH-31.
Related-to: syntax-tree/unist-util-visit-parents#11.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
☂️ area/types This affects typings 💪 phase/solved Post is done 🧒 semver/minor This is backwards-compatible change 🦋 type/enhancement This is great to have
Development

Successfully merging this pull request may close these issues.

2 participants