graphql 14.0.0 → 14.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/error/GraphQLError.js +1 -1
- package/error/GraphQLError.js.flow +3 -3
- package/error/GraphQLError.mjs +1 -1
- package/error/formatError.js +1 -1
- package/error/formatError.mjs +1 -1
- package/error/index.mjs +1 -1
- package/error/locatedError.js +1 -1
- package/error/locatedError.mjs +1 -1
- package/error/printError.js +1 -1
- package/error/printError.mjs +1 -1
- package/error/syntaxError.js +1 -1
- package/error/syntaxError.mjs +1 -1
- package/execution/execute.js +4 -4
- package/execution/execute.js.flow +4 -6
- package/execution/execute.mjs +5 -5
- package/execution/index.mjs +1 -1
- package/execution/values.js +4 -4
- package/execution/values.js.flow +3 -3
- package/execution/values.mjs +3 -3
- package/graphql.js +1 -1
- package/graphql.mjs +1 -1
- package/index.js +12 -0
- package/index.js.flow +4 -0
- package/index.mjs +4 -4
- package/jsutils/dedent.js +2 -2
- package/jsutils/dedent.js.flow +1 -1
- package/jsutils/dedent.mjs +2 -2
- package/jsutils/defineToJSON.js +17 -6
- package/jsutils/defineToJSON.js.flow +14 -5
- package/jsutils/defineToJSON.mjs +14 -6
- package/jsutils/defineToStringTag.js +5 -5
- package/jsutils/defineToStringTag.js.flow +3 -3
- package/jsutils/defineToStringTag.mjs +4 -4
- package/jsutils/inspect.js +46 -12
- package/jsutils/inspect.js.flow +42 -15
- package/jsutils/inspect.mjs +45 -5
- package/jsutils/instanceOf.js +1 -1
- package/jsutils/instanceOf.mjs +1 -1
- package/jsutils/invariant.js +1 -1
- package/jsutils/invariant.mjs +1 -1
- package/jsutils/isInvalid.js +1 -1
- package/jsutils/isInvalid.mjs +1 -1
- package/jsutils/isNullish.js +1 -1
- package/jsutils/isNullish.mjs +1 -1
- package/jsutils/isPromise.js +1 -1
- package/jsutils/isPromise.mjs +1 -1
- package/jsutils/keyMap.js +1 -1
- package/jsutils/keyMap.mjs +1 -1
- package/jsutils/keyValMap.js +1 -1
- package/jsutils/keyValMap.mjs +1 -1
- package/jsutils/mapValue.js +54 -0
- package/jsutils/mapValue.js.flow +27 -0
- package/jsutils/mapValue.mjs +44 -0
- package/jsutils/memoize3.js +1 -1
- package/jsutils/memoize3.mjs +1 -1
- package/jsutils/nodejsCustomInspectSymbol.js +18 -0
- package/jsutils/nodejsCustomInspectSymbol.js.flow +15 -0
- package/jsutils/nodejsCustomInspectSymbol.mjs +10 -0
- package/jsutils/orList.js +17 -4
- package/jsutils/orList.js.flow +13 -7
- package/jsutils/orList.mjs +14 -4
- package/jsutils/promiseForObject.js +1 -1
- package/jsutils/promiseForObject.mjs +1 -1
- package/jsutils/promiseReduce.js +1 -1
- package/jsutils/promiseReduce.mjs +1 -1
- package/jsutils/quotedOrList.js +1 -1
- package/jsutils/quotedOrList.mjs +1 -1
- package/jsutils/suggestionList.js +1 -1
- package/jsutils/suggestionList.mjs +1 -1
- package/language/blockStringValue.js +2 -2
- package/language/blockStringValue.js.flow +1 -1
- package/language/blockStringValue.mjs +2 -2
- package/language/directiveLocation.js +1 -1
- package/language/directiveLocation.mjs +1 -1
- package/language/index.mjs +1 -1
- package/language/kinds.js +1 -1
- package/language/kinds.mjs +1 -1
- package/language/lexer.js +29 -13
- package/language/lexer.js.flow +34 -20
- package/language/lexer.mjs +28 -13
- package/language/location.js +1 -1
- package/language/location.mjs +1 -1
- package/language/parser.js +31 -38
- package/language/parser.js.flow +32 -48
- package/language/parser.mjs +30 -38
- package/language/predicates.js +1 -1
- package/language/predicates.mjs +1 -1
- package/language/printer.js +13 -7
- package/language/printer.js.flow +19 -9
- package/language/printer.mjs +13 -7
- package/language/source.js +8 -7
- package/language/source.mjs +1 -9
- package/language/visitor.js +11 -20
- package/language/visitor.js.flow +4 -5
- package/language/visitor.mjs +8 -20
- package/package.json +10 -3
- package/polyfills/find.js +31 -0
- package/polyfills/find.js.flow +29 -0
- package/polyfills/find.mjs +23 -0
- package/{jsutils → polyfills}/isFinite.js +1 -1
- package/{jsutils → polyfills}/isFinite.js.flow +0 -0
- package/{jsutils → polyfills}/isFinite.mjs +1 -1
- package/{jsutils → polyfills}/isInteger.js +1 -1
- package/{jsutils → polyfills}/isInteger.js.flow +0 -0
- package/{jsutils → polyfills}/isInteger.mjs +1 -1
- package/polyfills/objectEntries.js +26 -0
- package/polyfills/objectEntries.js.flow +19 -0
- package/polyfills/objectEntries.mjs +18 -0
- package/{jsutils → polyfills}/objectValues.js +1 -1
- package/{jsutils → polyfills}/objectValues.js.flow +1 -1
- package/{jsutils → polyfills}/objectValues.mjs +1 -1
- package/subscription/asyncIteratorReject.mjs +1 -1
- package/subscription/index.mjs +1 -1
- package/subscription/mapAsyncIterator.mjs +1 -1
- package/subscription/subscribe.js +1 -1
- package/subscription/subscribe.js.flow +1 -1
- package/subscription/subscribe.mjs +2 -2
- package/type/definition.js +31 -130
- package/type/definition.js.flow +35 -47
- package/type/definition.mjs +30 -131
- package/type/directives.js +25 -29
- package/type/directives.js.flow +24 -20
- package/type/directives.mjs +22 -30
- package/type/index.js +12 -0
- package/type/index.js.flow +4 -0
- package/type/index.mjs +5 -3
- package/type/introspection.js +3 -3
- package/type/introspection.js.flow +1 -1
- package/type/introspection.mjs +2 -2
- package/type/scalars.js +45 -34
- package/type/scalars.js.flow +40 -26
- package/type/scalars.mjs +44 -26
- package/type/schema.js +82 -87
- package/type/schema.js.flow +17 -9
- package/type/schema.mjs +79 -86
- package/type/validate.js +168 -175
- package/type/validate.js.flow +8 -49
- package/type/validate.mjs +159 -175
- package/utilities/TypeInfo.js +10 -23
- package/utilities/TypeInfo.js.flow +1 -1
- package/utilities/TypeInfo.mjs +2 -24
- package/utilities/assertValidName.js +1 -1
- package/utilities/assertValidName.mjs +1 -1
- package/utilities/astFromValue.js +2 -2
- package/utilities/astFromValue.js.flow +1 -1
- package/utilities/astFromValue.mjs +2 -2
- package/utilities/buildASTSchema.js +169 -152
- package/utilities/buildASTSchema.js.flow +117 -113
- package/utilities/buildASTSchema.mjs +160 -152
- package/utilities/buildClientSchema.js +24 -14
- package/utilities/buildClientSchema.js.flow +24 -14
- package/utilities/buildClientSchema.mjs +23 -14
- package/utilities/coerceValue.js +38 -19
- package/utilities/coerceValue.js.flow +41 -47
- package/utilities/coerceValue.mjs +38 -20
- package/utilities/concatAST.js +1 -1
- package/utilities/concatAST.mjs +1 -1
- package/utilities/extendSchema.js +228 -312
- package/utilities/extendSchema.js.flow +27 -152
- package/utilities/extendSchema.mjs +229 -312
- package/utilities/findBreakingChanges.js +7 -5
- package/utilities/findBreakingChanges.js.flow +3 -2
- package/utilities/findBreakingChanges.mjs +6 -5
- package/utilities/findDeprecatedUsages.js +1 -1
- package/utilities/findDeprecatedUsages.mjs +1 -1
- package/utilities/getOperationAST.js +1 -1
- package/utilities/getOperationAST.mjs +1 -1
- package/utilities/getOperationRootType.js +1 -1
- package/utilities/getOperationRootType.mjs +1 -1
- package/utilities/index.mjs +1 -1
- package/utilities/introspectionFromSchema.js +1 -1
- package/utilities/introspectionFromSchema.mjs +1 -1
- package/utilities/introspectionQuery.js +1 -1
- package/utilities/introspectionQuery.mjs +1 -1
- package/utilities/isValidJSValue.js +1 -1
- package/utilities/isValidJSValue.mjs +1 -1
- package/utilities/isValidLiteralValue.js +1 -1
- package/utilities/isValidLiteralValue.mjs +1 -1
- package/utilities/lexicographicSortSchema.js +2 -2
- package/utilities/lexicographicSortSchema.js.flow +1 -1
- package/utilities/lexicographicSortSchema.mjs +2 -2
- package/utilities/schemaPrinter.js +3 -3
- package/utilities/schemaPrinter.js.flow +1 -1
- package/utilities/schemaPrinter.mjs +2 -2
- package/utilities/separateOperations.js +1 -1
- package/utilities/separateOperations.mjs +1 -1
- package/utilities/typeComparators.js +1 -1
- package/utilities/typeComparators.mjs +1 -1
- package/utilities/typeFromAST.js +1 -1
- package/utilities/typeFromAST.mjs +1 -1
- package/utilities/valueFromAST.js +3 -3
- package/utilities/valueFromAST.js.flow +1 -1
- package/utilities/valueFromAST.mjs +2 -2
- package/utilities/valueFromASTUntyped.js +1 -1
- package/utilities/valueFromASTUntyped.mjs +1 -1
- package/validation/ValidationContext.js +57 -82
- package/validation/ValidationContext.js.flow +52 -49
- package/validation/ValidationContext.mjs +52 -77
- package/validation/index.js.flow +1 -0
- package/validation/index.mjs +1 -1
- package/validation/rules/ExecutableDefinitions.js +1 -1
- package/validation/rules/ExecutableDefinitions.js.flow +1 -1
- package/validation/rules/ExecutableDefinitions.mjs +1 -1
- package/validation/rules/FieldsOnCorrectType.js +1 -1
- package/validation/rules/FieldsOnCorrectType.mjs +1 -1
- package/validation/rules/FragmentsOnCompositeTypes.js +1 -1
- package/validation/rules/FragmentsOnCompositeTypes.mjs +1 -1
- package/validation/rules/KnownArgumentNames.mjs +1 -1
- package/validation/rules/KnownDirectives.js +1 -1
- package/validation/rules/KnownDirectives.mjs +1 -1
- package/validation/rules/KnownFragmentNames.js +1 -1
- package/validation/rules/KnownFragmentNames.mjs +1 -1
- package/validation/rules/KnownTypeNames.js +59 -21
- package/validation/rules/KnownTypeNames.js.flow +54 -20
- package/validation/rules/KnownTypeNames.mjs +56 -21
- package/validation/rules/LoneAnonymousOperation.js +1 -1
- package/validation/rules/LoneAnonymousOperation.mjs +1 -1
- package/validation/rules/LoneSchemaDefinition.js +1 -1
- package/validation/rules/LoneSchemaDefinition.mjs +1 -1
- package/validation/rules/NoFragmentCycles.js +1 -1
- package/validation/rules/NoFragmentCycles.js.flow +2 -2
- package/validation/rules/NoFragmentCycles.mjs +1 -1
- package/validation/rules/NoUndefinedVariables.js +1 -1
- package/validation/rules/NoUndefinedVariables.mjs +1 -1
- package/validation/rules/NoUnusedFragments.js +1 -1
- package/validation/rules/NoUnusedFragments.js.flow +2 -2
- package/validation/rules/NoUnusedFragments.mjs +1 -1
- package/validation/rules/NoUnusedVariables.js +1 -1
- package/validation/rules/NoUnusedVariables.mjs +1 -1
- package/validation/rules/OverlappingFieldsCanBeMerged.js +57 -33
- package/validation/rules/OverlappingFieldsCanBeMerged.js.flow +5 -6
- package/validation/rules/OverlappingFieldsCanBeMerged.mjs +48 -33
- package/validation/rules/PossibleFragmentSpreads.js +1 -1
- package/validation/rules/PossibleFragmentSpreads.mjs +1 -1
- package/validation/rules/PossibleTypeExtensions.js +158 -0
- package/validation/rules/PossibleTypeExtensions.js.flow +160 -0
- package/validation/rules/PossibleTypeExtensions.mjs +146 -0
- package/validation/rules/ProvidedRequiredArguments.mjs +1 -1
- package/validation/rules/ScalarLeafs.js +1 -1
- package/validation/rules/ScalarLeafs.mjs +1 -1
- package/validation/rules/SingleFieldSubscriptions.js +1 -1
- package/validation/rules/SingleFieldSubscriptions.mjs +1 -1
- package/validation/rules/UniqueArgumentNames.js +1 -1
- package/validation/rules/UniqueArgumentNames.mjs +1 -1
- package/validation/rules/UniqueDirectiveNames.js +55 -0
- package/validation/rules/UniqueDirectiveNames.js.flow +64 -0
- package/validation/rules/UniqueDirectiveNames.mjs +43 -0
- package/validation/rules/UniqueDirectivesPerLocation.js +1 -1
- package/validation/rules/UniqueDirectivesPerLocation.mjs +1 -1
- package/validation/rules/UniqueEnumValueNames.js +94 -0
- package/validation/rules/UniqueEnumValueNames.js.flow +87 -0
- package/validation/rules/UniqueEnumValueNames.mjs +81 -0
- package/validation/rules/UniqueFieldDefinitionNames.js +105 -0
- package/validation/rules/UniqueFieldDefinitionNames.js.flow +101 -0
- package/validation/rules/UniqueFieldDefinitionNames.mjs +92 -0
- package/validation/rules/UniqueFragmentNames.js +1 -1
- package/validation/rules/UniqueFragmentNames.mjs +1 -1
- package/validation/rules/UniqueInputFieldNames.js +1 -1
- package/validation/rules/UniqueInputFieldNames.mjs +1 -1
- package/validation/rules/UniqueOperationNames.js +1 -1
- package/validation/rules/UniqueOperationNames.mjs +1 -1
- package/validation/rules/UniqueOperationTypes.js +85 -0
- package/validation/rules/UniqueOperationTypes.js.flow +76 -0
- package/validation/rules/UniqueOperationTypes.mjs +73 -0
- package/validation/rules/UniqueTypeNames.js +62 -0
- package/validation/rules/UniqueTypeNames.js.flow +67 -0
- package/validation/rules/UniqueTypeNames.mjs +50 -0
- package/validation/rules/UniqueVariableNames.js +1 -1
- package/validation/rules/UniqueVariableNames.mjs +1 -1
- package/validation/rules/ValuesOfCorrectType.js +29 -13
- package/validation/rules/ValuesOfCorrectType.js.flow +4 -5
- package/validation/rules/ValuesOfCorrectType.mjs +28 -13
- package/validation/rules/VariablesAreInputTypes.js +1 -1
- package/validation/rules/VariablesAreInputTypes.mjs +1 -1
- package/validation/rules/VariablesInAllowedPosition.js +4 -4
- package/validation/rules/VariablesInAllowedPosition.mjs +4 -4
- package/validation/specifiedRules.js +14 -2
- package/validation/specifiedRules.js.flow +13 -0
- package/validation/specifiedRules.mjs +8 -2
- package/validation/validate.js +1 -1
- package/validation/validate.mjs +1 -1
- package/jsutils/find.js +0 -22
- package/jsutils/find.js.flow +0 -19
- package/jsutils/find.mjs +0 -15
|
@@ -8,19 +8,19 @@
|
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* The `
|
|
11
|
+
* The `defineToStringTag()` function checks first to see if the runtime
|
|
12
12
|
* supports the `Symbol` class and then if the `Symbol.toStringTag` constant
|
|
13
13
|
* is defined as a `Symbol` instance. If both conditions are met, the
|
|
14
14
|
* Symbol.toStringTag property is defined as a getter that returns the
|
|
15
15
|
* supplied class constructor's name.
|
|
16
16
|
*
|
|
17
|
-
* @method
|
|
17
|
+
* @method defineToStringTag
|
|
18
18
|
*
|
|
19
19
|
* @param {Class<any>} classObject a class such as Object, String, Number but
|
|
20
20
|
* typically one of your own creation through the class keyword; `class A {}`,
|
|
21
21
|
* for example.
|
|
22
22
|
*/
|
|
23
|
-
export default function
|
|
23
|
+
export default function defineToStringTag(classObject: Class<any>): void {
|
|
24
24
|
if (typeof Symbol === 'function' && Symbol.toStringTag) {
|
|
25
25
|
Object.defineProperty(classObject.prototype, Symbol.toStringTag, {
|
|
26
26
|
get() {
|
|
@@ -4,23 +4,23 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
*
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* The `
|
|
11
|
+
* The `defineToStringTag()` function checks first to see if the runtime
|
|
12
12
|
* supports the `Symbol` class and then if the `Symbol.toStringTag` constant
|
|
13
13
|
* is defined as a `Symbol` instance. If both conditions are met, the
|
|
14
14
|
* Symbol.toStringTag property is defined as a getter that returns the
|
|
15
15
|
* supplied class constructor's name.
|
|
16
16
|
*
|
|
17
|
-
* @method
|
|
17
|
+
* @method defineToStringTag
|
|
18
18
|
*
|
|
19
19
|
* @param {Class<any>} classObject a class such as Object, String, Number but
|
|
20
20
|
* typically one of your own creation through the class keyword; `class A {}`,
|
|
21
21
|
* for example.
|
|
22
22
|
*/
|
|
23
|
-
export default function
|
|
23
|
+
export default function defineToStringTag(classObject) {
|
|
24
24
|
if (typeof Symbol === 'function' && Symbol.toStringTag) {
|
|
25
25
|
Object.defineProperty(classObject.prototype, Symbol.toStringTag, {
|
|
26
26
|
get: function get() {
|
package/jsutils/inspect.js
CHANGED
|
@@ -5,22 +5,56 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = inspect;
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
var _nodejsCustomInspectSymbol = _interopRequireDefault(require("./nodejsCustomInspectSymbol"));
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
* This source code is licensed under the MIT license found in the
|
|
14
|
-
* LICENSE file in the root directory of this source tree.
|
|
15
|
-
*
|
|
16
|
-
* strict
|
|
17
|
-
*/
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
|
|
18
13
|
|
|
19
14
|
/**
|
|
20
15
|
* Used to print values in error messages.
|
|
21
16
|
*/
|
|
22
17
|
function inspect(value) {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
switch (_typeof(value)) {
|
|
19
|
+
case 'string':
|
|
20
|
+
return JSON.stringify(value);
|
|
21
|
+
|
|
22
|
+
case 'function':
|
|
23
|
+
return value.name ? "[function ".concat(value.name, "]") : '[function]';
|
|
24
|
+
|
|
25
|
+
case 'object':
|
|
26
|
+
if (value) {
|
|
27
|
+
var customInspectFn = getCustomFn(value);
|
|
28
|
+
|
|
29
|
+
if (customInspectFn) {
|
|
30
|
+
// $FlowFixMe(>=0.90.0)
|
|
31
|
+
var customValue = customInspectFn.call(value);
|
|
32
|
+
return typeof customValue === 'string' ? customValue : inspect(customValue);
|
|
33
|
+
} else if (Array.isArray(value)) {
|
|
34
|
+
return '[' + value.map(inspect).join(', ') + ']';
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
var properties = Object.keys(value).map(function (k) {
|
|
38
|
+
return "".concat(k, ": ").concat(inspect(value[k]));
|
|
39
|
+
}).join(', ');
|
|
40
|
+
return properties ? '{ ' + properties + ' }' : '{}';
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return String(value);
|
|
44
|
+
|
|
45
|
+
default:
|
|
46
|
+
return String(value);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
function getCustomFn(object) {
|
|
51
|
+
var customInspectFn = object[String(_nodejsCustomInspectSymbol.default)];
|
|
52
|
+
|
|
53
|
+
if (typeof customInspectFn === 'function') {
|
|
54
|
+
return customInspectFn;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (typeof object.inspect === 'function') {
|
|
58
|
+
return object.inspect;
|
|
59
|
+
}
|
|
26
60
|
}
|
package/jsutils/inspect.js.flow
CHANGED
|
@@ -7,23 +7,50 @@
|
|
|
7
7
|
* @flow strict
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
+
import nodejsCustomInspectSymbol from './nodejsCustomInspectSymbol';
|
|
11
|
+
|
|
10
12
|
/**
|
|
11
13
|
* Used to print values in error messages.
|
|
12
14
|
*/
|
|
13
15
|
export default function inspect(value: mixed): string {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
16
|
+
switch (typeof value) {
|
|
17
|
+
case 'string':
|
|
18
|
+
return JSON.stringify(value);
|
|
19
|
+
case 'function':
|
|
20
|
+
return value.name ? `[function ${value.name}]` : '[function]';
|
|
21
|
+
case 'object':
|
|
22
|
+
if (value) {
|
|
23
|
+
const customInspectFn = getCustomFn(value);
|
|
24
|
+
|
|
25
|
+
if (customInspectFn) {
|
|
26
|
+
// $FlowFixMe(>=0.90.0)
|
|
27
|
+
const customValue = customInspectFn.call(value);
|
|
28
|
+
return typeof customValue === 'string'
|
|
29
|
+
? customValue
|
|
30
|
+
: inspect(customValue);
|
|
31
|
+
} else if (Array.isArray(value)) {
|
|
32
|
+
return '[' + value.map(inspect).join(', ') + ']';
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const properties = Object.keys(value)
|
|
36
|
+
.map(k => `${k}: ${inspect(value[k])}`)
|
|
37
|
+
.join(', ');
|
|
38
|
+
return properties ? '{ ' + properties + ' }' : '{}';
|
|
39
|
+
}
|
|
40
|
+
return String(value);
|
|
41
|
+
default:
|
|
42
|
+
return String(value);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
function getCustomFn(object) {
|
|
47
|
+
const customInspectFn = object[String(nodejsCustomInspectSymbol)];
|
|
48
|
+
|
|
49
|
+
if (typeof customInspectFn === 'function') {
|
|
50
|
+
return customInspectFn;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (typeof object.inspect === 'function') {
|
|
54
|
+
return object.inspect;
|
|
55
|
+
}
|
|
29
56
|
}
|
package/jsutils/inspect.mjs
CHANGED
|
@@ -6,14 +6,54 @@ function _typeof(obj) { if (typeof Symbol === "function" && typeof Symbol.iterat
|
|
|
6
6
|
* This source code is licensed under the MIT license found in the
|
|
7
7
|
* LICENSE file in the root directory of this source tree.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
*
|
|
10
10
|
*/
|
|
11
|
-
|
|
11
|
+
import nodejsCustomInspectSymbol from './nodejsCustomInspectSymbol';
|
|
12
12
|
/**
|
|
13
13
|
* Used to print values in error messages.
|
|
14
14
|
*/
|
|
15
|
+
|
|
15
16
|
export default function inspect(value) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
switch (_typeof(value)) {
|
|
18
|
+
case 'string':
|
|
19
|
+
return JSON.stringify(value);
|
|
20
|
+
|
|
21
|
+
case 'function':
|
|
22
|
+
return value.name ? "[function ".concat(value.name, "]") : '[function]';
|
|
23
|
+
|
|
24
|
+
case 'object':
|
|
25
|
+
if (value) {
|
|
26
|
+
var customInspectFn = getCustomFn(value);
|
|
27
|
+
|
|
28
|
+
if (customInspectFn) {
|
|
29
|
+
// $FlowFixMe(>=0.90.0)
|
|
30
|
+
var customValue = customInspectFn.call(value);
|
|
31
|
+
return typeof customValue === 'string' ? customValue : inspect(customValue);
|
|
32
|
+
} else if (Array.isArray(value)) {
|
|
33
|
+
return '[' + value.map(inspect).join(', ') + ']';
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
var properties = Object.keys(value).map(function (k) {
|
|
37
|
+
return "".concat(k, ": ").concat(inspect(value[k]));
|
|
38
|
+
}).join(', ');
|
|
39
|
+
return properties ? '{ ' + properties + ' }' : '{}';
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return String(value);
|
|
43
|
+
|
|
44
|
+
default:
|
|
45
|
+
return String(value);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
function getCustomFn(object) {
|
|
50
|
+
var customInspectFn = object[String(nodejsCustomInspectSymbol)];
|
|
51
|
+
|
|
52
|
+
if (typeof customInspectFn === 'function') {
|
|
53
|
+
return customInspectFn;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if (typeof object.inspect === 'function') {
|
|
57
|
+
return object.inspect;
|
|
58
|
+
}
|
|
19
59
|
}
|
package/jsutils/instanceOf.js
CHANGED
package/jsutils/instanceOf.mjs
CHANGED
package/jsutils/invariant.js
CHANGED
|
@@ -11,7 +11,7 @@ exports.default = invariant;
|
|
|
11
11
|
* This source code is licensed under the MIT license found in the
|
|
12
12
|
* LICENSE file in the root directory of this source tree.
|
|
13
13
|
*
|
|
14
|
-
*
|
|
14
|
+
*
|
|
15
15
|
*/
|
|
16
16
|
function invariant(condition, message) {
|
|
17
17
|
/* istanbul ignore else */
|
package/jsutils/invariant.mjs
CHANGED
package/jsutils/isInvalid.js
CHANGED
package/jsutils/isInvalid.mjs
CHANGED
package/jsutils/isNullish.js
CHANGED
package/jsutils/isNullish.mjs
CHANGED
package/jsutils/isPromise.js
CHANGED
package/jsutils/isPromise.mjs
CHANGED
package/jsutils/keyMap.js
CHANGED
package/jsutils/keyMap.mjs
CHANGED
package/jsutils/keyValMap.js
CHANGED
package/jsutils/keyValMap.mjs
CHANGED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = mapValue;
|
|
7
|
+
|
|
8
|
+
var _objectEntries = _interopRequireDefault(require("../polyfills/objectEntries"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Copyright (c) 2019-present, Facebook, Inc.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*
|
|
18
|
+
*
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Creates an object map with the same keys as `map` and values generated by
|
|
23
|
+
* running each value of `map` thru `fn`.
|
|
24
|
+
*/
|
|
25
|
+
function mapValue(map, fn) {
|
|
26
|
+
var result = Object.create(null);
|
|
27
|
+
var _iteratorNormalCompletion = true;
|
|
28
|
+
var _didIteratorError = false;
|
|
29
|
+
var _iteratorError = undefined;
|
|
30
|
+
|
|
31
|
+
try {
|
|
32
|
+
for (var _iterator = (0, _objectEntries.default)(map)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
33
|
+
var _ref2 = _step.value;
|
|
34
|
+
var _key = _ref2[0];
|
|
35
|
+
var _value = _ref2[1];
|
|
36
|
+
result[_key] = fn(_value, _key);
|
|
37
|
+
}
|
|
38
|
+
} catch (err) {
|
|
39
|
+
_didIteratorError = true;
|
|
40
|
+
_iteratorError = err;
|
|
41
|
+
} finally {
|
|
42
|
+
try {
|
|
43
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
44
|
+
_iterator.return();
|
|
45
|
+
}
|
|
46
|
+
} finally {
|
|
47
|
+
if (_didIteratorError) {
|
|
48
|
+
throw _iteratorError;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
return result;
|
|
54
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2019-present, Facebook, Inc.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow strict
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import type { ObjMap } from './ObjMap';
|
|
11
|
+
import objectEntries from '../polyfills/objectEntries';
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Creates an object map with the same keys as `map` and values generated by
|
|
15
|
+
* running each value of `map` thru `fn`.
|
|
16
|
+
*/
|
|
17
|
+
export default function mapValue<T, V>(
|
|
18
|
+
map: ObjMap<T>,
|
|
19
|
+
fn: (value: T, key: string) => V,
|
|
20
|
+
): ObjMap<V> {
|
|
21
|
+
const result = Object.create(null);
|
|
22
|
+
|
|
23
|
+
for (const [key, value] of objectEntries(map)) {
|
|
24
|
+
result[key] = fn(value, key);
|
|
25
|
+
}
|
|
26
|
+
return result;
|
|
27
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2019-present, Facebook, Inc.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
import objectEntries from '../polyfills/objectEntries';
|
|
10
|
+
/**
|
|
11
|
+
* Creates an object map with the same keys as `map` and values generated by
|
|
12
|
+
* running each value of `map` thru `fn`.
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
export default function mapValue(map, fn) {
|
|
16
|
+
var result = Object.create(null);
|
|
17
|
+
var _iteratorNormalCompletion = true;
|
|
18
|
+
var _didIteratorError = false;
|
|
19
|
+
var _iteratorError = undefined;
|
|
20
|
+
|
|
21
|
+
try {
|
|
22
|
+
for (var _iterator = objectEntries(map)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
23
|
+
var _ref2 = _step.value;
|
|
24
|
+
var _key = _ref2[0];
|
|
25
|
+
var _value = _ref2[1];
|
|
26
|
+
result[_key] = fn(_value, _key);
|
|
27
|
+
}
|
|
28
|
+
} catch (err) {
|
|
29
|
+
_didIteratorError = true;
|
|
30
|
+
_iteratorError = err;
|
|
31
|
+
} finally {
|
|
32
|
+
try {
|
|
33
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
34
|
+
_iterator.return();
|
|
35
|
+
}
|
|
36
|
+
} finally {
|
|
37
|
+
if (_didIteratorError) {
|
|
38
|
+
throw _iteratorError;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
return result;
|
|
44
|
+
}
|
package/jsutils/memoize3.js
CHANGED
package/jsutils/memoize3.mjs
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Copyright (c) 2018-present, Facebook, Inc.
|
|
10
|
+
*
|
|
11
|
+
* This source code is licensed under the MIT license found in the
|
|
12
|
+
* LICENSE file in the root directory of this source tree.
|
|
13
|
+
*
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
16
|
+
var nodejsCustomInspectSymbol = typeof Symbol === 'function' ? Symbol.for('nodejs.util.inspect.custom') : undefined;
|
|
17
|
+
var _default = nodejsCustomInspectSymbol;
|
|
18
|
+
exports.default = _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2018-present, Facebook, Inc.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
* @flow strict
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
const nodejsCustomInspectSymbol =
|
|
11
|
+
typeof Symbol === 'function'
|
|
12
|
+
? Symbol.for('nodejs.util.inspect.custom')
|
|
13
|
+
: undefined;
|
|
14
|
+
|
|
15
|
+
export default nodejsCustomInspectSymbol;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2018-present, Facebook, Inc.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
var nodejsCustomInspectSymbol = typeof Symbol === 'function' ? Symbol.for('nodejs.util.inspect.custom') : undefined;
|
|
10
|
+
export default nodejsCustomInspectSymbol;
|
package/jsutils/orList.js
CHANGED
|
@@ -5,13 +5,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = orList;
|
|
7
7
|
|
|
8
|
+
var _invariant = _interopRequireDefault(require("./invariant"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
8
12
|
/**
|
|
9
13
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
10
14
|
*
|
|
11
15
|
* This source code is licensed under the MIT license found in the
|
|
12
16
|
* LICENSE file in the root directory of this source tree.
|
|
13
17
|
*
|
|
14
|
-
*
|
|
18
|
+
*
|
|
15
19
|
*/
|
|
16
20
|
var MAX_LENGTH = 5;
|
|
17
21
|
/**
|
|
@@ -19,8 +23,17 @@ var MAX_LENGTH = 5;
|
|
|
19
23
|
*/
|
|
20
24
|
|
|
21
25
|
function orList(items) {
|
|
26
|
+
!(items.length !== 0) ? (0, _invariant.default)(0) : void 0;
|
|
27
|
+
|
|
28
|
+
if (items.length === 1) {
|
|
29
|
+
return items[0];
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
if (items.length === 2) {
|
|
33
|
+
return items[0] + ' or ' + items[1];
|
|
34
|
+
}
|
|
35
|
+
|
|
22
36
|
var selected = items.slice(0, MAX_LENGTH);
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
});
|
|
37
|
+
var lastItem = selected.pop();
|
|
38
|
+
return selected.join(', ') + ', or ' + lastItem;
|
|
26
39
|
}
|
package/jsutils/orList.js.flow
CHANGED
|
@@ -7,18 +7,24 @@
|
|
|
7
7
|
* @flow strict
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
|
+
import invariant from './invariant';
|
|
11
|
+
|
|
10
12
|
const MAX_LENGTH = 5;
|
|
11
13
|
|
|
12
14
|
/**
|
|
13
15
|
* Given [ A, B, C ] return 'A, B, or C'.
|
|
14
16
|
*/
|
|
15
17
|
export default function orList(items: $ReadOnlyArray<string>): string {
|
|
18
|
+
invariant(items.length !== 0);
|
|
19
|
+
|
|
20
|
+
if (items.length === 1) {
|
|
21
|
+
return items[0];
|
|
22
|
+
}
|
|
23
|
+
if (items.length === 2) {
|
|
24
|
+
return items[0] + ' or ' + items[1];
|
|
25
|
+
}
|
|
26
|
+
|
|
16
27
|
const selected = items.slice(0, MAX_LENGTH);
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
list +
|
|
20
|
-
(selected.length > 2 ? ', ' : ' ') +
|
|
21
|
-
(index === selected.length - 1 ? 'or ' : '') +
|
|
22
|
-
quoted,
|
|
23
|
-
);
|
|
28
|
+
const lastItem = selected.pop();
|
|
29
|
+
return selected.join(', ') + ', or ' + lastItem;
|
|
24
30
|
}
|