@graphql-tools/optimize 1.0.0-alpha-c598690f.0 → 1.0.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/es5/index.cjs.js +2 -3
- package/es5/index.cjs.js.map +1 -1
- package/es5/index.esm.js +2 -3
- package/es5/index.esm.js.map +1 -1
- package/es5/package.json +1 -1
- package/index.cjs.js +2 -3
- package/index.cjs.js.map +1 -1
- package/index.esm.js +2 -3
- package/index.esm.js.map +1 -1
- package/package.json +1 -1
package/es5/index.cjs.js
CHANGED
|
@@ -60,6 +60,7 @@ var removeEmptyNodes = function (input) {
|
|
|
60
60
|
FragmentSpread: transformNode,
|
|
61
61
|
InlineFragment: transformNode,
|
|
62
62
|
Name: transformNode,
|
|
63
|
+
Directive: transformNode,
|
|
63
64
|
});
|
|
64
65
|
};
|
|
65
66
|
|
|
@@ -98,9 +99,7 @@ function optimizeDocumentNode(node, optimizers) {
|
|
|
98
99
|
}
|
|
99
100
|
var result = optimizer(resultNode);
|
|
100
101
|
if (!result) {
|
|
101
|
-
|
|
102
|
-
throw new Error("Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!");
|
|
103
|
-
}
|
|
102
|
+
throw new Error("Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!");
|
|
104
103
|
}
|
|
105
104
|
resultNode = result;
|
|
106
105
|
}
|
package/es5/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../dist-es5/optimize/src/optimizers/remove-description.js","../../../dist-es5/optimize/src/optimizers/remove-empty-nodes.js","../../../dist-es5/optimize/src/optimizers/remove-loc.js","../../../dist-es5/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport var removeDescriptions = function (input) {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport var removeEmptyNodes = function (input) {\n function transformNode(node) {\n var resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n var directives = resultNode.directives, rest = __rest(resultNode, [\"directives\"]);\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n var args = resultNode.arguments, rest = __rest(resultNode, [\"arguments\"]);\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n var variableDefinitions = resultNode.variableDefinitions, rest = __rest(resultNode, [\"variableDefinitions\"]);\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport var removeLoc = function (input) {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n var loc = node.loc, rest = __rest(node, [\"loc\"]);\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { __values } from \"tslib\";\nimport { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nvar DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers) {\n var e_1, _a;\n if (optimizers === void 0) { optimizers = DEFAULT_OPTIMIZERS; }\n var resultNode = node;\n try {\n for (var optimizers_1 = __values(optimizers), optimizers_1_1 = optimizers_1.next(); !optimizers_1_1.done; optimizers_1_1 = optimizers_1.next()) {\n var optimizer = optimizers_1_1.value;\n if (typeof optimizer !== 'function') {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" must be a function!\");\n }\n var result = optimizer(resultNode);\n if (!result) {\n
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../dist-es5/optimize/src/optimizers/remove-description.js","../../../dist-es5/optimize/src/optimizers/remove-empty-nodes.js","../../../dist-es5/optimize/src/optimizers/remove-loc.js","../../../dist-es5/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport var removeDescriptions = function (input) {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport var removeEmptyNodes = function (input) {\n function transformNode(node) {\n var resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n var directives = resultNode.directives, rest = __rest(resultNode, [\"directives\"]);\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n var args = resultNode.arguments, rest = __rest(resultNode, [\"arguments\"]);\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n var variableDefinitions = resultNode.variableDefinitions, rest = __rest(resultNode, [\"variableDefinitions\"]);\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n Directive: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport var removeLoc = function (input) {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n var loc = node.loc, rest = __rest(node, [\"loc\"]);\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { __values } from \"tslib\";\nimport { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nvar DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers) {\n var e_1, _a;\n if (optimizers === void 0) { optimizers = DEFAULT_OPTIMIZERS; }\n var resultNode = node;\n try {\n for (var optimizers_1 = __values(optimizers), optimizers_1_1 = optimizers_1.next(); !optimizers_1_1.done; optimizers_1_1 = optimizers_1.next()) {\n var optimizer = optimizers_1_1.value;\n if (typeof optimizer !== 'function') {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" must be a function!\");\n }\n var result = optimizer(resultNode);\n if (!result) {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" returned empty value instead of modified \\\"DocumentNode\\\"!\");\n }\n resultNode = result;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (optimizers_1_1 && !optimizers_1_1.done && (_a = optimizers_1.return)) _a.call(optimizers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return resultNode;\n}\n//# sourceMappingURL=optimize.js.map"],"names":["visit","__rest","__values"],"mappings":"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"}
|
package/es5/index.esm.js
CHANGED
|
@@ -56,6 +56,7 @@ var removeEmptyNodes = function (input) {
|
|
|
56
56
|
FragmentSpread: transformNode,
|
|
57
57
|
InlineFragment: transformNode,
|
|
58
58
|
Name: transformNode,
|
|
59
|
+
Directive: transformNode,
|
|
59
60
|
});
|
|
60
61
|
};
|
|
61
62
|
|
|
@@ -94,9 +95,7 @@ function optimizeDocumentNode(node, optimizers) {
|
|
|
94
95
|
}
|
|
95
96
|
var result = optimizer(resultNode);
|
|
96
97
|
if (!result) {
|
|
97
|
-
|
|
98
|
-
throw new Error("Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!");
|
|
99
|
-
}
|
|
98
|
+
throw new Error("Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!");
|
|
100
99
|
}
|
|
101
100
|
resultNode = result;
|
|
102
101
|
}
|
package/es5/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../dist-es5/optimize/src/optimizers/remove-description.js","../../../dist-es5/optimize/src/optimizers/remove-empty-nodes.js","../../../dist-es5/optimize/src/optimizers/remove-loc.js","../../../dist-es5/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport var removeDescriptions = function (input) {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport var removeEmptyNodes = function (input) {\n function transformNode(node) {\n var resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n var directives = resultNode.directives, rest = __rest(resultNode, [\"directives\"]);\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n var args = resultNode.arguments, rest = __rest(resultNode, [\"arguments\"]);\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n var variableDefinitions = resultNode.variableDefinitions, rest = __rest(resultNode, [\"variableDefinitions\"]);\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport var removeLoc = function (input) {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n var loc = node.loc, rest = __rest(node, [\"loc\"]);\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { __values } from \"tslib\";\nimport { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nvar DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers) {\n var e_1, _a;\n if (optimizers === void 0) { optimizers = DEFAULT_OPTIMIZERS; }\n var resultNode = node;\n try {\n for (var optimizers_1 = __values(optimizers), optimizers_1_1 = optimizers_1.next(); !optimizers_1_1.done; optimizers_1_1 = optimizers_1.next()) {\n var optimizer = optimizers_1_1.value;\n if (typeof optimizer !== 'function') {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" must be a function!\");\n }\n var result = optimizer(resultNode);\n if (!result) {\n
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../dist-es5/optimize/src/optimizers/remove-description.js","../../../dist-es5/optimize/src/optimizers/remove-empty-nodes.js","../../../dist-es5/optimize/src/optimizers/remove-loc.js","../../../dist-es5/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport var removeDescriptions = function (input) {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport var removeEmptyNodes = function (input) {\n function transformNode(node) {\n var resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n var directives = resultNode.directives, rest = __rest(resultNode, [\"directives\"]);\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n var args = resultNode.arguments, rest = __rest(resultNode, [\"arguments\"]);\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n var variableDefinitions = resultNode.variableDefinitions, rest = __rest(resultNode, [\"variableDefinitions\"]);\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n Directive: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { __rest } from \"tslib\";\nimport { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport var removeLoc = function (input) {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n var loc = node.loc, rest = __rest(node, [\"loc\"]);\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { __values } from \"tslib\";\nimport { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nvar DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers) {\n var e_1, _a;\n if (optimizers === void 0) { optimizers = DEFAULT_OPTIMIZERS; }\n var resultNode = node;\n try {\n for (var optimizers_1 = __values(optimizers), optimizers_1_1 = optimizers_1.next(); !optimizers_1_1.done; optimizers_1_1 = optimizers_1.next()) {\n var optimizer = optimizers_1_1.value;\n if (typeof optimizer !== 'function') {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" must be a function!\");\n }\n var result = optimizer(resultNode);\n if (!result) {\n throw new Error(\"Optimizer provided for \\\"optimizeDocumentNode\\\" returned empty value instead of modified \\\"DocumentNode\\\"!\");\n }\n resultNode = result;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (optimizers_1_1 && !optimizers_1_1.done && (_a = optimizers_1.return)) _a.call(optimizers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return resultNode;\n}\n//# sourceMappingURL=optimize.js.map"],"names":[],"mappings":";;;AACA;AACA;AACA;AACA;AACU,IAAC,kBAAkB,GAAG,UAAU,KAAK,EAAE;AACjD,IAAI,SAAS,aAAa,CAAC,IAAI,EAAE;AACjC,QAAQ,IAAI,IAAI,CAAC,WAAW,EAAE;AAC9B,YAAY,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;AACzC,SAAS;AACT,QAAQ,OAAO,IAAI,CAAC;AACpB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,KAAK,EAAE;AACxB,QAAQ,oBAAoB,EAAE,aAAa;AAC3C,QAAQ,oBAAoB,EAAE,aAAa;AAC3C,QAAQ,uBAAuB,EAAE,aAAa;AAC9C,QAAQ,mBAAmB,EAAE,aAAa;AAC1C,QAAQ,kBAAkB,EAAE,aAAa;AACzC,QAAQ,mBAAmB,EAAE,aAAa;AAC1C,QAAQ,yBAAyB,EAAE,aAAa;AAChD,QAAQ,oBAAoB,EAAE,aAAa;AAC3C,QAAQ,eAAe,EAAE,aAAa;AACtC,KAAK,CAAC,CAAC;AACP;;ACrBA;AACA;AACA;AACA;AACU,IAAC,gBAAgB,GAAG,UAAU,KAAK,EAAE;AAC/C,IAAI,SAAS,aAAa,CAAC,IAAI,EAAE;AACjC,QAAQ,IAAI,UAAU,GAAG,IAAI,CAAC;AAC9B,QAAQ,IAAI,UAAU,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AACjH,YAAY,IAAI,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;AAC9F,YAAY,UAAU,GAAG,IAAI,CAAC;AAC9B,SAAS;AACT,QAAQ,IAAI,UAAU,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;AAC9G,YAAY,IAAI,IAAI,GAAG,UAAU,CAAC,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;AACtF,YAAY,UAAU,GAAG,IAAI,CAAC;AAC9B,SAAS;AACT,QAAQ,IAAI,UAAU,CAAC,mBAAmB;AAC1C,YAAY,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC;AACzD,YAAY,UAAU,CAAC,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE;AACzD,YAAY,IAAI,mBAAmB,GAAG,UAAU,CAAC,mBAAmB,EAAE,IAAI,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;AACzH,YAAY,UAAU,GAAG,IAAI,CAAC;AAC9B,SAAS;AACT,QAAQ,OAAO,UAAU,CAAC;AAC1B,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,KAAK,EAAE;AACxB,QAAQ,kBAAkB,EAAE,aAAa;AACzC,QAAQ,mBAAmB,EAAE,aAAa;AAC1C,QAAQ,kBAAkB,EAAE,aAAa;AACzC,QAAQ,KAAK,EAAE,aAAa;AAC5B,QAAQ,cAAc,EAAE,aAAa;AACrC,QAAQ,cAAc,EAAE,aAAa;AACrC,QAAQ,IAAI,EAAE,aAAa;AAC3B,QAAQ,SAAS,EAAE,aAAa;AAChC,KAAK,CAAC,CAAC;AACP;;ACjCA;AACA;AACA;AACA;AACU,IAAC,SAAS,GAAG,UAAU,KAAK,EAAE;AACxC,IAAI,SAAS,aAAa,CAAC,IAAI,EAAE;AACjC,QAAQ,IAAI,IAAI,CAAC,GAAG,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE;AACtD,YAAY,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7D,YAAY,OAAO,IAAI,CAAC;AACxB,SAAS;AACT,QAAQ,OAAO,IAAI,CAAC;AACpB,KAAK;AACL,IAAI,OAAO,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;AAClD;;ACXA,IAAI,kBAAkB,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,oBAAoB,CAAC,IAAI,EAAE,UAAU,EAAE;AACvD,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;AAChB,IAAI,IAAI,UAAU,KAAK,KAAK,CAAC,EAAE,EAAE,UAAU,GAAG,kBAAkB,CAAC,EAAE;AACnE,IAAI,IAAI,UAAU,GAAG,IAAI,CAAC;AAC1B,IAAI,IAAI;AACR,QAAQ,KAAK,IAAI,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,GAAG,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,YAAY,CAAC,IAAI,EAAE,EAAE;AACxJ,YAAY,IAAI,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC;AACjD,YAAY,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;AACjD,gBAAgB,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;AACvG,aAAa;AACb,YAAY,IAAI,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,CAAC;AAC/C,YAAY,IAAI,CAAC,MAAM,EAAE;AACzB,gBAAgB,MAAM,IAAI,KAAK,CAAC,4GAA4G,CAAC,CAAC;AAC9I,aAAa;AACb,YAAY,UAAU,GAAG,MAAM,CAAC;AAChC,SAAS;AACT,KAAK;AACL,IAAI,OAAO,KAAK,EAAE,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;AAC7C,YAAY;AACZ,QAAQ,IAAI;AACZ,YAAY,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAC5G,SAAS;AACT,gBAAgB,EAAE,IAAI,GAAG,EAAE,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;AAC7C,KAAK;AACL,IAAI,OAAO,UAAU,CAAC;AACtB;;;;"}
|
package/es5/package.json
CHANGED
package/index.cjs.js
CHANGED
|
@@ -59,6 +59,7 @@ const removeEmptyNodes = input => {
|
|
|
59
59
|
FragmentSpread: transformNode,
|
|
60
60
|
InlineFragment: transformNode,
|
|
61
61
|
Name: transformNode,
|
|
62
|
+
Directive: transformNode,
|
|
62
63
|
});
|
|
63
64
|
};
|
|
64
65
|
|
|
@@ -93,9 +94,7 @@ function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {
|
|
|
93
94
|
}
|
|
94
95
|
const result = optimizer(resultNode);
|
|
95
96
|
if (!result) {
|
|
96
|
-
|
|
97
|
-
throw new Error(`Optimizer provided for "optimizeDocumentNode" returned empty value instead of modified "DocumentNode"!`);
|
|
98
|
-
}
|
|
97
|
+
throw new Error(`Optimizer provided for "optimizeDocumentNode" returned empty value instead of modified "DocumentNode"!`);
|
|
99
98
|
}
|
|
100
99
|
resultNode = result;
|
|
101
100
|
}
|
package/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../../dist/optimize/src/optimizers/remove-description.js","../../../dist/optimize/src/optimizers/remove-empty-nodes.js","../../../dist/optimize/src/optimizers/remove-loc.js","../../../dist/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport const removeDescriptions = input => {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport const removeEmptyNodes = input => {\n function transformNode(node) {\n let resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n const { directives, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n const { arguments: args, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n const { variableDefinitions, ...rest } = resultNode;\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport const removeLoc = input => {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n const { loc, ...rest } = node;\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nconst DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {\n let resultNode = node;\n for (const optimizer of optimizers) {\n if (typeof optimizer !== 'function') {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" must be a function!`);\n }\n const result = optimizer(resultNode);\n if (!result) {\n
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../../dist/optimize/src/optimizers/remove-description.js","../../../dist/optimize/src/optimizers/remove-empty-nodes.js","../../../dist/optimize/src/optimizers/remove-loc.js","../../../dist/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport const removeDescriptions = input => {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport const removeEmptyNodes = input => {\n function transformNode(node) {\n let resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n const { directives, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n const { arguments: args, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n const { variableDefinitions, ...rest } = resultNode;\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n Directive: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport const removeLoc = input => {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n const { loc, ...rest } = node;\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nconst DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {\n let resultNode = node;\n for (const optimizer of optimizers) {\n if (typeof optimizer !== 'function') {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" must be a function!`);\n }\n const result = optimizer(resultNode);\n if (!result) {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!`);\n }\n resultNode = result;\n }\n return resultNode;\n}\n//# sourceMappingURL=optimize.js.map"],"names":["visit"],"mappings":"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"}
|
package/index.esm.js
CHANGED
|
@@ -55,6 +55,7 @@ const removeEmptyNodes = input => {
|
|
|
55
55
|
FragmentSpread: transformNode,
|
|
56
56
|
InlineFragment: transformNode,
|
|
57
57
|
Name: transformNode,
|
|
58
|
+
Directive: transformNode,
|
|
58
59
|
});
|
|
59
60
|
};
|
|
60
61
|
|
|
@@ -89,9 +90,7 @@ function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {
|
|
|
89
90
|
}
|
|
90
91
|
const result = optimizer(resultNode);
|
|
91
92
|
if (!result) {
|
|
92
|
-
|
|
93
|
-
throw new Error(`Optimizer provided for "optimizeDocumentNode" returned empty value instead of modified "DocumentNode"!`);
|
|
94
|
-
}
|
|
93
|
+
throw new Error(`Optimizer provided for "optimizeDocumentNode" returned empty value instead of modified "DocumentNode"!`);
|
|
95
94
|
}
|
|
96
95
|
resultNode = result;
|
|
97
96
|
}
|
package/index.esm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.esm.js","sources":["../../../dist/optimize/src/optimizers/remove-description.js","../../../dist/optimize/src/optimizers/remove-empty-nodes.js","../../../dist/optimize/src/optimizers/remove-loc.js","../../../dist/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport const removeDescriptions = input => {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport const removeEmptyNodes = input => {\n function transformNode(node) {\n let resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n const { directives, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n const { arguments: args, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n const { variableDefinitions, ...rest } = resultNode;\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport const removeLoc = input => {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n const { loc, ...rest } = node;\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nconst DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {\n let resultNode = node;\n for (const optimizer of optimizers) {\n if (typeof optimizer !== 'function') {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" must be a function!`);\n }\n const result = optimizer(resultNode);\n if (!result) {\n
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../../../dist/optimize/src/optimizers/remove-description.js","../../../dist/optimize/src/optimizers/remove-empty-nodes.js","../../../dist/optimize/src/optimizers/remove-loc.js","../../../dist/optimize/src/optimize.js"],"sourcesContent":["import { visit } from 'graphql';\n/**\n * This optimizer removes \"desciption\" field from schema AST definitions.\n * @param input\n */\nexport const removeDescriptions = input => {\n function transformNode(node) {\n if (node.description) {\n node.description = undefined;\n }\n return node;\n }\n return visit(input, {\n ScalarTypeDefinition: transformNode,\n ObjectTypeDefinition: transformNode,\n InterfaceTypeDefinition: transformNode,\n UnionTypeDefinition: transformNode,\n EnumTypeDefinition: transformNode,\n EnumValueDefinition: transformNode,\n InputObjectTypeDefinition: transformNode,\n InputValueDefinition: transformNode,\n FieldDefinition: transformNode,\n });\n};\n//# sourceMappingURL=remove-description.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes empty nodes/arrays (directives/argument/variableDefinitions) from a given DocumentNode of operation/fragment.\n * @param input\n */\nexport const removeEmptyNodes = input => {\n function transformNode(node) {\n let resultNode = node;\n if (resultNode.directives && Array.isArray(resultNode.directives) && resultNode.directives.length === 0) {\n const { directives, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.arguments && Array.isArray(resultNode.arguments) && resultNode.arguments.length === 0) {\n const { arguments: args, ...rest } = resultNode;\n resultNode = rest;\n }\n if (resultNode.variableDefinitions &&\n Array.isArray(resultNode.variableDefinitions) &&\n resultNode.variableDefinitions.length === 0) {\n const { variableDefinitions, ...rest } = resultNode;\n resultNode = rest;\n }\n return resultNode;\n }\n return visit(input, {\n FragmentDefinition: transformNode,\n OperationDefinition: transformNode,\n VariableDefinition: transformNode,\n Field: transformNode,\n FragmentSpread: transformNode,\n InlineFragment: transformNode,\n Name: transformNode,\n Directive: transformNode,\n });\n};\n//# sourceMappingURL=remove-empty-nodes.js.map","import { visit } from 'graphql';\n/**\n * This optimizer removes \"loc\" fields\n * @param input\n */\nexport const removeLoc = input => {\n function transformNode(node) {\n if (node.loc && typeof node.loc === 'object') {\n const { loc, ...rest } = node;\n return rest;\n }\n return node;\n }\n return visit(input, { enter: transformNode });\n};\n//# sourceMappingURL=remove-loc.js.map","import { removeDescriptions } from './optimizers/remove-description';\nimport { removeEmptyNodes } from './optimizers/remove-empty-nodes';\nimport { removeLoc } from './optimizers/remove-loc';\nconst DEFAULT_OPTIMIZERS = [removeDescriptions, removeEmptyNodes, removeLoc];\n/**\n * This method accept a DocumentNode and applies the optimizations you wish to use.\n * You can override the defualt ones or provide you own optimizers if you wish.\n *\n * @param node document to optimize\n * @param optimizers optional, list of optimizer to use\n */\nexport function optimizeDocumentNode(node, optimizers = DEFAULT_OPTIMIZERS) {\n let resultNode = node;\n for (const optimizer of optimizers) {\n if (typeof optimizer !== 'function') {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" must be a function!`);\n }\n const result = optimizer(resultNode);\n if (!result) {\n throw new Error(`Optimizer provided for \"optimizeDocumentNode\" returned empty value instead of modified \"DocumentNode\"!`);\n }\n resultNode = result;\n }\n return resultNode;\n}\n//# sourceMappingURL=optimize.js.map"],"names":[],"mappings":"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"}
|