Skip to content

Enable verbatimModuleSyntax in tsconfig#759

Merged
garrettjstevens merged 4 commits intomainfrom
enable_verbatimModuleSyntax
Feb 17, 2026
Merged

Enable verbatimModuleSyntax in tsconfig#759
garrettjstevens merged 4 commits intomainfrom
enable_verbatimModuleSyntax

Conversation

@garrettjstevens
Copy link
Contributor

verbatimModuleSyntax is a new-ish and recommended tsconfig setting. It was left disabled during the changes made in #753 since it caused the bundling of jbrowse-plugin-apollo to fail. This ended up being due to verbatimModuleSyntax causing TS to transpile import { type Thing } from 'some-package' to import {} from 'some-package', instead of removing the import altogether. This change enables lint rules that fix import { type Thing } from 'some-package' to import type { Thing } from 'some-package', which does get removed altogether, whenever possible. This allows verbatimModuleSyntax to be enabled. There are a lot of changed files, but they're basically all eslint auto-fixes.

This includes enabling the
`@typescript-eslint/no-import-type-side-effects` rule and running the
auto-fix to move all possible type imports to the top level, so that
verbatimModuleSyntax can work as intended.
@garrettjstevens garrettjstevens self-assigned this Feb 17, 2026
@garrettjstevens garrettjstevens merged commit 94c047f into main Feb 17, 2026
7 checks passed
@garrettjstevens garrettjstevens deleted the enable_verbatimModuleSyntax branch February 17, 2026 22:43
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.

1 participant

Comments