@graphitation/supermassive 1.1.7 → 2.0.0

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.
Files changed (68) hide show
  1. package/.eslintcache +1 -1
  2. package/CHANGELOG.md +10 -2
  3. package/lib/index.d.ts +1 -2
  4. package/lib/index.d.ts.map +1 -1
  5. package/lib/index.js +0 -2
  6. package/lib/index.mjs +0 -2
  7. package/package.json +11 -19
  8. package/bin/supermassive.js +0 -5
  9. package/lib/bin/supermassive.d.ts +0 -3
  10. package/lib/bin/supermassive.d.ts.map +0 -1
  11. package/lib/bin/supermassive.js +0 -133
  12. package/lib/bin/supermassive.mjs +0 -113
  13. package/lib/codegen/context/expect.d.ts +0 -1
  14. package/lib/codegen/context/expect.d.ts.map +0 -1
  15. package/lib/codegen/context/expect.js +0 -0
  16. package/lib/codegen/context/expect.mjs +0 -0
  17. package/lib/codegen/context/import.d.ts +0 -5
  18. package/lib/codegen/context/import.d.ts.map +0 -1
  19. package/lib/codegen/context/import.js +0 -55
  20. package/lib/codegen/context/import.mjs +0 -37
  21. package/lib/codegen/context/index.d.ts +0 -52
  22. package/lib/codegen/context/index.d.ts.map +0 -1
  23. package/lib/codegen/context/index.js +0 -253
  24. package/lib/codegen/context/index.mjs +0 -242
  25. package/lib/codegen/context/model.d.ts +0 -5
  26. package/lib/codegen/context/model.d.ts.map +0 -1
  27. package/lib/codegen/context/model.js +0 -53
  28. package/lib/codegen/context/model.mjs +0 -37
  29. package/lib/codegen/context/utilities.d.ts +0 -2
  30. package/lib/codegen/context/utilities.d.ts.map +0 -1
  31. package/lib/codegen/context/utilities.js +0 -26
  32. package/lib/codegen/context/utilities.mjs +0 -8
  33. package/lib/codegen/index.d.ts +0 -7
  34. package/lib/codegen/index.d.ts.map +0 -1
  35. package/lib/codegen/index.js +0 -41
  36. package/lib/codegen/index.mjs +0 -23
  37. package/lib/codegen/models.d.ts +0 -5
  38. package/lib/codegen/models.d.ts.map +0 -1
  39. package/lib/codegen/models.js +0 -159
  40. package/lib/codegen/models.mjs +0 -142
  41. package/lib/codegen/resolvers.d.ts +0 -5
  42. package/lib/codegen/resolvers.d.ts.map +0 -1
  43. package/lib/codegen/resolvers.js +0 -157
  44. package/lib/codegen/resolvers.mjs +0 -144
  45. package/lib/codegen/typedVisitor.d.ts +0 -57
  46. package/lib/codegen/typedVisitor.d.ts.map +0 -1
  47. package/lib/codegen/typedVisitor.js +0 -26
  48. package/lib/codegen/typedVisitor.mjs +0 -8
  49. package/lib/codegen/types.d.ts +0 -18
  50. package/lib/codegen/types.d.ts.map +0 -1
  51. package/lib/codegen/types.js +0 -15
  52. package/lib/codegen/types.mjs +0 -0
  53. package/lib/codegen/utilities.d.ts +0 -50
  54. package/lib/codegen/utilities.d.ts.map +0 -1
  55. package/lib/codegen/utilities.js +0 -193
  56. package/lib/codegen/utilities.mjs +0 -175
  57. package/lib/extractors/extractImplicitTypesToTypescript.d.ts +0 -4
  58. package/lib/extractors/extractImplicitTypesToTypescript.d.ts.map +0 -1
  59. package/lib/extractors/extractImplicitTypesToTypescript.js +0 -217
  60. package/lib/extractors/extractImplicitTypesToTypescript.mjs +0 -198
  61. package/lib/extractors/index.d.ts +0 -2
  62. package/lib/extractors/index.d.ts.map +0 -1
  63. package/lib/extractors/index.js +0 -23
  64. package/lib/extractors/index.mjs +0 -5
  65. package/lib/transforms/transformerTestUtils.d.ts +0 -79
  66. package/lib/transforms/transformerTestUtils.d.ts.map +0 -1
  67. package/lib/transforms/transformerTestUtils.js +0 -174
  68. package/lib/transforms/transformerTestUtils.mjs +0 -156
