Skip to content

Commit 72f06bc

Browse files
authored
[1/3] [v3] Exclude codemirror/... and codemirror-graphql/... imports from bundle (#3824)
* [skip ci] * fix * add .js extension * add .js extension * upd
1 parent 9f725b8 commit 72f06bc

File tree

8 files changed

+39
-34
lines changed

8 files changed

+39
-34
lines changed

.changeset/silly-nails-double.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@graphiql/react': patch
3+
---
4+
5+
Exclude `codemirror/...` and `codemirror-graphql/...` imports from bundle

jest.config.base.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ module.exports = (dir, env = 'jsdom') => {
2424
'^graphql-language-([^/]+)': `${__dirname}/packages/graphql-language-$1/src`,
2525
'^@graphiql\\/([^/]+)': `${__dirname}/packages/graphiql-$1/src`,
2626
'^@graphiql-plugins\\/([^/]+)': `${__dirname}/plugins/$1/src`,
27-
'^codemirror-graphql\\/esm([^]+)': `${__dirname}/packages/codemirror-graphql/src/$1`,
27+
'^codemirror-graphql\\/esm([^]+)\\.js': `${__dirname}/packages/codemirror-graphql/src/$1`,
2828
'^codemirror-graphql\\/cjs([^]+)': `${__dirname}/packages/codemirror-graphql/src/$1`,
2929
// relies on compilation
3030
'^cm6-graphql\\/src\\/([^]+)': `${__dirname}/packages/cm6-graphql/dist/$1`,

packages/graphiql-react/src/editor/common.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,17 @@ export async function importCodeMirror(
3434
options?.useCommonAddons === false
3535
? addons
3636
: [
37-
import('codemirror/addon/hint/show-hint'),
38-
import('codemirror/addon/edit/matchbrackets'),
39-
import('codemirror/addon/edit/closebrackets'),
40-
import('codemirror/addon/fold/brace-fold'),
41-
import('codemirror/addon/fold/foldgutter'),
42-
import('codemirror/addon/lint/lint'),
43-
import('codemirror/addon/search/searchcursor'),
44-
import('codemirror/addon/search/jump-to-line'),
45-
import('codemirror/addon/dialog/dialog'),
37+
import('codemirror/addon/hint/show-hint.js'),
38+
import('codemirror/addon/edit/matchbrackets.js'),
39+
import('codemirror/addon/edit/closebrackets.js'),
40+
import('codemirror/addon/fold/brace-fold.js'),
41+
import('codemirror/addon/fold/foldgutter.js'),
42+
import('codemirror/addon/lint/lint.js'),
43+
import('codemirror/addon/search/searchcursor.js'),
44+
import('codemirror/addon/search/jump-to-line.js'),
45+
import('codemirror/addon/dialog/dialog.js'),
4646
// @ts-expect-error
47-
import('codemirror/keymap/sublime'),
47+
import('codemirror/keymap/sublime.js'),
4848
...addons,
4949
],
5050
);

packages/graphiql-react/src/editor/header-editor.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ export function useHeaderEditor(
5353

5454
void importCodeMirror([
5555
// @ts-expect-error
56-
import('codemirror/mode/javascript/javascript'),
56+
import('codemirror/mode/javascript/javascript.js'),
5757
]).then(CodeMirror => {
5858
// Don't continue if the effect has already been cleaned up
5959
if (!isActive) {

packages/graphiql-react/src/editor/query-editor.ts

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -144,13 +144,13 @@ export function useQueryEditor(
144144
let isActive = true;
145145

146146
void importCodeMirror([
147-
import('codemirror/addon/comment/comment'),
148-
import('codemirror/addon/search/search'),
149-
import('codemirror-graphql/esm/hint'),
150-
import('codemirror-graphql/esm/lint'),
151-
import('codemirror-graphql/esm/info'),
152-
import('codemirror-graphql/esm/jump'),
153-
import('codemirror-graphql/esm/mode'),
147+
import('codemirror/addon/comment/comment.js'),
148+
import('codemirror/addon/search/search.js'),
149+
import('codemirror-graphql/esm/hint.js'),
150+
import('codemirror-graphql/esm/lint.js'),
151+
import('codemirror-graphql/esm/info.js'),
152+
import('codemirror-graphql/esm/jump.js'),
153+
import('codemirror-graphql/esm/mode.js'),
154154
]).then(CodeMirror => {
155155
// Don't continue if the effect has already been cleaned up
156156
if (!isActive) {

packages/graphiql-react/src/editor/response-editor.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,16 +64,16 @@ export function useResponseEditor(
6464
let isActive = true;
6565
void importCodeMirror(
6666
[
67-
import('codemirror/addon/fold/foldgutter'),
68-
import('codemirror/addon/fold/brace-fold'),
69-
import('codemirror/addon/dialog/dialog'),
70-
import('codemirror/addon/search/search'),
71-
import('codemirror/addon/search/searchcursor'),
72-
import('codemirror/addon/search/jump-to-line'),
67+
import('codemirror/addon/fold/foldgutter.js'),
68+
import('codemirror/addon/fold/brace-fold.js'),
69+
import('codemirror/addon/dialog/dialog.js'),
70+
import('codemirror/addon/search/search.js'),
71+
import('codemirror/addon/search/searchcursor.js'),
72+
import('codemirror/addon/search/jump-to-line.js'),
7373
// @ts-expect-error
74-
import('codemirror/keymap/sublime'),
75-
import('codemirror-graphql/esm/results/mode'),
76-
import('codemirror-graphql/esm/utils/info-addon'),
74+
import('codemirror/keymap/sublime.js'),
75+
import('codemirror-graphql/esm/results/mode.js'),
76+
import('codemirror-graphql/esm/utils/info-addon.js'),
7777
],
7878
{ useCommonAddons: false },
7979
).then(CodeMirror => {

packages/graphiql-react/src/editor/variable-editor.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ export function useVariableEditor(
5858
let isActive = true;
5959

6060
void importCodeMirror([
61-
import('codemirror-graphql/esm/variables/hint'),
62-
import('codemirror-graphql/esm/variables/lint'),
63-
import('codemirror-graphql/esm/variables/mode'),
61+
import('codemirror-graphql/esm/variables/hint.js'),
62+
import('codemirror-graphql/esm/variables/lint.js'),
63+
import('codemirror-graphql/esm/variables/mode.js'),
6464
]).then(CodeMirror => {
6565
// Don't continue if the effect has already been cleaned up
6666
if (!isActive) {

packages/graphiql-react/vite.config.mts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,9 @@ export default defineConfig({
3232
'react/jsx-runtime',
3333
// Exclude peer dependencies and dependencies from bundle
3434
...Object.keys(packageJSON.peerDependencies),
35-
...Object.keys(packageJSON.dependencies).filter(
36-
dependency => dependency !== 'codemirror',
37-
),
35+
...Object.keys(packageJSON.dependencies),
36+
// Exclude `codemirror/...` and `codemirror-graphql/...` but not `../style/codemirror.css`
37+
/codemirror[/-]/,
3838
],
3939
output: {
4040
chunkFileNames: '[name].[format].js',

0 commit comments

Comments
 (0)