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

Fix error related to "Types must be imported using a type-only import when 'verbatimModuleSyntax' is enabled" #634

Open
aamalric-talend opened this issue Feb 22, 2024 · 2 comments

Comments

@aamalric-talend
Copy link

Hi,

Using 'tsc' CI there's issues about import not using type-only import when using 'verbatimModuleSyntax': true in tsconfig.json file.


$ tsc
node_modules/@uiw/react-codemirror/src/getDefaultExtensions.ts:1:10 - error TS1484: 'Extension' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

1 import { Extension } from '@codemirror/state';
           ~~~~~~~~~

node_modules/@uiw/react-codemirror/src/getDefaultExtensions.ts:3:22 - error TS1484: 'BasicSetupOptions' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

3 import { basicSetup, BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
                       ~~~~~~~~~~~~~~~~~

node_modules/@uiw/react-codemirror/src/index.tsx:2:23 - error TS1484: 'EditorStateConfig' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

2 import { EditorState, EditorStateConfig, Extension, StateField } from '@codemirror/state';
                        ~~~~~~~~~~~~~~~~~

node_modules/@uiw/react-codemirror/src/index.tsx:2:42 - error TS1484: 'Extension' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

2 import { EditorState, EditorStateConfig, Extension, StateField } from '@codemirror/state';
                                           ~~~~~~~~~

node_modules/@uiw/react-codemirror/src/index.tsx:4:10 - error TS1484: 'BasicSetupOptions' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

4 import { BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
           ~~~~~~~~~~~~~~~~~

node_modules/@uiw/react-codemirror/src/index.tsx:6:10 - error TS1484: 'Statistics' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

6 import { Statistics } from './utils';
           ~~~~~~~~~~

node_modules/@uiw/react-codemirror/src/useCodeMirror.ts:6:10 - error TS1484: 'ReactCodeMirrorProps' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled.

6 import { ReactCodeMirrorProps } from '.';
@aamalric-talend
Copy link
Author

aamalric-talend commented Feb 22, 2024

Here is the diff to fix this issue:

diff --git a/core/src/getDefaultExtensions.ts b/core/src/getDefaultExtensions.ts
index 45f596a..8d0fbc7 100644
--- a/core/src/getDefaultExtensions.ts
+++ b/core/src/getDefaultExtensions.ts
@@ -1,10 +1,10 @@
-import { Extension } from '@codemirror/state';
+import type { Extension } from '@codemirror/state';
 import { indentWithTab } from '@codemirror/commands';
-import { basicSetup, BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
+import { basicSetup, type BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
 import { EditorView, keymap, placeholder } from '@codemirror/view';
 import { oneDark } from '@codemirror/theme-one-dark';
 import { EditorState } from '@codemirror/state';
-import { defaultLightThemeOption } from './theme/light';
+import type { defaultLightThemeOption } from './theme/light';

 export * from '@codemirror/theme-one-dark';
 export * from './theme/light';
diff --git a/core/src/index.tsx b/core/src/index.tsx
index b091b53..cf025bb 100644
--- a/core/src/index.tsx
+++ b/core/src/index.tsx
@@ -1,9 +1,9 @@
 import React, { useRef, forwardRef, useImperativeHandle } from 'react';
-import { EditorState, EditorStateConfig, Extension, StateField } from '@codemirror/state';
+import { EditorState, type EditorStateConfig, type Extension, StateField } from '@codemirror/state';
 import { EditorView, ViewUpdate } from '@codemirror/view';
-import { BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
+import type { BasicSetupOptions } from '@uiw/codemirror-extensions-basic-setup';
 import { useCodeMirror } from './useCodeMirror';
-import { Statistics } from './utils';
+import type { Statistics } from './utils';

 export * from '@codemirror/view';
 export * from '@codemirror/state';

jaywcjlove referenced this issue Feb 24, 2024
…mport when 'verbatimModuleSyntax' is enabled"
jaywcjlove added a commit that referenced this issue Feb 24, 2024
@jaywcjlove
Copy link
Member

@aamalric-talend upgrade v4.21.24

github-actions bot pushed a commit that referenced this issue Feb 24, 2024
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

No branches or pull requests

2 participants