@@ -1,193 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __export = (target, all) => {
25
- for (var name in all)
26
- __defProp(target, name, { get: all[name], enumerable: true });
27
- };
28
- var __copyProps = (to, from, except, desc) => {
29
- if (from && typeof from === "object" || typeof from === "function") {
30
- for (let key of __getOwnPropNames(from))
31
- if (!__hasOwnProp.call(to, key) && key !== except)
32
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
33
- }
34
- return to;
35
- };
36
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
37
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
38
- var utilities_exports = {};
39
- __export(utilities_exports, {
40
- addModelSuffix: () => addModelSuffix,
41
- camelCase: () => camelCase,
42
- createNonNullableType: () => createNonNullableType,
43
- createNullableType: () => createNullableType,
44
- createVariableNameFromImport: () => createVariableNameFromImport,
45
- getResolverParameters: () => getResolverParameters,
46
- getResolverReturnType: () => getResolverReturnType
47
- });
48
- module.exports = __toCommonJS(utilities_exports);
49
- var import_typescript = __toESM(require("typescript"));
50
- const MODEL_SUFFIX = "Model";
51
- function createNullableType(node) {
52
- return import_typescript.factory.createUnionTypeNode([
53
- node,
54
- import_typescript.factory.createLiteralTypeNode(import_typescript.factory.createNull())
55
- ]);
56
- }
57
- function getResolverParameters({
58
- parent,
59
- args,
60
- context,
61
- resolveInfo
62
- }) {
63
- return [
64
- import_typescript.factory.createParameterDeclaration(void 0, void 0, void 0, import_typescript.factory.createIdentifier(parent.name), void 0, parent.type),
65
- import_typescript.factory.createParameterDeclaration(void 0, void 0, void 0, import_typescript.factory.createIdentifier(args.name), void 0, import_typescript.factory.createTypeLiteralNode(args.type)),
66
- import_typescript.factory.createParameterDeclaration(void 0, void 0, void 0, import_typescript.factory.createIdentifier(context.name), void 0, context.type),
67
- import_typescript.factory.createParameterDeclaration(void 0, void 0, void 0, import_typescript.factory.createIdentifier(resolveInfo.name), void 0, resolveInfo.type)
68
- ];
69
- }
70
- function getResolverReturnType(typeNode, parentName, resolverParametersDefinitions) {
71
- if (parentName !== "Subscription") {
72
- return import_typescript.factory.createFunctionTypeNode(void 0, getResolverParameters(resolverParametersDefinitions), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("PromiseOrValue"), [typeNode]));
73
- }
74
- return import_typescript.factory.createUnionTypeNode([
75
- import_typescript.factory.createTypeLiteralNode([
76
- import_typescript.factory.createPropertySignature(void 0, import_typescript.factory.createIdentifier("subscribe"), void 0, import_typescript.factory.createFunctionTypeNode(void 0, getResolverParameters(resolverParametersDefinitions), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("PromiseOrValue"), [
77
- import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("AsyncIterator"), [
78
- import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("A"))
79
- ])
80
- ]))),
81
- import_typescript.factory.createPropertySignature(void 0, import_typescript.factory.createIdentifier("resolve"), void 0, import_typescript.factory.createFunctionTypeNode(void 0, getResolverParameters(__spreadProps(__spreadValues({}, resolverParametersDefinitions), {
82
- parent: {
83
- name: "parent",
84
- type: import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("A"))
85
- }
86
- })), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("PromiseOrValue"), [typeNode])))
87
- ])
88
- ]);
89
- }
90
- function createNonNullableType(node) {
91
- if (import_typescript.default.isUnionTypeNode(node)) {
92
- return node.types[0];
93
- } else {
94
- throw new Error(`Can't make type non nullable: ${node}.`);
95
- }
96
- }
97
- function addModelSuffix(typeName) {
98
- if (typeName.endsWith(MODEL_SUFFIX)) {
99
- return typeName;
100
- }
101
- return `${typeName}${MODEL_SUFFIX}`;
102
- }
103
- function createVariableNameFromImport(path) {
104
- return camelCase(path.replace(/\.\.\//g, "up-").replace(/@/g, "NS-").replace(/\.\//g, "cwd-").replace(/\//g, "-"), {
105
- pascalCase: true,
106
- preserveConsecutiveUppercase: true
107
- });
108
- }
109
- const UPPERCASE = /[\p{Lu}]/u;
110
- const LOWERCASE = /[\p{Ll}]/u;
111
- const LEADING_CAPITAL = /^[\p{Lu}](?![\p{Lu}])/gu;
112
- const IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u;
113
- const SEPARATORS = /[_.\- ]+/;
114
- const LEADING_SEPARATORS = new RegExp("^" + SEPARATORS.source);
115
- const SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu");
116
- const NUMBERS_AND_IDENTIFIER = new RegExp("\\d+" + IDENTIFIER.source, "gu");
117
- const preserveCamelCase = (string, toLowerCase, toUpperCase) => {
118
- let isLastCharLower = false;
119
- let isLastCharUpper = false;
120
- let isLastLastCharUpper = false;
121
- for (let index = 0; index < string.length; index++) {
122
- const character = string[index];
123
- if (isLastCharLower && UPPERCASE.test(character)) {
124
- string = string.slice(0, index) + "-" + string.slice(index);
125
- isLastCharLower = false;
126
- isLastLastCharUpper = isLastCharUpper;
127
- isLastCharUpper = true;
128
- index++;
129
- } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) {
130
- string = string.slice(0, index - 1) + "-" + string.slice(index - 1);
131
- isLastLastCharUpper = isLastCharUpper;
132
- isLastCharUpper = false;
133
- isLastCharLower = true;
134
- } else {
135
- isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;
136
- isLastLastCharUpper = isLastCharUpper;
137
- isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;
138
- }
139
- }
140
- return string;
141
- };
142
- const preserveConsecutiveUppercase = (input, toLowerCase) => {
143
- LEADING_CAPITAL.lastIndex = 0;
144
- return input.replace(LEADING_CAPITAL, (m1) => toLowerCase(m1));
145
- };
146
- const postProcess = (input, toUpperCase) => {
147
- SEPARATORS_AND_IDENTIFIER.lastIndex = 0;
148
- NUMBERS_AND_IDENTIFIER.lastIndex = 0;
149
- return input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier)).replace(NUMBERS_AND_IDENTIFIER, (m) => toUpperCase(m));
150
- };
151
- function camelCase(input, options) {
152
- if (!(typeof input === "string" || Array.isArray(input))) {
153
- throw new TypeError("Expected the input to be `string | string[]`");
154
- }
155
- options = __spreadValues({
156
- pascalCase: false,
157
- preserveConsecutiveUppercase: false
158
- }, options);
159
- if (Array.isArray(input)) {
160
- input = input.map((x) => x.trim()).filter((x) => x.length).join("-");
161
- } else {
162
- input = input.trim();
163
- }
164
- if (input.length === 0) {
165
- return "";
166
- }
167
- let locale = options.locale;
168
- let toLowerCase;
169
- let toUpperCase;
170
- if (locale === false) {
171
- toLowerCase = (s) => s.toLowerCase();
172
- toUpperCase = (s) => s.toUpperCase();
173
- } else {
174
- toLowerCase = (s) => s.toLocaleLowerCase(locale);
175
- toUpperCase = (s) => s.toLocaleUpperCase(locale);
176
- }
177
- if (input.length === 1) {
178
- if (SEPARATORS.test(input)) {
179
- return "";
180
- }
181
- return options.pascalCase ? toUpperCase(input) : toLowerCase(input);
182
- }
183
- const hasUpperCase = input !== toLowerCase(input);
184
- if (hasUpperCase) {
185
- input = preserveCamelCase(input, toLowerCase, toUpperCase);
186
- }
187
- input = input.replace(LEADING_SEPARATORS, "");
188
- input = options.preserveConsecutiveUppercase ? preserveConsecutiveUppercase(input, toLowerCase) : toLowerCase(input);
189
- if (options.pascalCase) {
190
- input = toUpperCase(input.charAt(0)) + input.slice(1);
191
- }
192
- return postProcess(input, toUpperCase);
193
- }
@@ -1,175 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
-
21
- // src/codegen/utilities.ts
22
- import ts, { factory } from "typescript";
23
- var MODEL_SUFFIX = "Model";
24
- function createNullableType(node) {
25
- return factory.createUnionTypeNode([
26
- node,
27
- factory.createLiteralTypeNode(factory.createNull())
28
- ]);
29
- }
30
- function getResolverParameters({
31
- parent,
32
- args,
33
- context,
34
- resolveInfo
35
- }) {
36
- return [
37
- factory.createParameterDeclaration(void 0, void 0, void 0, factory.createIdentifier(parent.name), void 0, parent.type),
38
- factory.createParameterDeclaration(void 0, void 0, void 0, factory.createIdentifier(args.name), void 0, factory.createTypeLiteralNode(args.type)),
39
- factory.createParameterDeclaration(void 0, void 0, void 0, factory.createIdentifier(context.name), void 0, context.type),
40
- factory.createParameterDeclaration(void 0, void 0, void 0, factory.createIdentifier(resolveInfo.name), void 0, resolveInfo.type)
41
- ];
42
- }
43
- function getResolverReturnType(typeNode, parentName, resolverParametersDefinitions) {
44
- if (parentName !== "Subscription") {
45
- return factory.createFunctionTypeNode(void 0, getResolverParameters(resolverParametersDefinitions), factory.createTypeReferenceNode(factory.createIdentifier("PromiseOrValue"), [typeNode]));
46
- }
47
- return factory.createUnionTypeNode([
48
- factory.createTypeLiteralNode([
49
- factory.createPropertySignature(void 0, factory.createIdentifier("subscribe"), void 0, factory.createFunctionTypeNode(void 0, getResolverParameters(resolverParametersDefinitions), factory.createTypeReferenceNode(factory.createIdentifier("PromiseOrValue"), [
50
- factory.createTypeReferenceNode(factory.createIdentifier("AsyncIterator"), [
51
- factory.createTypeReferenceNode(factory.createIdentifier("A"))
52
- ])
53
- ]))),
54
- factory.createPropertySignature(void 0, factory.createIdentifier("resolve"), void 0, factory.createFunctionTypeNode(void 0, getResolverParameters(__spreadProps(__spreadValues({}, resolverParametersDefinitions), {
55
- parent: {
56
- name: "parent",
57
- type: factory.createTypeReferenceNode(factory.createIdentifier("A"))
58
- }
59
- })), factory.createTypeReferenceNode(factory.createIdentifier("PromiseOrValue"), [typeNode])))
60
- ])
61
- ]);
62
- }
63
- function createNonNullableType(node) {
64
- if (ts.isUnionTypeNode(node)) {
65
- return node.types[0];
66
- } else {
67
- throw new Error(`Can't make type non nullable: ${node}.`);
68
- }
69
- }
70
- function addModelSuffix(typeName) {
71
- if (typeName.endsWith(MODEL_SUFFIX)) {
72
- return typeName;
73
- }
74
- return `${typeName}${MODEL_SUFFIX}`;
75
- }
76
- function createVariableNameFromImport(path) {
77
- return camelCase(path.replace(/\.\.\//g, "up-").replace(/@/g, "NS-").replace(/\.\//g, "cwd-").replace(/\//g, "-"), {
78
- pascalCase: true,
79
- preserveConsecutiveUppercase: true
80
- });
81
- }
82
- var UPPERCASE = /[\p{Lu}]/u;
83
- var LOWERCASE = /[\p{Ll}]/u;
84
- var LEADING_CAPITAL = /^[\p{Lu}](?![\p{Lu}])/gu;
85
- var IDENTIFIER = /([\p{Alpha}\p{N}_]|$)/u;
86
- var SEPARATORS = /[_.\- ]+/;
87
- var LEADING_SEPARATORS = new RegExp("^" + SEPARATORS.source);
88
- var SEPARATORS_AND_IDENTIFIER = new RegExp(SEPARATORS.source + IDENTIFIER.source, "gu");
89
- var NUMBERS_AND_IDENTIFIER = new RegExp("\\d+" + IDENTIFIER.source, "gu");
90
- var preserveCamelCase = (string, toLowerCase, toUpperCase) => {
91
- let isLastCharLower = false;
92
- let isLastCharUpper = false;
93
- let isLastLastCharUpper = false;
94
- for (let index = 0; index < string.length; index++) {
95
- const character = string[index];
96
- if (isLastCharLower && UPPERCASE.test(character)) {
97
- string = string.slice(0, index) + "-" + string.slice(index);
98
- isLastCharLower = false;
99
- isLastLastCharUpper = isLastCharUpper;
100
- isLastCharUpper = true;
101
- index++;
102
- } else if (isLastCharUpper && isLastLastCharUpper && LOWERCASE.test(character)) {
103
- string = string.slice(0, index - 1) + "-" + string.slice(index - 1);
104
- isLastLastCharUpper = isLastCharUpper;
105
- isLastCharUpper = false;
106
- isLastCharLower = true;
107
- } else {
108
- isLastCharLower = toLowerCase(character) === character && toUpperCase(character) !== character;
109
- isLastLastCharUpper = isLastCharUpper;
110
- isLastCharUpper = toUpperCase(character) === character && toLowerCase(character) !== character;
111
- }
112
- }
113
- return string;
114
- };
115
- var preserveConsecutiveUppercase = (input, toLowerCase) => {
116
- LEADING_CAPITAL.lastIndex = 0;
117
- return input.replace(LEADING_CAPITAL, (m1) => toLowerCase(m1));
118
- };
119
- var postProcess = (input, toUpperCase) => {
120
- SEPARATORS_AND_IDENTIFIER.lastIndex = 0;
121
- NUMBERS_AND_IDENTIFIER.lastIndex = 0;
122
- return input.replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) => toUpperCase(identifier)).replace(NUMBERS_AND_IDENTIFIER, (m) => toUpperCase(m));
123
- };
124
- function camelCase(input, options) {
125
- if (!(typeof input === "string" || Array.isArray(input))) {
126
- throw new TypeError("Expected the input to be `string | string[]`");
127
- }
128
- options = __spreadValues({
129
- pascalCase: false,
130
- preserveConsecutiveUppercase: false
131
- }, options);
132
- if (Array.isArray(input)) {
133
- input = input.map((x) => x.trim()).filter((x) => x.length).join("-");
134
- } else {
135
- input = input.trim();
136
- }
137
- if (input.length === 0) {
138
- return "";
139
- }
140
- let locale = options.locale;
141
- let toLowerCase;
142
- let toUpperCase;
143
- if (locale === false) {
144
- toLowerCase = (s) => s.toLowerCase();
145
- toUpperCase = (s) => s.toUpperCase();
146
- } else {
147
- toLowerCase = (s) => s.toLocaleLowerCase(locale);
148
- toUpperCase = (s) => s.toLocaleUpperCase(locale);
149
- }
150
- if (input.length === 1) {
151
- if (SEPARATORS.test(input)) {
152
- return "";
153
- }
154
- return options.pascalCase ? toUpperCase(input) : toLowerCase(input);
155
- }
156
- const hasUpperCase = input !== toLowerCase(input);
157
- if (hasUpperCase) {
158
- input = preserveCamelCase(input, toLowerCase, toUpperCase);
159
- }
160
- input = input.replace(LEADING_SEPARATORS, "");
161
- input = options.preserveConsecutiveUppercase ? preserveConsecutiveUppercase(input, toLowerCase) : toLowerCase(input);
162
- if (options.pascalCase) {
163
- input = toUpperCase(input.charAt(0)) + input.slice(1);
164
- }
165
- return postProcess(input, toUpperCase);
166
- }
167
- export {
168
- addModelSuffix,
169
- camelCase,
170
- createNonNullableType,
171
- createNullableType,
172
- createVariableNameFromImport,
173
- getResolverParameters,
174
- getResolverReturnType
175
- };
@@ -1,4 +0,0 @@
1
- import ts from "typescript";
2
- import { DocumentNode } from "graphql";
3
- export declare function extractImplicitTypesToTypescript(document: DocumentNode): ts.SourceFile;
4
- //# sourceMappingURL=extractImplicitTypesToTypescript.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"extractImplicitTypesToTypescript.d.ts","sourceRoot":"","sources":["../../src/extractors/extractImplicitTypesToTypescript.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,MAAM,YAAY,CAAC;AACzC,OAAO,EACL,YAAY,EAab,MAAM,SAAS,CAAC;AAmBjB,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,YAAY,GACrB,EAAE,CAAC,UAAU,CA8Jf"}
@@ -1,217 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
21
- var extractImplicitTypesToTypescript_exports = {};
22
- __export(extractImplicitTypesToTypescript_exports, {
23
- extractImplicitTypesToTypescript: () => extractImplicitTypesToTypescript
24
- });
25
- module.exports = __toCommonJS(extractImplicitTypesToTypescript_exports);
26
- var import_typescript = __toESM(require("typescript"));
27
- var import_graphql = require("graphql");
28
- const SPECIFIED_SCALARS = {
29
- ID: "GraphQLID",
30
- String: "GraphQLString",
31
- Int: "GraphQLInt",
32
- Float: "GraphQLFloat",
33
- Boolean: "GraphQLBoolean"
34
- };
35
- const SUPERMASSIVE_TYPES = {
36
- INTERFACE_TYPE_RESOLVER: "InterfaceTypeResolver",
37
- UNION_TYPE_RESOLVER: "UnionTypeResolver",
38
- OBJECT_TYPE_RESOLVER: "ObjectTypeResolver",
39
- ENUM_TYPE_RESOLVER: "EnumTypeResolver",
40
- SCALAR_TYPE_RESOLVER: "ScalarTypeResolver",
41
- INPUT_OBJECT_TYPE_RESOLVER: "InputObjectTypeResolver"
42
- };
43
- function extractImplicitTypesToTypescript(document) {
44
- var _a, _b;
45
- const definitions = [];
46
- const graphQLImports = [
47
- "GraphQLList",
48
- "GraphQLNonNull",
49
- "GraphQLID",
50
- "GraphQLString",
51
- "GraphQLInt",
52
- "GraphQLFloat",
53
- "GraphQLBoolean"
54
- ];
55
- const supermassiveImports = ["Resolvers"];
56
- const identifiers = [];
57
- const implementedBy = {};
58
- const interfaceAstNodes = [];
59
- for (let astNode of document.definitions) {
60
- if (astNode.kind === import_graphql.Kind.SCALAR_TYPE_DEFINITION) {
61
- definitions.push(createScalarType(astNode));
62
- addToSetArray(graphQLImports, "GraphQLScalarType");
63
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.SCALAR_TYPE_RESOLVER);
64
- addToSetArray(identifiers, astNode.name.value);
65
- } else if (astNode.kind === import_graphql.Kind.INPUT_OBJECT_TYPE_DEFINITION) {
66
- definitions.push(createInputObjectType(astNode));
67
- addToSetArray(graphQLImports, "GraphQLInputObjectType");
68
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.INPUT_OBJECT_TYPE_RESOLVER);
69
- addToSetArray(identifiers, astNode.name.value);
70
- } else if (astNode.kind === import_graphql.Kind.ENUM_TYPE_DEFINITION) {
71
- definitions.push(createEnumType(astNode));
72
- addToSetArray(graphQLImports, "GraphQLEnumType");
73
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.ENUM_TYPE_RESOLVER);
74
- addToSetArray(identifiers, astNode.name.value);
75
- } else if (astNode.kind === import_graphql.Kind.INTERFACE_TYPE_DEFINITION) {
76
- interfaceAstNodes.push(astNode);
77
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.INTERFACE_TYPE_RESOLVER);
78
- addToSetArray(identifiers, astNode.name.value);
79
- } else if (astNode.kind === import_graphql.Kind.UNION_TYPE_DEFINITION) {
80
- const types = (_a = astNode.types) == null ? void 0 : _a.map((typeNode) => {
81
- return typeNode.name.value;
82
- });
83
- definitions.push(createUnionType(astNode, types || []));
84
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.UNION_TYPE_RESOLVER);
85
- addToSetArray(identifiers, astNode.name.value);
86
- } else if (astNode.kind === import_graphql.Kind.OBJECT_TYPE_DEFINITION) {
87
- (_b = astNode.interfaces) == null ? void 0 : _b.forEach((node) => {
88
- if (!implementedBy[node.name.value]) {
89
- implementedBy[node.name.value] = [];
90
- }
91
- implementedBy[node.name.value].push(astNode.name.value);
92
- });
93
- definitions.push(createObjectType(astNode));
94
- addToSetArray(supermassiveImports, SUPERMASSIVE_TYPES.OBJECT_TYPE_RESOLVER);
95
- addToSetArray(identifiers, astNode.name.value);
96
- }
97
- }
98
- interfaceAstNodes.forEach((astNode) => {
99
- if (!implementedBy[astNode.name.value]) {
100
- implementedBy[astNode.name.value] = [];
101
- }
102
- definitions.push(createInterfaceType(astNode, implementedBy[astNode.name.value]));
103
- });
104
- const graphQLImportDefinition = import_typescript.factory.createImportDeclaration(void 0, void 0, import_typescript.factory.createImportClause(false, void 0, import_typescript.factory.createNamedImports(graphQLImports.map((imp) => import_typescript.factory.createImportSpecifier(void 0, import_typescript.factory.createIdentifier(imp))))), import_typescript.factory.createStringLiteral("graphql"));
105
- const supermassiveImportDefinition = import_typescript.factory.createImportDeclaration(void 0, void 0, import_typescript.factory.createImportClause(false, void 0, import_typescript.factory.createNamedImports(supermassiveImports.map((imp) => import_typescript.factory.createImportSpecifier(void 0, import_typescript.factory.createIdentifier(imp))))), import_typescript.factory.createStringLiteral("@graphitation/supermassive"));
106
- const exportDefinition = import_typescript.factory.createVariableStatement([import_typescript.factory.createModifier(import_typescript.default.SyntaxKind.ExportKeyword)], import_typescript.factory.createVariableDeclarationList([
107
- import_typescript.factory.createVariableDeclaration(import_typescript.factory.createIdentifier("resolvers"), void 0, import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier("Resolvers"), void 0), import_typescript.factory.createObjectLiteralExpression(identifiers.map((def) => import_typescript.factory.createShorthandPropertyAssignment(import_typescript.factory.createIdentifier(def), void 0))))
108
- ], import_typescript.default.NodeFlags.Const));
109
- return import_typescript.factory.createSourceFile([
110
- graphQLImportDefinition,
111
- supermassiveImportDefinition,
112
- ...definitions,
113
- exportDefinition
114
- ], import_typescript.factory.createToken(import_typescript.default.SyntaxKind.EndOfFileToken), 0);
115
- }
116
- function createDeclaration(name, decl, typeReferenceNode) {
117
- return import_typescript.factory.createVariableStatement(void 0, import_typescript.factory.createVariableDeclarationList([
118
- import_typescript.factory.createVariableDeclaration(import_typescript.factory.createIdentifier(name), void 0, typeReferenceNode, decl)
119
- ], import_typescript.default.NodeFlags.Const));
120
- }
121
- function createScalarType(astNode) {
122
- var _a;
123
- return createDeclaration(astNode.name.value, import_typescript.factory.createNewExpression(import_typescript.factory.createIdentifier("GraphQLScalarType"), void 0, [
124
- import_typescript.factory.createObjectLiteralExpression([
125
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("name"), import_typescript.factory.createStringLiteral(astNode.name.value)),
126
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("description"), import_typescript.factory.createStringLiteral(((_a = astNode.description) == null ? void 0 : _a.value) || ""))
127
- ], true)
128
- ]), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.SCALAR_TYPE_RESOLVER), void 0));
129
- }
130
- function createInputObjectType(astNode) {
131
- var _a;
132
- return createDeclaration(astNode.name.value, import_typescript.factory.createNewExpression(import_typescript.factory.createIdentifier("GraphQLInputObjectType"), void 0, [
133
- import_typescript.factory.createObjectLiteralExpression([
134
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("name"), import_typescript.factory.createStringLiteral(astNode.name.value)),
135
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("description"), import_typescript.factory.createStringLiteral(((_a = astNode.description) == null ? void 0 : _a.value) || "")),
136
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("fields"), import_typescript.factory.createArrowFunction(void 0, void 0, [], void 0, import_typescript.factory.createToken(import_typescript.default.SyntaxKind.EqualsGreaterThanToken), import_typescript.factory.createParenthesizedExpression(import_typescript.factory.createObjectLiteralExpression(createInputFields(astNode.fields || []), true))))
137
- ], true)
138
- ]), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.INPUT_OBJECT_TYPE_RESOLVER), void 0));
139
- }
140
- function createInputFields(astNodes) {
141
- return astNodes.map((astNode) => {
142
- var _a;
143
- const fields = [
144
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("type"), createType(astNode.type)),
145
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("description"), import_typescript.factory.createStringLiteral(((_a = astNode.description) == null ? void 0 : _a.value) || ""))
146
- ];
147
- if (astNode.defaultValue) {
148
- fields.push(import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("defaultValue"), createValue(astNode.defaultValue)));
149
- }
150
- return import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier(astNode.name.value), import_typescript.factory.createObjectLiteralExpression(fields, true));
151
- });
152
- }
153
- function createEnumType(astNode) {
154
- var _a;
155
- return createDeclaration(astNode.name.value, import_typescript.factory.createNewExpression(import_typescript.factory.createIdentifier("GraphQLEnumType"), void 0, [
156
- import_typescript.factory.createObjectLiteralExpression([
157
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("name"), import_typescript.factory.createStringLiteral(astNode.name.value)),
158
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("description"), import_typescript.factory.createStringLiteral(((_a = astNode.description) == null ? void 0 : _a.value) || "")),
159
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("values"), import_typescript.factory.createObjectLiteralExpression((astNode.values || []).map((valueNode) => {
160
- var _a2;
161
- return import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier(valueNode.name.value), import_typescript.factory.createObjectLiteralExpression([
162
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("description"), import_typescript.factory.createStringLiteral(((_a2 = valueNode.description) == null ? void 0 : _a2.value) || ""))
163
- ]));
164
- })))
165
- ])
166
- ]), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.ENUM_TYPE_RESOLVER), void 0));
167
- }
168
- function createUnionType(astNode, types) {
169
- return createDeclaration(astNode.name.value, import_typescript.factory.createObjectLiteralExpression([
170
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("__types"), import_typescript.factory.createArrayLiteralExpression(types.map((value) => import_typescript.factory.createStringLiteral(value)))),
171
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("__resolveType"), import_typescript.factory.createIdentifier("undefined"))
172
- ]), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.UNION_TYPE_RESOLVER), void 0));
173
- }
174
- function createInterfaceType(astNode, implementedBy) {
175
- return createDeclaration(astNode.name.value, import_typescript.factory.createObjectLiteralExpression([
176
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("__implementedBy"), import_typescript.factory.createArrayLiteralExpression(implementedBy.map((value) => import_typescript.factory.createStringLiteral(value)))),
177
- import_typescript.factory.createPropertyAssignment(import_typescript.factory.createIdentifier("__resolveType"), import_typescript.factory.createIdentifier("undefined"))
178
- ]), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.INTERFACE_TYPE_RESOLVER), void 0));
179
- }
180
- function createObjectType(astNode) {
181
- return createDeclaration(astNode.name.value, import_typescript.factory.createObjectLiteralExpression(), import_typescript.factory.createTypeReferenceNode(import_typescript.factory.createIdentifier(SUPERMASSIVE_TYPES.OBJECT_TYPE_RESOLVER), void 0));
182
- }
183
- function createType(astNode) {
184
- if (astNode.kind === import_graphql.Kind.LIST_TYPE) {
185
- return import_typescript.factory.createNewExpression(import_typescript.factory.createIdentifier("GraphQLList"), void 0, [createType(astNode.type)]);
186
- } else if (astNode.kind === import_graphql.Kind.NON_NULL_TYPE) {
187
- return import_typescript.factory.createNewExpression(import_typescript.factory.createIdentifier("GraphQLNonNull"), void 0, [createType(astNode.type)]);
188
- } else {
189
- if (SPECIFIED_SCALARS[astNode.name.value]) {
190
- return import_typescript.factory.createIdentifier(SPECIFIED_SCALARS[astNode.name.value]);
191
- } else {
192
- return import_typescript.factory.createIdentifier(astNode.name.value);
193
- }
194
- }
195
- }
196
- function createValue(astNode) {
197
- if (astNode.kind === import_graphql.Kind.INT || astNode.kind === import_graphql.Kind.FLOAT) {
198
- return import_typescript.factory.createNumericLiteral(astNode.value);
199
- } else if (astNode.kind === import_graphql.Kind.BOOLEAN) {
200
- return astNode.value ? import_typescript.factory.createTrue() : import_typescript.factory.createFalse();
201
- } else if (astNode.kind === import_graphql.Kind.STRING || astNode.kind === import_graphql.Kind.ENUM) {
202
- return import_typescript.factory.createStringLiteral(astNode.value);
203
- } else if (astNode.kind === import_graphql.Kind.NULL) {
204
- return import_typescript.factory.createNull();
205
- } else if (astNode.kind === import_graphql.Kind.LIST) {
206
- return import_typescript.factory.createArrayLiteralExpression(astNode.values.map((valueNode) => createValue(valueNode)));
207
- } else if (astNode.kind === import_graphql.Kind.OBJECT) {
208
- return import_typescript.factory.createObjectLiteralExpression(astNode.fields.map((fieldNode) => import_typescript.factory.createPropertyAssignment(fieldNode.name.value, createValue(fieldNode.value))));
209
- } else {
210
- throw new Error("Invalid value");
211
- }
212
- }
213
- function addToSetArray(array, item) {
214
- if (array.indexOf(item) === -1) {
215
- array.push(item);
216
- }
217
- }