codemirror-graphql
Advanced tools
Comparing version 0.11.4 to 0.11.5
@@ -6,2 +6,13 @@ # Change Log | ||
## [0.11.5](https://github.com/graphql/graphiql/compare/codemirror-graphql@0.11.4...codemirror-graphql@0.11.5) (2019-12-09) | ||
### Bug Fixes | ||
* a few more tweaks to babel ignore ([e0ad2c6](https://github.com/graphql/graphiql/commit/e0ad2c6)) | ||
## [0.11.4](https://github.com/graphql/graphiql/compare/codemirror-graphql@0.11.3...codemirror-graphql@0.11.4) (2019-12-03) | ||
@@ -8,0 +19,0 @@ |
@@ -1,9 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphqlLanguageServiceInterface = require("graphql-language-service-interface"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -17,3 +9,4 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { getAutocompleteSuggestions } from 'graphql-language-service-interface'; | ||
/** | ||
@@ -36,3 +29,4 @@ * Registers a "hint" helper for CodeMirror. | ||
*/ | ||
_codemirror.default.registerHelper('hint', 'graphql', (editor, options) => { | ||
CodeMirror.registerHelper('hint', 'graphql', (editor, options) => { | ||
const schema = options.schema; | ||
@@ -46,3 +40,3 @@ | ||
const token = editor.getTokenAt(cur); | ||
const rawResults = (0, _graphqlLanguageServiceInterface.getAutocompleteSuggestions)(schema, editor.getValue(), cur, token); | ||
const rawResults = getAutocompleteSuggestions(schema, editor.getValue(), cur, token); | ||
/** | ||
@@ -84,6 +78,5 @@ * GraphQL language service responds to the autocompletion request with | ||
if (results && results.list && results.list.length > 0) { | ||
results.from = _codemirror.default.Pos(results.from.line, results.from.column); | ||
results.to = _codemirror.default.Pos(results.to.line, results.to.column); | ||
_codemirror.default.signal(editor, 'hasCompletion', editor, results, token); | ||
results.from = CodeMirror.Pos(results.from.line, results.from.column); | ||
results.to = CodeMirror.Pos(results.to.line, results.to.column); | ||
CodeMirror.signal(editor, 'hasCompletion', editor, results, token); | ||
} | ||
@@ -90,0 +83,0 @@ |
@@ -1,15 +0,1 @@ | ||
"use strict"; | ||
var _graphql = require("graphql"); | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _getTypeInfo = _interopRequireDefault(require("./utils/getTypeInfo")); | ||
var _SchemaReference = require("./utils/SchemaReference"); | ||
require("./utils/info-addon"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -23,3 +9,7 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import { GraphQLList, GraphQLNonNull } from 'graphql'; | ||
import CodeMirror from 'codemirror'; | ||
import getTypeInfo from './utils/getTypeInfo'; | ||
import { getArgumentReference, getDirectiveReference, getEnumValueReference, getFieldReference, getTypeReference } from './utils/SchemaReference'; | ||
import './utils/info-addon'; | ||
/** | ||
@@ -39,3 +29,4 @@ * Registers GraphQL "info" tooltips for CodeMirror. | ||
*/ | ||
_codemirror.default.registerHelper('info', 'graphql', (token, options) => { | ||
CodeMirror.registerHelper('info', 'graphql', (token, options) => { | ||
if (!options.schema || !token.state) { | ||
@@ -48,3 +39,3 @@ return; | ||
const step = state.step; | ||
const typeInfo = (0, _getTypeInfo.default)(options.schema, token.state); // Given a Schema and a Token, produce the contents of an info tooltip. | ||
const typeInfo = getTypeInfo(options.schema, token.state); // Given a Schema and a Token, produce the contents of an info tooltip. | ||
// To do this, create a div element that we will render "into" and then pass | ||
@@ -94,3 +85,3 @@ // it to various rendering functions. | ||
text(into, fieldName, 'field-name', options, (0, _SchemaReference.getFieldReference)(typeInfo)); | ||
text(into, fieldName, 'field-name', options, getFieldReference(typeInfo)); | ||
} | ||
@@ -100,3 +91,3 @@ | ||
const name = '@' + typeInfo.directiveDef.name; | ||
text(into, name, 'directive-name', options, (0, _SchemaReference.getDirectiveReference)(typeInfo)); | ||
text(into, name, 'directive-name', options, getDirectiveReference(typeInfo)); | ||
} | ||
@@ -113,3 +104,3 @@ | ||
text(into, '('); | ||
text(into, name, 'arg-name', options, (0, _SchemaReference.getArgumentReference)(typeInfo)); | ||
text(into, name, 'arg-name', options, getArgumentReference(typeInfo)); | ||
renderTypeAnnotation(into, typeInfo, options, typeInfo.inputType); | ||
@@ -128,10 +119,10 @@ text(into, ')'); | ||
text(into, '.'); | ||
text(into, name, 'enum-value', options, (0, _SchemaReference.getEnumValueReference)(typeInfo)); | ||
text(into, name, 'enum-value', options, getEnumValueReference(typeInfo)); | ||
} | ||
function renderType(into, typeInfo, options, t) { | ||
if (t instanceof _graphql.GraphQLNonNull) { | ||
if (t instanceof GraphQLNonNull) { | ||
renderType(into, typeInfo, options, t.ofType); | ||
text(into, '!'); | ||
} else if (t instanceof _graphql.GraphQLList) { | ||
} else if (t instanceof GraphQLList) { | ||
text(into, '['); | ||
@@ -141,3 +132,3 @@ renderType(into, typeInfo, options, t.ofType); | ||
} else { | ||
text(into, t.name, 'type-name', options, (0, _SchemaReference.getTypeReference)(typeInfo, t)); | ||
text(into, t.name, 'type-name', options, getTypeReference(typeInfo, t)); | ||
} | ||
@@ -144,0 +135,0 @@ } |
@@ -1,13 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _getTypeInfo = _interopRequireDefault(require("./utils/getTypeInfo")); | ||
var _SchemaReference = require("./utils/SchemaReference"); | ||
require("./utils/jump-addon"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -24,3 +12,6 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import getTypeInfo from './utils/getTypeInfo'; | ||
import { getArgumentReference, getDirectiveReference, getEnumValueReference, getFieldReference, getTypeReference } from './utils/SchemaReference'; | ||
import './utils/jump-addon'; | ||
/** | ||
@@ -38,3 +29,4 @@ * Registers GraphQL "jump" links for CodeMirror. | ||
*/ | ||
_codemirror.default.registerHelper('jump', 'graphql', (token, options) => { | ||
CodeMirror.registerHelper('jump', 'graphql', (token, options) => { | ||
if (!options.schema || !options.onClick || !token.state) { | ||
@@ -50,15 +42,15 @@ return; | ||
const step = state.step; | ||
const typeInfo = (0, _getTypeInfo.default)(options.schema, state); | ||
const typeInfo = getTypeInfo(options.schema, state); | ||
if (kind === 'Field' && step === 0 && typeInfo.fieldDef || kind === 'AliasedField' && step === 2 && typeInfo.fieldDef) { | ||
return (0, _SchemaReference.getFieldReference)(typeInfo); | ||
return getFieldReference(typeInfo); | ||
} else if (kind === 'Directive' && step === 1 && typeInfo.directiveDef) { | ||
return (0, _SchemaReference.getDirectiveReference)(typeInfo); | ||
return getDirectiveReference(typeInfo); | ||
} else if (kind === 'Argument' && step === 0 && typeInfo.argDef) { | ||
return (0, _SchemaReference.getArgumentReference)(typeInfo); | ||
return getArgumentReference(typeInfo); | ||
} else if (kind === 'EnumValue' && typeInfo.enumValue) { | ||
return (0, _SchemaReference.getEnumValueReference)(typeInfo); | ||
return getEnumValueReference(typeInfo); | ||
} else if (kind === 'NamedType' && typeInfo.type) { | ||
return (0, _SchemaReference.getTypeReference)(typeInfo); | ||
return getTypeReference(typeInfo); | ||
} | ||
}); |
@@ -1,9 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphqlLanguageServiceInterface = require("graphql-language-service-interface"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -17,2 +9,4 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { getDiagnostics } from 'graphql-language-service-interface'; | ||
const SEVERITY = ['error', 'warning', 'information', 'hint']; | ||
@@ -39,5 +33,5 @@ const TYPE = { | ||
_codemirror.default.registerHelper('lint', 'graphql', (text, options) => { | ||
CodeMirror.registerHelper('lint', 'graphql', (text, options) => { | ||
const schema = options.schema; | ||
const rawResults = (0, _graphqlLanguageServiceInterface.getDiagnostics)(text, schema); | ||
const rawResults = getDiagnostics(text, schema); | ||
const results = rawResults.map(error => ({ | ||
@@ -47,6 +41,6 @@ message: error.message, | ||
type: TYPE[error.source], | ||
from: _codemirror.default.Pos(error.range.start.line, error.range.start.character), | ||
to: _codemirror.default.Pos(error.range.end.line, error.range.end.character) | ||
from: CodeMirror.Pos(error.range.start.line, error.range.start.character), | ||
to: CodeMirror.Pos(error.range.end.line, error.range.end.character) | ||
})); | ||
return results; | ||
}); |
@@ -1,9 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphqlLanguageServiceParser = require("graphql-language-service-parser"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -17,3 +9,4 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { LexRules, ParseRules, isIgnored, onlineParser } from 'graphql-language-service-parser'; | ||
/** | ||
@@ -39,7 +32,8 @@ * The GraphQL mode is defined as a tokenizer along with a list of rules, each | ||
*/ | ||
_codemirror.default.defineMode('graphql', config => { | ||
const parser = (0, _graphqlLanguageServiceParser.onlineParser)({ | ||
eatWhitespace: stream => stream.eatWhile(_graphqlLanguageServiceParser.isIgnored), | ||
lexRules: _graphqlLanguageServiceParser.LexRules, | ||
parseRules: _graphqlLanguageServiceParser.ParseRules, | ||
CodeMirror.defineMode('graphql', config => { | ||
const parser = onlineParser({ | ||
eatWhitespace: stream => stream.eatWhile(isIgnored), | ||
lexRules: LexRules, | ||
parseRules: ParseRules, | ||
editorConfig: { | ||
@@ -46,0 +40,0 @@ tabSize: config.tabSize |
{ | ||
"name": "codemirror-graphql", | ||
"version": "0.11.4", | ||
"version": "0.11.5", | ||
"description": "GraphQL mode and helpers for CodeMirror.", | ||
@@ -33,4 +33,3 @@ "contributors": [ | ||
"utils", | ||
"variables", | ||
"results" | ||
"variables" | ||
], | ||
@@ -45,4 +44,4 @@ "options": { | ||
"build": "yarn build-clean && yarn build-js && yarn build-esm && yarn build-flow .", | ||
"build-js": "babel src --root-mode upward --ignore src/__tests__ --out-dir . && babel src --root-mode upward --ignore src/__tests__ --out-dir esm && node ../../resources/renameFileExtensions.js './esm/**/*.js' . .esm.js", | ||
"build-esm": "cross-env ESM=true babel src --root-mode upward --ignore src/__tests__ --out-dir esm", | ||
"build-js": "babel src --root-mode upward --ignore **/__tests__/**,**/__mocks__/** --out-dir .", | ||
"build-esm": "cross-env ESM=true babel src --root-mode upward --ignore **/__tests__/**,**/__mocks__/** --out-dir esm && node ../../resources/renameFileExtensions.js './esm/{**,!**/__tests__/}/*.js' . .esm.js", | ||
"build-clean": "rimraf {mode,hint,info,jump,lint}.{js,esm.js,js.flow} && rimraf esm results utils variables coverage __tests__", | ||
@@ -58,4 +57,4 @@ "build-flow": "node ../../resources/buildFlow.js", | ||
"dependencies": { | ||
"graphql-language-service-interface": "^2.3.2", | ||
"graphql-language-service-parser": "^1.5.1" | ||
"graphql-language-service-interface": "^2.3.3", | ||
"graphql-language-service-parser": "^1.5.2" | ||
}, | ||
@@ -73,3 +72,3 @@ "devDependencies": { | ||
}, | ||
"gitHead": "ed12bf7719e73c4c339779988a0e10b65be1d34e" | ||
"gitHead": "6b091a7fd9793d1492023af1d3e1a8cb5a0509fb" | ||
} |
@@ -1,10 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = collectVariables; | ||
var _graphql = require("graphql"); | ||
/** | ||
@@ -18,7 +9,8 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import { typeFromAST } from 'graphql'; | ||
/** | ||
* Provided a schema and a document, produces a `variableToType` Object. | ||
*/ | ||
function collectVariables(schema, documentAST) { | ||
export default function collectVariables(schema, documentAST) { | ||
const variableToType = Object.create(null); | ||
@@ -34,3 +26,3 @@ documentAST.definitions.forEach(definition => { | ||
}) => { | ||
const inputType = (0, _graphql.typeFromAST)(schema, type); | ||
const inputType = typeFromAST(schema, type); | ||
@@ -37,0 +29,0 @@ if (inputType) { |
@@ -1,8 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = forEachState; | ||
/** | ||
@@ -17,3 +10,3 @@ * Copyright (c) 2019 GraphQL Contributors | ||
// Utility for iterating through a CodeMirror parse state stack bottom-up. | ||
function forEachState(stack, fn) { | ||
export default function forEachState(stack, fn) { | ||
const reverseStateStack = []; | ||
@@ -20,0 +13,0 @@ let state = stack; |
@@ -1,16 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = getTypeInfo; | ||
var _graphql = require("graphql"); | ||
var _introspection = require("graphql/type/introspection"); | ||
var _forEachState = _interopRequireDefault(require("./forEachState")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -24,3 +9,5 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import { isCompositeType, getNullableType, getNamedType, GraphQLEnumType, GraphQLInputObjectType, GraphQLList } from 'graphql'; | ||
import { SchemaMetaFieldDef, TypeMetaFieldDef, TypeNameMetaFieldDef } from 'graphql/type/introspection'; | ||
import forEachState from './forEachState'; | ||
/** | ||
@@ -30,3 +17,4 @@ * Utility for collecting rich type information given any token's state | ||
*/ | ||
function getTypeInfo(schema, tokenState) { | ||
export default function getTypeInfo(schema, tokenState) { | ||
const info = { | ||
@@ -43,3 +31,3 @@ schema, | ||
}; | ||
(0, _forEachState.default)(tokenState, state => { | ||
forEachState(tokenState, state => { | ||
switch (state.kind) { | ||
@@ -74,3 +62,3 @@ case 'Query': | ||
case 'SelectionSet': | ||
info.parentType = (0, _graphql.getNamedType)(info.type); | ||
info.parentType = getNamedType(info.type); | ||
break; | ||
@@ -103,14 +91,14 @@ | ||
case 'EnumValue': | ||
const enumType = (0, _graphql.getNamedType)(info.inputType); | ||
info.enumValue = enumType instanceof _graphql.GraphQLEnumType ? find(enumType.getValues(), val => val.value === state.name) : null; | ||
const enumType = getNamedType(info.inputType); | ||
info.enumValue = enumType instanceof GraphQLEnumType ? find(enumType.getValues(), val => val.value === state.name) : null; | ||
break; | ||
case 'ListValue': | ||
const nullableType = (0, _graphql.getNullableType)(info.inputType); | ||
info.inputType = nullableType instanceof _graphql.GraphQLList ? nullableType.ofType : null; | ||
const nullableType = getNullableType(info.inputType); | ||
info.inputType = nullableType instanceof GraphQLList ? nullableType.ofType : null; | ||
break; | ||
case 'ObjectValue': | ||
const objectType = (0, _graphql.getNamedType)(info.inputType); | ||
info.objectFieldDefs = objectType instanceof _graphql.GraphQLInputObjectType ? objectType.getFields() : null; | ||
const objectType = getNamedType(info.inputType); | ||
info.objectFieldDefs = objectType instanceof GraphQLInputObjectType ? objectType.getFields() : null; | ||
break; | ||
@@ -131,14 +119,13 @@ | ||
function getFieldDef(schema, type, fieldName) { | ||
if (fieldName === _introspection.SchemaMetaFieldDef.name && schema.getQueryType() === type) { | ||
return _introspection.SchemaMetaFieldDef; | ||
if (fieldName === SchemaMetaFieldDef.name && schema.getQueryType() === type) { | ||
return SchemaMetaFieldDef; | ||
} | ||
if (fieldName === _introspection.TypeMetaFieldDef.name && schema.getQueryType() === type) { | ||
return _introspection.TypeMetaFieldDef; | ||
if (fieldName === TypeMetaFieldDef.name && schema.getQueryType() === type) { | ||
return TypeMetaFieldDef; | ||
} | ||
if (fieldName === _introspection.TypeNameMetaFieldDef.name && (0, _graphql.isCompositeType)(type)) { | ||
return _introspection.TypeNameMetaFieldDef; | ||
if (fieldName === TypeNameMetaFieldDef.name && isCompositeType(type)) { | ||
return TypeNameMetaFieldDef; | ||
} | ||
@@ -145,0 +132,0 @@ |
@@ -1,8 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = hintList; | ||
/** | ||
@@ -17,3 +10,3 @@ * Copyright (c) 2019 GraphQL Contributors | ||
// Create the expected hint response given a possible list and a token | ||
function hintList(cursor, token, list) { | ||
export default function hintList(cursor, token, list) { | ||
const hints = filterAndSortList(list, normalizeText(token.string)); | ||
@@ -40,3 +33,2 @@ | ||
function filterAndSortList(list, text) { | ||
@@ -43,0 +35,0 @@ if (!text) { |
@@ -1,7 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -15,8 +9,7 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
_codemirror.default.defineOption('info', false, (cm, options, old) => { | ||
if (old && old !== _codemirror.default.Init) { | ||
import CodeMirror from 'codemirror'; | ||
CodeMirror.defineOption('info', false, (cm, options, old) => { | ||
if (old && old !== CodeMirror.Init) { | ||
const oldOnMouseOver = cm.state.info.onMouseOver; | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseover', oldOnMouseOver); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseover', oldOnMouseOver); | ||
clearTimeout(cm.state.info.hoverTimeout); | ||
@@ -29,4 +22,3 @@ delete cm.state.info; | ||
state.onMouseOver = onMouseOver.bind(null, cm); | ||
_codemirror.default.on(cm.getWrapperElement(), 'mouseover', state.onMouseOver); | ||
CodeMirror.on(cm.getWrapperElement(), 'mouseover', state.onMouseOver); | ||
} | ||
@@ -64,6 +56,4 @@ }); | ||
const onMouseOut = function () { | ||
_codemirror.default.off(document, 'mousemove', onMouseMove); | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
CodeMirror.off(document, 'mousemove', onMouseMove); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
clearTimeout(state.hoverTimeout); | ||
@@ -74,6 +64,4 @@ state.hoverTimeout = undefined; | ||
const onHover = function () { | ||
_codemirror.default.off(document, 'mousemove', onMouseMove); | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
CodeMirror.off(document, 'mousemove', onMouseMove); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
state.hoverTimeout = undefined; | ||
@@ -85,6 +73,4 @@ onMouseHover(cm, box); | ||
state.hoverTimeout = setTimeout(onHover, hoverTime); | ||
_codemirror.default.on(document, 'mousemove', onMouseMove); | ||
_codemirror.default.on(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
CodeMirror.on(document, 'mousemove', onMouseMove); | ||
CodeMirror.on(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
} | ||
@@ -154,8 +140,6 @@ | ||
const hidePopup = function () { | ||
_codemirror.default.off(popup, 'mouseover', onMouseOverPopup); | ||
CodeMirror.off(popup, 'mouseover', onMouseOverPopup); | ||
CodeMirror.off(popup, 'mouseout', onMouseOut); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
_codemirror.default.off(popup, 'mouseout', onMouseOut); | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
if (popup.style.opacity) { | ||
@@ -173,7 +157,5 @@ popup.style.opacity = 0; | ||
_codemirror.default.on(popup, 'mouseover', onMouseOverPopup); | ||
_codemirror.default.on(popup, 'mouseout', onMouseOut); | ||
_codemirror.default.on(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
CodeMirror.on(popup, 'mouseover', onMouseOverPopup); | ||
CodeMirror.on(popup, 'mouseout', onMouseOut); | ||
CodeMirror.on(cm.getWrapperElement(), 'mouseout', onMouseOut); | ||
} |
@@ -1,8 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = jsonParse; | ||
/** | ||
@@ -29,3 +22,3 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
function jsonParse(str) { | ||
export default function jsonParse(str) { | ||
string = str; | ||
@@ -40,3 +33,2 @@ strLen = str.length; | ||
} | ||
let string; | ||
@@ -43,0 +35,0 @@ let strLen; |
@@ -1,7 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -15,14 +9,10 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
_codemirror.default.defineOption('jump', false, (cm, options, old) => { | ||
if (old && old !== _codemirror.default.Init) { | ||
import CodeMirror from 'codemirror'; | ||
CodeMirror.defineOption('jump', false, (cm, options, old) => { | ||
if (old && old !== CodeMirror.Init) { | ||
const oldOnMouseOver = cm.state.jump.onMouseOver; | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseover', oldOnMouseOver); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseover', oldOnMouseOver); | ||
const oldOnMouseOut = cm.state.jump.onMouseOut; | ||
_codemirror.default.off(cm.getWrapperElement(), 'mouseout', oldOnMouseOut); | ||
_codemirror.default.off(document, 'keydown', cm.state.jump.onKeyDown); | ||
CodeMirror.off(cm.getWrapperElement(), 'mouseout', oldOnMouseOut); | ||
CodeMirror.off(document, 'keydown', cm.state.jump.onKeyDown); | ||
delete cm.state.jump; | ||
@@ -38,8 +28,5 @@ } | ||
}; | ||
_codemirror.default.on(cm.getWrapperElement(), 'mouseover', state.onMouseOver); | ||
_codemirror.default.on(cm.getWrapperElement(), 'mouseout', state.onMouseOut); | ||
_codemirror.default.on(document, 'keydown', state.onKeyDown); | ||
CodeMirror.on(cm.getWrapperElement(), 'mouseover', state.onMouseOver); | ||
CodeMirror.on(cm.getWrapperElement(), 'mouseout', state.onMouseOut); | ||
CodeMirror.on(document, 'keydown', state.onKeyDown); | ||
} | ||
@@ -100,6 +87,4 @@ }); | ||
_codemirror.default.off(document, 'keyup', onKeyUp); | ||
_codemirror.default.off(document, 'click', onClick); | ||
CodeMirror.off(document, 'keyup', onKeyUp); | ||
CodeMirror.off(document, 'click', onClick); | ||
cm.off('mousedown', onMouseDown); | ||
@@ -122,6 +107,4 @@ }; | ||
_codemirror.default.on(document, 'keyup', onKeyUp); | ||
_codemirror.default.on(document, 'click', onClick); | ||
CodeMirror.on(document, 'keyup', onKeyUp); | ||
CodeMirror.on(document, 'click', onClick); | ||
cm.on('mousedown', onMouseDown); | ||
@@ -128,0 +111,0 @@ } |
@@ -1,10 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.default = runParser; | ||
var _graphqlLanguageServiceParser = require("graphql-language-service-parser"); | ||
/** | ||
@@ -18,8 +9,9 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
function runParser(sourceText, parserOptions, callbackFn) { | ||
const parser = (0, _graphqlLanguageServiceParser.onlineParser)(parserOptions); | ||
import { CharacterStream, onlineParser } from 'graphql-language-service-parser'; | ||
export default function runParser(sourceText, parserOptions, callbackFn) { | ||
const parser = onlineParser(parserOptions); | ||
const state = parser.startState(); | ||
const lines = sourceText.split('\n'); | ||
lines.forEach(line => { | ||
const stream = new _graphqlLanguageServiceParser.CharacterStream(line); | ||
const stream = new CharacterStream(line); | ||
@@ -26,0 +18,0 @@ while (!stream.eol()) { |
@@ -1,14 +0,1 @@ | ||
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { | ||
value: true | ||
}); | ||
exports.getFieldReference = getFieldReference; | ||
exports.getDirectiveReference = getDirectiveReference; | ||
exports.getArgumentReference = getArgumentReference; | ||
exports.getEnumValueReference = getEnumValueReference; | ||
exports.getTypeReference = getTypeReference; | ||
var _graphql = require("graphql"); | ||
/** | ||
@@ -22,3 +9,4 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
function getFieldReference(typeInfo) { | ||
import { getNamedType } from 'graphql'; | ||
export function getFieldReference(typeInfo) { | ||
return { | ||
@@ -31,4 +19,3 @@ kind: 'Field', | ||
} | ||
function getDirectiveReference(typeInfo) { | ||
export function getDirectiveReference(typeInfo) { | ||
return { | ||
@@ -40,4 +27,3 @@ kind: 'Directive', | ||
} | ||
function getArgumentReference(typeInfo) { | ||
export function getArgumentReference(typeInfo) { | ||
return typeInfo.directiveDef ? { | ||
@@ -56,4 +42,3 @@ kind: 'Argument', | ||
} | ||
function getEnumValueReference(typeInfo) { | ||
export function getEnumValueReference(typeInfo) { | ||
return { | ||
@@ -63,3 +48,3 @@ kind: 'EnumValue', | ||
// $FlowFixMe | ||
type: (0, _graphql.getNamedType)(typeInfo.inputType) | ||
type: getNamedType(typeInfo.inputType) | ||
}; | ||
@@ -69,4 +54,3 @@ } // Note: for reusability, getTypeReference can produce a reference to any type, | ||
function getTypeReference(typeInfo, type) { | ||
export function getTypeReference(typeInfo, type) { | ||
return { | ||
@@ -73,0 +57,0 @@ kind: 'Type', |
@@ -1,13 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphql = require("graphql"); | ||
var _forEachState = _interopRequireDefault(require("../utils/forEachState")); | ||
var _hintList = _interopRequireDefault(require("../utils/hintList")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -21,3 +9,6 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { getNullableType, getNamedType, GraphQLEnumType, GraphQLInputObjectType, GraphQLList, GraphQLBoolean } from 'graphql'; | ||
import forEachState from '../utils/forEachState'; | ||
import hintList from '../utils/hintList'; | ||
/** | ||
@@ -40,3 +31,4 @@ * Registers a "hint" helper for CodeMirror. | ||
*/ | ||
_codemirror.default.registerHelper('hint', 'graphql-variables', (editor, options) => { | ||
CodeMirror.registerHelper('hint', 'graphql-variables', (editor, options) => { | ||
const cur = editor.getCursor(); | ||
@@ -47,6 +39,5 @@ const token = editor.getTokenAt(cur); | ||
if (results && results.list && results.list.length > 0) { | ||
results.from = _codemirror.default.Pos(results.from.line, results.from.column); | ||
results.to = _codemirror.default.Pos(results.to.line, results.to.column); | ||
_codemirror.default.signal(editor, 'hasCompletion', editor, results, token); | ||
results.from = CodeMirror.Pos(results.from.line, results.from.column); | ||
results.to = CodeMirror.Pos(results.to.line, results.to.column); | ||
CodeMirror.signal(editor, 'hasCompletion', editor, results, token); | ||
} | ||
@@ -64,3 +55,3 @@ | ||
if (kind === 'Document' && step === 0) { | ||
return (0, _hintList.default)(cur, token, [{ | ||
return hintList(cur, token, [{ | ||
text: '{' | ||
@@ -80,3 +71,3 @@ }]); | ||
const variableNames = Object.keys(variableToType); | ||
return (0, _hintList.default)(cur, token, variableNames.map(name => ({ | ||
return hintList(cur, token, variableNames.map(name => ({ | ||
text: `"${name}": `, | ||
@@ -91,3 +82,3 @@ type: variableToType[name] | ||
const inputFields = Object.keys(typeInfo.fields).map(fieldName => typeInfo.fields[fieldName]); | ||
return (0, _hintList.default)(cur, token, inputFields.map(field => ({ | ||
return hintList(cur, token, inputFields.map(field => ({ | ||
text: `"${field.name}": `, | ||
@@ -102,12 +93,12 @@ type: field.type, | ||
if (kind === 'StringValue' || kind === 'NumberValue' || kind === 'BooleanValue' || kind === 'NullValue' || kind === 'ListValue' && step === 1 || kind === 'ObjectField' && step === 2 || kind === 'Variable' && step === 2) { | ||
const namedInputType = (0, _graphql.getNamedType)(typeInfo.type); | ||
const namedInputType = getNamedType(typeInfo.type); | ||
if (namedInputType instanceof _graphql.GraphQLInputObjectType) { | ||
return (0, _hintList.default)(cur, token, [{ | ||
if (namedInputType instanceof GraphQLInputObjectType) { | ||
return hintList(cur, token, [{ | ||
text: '{' | ||
}]); | ||
} else if (namedInputType instanceof _graphql.GraphQLEnumType) { | ||
} else if (namedInputType instanceof GraphQLEnumType) { | ||
const valueMap = namedInputType.getValues(); | ||
const values = Object.keys(valueMap).map(name => valueMap[name]); | ||
return (0, _hintList.default)(cur, token, values.map(value => ({ | ||
return hintList(cur, token, values.map(value => ({ | ||
text: `"${value.name}"`, | ||
@@ -117,10 +108,10 @@ type: namedInputType, | ||
}))); | ||
} else if (namedInputType === _graphql.GraphQLBoolean) { | ||
return (0, _hintList.default)(cur, token, [{ | ||
} else if (namedInputType === GraphQLBoolean) { | ||
return hintList(cur, token, [{ | ||
text: 'true', | ||
type: _graphql.GraphQLBoolean, | ||
type: GraphQLBoolean, | ||
description: 'Not false.' | ||
}, { | ||
text: 'false', | ||
type: _graphql.GraphQLBoolean, | ||
type: GraphQLBoolean, | ||
description: 'Not true.' | ||
@@ -139,11 +130,11 @@ }]); | ||
}; | ||
(0, _forEachState.default)(tokenState, state => { | ||
forEachState(tokenState, state => { | ||
if (state.kind === 'Variable') { | ||
info.type = variableToType[state.name]; | ||
} else if (state.kind === 'ListValue') { | ||
const nullableType = (0, _graphql.getNullableType)(info.type); | ||
info.type = nullableType instanceof _graphql.GraphQLList ? nullableType.ofType : null; | ||
const nullableType = getNullableType(info.type); | ||
info.type = nullableType instanceof GraphQLList ? nullableType.ofType : null; | ||
} else if (state.kind === 'ObjectValue') { | ||
const objectType = (0, _graphql.getNamedType)(info.type); | ||
info.fields = objectType instanceof _graphql.GraphQLInputObjectType ? objectType.getFields() : null; | ||
const objectType = getNamedType(info.type); | ||
info.fields = objectType instanceof GraphQLInputObjectType ? objectType.getFields() : null; | ||
} else if (state.kind === 'ObjectField') { | ||
@@ -150,0 +141,0 @@ const objectField = state.name && info.fields ? info.fields[state.name] : null; |
@@ -1,11 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphql = require("graphql"); | ||
var _jsonParse = _interopRequireDefault(require("../utils/jsonParse")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -19,3 +9,5 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { GraphQLEnumType, GraphQLInputObjectType, GraphQLList, GraphQLNonNull, GraphQLScalarType } from 'graphql'; | ||
import jsonParse from '../utils/jsonParse'; | ||
/** | ||
@@ -33,3 +25,4 @@ * Registers a "lint" helper for CodeMirror. | ||
*/ | ||
_codemirror.default.registerHelper('lint', 'graphql-variables', (text, options, editor) => { | ||
CodeMirror.registerHelper('lint', 'graphql-variables', (text, options, editor) => { | ||
// If there's no text, do nothing. | ||
@@ -44,3 +37,3 @@ if (!text) { | ||
try { | ||
ast = (0, _jsonParse.default)(text); | ||
ast = jsonParse(text); | ||
} catch (syntaxError) { | ||
@@ -66,3 +59,2 @@ if (syntaxError.stack) { | ||
function validateVariables(editor, variableToType, variablesAST) { | ||
@@ -88,3 +80,3 @@ const errors = []; | ||
// Validate non-nullable values. | ||
if (type instanceof _graphql.GraphQLNonNull) { | ||
if (type instanceof GraphQLNonNull) { | ||
if (valueAST.kind === 'Null') { | ||
@@ -102,3 +94,3 @@ return [[valueAST, `Type "${type}" is non-nullable and cannot be null.`]]; | ||
if (type instanceof _graphql.GraphQLList) { | ||
if (type instanceof GraphQLList) { | ||
const itemType = type.ofType; | ||
@@ -114,3 +106,3 @@ | ||
if (type instanceof _graphql.GraphQLInputObjectType) { | ||
if (type instanceof GraphQLInputObjectType) { | ||
if (valueAST.kind !== 'Object') { | ||
@@ -139,3 +131,3 @@ return [[valueAST, `Type "${type}" must be an Object.`]]; | ||
if (fieldType instanceof _graphql.GraphQLNonNull) { | ||
if (fieldType instanceof GraphQLNonNull) { | ||
fieldErrors.push([valueAST, `Object of type "${type}" is missing required field "${fieldName}".`]); | ||
@@ -155,3 +147,3 @@ } | ||
if (type instanceof _graphql.GraphQLEnumType || type instanceof _graphql.GraphQLScalarType) { | ||
if (type instanceof GraphQLEnumType || type instanceof GraphQLScalarType) { | ||
if (valueAST.kind !== 'String' && valueAST.kind !== 'Number' && valueAST.kind !== 'Boolean' && valueAST.kind !== 'Null' || isNullish(type.parseValue(valueAST.value))) { | ||
@@ -158,0 +150,0 @@ return [[valueAST, `Expected value of type "${type}".`]]; |
@@ -1,9 +0,1 @@ | ||
"use strict"; | ||
var _codemirror = _interopRequireDefault(require("codemirror")); | ||
var _graphqlLanguageServiceParser = require("graphql-language-service-parser"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
@@ -17,3 +9,4 @@ * Copyright (c) 2019 GraphQL Contributors | ||
*/ | ||
import CodeMirror from 'codemirror'; | ||
import { list, t, onlineParser, opt, p } from 'graphql-language-service-parser'; | ||
/** | ||
@@ -23,4 +16,5 @@ * This mode defines JSON, but provides a data-laden parser state to enable | ||
*/ | ||
_codemirror.default.defineMode('graphql-variables', config => { | ||
const parser = (0, _graphqlLanguageServiceParser.onlineParser)({ | ||
CodeMirror.defineMode('graphql-variables', config => { | ||
const parser = onlineParser({ | ||
eatWhitespace: stream => stream.eatSpace(), | ||
@@ -74,4 +68,4 @@ lexRules: LexRules, | ||
const ParseRules = { | ||
Document: [(0, _graphqlLanguageServiceParser.p)('{'), (0, _graphqlLanguageServiceParser.list)('Variable', (0, _graphqlLanguageServiceParser.opt)((0, _graphqlLanguageServiceParser.p)(','))), (0, _graphqlLanguageServiceParser.p)('}')], | ||
Variable: [namedKey('variable'), (0, _graphqlLanguageServiceParser.p)(':'), 'Value'], | ||
Document: [p('{'), list('Variable', opt(p(','))), p('}')], | ||
Variable: [namedKey('variable'), p(':'), 'Value'], | ||
@@ -111,9 +105,9 @@ Value(token) { | ||
NumberValue: [(0, _graphqlLanguageServiceParser.t)('Number', 'number')], | ||
StringValue: [(0, _graphqlLanguageServiceParser.t)('String', 'string')], | ||
BooleanValue: [(0, _graphqlLanguageServiceParser.t)('Keyword', 'builtin')], | ||
NullValue: [(0, _graphqlLanguageServiceParser.t)('Keyword', 'keyword')], | ||
ListValue: [(0, _graphqlLanguageServiceParser.p)('['), (0, _graphqlLanguageServiceParser.list)('Value', (0, _graphqlLanguageServiceParser.opt)((0, _graphqlLanguageServiceParser.p)(','))), (0, _graphqlLanguageServiceParser.p)(']')], | ||
ObjectValue: [(0, _graphqlLanguageServiceParser.p)('{'), (0, _graphqlLanguageServiceParser.list)('ObjectField', (0, _graphqlLanguageServiceParser.opt)((0, _graphqlLanguageServiceParser.p)(','))), (0, _graphqlLanguageServiceParser.p)('}')], | ||
ObjectField: [namedKey('attribute'), (0, _graphqlLanguageServiceParser.p)(':'), 'Value'] | ||
NumberValue: [t('Number', 'number')], | ||
StringValue: [t('String', 'string')], | ||
BooleanValue: [t('Keyword', 'builtin')], | ||
NullValue: [t('Keyword', 'keyword')], | ||
ListValue: [p('['), list('Value', opt(p(','))), p(']')], | ||
ObjectValue: [p('{'), list('ObjectField', opt(p(','))), p('}')], | ||
ObjectField: [namedKey('attribute'), p(':'), 'Value'] | ||
}; // A namedKey Token which will decorate the state with a `name` | ||
@@ -120,0 +114,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
0
135863
43
3290