Skip to content

Commit c26b51c

Browse files
authored
fix: learn pages crashing due to codemirror (graphql#1402)
1 parent 4ed6d30 commit c26b51c

File tree

3 files changed

+506
-118
lines changed

3 files changed

+506
-118
lines changed

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
"@weknow/gatsby-remark-twitter": "0.2.3",
2424
"assert": "2.0.0",
2525
"clsx": "1.2.1",
26-
"codemirror": "6.0.1",
27-
"codemirror-graphql": "2.0.5",
26+
"codemirror": "5.65.1",
27+
"codemirror-graphql": "1.2.11",
2828
"gatsby": "5.8.1",
2929
"gatsby-plugin-anchor-links": "1.2.1",
3030
"gatsby-plugin-feed": "5.8.0",

src/components/Marked/MiniGraphiQL.tsx

+20-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
import React from "react"
1111
import { marked } from "marked"
12-
import * as CodeMirror from "codemirror"
1312

1413
import { graphql, formatError, parse, typeFromAST } from "graphql"
1514

@@ -140,6 +139,17 @@ class QueryEditor extends React.Component {
140139
}
141140

142141
componentDidMount() {
142+
var CodeMirror = require("codemirror")
143+
require("codemirror/addon/hint/show-hint")
144+
require("codemirror/addon/comment/comment")
145+
require("codemirror/addon/edit/matchbrackets")
146+
require("codemirror/addon/edit/closebrackets")
147+
require("codemirror/addon/lint/lint")
148+
require("codemirror/keymap/sublime")
149+
require("codemirror-graphql/hint")
150+
require("codemirror-graphql/lint")
151+
require("codemirror-graphql/mode")
152+
143153
this.editor = CodeMirror(this.domNode, {
144154
value: this.props.value || "",
145155
viewportMargin: Infinity,
@@ -327,6 +337,15 @@ class VariableEditor extends React.Component {
327337
componentDidMount() {
328338
// Lazily require to ensure requiring GraphiQL outside of a Browser context
329339
// does not produce an error.
340+
const CodeMirror = require("codemirror")
341+
require("codemirror/addon/hint/show-hint")
342+
require("codemirror/addon/edit/matchbrackets")
343+
require("codemirror/addon/edit/closebrackets")
344+
require("codemirror/addon/lint/lint")
345+
require("codemirror/keymap/sublime")
346+
require("codemirror-graphql/variables/hint")
347+
require("codemirror-graphql/variables/lint")
348+
require("codemirror-graphql/variables/mode")
330349

331350
this.editor = CodeMirror(this.domNode, {
332351
value: this.props.value || "",

0 commit comments

Comments
 (0)