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

feat: Add fixes for block-lang rule #844

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

Winter
Copy link

@Winter Winter commented Aug 26, 2024

I wanted eslint to automatically fix script/style errors from the block-lang rule.

The lang fixes will only apply when a script/style config value contains only a single, non-null value.

<!-- svelte/block-lang: ["error", {"enforceScriptPresent": true}] -->
<!-- Error: The <script> block should be present and its lang attribute should be omitted -->

<!-- fixes into at the top of the file --> 
<script>
</script>
<!-- svelte/block-lang: ["error", {"enforceScriptPresent": true, "script": "ts"}] -->
<!-- Error: The <script> block should be present and its lang attribute should be "ts" -->

<!-- fixes into at the top of the file --> 
<script lang="ts">
</script>
<!-- svelte/block-lang: ["error", {"script": "ts"}] -->
<!-- Error: The lang attribute of the <script> block should be "ts"-->

<script>
</script>
<!-- fixes into --> 
<script lang="ts">
</script>
<!-- svelte/block-lang: ["error", {"script": "ts"}] -->
<!-- Error: The lang attribute of the <script> block should be "ts"-->

<script context="module">
</script>
<!-- fixes into --> 
<script lang="ts" context="module">
</script>
<!-- svelte/block-lang: ["error", {"script": "ts"}] -->
<!-- Error: The lang attribute of the <script> block should be "ts" -->

<script module>
</script>
<!-- fixes into --> 
<script lang="ts" module>
</script>

The same logic applies to the style tag except will create at the bottom of the file

Copy link

changeset-bot bot commented Aug 26, 2024

⚠️ No Changeset found

Latest commit: 937acbc

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link
Member

@ota-meshi ota-meshi left a comment

Choose a reason for hiding this comment

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

Thank you for this PR!

I think changing the lang attribute may break the component.
Auto-fix needs to be safe, so could you change it to use the suggestions API instead?
If multiple langs ​​are allowed, we could show multiple suggestions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants