sveltejs / eslint-plugin-svelte

ESLint plugin for Svelte using AST
https://sveltejs.github.io/eslint-plugin-svelte/
MIT License
290 stars 33 forks source link

TypeError in `no-unused-class-name` #526

Closed marekdedic closed 1 year ago

marekdedic commented 1 year ago

Before You File a Bug Report Please Confirm You Have Done The Following...

What version of ESLint are you using?

v8.42.0

What version of eslint-plugin-svelte are you using?

v2.32.0

What did you do?

See https://github.com/skaut/shared-drive-mover/pull/1333

What did you expect to happen?

No error

What actually happened?

Oops! Something went wrong! :(

ESLint: 8.42.0

TypeError: Cannot read properties of undefined (reading 'flatMap')
Occurred while linting /home/marekdedic/shared-drive-mover/src/frontend/App.svelte:1
Rule: "svelte/no-unused-class-name"
    at findClassesInPostCSSNode (/home/marekdedic/shared-drive-mover/node_modules/eslint-plugin-svelte/lib/rules/no-unused-class-name.js:89:27)
    at Array.flatMap (<anonymous>)
    at findClassesInPostCSSNode (/home/marekdedic/shared-drive-mover/node_modules/eslint-plugin-svelte/lib/rules/no-unused-class-name.js:89:27)
    at Program:exit (/home/marekdedic/shared-drive-mover/node_modules/eslint-plugin-svelte/lib/rules/no-unused-class-name.js:54:23)
    at ruleErrorHandler (/home/marekdedic/shared-drive-mover/node_modules/eslint/lib/linter/linter.js:1050:28)
    at /home/marekdedic/shared-drive-mover/node_modules/eslint/lib/linter/safe-emitter.js:45:58
    at Array.forEach (<anonymous>)
    at Object.emit (/home/marekdedic/shared-drive-mover/node_modules/eslint/lib/linter/safe-emitter.js:45:38)
    at NodeEventGenerator.applySelector (/home/marekdedic/shared-drive-mover/node_modules/eslint/lib/linter/node-event-generator.js:297:26)
    at NodeEventGenerator.applySelectors (/home/marekdedic/shared-drive-mover/node_modules/eslint/lib/linter/node-event-generator.js:326:22)

Link to GitHub Repo with Minimal Reproducible Example

https://github.com/skaut/shared-drive-mover/pull/1333

Additional comments

The problem is this at-rule because it has no children...

https://github.com/skaut/shared-drive-mover/blob/2c121a54100c8126ce989d41a6f25b9a45be41fd/src/frontend/App.svelte#L226

Will take a look at it tomorrow...