The Wayback Machine - https://web.archive.org/web/20220408175900/https://github.com/developit/htm/issues/183
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

[Feature request] ESLint plugin #183

Open
Fordi opened this issue Oct 22, 2020 · 3 comments
Open

[Feature request] ESLint plugin #183

Fordi opened this issue Oct 22, 2020 · 3 comments
Labels
enhancement good first issue

Comments

@Fordi
Copy link

@Fordi Fordi commented Oct 22, 2020

For the most part this just works, but functions within tagged markup get weird indent assertions, e.g.,

        ${collection.map((item) => {
          const { prop1, prop2 } = workWith(item);  // eslint: expected indentation of 4 but found 10 (indent)
          return html`  // eslint: expected indentation of 4 but found 10 (indent)
            <${Widget} prop1=${prop1} prop2=${prop2} />
          `;
        })} // eslint: expected indentation of 2 but found 8 (indent)

So I'd request an eslint plugin where you could specify the name of the template function, and make the linter comprehend it, or directions to the resources I'd need to implement one.

@Fordi
Copy link
Author

@Fordi Fordi commented Oct 22, 2020

I found eslint-plugin-lit, which works, albeit by disabling lit/binding-positions (👍 ) and lit/no-invalid-html (😢 ). It doesn't fix the indent comprehension, though. If anyone has any further tips, I'd love to hear 'em.

@Fordi Fordi closed this Oct 22, 2020
@Fordi Fordi reopened this Oct 22, 2020
@developit
Copy link
Owner

@developit developit commented Feb 5, 2021

Starting from the Lit plugin is a great idea - I'd begun hacking on something, but quickly realized it was going to take a lot more work than I had time to prototype:
https://gist.github.com/developit/61d009284458ad4d757991e1756b7f41

@developit developit added enhancement good first issue labels Feb 5, 2021
@ruffin--
Copy link

@ruffin-- ruffin-- commented Apr 4, 2022

It looks like spread attributes are also a show-stopping issue with eslint.

TIL:

Spread props: <div ...${props}> instead of <div {...props}>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement good first issue
3 participants