graphql-query-parser 0.0.2 → 0.1.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 (174) hide show
  1. package/README.md +11 -13
  2. package/dist/builder/fragmentBuilder.d.ts +27 -0
  3. package/dist/builder/fragmentBuilder.d.ts.map +1 -0
  4. package/{builder → dist/builder}/fragmentBuilder.js +13 -8
  5. package/dist/builder/fragmentBuilder.js.map +1 -0
  6. package/dist/builder/graphQLQueryBuilder.d.ts +14 -0
  7. package/dist/builder/graphQLQueryBuilder.d.ts.map +1 -0
  8. package/{builder → dist/builder}/graphQLQueryBuilder.js +3 -6
  9. package/dist/builder/graphQLQueryBuilder.js.map +1 -0
  10. package/dist/builder/index.d.ts +3 -0
  11. package/dist/builder/index.d.ts.map +1 -0
  12. package/dist/builder/index.js +3 -0
  13. package/dist/builder/index.js.map +1 -0
  14. package/dist/builder/queryBuilder.d.ts +22 -0
  15. package/dist/builder/queryBuilder.d.ts.map +1 -0
  16. package/{builder → dist/builder}/queryBuilder.js +7 -9
  17. package/dist/builder/queryBuilder.js.map +1 -0
  18. package/dist/builder/results.d.ts +28 -0
  19. package/dist/builder/results.d.ts.map +1 -0
  20. package/{builder → dist/builder}/results.js +4 -5
  21. package/dist/builder/results.js.map +1 -0
  22. package/dist/cache/cache.d.ts +20 -0
  23. package/dist/cache/cache.d.ts.map +1 -0
  24. package/{cache → dist/cache}/cache.js +7 -8
  25. package/dist/cache/cache.js.map +1 -0
  26. package/dist/cache/index.d.ts +5 -0
  27. package/dist/cache/index.d.ts.map +1 -0
  28. package/dist/cache/index.js +4 -0
  29. package/dist/cache/index.js.map +1 -0
  30. package/dist/cache/indexCache.d.ts +27 -0
  31. package/dist/cache/indexCache.d.ts.map +1 -0
  32. package/{cache → dist/cache}/indexCache.js +2 -4
  33. package/dist/cache/indexCache.js.map +1 -0
  34. package/dist/graphQLQueryParser.d.ts +13 -0
  35. package/dist/graphQLQueryParser.d.ts.map +1 -0
  36. package/dist/graphQLQueryParser.js +50 -0
  37. package/dist/graphQLQueryParser.js.map +1 -0
  38. package/dist/index.d.ts +3 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +3 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/parser/graphql/fragment/fragmentExtractor.d.ts +16 -0
  43. package/dist/parser/graphql/fragment/fragmentExtractor.d.ts.map +1 -0
  44. package/dist/parser/graphql/fragment/fragmentExtractor.js +20 -0
  45. package/dist/parser/graphql/fragment/fragmentExtractor.js.map +1 -0
  46. package/dist/parser/graphql/fragment/fragmentParser.d.ts +19 -0
  47. package/dist/parser/graphql/fragment/fragmentParser.d.ts.map +1 -0
  48. package/{parser → dist/parser}/graphql/fragment/fragmentParser.js +12 -14
  49. package/dist/parser/graphql/fragment/fragmentParser.js.map +1 -0
  50. package/dist/parser/graphql/graphQLExtractor.d.ts +12 -0
  51. package/dist/parser/graphql/graphQLExtractor.d.ts.map +1 -0
  52. package/dist/parser/graphql/graphQLExtractor.js +2 -0
  53. package/dist/parser/graphql/graphQLParser.d.ts +12 -0
  54. package/dist/parser/graphql/graphQLParser.d.ts.map +1 -0
  55. package/dist/parser/graphql/graphQLParser.js +2 -0
  56. package/dist/parser/graphql/index.d.ts +5 -0
  57. package/dist/parser/graphql/index.d.ts.map +1 -0
  58. package/dist/parser/graphql/index.js +4 -0
  59. package/dist/parser/graphql/index.js.map +1 -0
  60. package/dist/parser/graphql/query/queryExtractor.d.ts +15 -0
  61. package/dist/parser/graphql/query/queryExtractor.d.ts.map +1 -0
  62. package/{parser → dist/parser}/graphql/query/queryExtractor.js +5 -6
  63. package/dist/parser/graphql/query/queryExtractor.js.map +1 -0
  64. package/dist/parser/graphql/query/queryParser.d.ts +24 -0
  65. package/dist/parser/graphql/query/queryParser.d.ts.map +1 -0
  66. package/{parser → dist/parser}/graphql/query/queryParser.js +17 -18
  67. package/dist/parser/graphql/query/queryParser.js.map +1 -0
  68. package/dist/parser/index.d.ts +4 -0
  69. package/dist/parser/index.d.ts.map +1 -0
  70. package/dist/parser/index.js +3 -0
  71. package/dist/parser/index.js.map +1 -0
  72. package/dist/parser/parseResults.d.ts +9 -0
  73. package/dist/parser/parseResults.d.ts.map +1 -0
  74. package/dist/parser/parseResults.js +2 -0
  75. package/dist/parser/parseResults.js.map +1 -0
  76. package/dist/parser/parser.d.ts +11 -0
  77. package/dist/parser/parser.d.ts.map +1 -0
  78. package/dist/parser/parser.js +2 -0
  79. package/dist/parser/readStreamParser.d.ts +19 -0
  80. package/dist/parser/readStreamParser.d.ts.map +1 -0
  81. package/dist/parser/readStreamParser.js +52 -0
  82. package/dist/parser/readStreamParser.js.map +1 -0
  83. package/dist/reader/directory/directoryReader.d.ts +15 -0
  84. package/dist/reader/directory/directoryReader.d.ts.map +1 -0
  85. package/dist/reader/directory/directoryReader.js +25 -0
  86. package/dist/reader/directory/directoryReader.js.map +1 -0
  87. package/dist/reader/errors/unsupportedTypeError.d.ts +4 -0
  88. package/dist/reader/errors/unsupportedTypeError.d.ts.map +1 -0
  89. package/dist/reader/errors/unsupportedTypeError.js +12 -0
  90. package/dist/reader/errors/unsupportedTypeError.js.map +1 -0
  91. package/dist/reader/file/fileReader.d.ts +15 -0
  92. package/dist/reader/file/fileReader.d.ts.map +1 -0
  93. package/dist/reader/file/fileReader.js +20 -0
  94. package/dist/reader/file/fileReader.js.map +1 -0
  95. package/dist/reader/graphQLQueryReader.d.ts +24 -0
  96. package/dist/reader/graphQLQueryReader.d.ts.map +1 -0
  97. package/{reader → dist/reader}/graphQLQueryReader.js +15 -19
  98. package/dist/reader/graphQLQueryReader.js.map +1 -0
  99. package/dist/reader/index.d.ts +3 -0
  100. package/dist/reader/index.d.ts.map +1 -0
  101. package/dist/reader/index.js +3 -0
  102. package/dist/reader/index.js.map +1 -0
  103. package/dist/reader/readFile.d.ts +14 -0
  104. package/dist/reader/readFile.d.ts.map +1 -0
  105. package/{reader → dist/reader}/readFile.js +9 -7
  106. package/dist/reader/readFile.js.map +1 -0
  107. package/dist/reader/reader.d.ts +12 -0
  108. package/dist/reader/reader.d.ts.map +1 -0
  109. package/dist/reader/reader.js +2 -0
  110. package/dist/templates/fragmentTemplate.d.ts +11 -0
  111. package/dist/templates/fragmentTemplate.d.ts.map +1 -0
  112. package/{templates → dist/templates}/fragmentTemplate.js +3 -4
  113. package/dist/templates/fragmentTemplate.js.map +1 -0
  114. package/dist/templates/index.d.ts +4 -0
  115. package/dist/templates/index.d.ts.map +1 -0
  116. package/dist/templates/index.js +4 -0
  117. package/dist/templates/index.js.map +1 -0
  118. package/dist/templates/queryTemplate.d.ts +12 -0
  119. package/dist/templates/queryTemplate.d.ts.map +1 -0
  120. package/{templates → dist/templates}/queryTemplate.js +5 -5
  121. package/dist/templates/queryTemplate.js.map +1 -0
  122. package/package.json +61 -46
  123. package/builder/fragmentBuilder.js.map +0 -1
  124. package/builder/graphQLQueryBuilder.js.map +0 -1
  125. package/builder/index.js +0 -5
  126. package/builder/index.js.map +0 -1
  127. package/builder/queryBuilder.js.map +0 -1
  128. package/builder/results.js.map +0 -1
  129. package/cache/cache.js.map +0 -1
  130. package/cache/index.js +0 -7
  131. package/cache/index.js.map +0 -1
  132. package/cache/indexCache.js.map +0 -1
  133. package/docs/CHANGELOG.md +0 -5
  134. package/docs/CONTRIBUTING.md +0 -17
  135. package/docs/EXAMPLES.md +0 -135
  136. package/graphQLQueryParser.js +0 -57
  137. package/graphQLQueryParser.js.map +0 -1
  138. package/index.js +0 -5
  139. package/index.js.map +0 -1
  140. package/parser/graphql/fragment/fragmentExtractor.js +0 -21
  141. package/parser/graphql/fragment/fragmentExtractor.js.map +0 -1
  142. package/parser/graphql/fragment/fragmentParser.js.map +0 -1
  143. package/parser/graphql/graphQLExtractor.js +0 -3
  144. package/parser/graphql/graphQLParser.js +0 -3
  145. package/parser/graphql/index.js +0 -7
  146. package/parser/graphql/index.js.map +0 -1
  147. package/parser/graphql/query/queryExtractor.js.map +0 -1
  148. package/parser/graphql/query/queryParser.js.map +0 -1
  149. package/parser/index.js +0 -5
  150. package/parser/index.js.map +0 -1
  151. package/parser/parseResults.js +0 -3
  152. package/parser/parseResults.js.map +0 -1
  153. package/parser/parser.js +0 -3
  154. package/parser/readStreamParser.js +0 -60
  155. package/parser/readStreamParser.js.map +0 -1
  156. package/reader/directory/directoryReader.js +0 -29
  157. package/reader/directory/directoryReader.js.map +0 -1
  158. package/reader/errors/unsupportedTypeError.js +0 -15
  159. package/reader/errors/unsupportedTypeError.js.map +0 -1
  160. package/reader/file/fileReader.js +0 -24
  161. package/reader/file/fileReader.js.map +0 -1
  162. package/reader/graphQLQueryReader.js.map +0 -1
  163. package/reader/index.js +0 -5
  164. package/reader/index.js.map +0 -1
  165. package/reader/readFile.js.map +0 -1
  166. package/reader/reader.js +0 -3
  167. package/templates/fragmentTemplate.js.map +0 -1
  168. package/templates/index.js +0 -7
  169. package/templates/index.js.map +0 -1
  170. package/templates/queryTemplate.js.map +0 -1
  171. /package/{parser → dist/parser}/graphql/graphQLExtractor.js.map +0 -0
  172. /package/{parser → dist/parser}/graphql/graphQLParser.js.map +0 -0
  173. /package/{parser → dist/parser}/parser.js.map +0 -0
  174. /package/{reader → dist/reader}/reader.js.map +0 -0
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- const parser_1 = require("./parser");
12
- const builder_1 = require("./builder");
13
- const reader_1 = require("./reader");
14
- const cache_1 = require("./cache");
15
- function isString(x) {
16
- return typeof x === "string";
17
- }
18
- /**
19
- * Parses all the information from the paths provided.
20
- * This method will parse data in the form of fragments and queries.
21
- * Then cache the data in order to construct many results for use by GraphQL clients
22
- *
23
- * @param paths Paths to parse information from
24
- * @param variables Variables to apply to the queries
25
- */
26
- function parse(paths, variables = {}) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const streams = read(paths, new reader_1.default());
29
- const results = yield Promise.all(parseStreams(streams, new parser_1.ReadStreamParser()));
30
- const fragments = results.map(x => x.fragmentResults).reduce((acc, x) => acc.concat(...x), []);
31
- const queries = results.map(x => x.queryResults).reduce((acc, x) => acc.concat(...x), []);
32
- const cache = cache_1.buildCache(fragments, queries);
33
- return builder_1.default.build(cache, variables);
34
- });
35
- }
36
- /**
37
- * Reads the information from the the path
38
- *
39
- * @param paths Single path or many paths
40
- * @param reader Reads the results from the path information provided
41
- */
42
- function read(paths, reader) {
43
- return (isString(paths))
44
- ? reader.read(paths)
45
- : reader.readMany(paths);
46
- }
47
- /**
48
- * Parses all the read stream information to return template data
49
- *
50
- * @param streams Streams to parse from
51
- * @param parser Parser to use when finding data from the streams
52
- */
53
- function parseStreams(streams, parser) {
54
- return parser.parse(streams);
55
- }
56
- exports.default = parse;
57
- //# sourceMappingURL=graphQLQueryParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"graphQLQueryParser.js","sourceRoot":"","sources":["../lib/graphQLQueryParser.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,qCAA0D;AAC1D,uCAA4C;AAC5C,qCAA0C;AAC1C,mCAAqC;AAMrC,SAAS,QAAQ,CAAC,CAAO;IACrB,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC;AACjC,CAAC;AAED;;;;;;;GAOG;AACH,SAAe,KAAK,CAAC,KAAW,EAAE,YAAuB,EAAE;;QACvD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,gBAAkB,EAAE,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,yBAAgB,EAAE,CAAC,CAAC,CAAC;QACjF,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/F,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACzF,MAAM,KAAK,GAAG,kBAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7C,OAAO,iBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;CAAA;AAED;;;;;GAKG;AACH,SAAS,IAAI,CAAC,KAAW,EAAE,MAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAE,KAAgB,CAAC;QAChC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAE,KAAkB,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,OAAqB,EAAE,MAAwB;IACjE,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAED,kBAAe,KAAK,CAAC"}
package/index.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const graphQLQueryParser_1 = require("./graphQLQueryParser");
4
- exports.default = graphQLQueryParser_1.default;
5
- //# sourceMappingURL=index.js.map
package/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;AAAA,6DAAyC;AAEzC,kBAAe,4BAAK,CAAC"}
@@ -1,21 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const fragmentParser_1 = require("./fragmentParser");
4
- /**
5
- * Extracts fragments from a potential input
6
- */
7
- class FragmentExtractor {
8
- constructor() {
9
- this.parser = new fragmentParser_1.default();
10
- }
11
- /**
12
- * Extracts one to many fragments via the parser
13
- *
14
- * @param input Input string to extract framgents from
15
- */
16
- extract(input) {
17
- return this.parser.parse(input);
18
- }
19
- }
20
- exports.default = FragmentExtractor;
21
- //# sourceMappingURL=fragmentExtractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fragmentExtractor.js","sourceRoot":"","sources":["../../../../lib/parser/graphql/fragment/fragmentExtractor.ts"],"names":[],"mappings":";;AAEA,qDAA8C;AAG9C;;GAEG;AACH,MAAqB,iBAAiB;IAGpC;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,wBAAc,EAAE,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACI,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;CACF;AAfD,oCAeC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fragmentParser.js","sourceRoot":"","sources":["../../../../lib/parser/graphql/fragment/fragmentParser.ts"],"names":[],"mappings":";;AAAA,kDAAsD;AAGtD;;GAEG;AACH,MAAqB,cAAc;IAAnC;QACU,sBAAiB,GAAG,4FAA4F,CAAC;QACjH,kBAAa,GAAG,6FAA6F,CAAC;IAmDxH,CAAC;IAjDC;;;;OAIG;IACI,KAAK,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAEO,cAAc,CAAC,IAAY;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7C,IAAG,KAAK,IAAI,IAAI,EAAE;YAChB,OAAO,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE;gBACpC,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,EAAE,CAAC;IAEZ,CAAC;IAEO,aAAa,CAAC,IAAY,EAAE,kBAA0B;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACnG,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAChC,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC3E,IAAI,KAAK,GAAG,KAAK,CAAC;QAElB,OAAM,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,KAAK,EAAE,CAAC;YACR,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,QAAQ,IAAI,IAAI,CAAC;YACjB,QAAO,IAAI,EAAE;gBACX,KAAK,GAAG;oBACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrB,MAAM;gBACR,KAAK,GAAG;oBACN,SAAS,CAAC,GAAG,EAAE,CAAC;oBAChB,MAAM;gBACR;oBACE,SAAS;aACZ;SACF;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,aAAa,CAAC,QAAgB,EAAE,kBAA0B;QAChE,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC5D,OAAO,IAAI,4BAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IAChD,CAAC;CACF;AArDD,iCAqDC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=graphQLExtractor.js.map
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=graphQLParser.js.map
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const fragmentExtractor_1 = require("./fragment/fragmentExtractor");
4
- exports.FragmentExtractor = fragmentExtractor_1.default;
5
- const queryExtractor_1 = require("./query/queryExtractor");
6
- exports.QueryExtractor = queryExtractor_1.default;
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/parser/graphql/index.ts"],"names":[],"mappings":";;AAAA,oEAA6D;AAK3D,4BALK,2BAAiB,CAKL;AAJnB,2DAAoD;AAKlD,yBALK,wBAAc,CAKL"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryExtractor.js","sourceRoot":"","sources":["../../../../lib/parser/graphql/query/queryExtractor.ts"],"names":[],"mappings":";;AAEA,+CAAwC;AAExC;;GAEG;AACH,MAAqB,cAAc;IAGjC;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAW,EAAE,CAAC;IAClC,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,KAAa;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;CACF;AAdD,iCAcC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryParser.js","sourceRoot":"","sources":["../../../../lib/parser/graphql/query/queryParser.ts"],"names":[],"mappings":";;AAAA,kDAAmD;AAGnD;;GAEG;AACH,MAAqB,WAAW;IAAhC;QACU,mBAAc,GAAG,oEAAoE,CAAC;QACtF,eAAU,GAAG,kEAAkE,CAAC;QAChF,wBAAmB,GAAG,iEAAiE,CAAC;QACxF,kBAAa,GAAG,gBAAgB,CAAC;IAsE3C,CAAC;IApEC;;;;;OAKG;IACI,KAAK,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAEO,YAAY,CAAC,IAAY;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAG,OAAO,KAAK,IAAI,EAAE;YACnB,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE;gBACnC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;gBACrD,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,UAAU,CAAC,IAAY,EAAE,eAAuB;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACzF,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAChC,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACxE,IAAI,KAAK,GAAG,KAAK,CAAC;QAElB,OAAM,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,KAAK,EAAE,CAAC;YACR,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,QAAQ,IAAI,IAAI,CAAC;YACjB,QAAO,IAAI,EAAE;gBACX,KAAK,GAAG;oBACN,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrB,MAAM;gBACR,KAAK,GAAG;oBACN,SAAS,CAAC,GAAG,EAAE,CAAC;oBAChB,MAAM;gBACR;oBACE,SAAS;aACZ;SACF;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,aAAa,CAAC,KAAa,EAAE,eAAuB;QAC1D,OAAO,IAAI,yBAAa,CACtB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EAC5C,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAC3B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAChC,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,IAAI;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnD,IAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;aACrC;YACD,OAAO,KAAK,CAAC;SACd;QAAC,OAAM,CAAC,EAAE;YACT,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAGO,cAAc,CAAC,IAAY;QACjC,OAAO,CAAC,GAAI,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;CACF;AA1ED,8BA0EC"}
package/parser/index.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const readStreamParser_1 = require("./readStreamParser");
4
- exports.ReadStreamParser = readStreamParser_1.default;
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/parser/index.ts"],"names":[],"mappings":";;AAAA,yDAAkD;AAI9C,2BAJG,0BAAgB,CAIH"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=parseResults.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseResults.js","sourceRoot":"","sources":["../../lib/parser/parseResults.ts"],"names":[],"mappings":""}
package/parser/parser.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=parser.js.map
@@ -1,60 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- const graphql_1 = require("./graphql");
12
- /**
13
- * Parses results from a ReadStream
14
- */
15
- class ReadStreamParser {
16
- constructor() {
17
- this.queryExtractor = new graphql_1.QueryExtractor();
18
- this.fragmentExtractor = new graphql_1.FragmentExtractor();
19
- }
20
- /**
21
- * Parses multiple read streams and returns the [[ParseResult]] from each read stream
22
- * @param streams Streams that contain the information for parsing
23
- */
24
- parse(streams) {
25
- try {
26
- return streams.map((stream) => __awaiter(this, void 0, void 0, function* () {
27
- const result = yield this.parseData(stream);
28
- if (result === null) {
29
- throw new Error("fill in with defined error");
30
- }
31
- return result;
32
- }));
33
- }
34
- catch (e) {
35
- return null;
36
- }
37
- }
38
- parseData(stream) {
39
- return new Promise((resolve, reject) => {
40
- let results;
41
- stream.on('data', (data) => {
42
- results = this.extract(data);
43
- });
44
- stream.on('end', () => {
45
- resolve(results);
46
- });
47
- stream.on('error', (error) => {
48
- reject(error);
49
- });
50
- });
51
- }
52
- extract(data) {
53
- return {
54
- queryResults: this.queryExtractor.extract(data),
55
- fragmentResults: this.fragmentExtractor.extract(data)
56
- };
57
- }
58
- }
59
- exports.default = ReadStreamParser;
60
- //# sourceMappingURL=readStreamParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"readStreamParser.js","sourceRoot":"","sources":["../../lib/parser/readStreamParser.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,uCAA8D;AAK9D;;GAEG;AACH,MAAqB,gBAAgB;IAIjC;QACI,IAAI,CAAC,cAAc,GAAG,IAAI,wBAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,IAAI,2BAAiB,EAAE,CAAC;IACrD,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAqB;QAC9B,IAAI;YACA,OAAO,OAAO,CAAC,GAAG,CAAC,CAAM,MAAM,EAAC,EAAE;gBAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC5C,IAAG,MAAM,KAAK,IAAI,EAAE;oBAChB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;iBACjD;gBACD,OAAO,MAAM,CAAC;YAClB,CAAC,CAAA,CAAC,CAAC;SACN;QAAC,OAAM,CAAC,EAAE;YACP,OAAO,IAAI,CAAC;SACf;IACL,CAAC;IAEO,SAAS,CAAC,MAAkB;QAChC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,OAAqB,CAAC;YAC1B,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvB,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;gBAClB,OAAO,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzB,MAAM,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,OAAO,CAAC,IAAY;QACxB,OAAO;YACH,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC;YAC/C,eAAe,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC;SACxD,CAAA;IACL,CAAC;CACJ;AAhDD,mCAgDC"}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const readFile_1 = require("../readFile");
4
- const fs = require("fs");
5
- /**
6
- * Directory Readers are responsible for reading information from a directory of files
7
- */
8
- class DirectoryReader {
9
- constructor() {
10
- this.options = {
11
- encoding: 'utf8'
12
- };
13
- }
14
- /**
15
- * Reads the information from a directory string identifier
16
- *
17
- * @param directory Directory to open the read streams from
18
- */
19
- read(directory) {
20
- const directoryPath = directory.toString();
21
- return fs.readdirSync(directoryPath)
22
- .map(file => {
23
- return readFile_1.readFile(directoryPath + file, this.options);
24
- })
25
- .filter(x => x);
26
- }
27
- }
28
- exports.default = DirectoryReader;
29
- //# sourceMappingURL=directoryReader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"directoryReader.js","sourceRoot":"","sources":["../../../lib/reader/directory/directoryReader.ts"],"names":[],"mappings":";;AAAA,0CAAuC;AAEvC,yBAAyB;AAEzB;;GAEG;AACH,MAAqB,eAAe;IAApC;QACU,YAAO,GAAG;YAChB,QAAQ,EAAE,MAAM;SACjB,CAAA;IAeH,CAAC;IAbC;;;;OAIG;IACI,IAAI,CAAC,SAAiB;QAC3B,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;QAC3C,OAAO,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC;aACjC,GAAG,CAAC,IAAI,CAAC,EAAE;YACV,OAAO,mBAAQ,CAAC,aAAa,GAAG,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;CACF;AAlBD,kCAkBC"}
@@ -1,15 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const util = require("util");
4
- class UnsupportedTypeError extends Error {
5
- constructor(message = DEFAULT_MESSAGE, variables = []) {
6
- super(message);
7
- if (variables !== [] && message !== DEFAULT_MESSAGE) {
8
- this.message = util.format(message, variables);
9
- }
10
- Object.setPrototypeOf(this, UnsupportedTypeError.prototype);
11
- }
12
- }
13
- exports.default = UnsupportedTypeError;
14
- const DEFAULT_MESSAGE = "The type passed was unsupported";
15
- //# sourceMappingURL=unsupportedTypeError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unsupportedTypeError.js","sourceRoot":"","sources":["../../../lib/reader/errors/unsupportedTypeError.ts"],"names":[],"mappings":";;AAAA,6BAA6B;AAE7B,MAAqB,oBAAqB,SAAQ,KAAK;IACrD,YAAY,UAAkB,eAAe,EAAE,YAA2B,EAAE;QAC1E,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAG,SAAS,KAAK,EAAE,IAAI,OAAO,KAAK,eAAe,EAAE;YAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;SAChD;QACD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;CACF;AARD,uCAQC;AAED,MAAM,eAAe,GAAG,iCAAiC,CAAC"}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const readFile_1 = require("../readFile");
4
- /**
5
- * Reads from a file and opens a [[ReadStream]]
6
- */
7
- class FileReader {
8
- constructor() {
9
- this.options = {
10
- encoding: 'utf8'
11
- };
12
- }
13
- /**
14
- * Reads from a file and opens a [[ReadStream]]
15
- *
16
- * @param file File to read from
17
- */
18
- read(file) {
19
- const filePath = file.toString();
20
- return readFile_1.readFile(filePath, this.options);
21
- }
22
- }
23
- exports.default = FileReader;
24
- //# sourceMappingURL=fileReader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fileReader.js","sourceRoot":"","sources":["../../../lib/reader/file/fileReader.ts"],"names":[],"mappings":";;AAAA,0CAAuC;AAIvC;;GAEG;AACH,MAAqB,UAAU;IAA/B;QACU,YAAO,GAAG;YAChB,QAAQ,EAAE,MAAM;SACjB,CAAA;IAWH,CAAC;IATC;;;;OAIG;IACI,IAAI,CAAC,IAAY;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,OAAO,mBAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;CACF;AAdD,6BAcC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"graphQLQueryReader.js","sourceRoot":"","sources":["../../lib/reader/graphQLQueryReader.ts"],"names":[],"mappings":";;AAAA,wEAAiE;AACjE,iEAA0D;AAC1D,kDAA2C;AAE3C,yBAAyB;AAEzB;;;;GAIG;AACH,SAAS,OAAO,CAAI,GAAQ;IACxB,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,UAAU,CAAC,IAAS,EAAE,SAAS;QACtD,OAAO,IAAI,CAAC,MAAM,CACd,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;YACpB,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;YACpB,CAAC,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,MAAqB,kBAAkB;IAInC;QACI,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAU,EAAE,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,IAAI,yBAAe,EAAE,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACI,IAAI,CAAC,IAAY;QACpB,MAAM,YAAY,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,IAAG,YAAY,CAAC,MAAM,EAAE,EAAE;YACtB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACvC;aAAM,IAAI,YAAY,CAAC,WAAW,EAAE,EAAE;YACnC,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1C;aAAM;YACH,MAAM,IAAI,8BAAoB,CAC1B,mDAAmD,EACnD,CAAC,IAAI,CAAC,CACT,CAAC;SACL;IACL,CAAC;IAED;;;;;OAKG;IACI,QAAQ,CAAC,KAAe;QAC3B,OAAO,KAAK;aACP,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5B,MAAM,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;YACxB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBACvC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;gBACpB,CAAC,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC,EAAE,EAAE,CAAC,CAAC;IACf,CAAC;CACJ;AA5CD,qCA4CC"}
package/reader/index.js DELETED
@@ -1,5 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const graphQLQueryReader_1 = require("./graphQLQueryReader");
4
- exports.default = graphQLQueryReader_1.default;
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/reader/index.ts"],"names":[],"mappings":";;AAAA,6DAAsD;AAG5B,kBAHnB,4BAAkB,CAGQ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"readFile.js","sourceRoot":"","sources":["../../lib/reader/readFile.ts"],"names":[],"mappings":";;AAAA,yBAAyB;AAMzB;;;;GAIG;AACH,SAAS,aAAa,CAAC,QAAgB;IACnC,MAAM,KAAK,GAAG,iBAAiB,CAAC;IAChC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,OAAO,CAAC,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,SAAS,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,QAAgB,EAAE,OAAgB;IAChD,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE;QACzB,OAAO,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;KAC1D;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAIG,4BAAQ"}
package/reader/reader.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=reader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fragmentTemplate.js","sourceRoot":"","sources":["../../lib/templates/fragmentTemplate.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH,MAAqB,gBAAgB;IAIjC,YAAmB,QAAgB,EAAE,QAAgB;QACjD,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ;AAhBD,mCAgBC"}
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const fragmentTemplate_1 = require("./fragmentTemplate");
4
- exports.FragmentTemplate = fragmentTemplate_1.default;
5
- const queryTemplate_1 = require("./queryTemplate");
6
- exports.QueryTemplate = queryTemplate_1.default;
7
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/templates/index.ts"],"names":[],"mappings":";;AAAA,yDAAkD;AAI9C,2BAJG,0BAAgB,CAIH;AAHpB,mDAA4C;AAIxC,wBAJG,uBAAa,CAIH"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"queryTemplate.js","sourceRoot":"","sources":["../../lib/templates/queryTemplate.ts"],"names":[],"mappings":";AAAA,kDAAkD;;AAElD;;GAEG;AACH,MAAqB,aAAa;IAK9B,YAAmB,QAAgB,EAAE,QAAgB,EAAE,SAAmB;QACtE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAEM,KAAK;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAEM,KAAK,CAAC,SAA8B;QACvC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACpB,IAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBAClC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7D;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;CACJ;AAxBD,gCAwBC"}
File without changes
File without changes