@commitspark/graphql-api 0.80.0 → 0.81.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 (222) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/cjs/app/api.service.js +74 -0
  3. package/dist/cjs/app/api.service.js.map +1 -0
  4. package/dist/{container.js → cjs/container.js} +13 -12
  5. package/dist/cjs/container.js.map +1 -0
  6. package/dist/cjs/graphql/apollo-config-factory.service.js +31 -0
  7. package/dist/cjs/graphql/apollo-config-factory.service.js.map +1 -0
  8. package/dist/cjs/graphql/field-resolver/entry-reference-resolver.js +26 -0
  9. package/dist/cjs/graphql/field-resolver/entry-reference-resolver.js.map +1 -0
  10. package/dist/cjs/graphql/field-resolver/field-default-value-resolver.js.map +1 -0
  11. package/dist/cjs/graphql/field-resolver/fieldResolver.js.map +1 -0
  12. package/dist/{graphql → cjs/graphql}/field-resolver/union-value-resolver.js +4 -0
  13. package/dist/cjs/graphql/field-resolver/union-value-resolver.js.map +1 -0
  14. package/dist/{graphql → cjs/graphql}/input-type-generator.service.js +5 -3
  15. package/dist/cjs/graphql/input-type-generator.service.js.map +1 -0
  16. package/dist/cjs/graphql/queries-mutations-generator.service.js.map +1 -0
  17. package/dist/{graphql → cjs/graphql}/resolver-generators/mutation-create-resolver-generator.js +21 -11
  18. package/dist/cjs/graphql/resolver-generators/mutation-create-resolver-generator.js.map +1 -0
  19. package/dist/{graphql → cjs/graphql}/resolver-generators/mutation-delete-resolver-generator.js +16 -8
  20. package/dist/cjs/graphql/resolver-generators/mutation-delete-resolver-generator.js.map +1 -0
  21. package/dist/{graphql → cjs/graphql}/resolver-generators/mutation-update-resolver-generator.js +18 -9
  22. package/dist/cjs/graphql/resolver-generators/mutation-update-resolver-generator.js.map +1 -0
  23. package/dist/cjs/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js.map +1 -0
  24. package/dist/cjs/graphql/resolver-generators/query-all-resolver-generator.js +27 -0
  25. package/dist/cjs/graphql/resolver-generators/query-all-resolver-generator.js.map +1 -0
  26. package/dist/cjs/graphql/resolver-generators/query-by-id-resolver-generator.js +25 -0
  27. package/dist/cjs/graphql/resolver-generators/query-by-id-resolver-generator.js.map +1 -0
  28. package/dist/cjs/graphql/resolver-generators/query-count-all-resolver-generator.js +26 -0
  29. package/dist/cjs/graphql/resolver-generators/query-count-all-resolver-generator.js.map +1 -0
  30. package/dist/cjs/graphql/resolver-generators/query-type-by-id-resolver-generator.js +24 -0
  31. package/dist/cjs/graphql/resolver-generators/query-type-by-id-resolver-generator.js.map +1 -0
  32. package/dist/cjs/graphql/resolver-generators/union-type-resolver-generator.js +33 -0
  33. package/dist/cjs/graphql/resolver-generators/union-type-resolver-generator.js.map +1 -0
  34. package/dist/cjs/graphql/schema-analyzer.service.js.map +1 -0
  35. package/dist/cjs/graphql/schema-generator.service.js +103 -0
  36. package/dist/cjs/graphql/schema-generator.service.js.map +1 -0
  37. package/dist/cjs/graphql/schema-root-type-generator.service.js.map +1 -0
  38. package/dist/cjs/graphql/schema-utils/entry-reference-util.js +139 -0
  39. package/dist/cjs/graphql/schema-utils/entry-reference-util.js.map +1 -0
  40. package/dist/cjs/graphql/schema-utils/entry-type-util.js.map +1 -0
  41. package/dist/{graphql → cjs/graphql}/schema-utils/union-type-util.js +2 -0
  42. package/dist/cjs/graphql/schema-utils/union-type-util.js.map +1 -0
  43. package/dist/{graphql → cjs/graphql}/schema-validator.js +2 -2
  44. package/dist/cjs/graphql/schema-validator.js.map +1 -0
  45. package/dist/cjs/index.js +22 -0
  46. package/dist/cjs/index.js.map +1 -0
  47. package/dist/cjs/package.json +1 -0
  48. package/dist/cjs/persistence/persistence.service.js +66 -0
  49. package/dist/cjs/persistence/persistence.service.js.map +1 -0
  50. package/dist/{app → esm/app}/api.service.js +7 -7
  51. package/dist/esm/app/api.service.js.map +1 -0
  52. package/dist/esm/container.js +50 -0
  53. package/dist/esm/container.js.map +1 -0
  54. package/dist/esm/graphql/apollo-config-factory.service.js +17 -0
  55. package/dist/esm/graphql/apollo-config-factory.service.js.map +1 -0
  56. package/dist/{graphql → esm/graphql}/field-resolver/entry-reference-resolver.js +4 -6
  57. package/dist/esm/graphql/field-resolver/entry-reference-resolver.js.map +1 -0
  58. package/dist/esm/graphql/field-resolver/field-default-value-resolver.js +73 -0
  59. package/dist/esm/graphql/field-resolver/field-default-value-resolver.js.map +1 -0
  60. package/dist/esm/graphql/field-resolver/fieldResolver.js +2 -0
  61. package/dist/esm/graphql/field-resolver/fieldResolver.js.map +1 -0
  62. package/dist/esm/graphql/field-resolver/union-value-resolver.js +22 -0
  63. package/dist/esm/graphql/field-resolver/union-value-resolver.js.map +1 -0
  64. package/dist/esm/graphql/input-type-generator.service.js +94 -0
  65. package/dist/esm/graphql/input-type-generator.service.js.map +1 -0
  66. package/dist/esm/graphql/queries-mutations-generator.service.js +85 -0
  67. package/dist/esm/graphql/queries-mutations-generator.service.js.map +1 -0
  68. package/dist/esm/graphql/resolver-generators/mutation-create-resolver-generator.js +78 -0
  69. package/dist/esm/graphql/resolver-generators/mutation-create-resolver-generator.js.map +1 -0
  70. package/dist/esm/graphql/resolver-generators/mutation-delete-resolver-generator.js +58 -0
  71. package/dist/esm/graphql/resolver-generators/mutation-delete-resolver-generator.js.map +1 -0
  72. package/dist/esm/graphql/resolver-generators/mutation-update-resolver-generator.js +67 -0
  73. package/dist/esm/graphql/resolver-generators/mutation-update-resolver-generator.js.map +1 -0
  74. package/dist/esm/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js +55 -0
  75. package/dist/esm/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js.map +1 -0
  76. package/dist/esm/graphql/resolver-generators/query-all-resolver-generator.js +15 -0
  77. package/dist/esm/graphql/resolver-generators/query-all-resolver-generator.js.map +1 -0
  78. package/dist/esm/graphql/resolver-generators/query-by-id-resolver-generator.js +13 -0
  79. package/dist/esm/graphql/resolver-generators/query-by-id-resolver-generator.js.map +1 -0
  80. package/dist/{graphql → esm/graphql}/resolver-generators/query-count-all-resolver-generator.js +2 -5
  81. package/dist/esm/graphql/resolver-generators/query-count-all-resolver-generator.js.map +1 -0
  82. package/dist/esm/graphql/resolver-generators/query-type-by-id-resolver-generator.js +12 -0
  83. package/dist/esm/graphql/resolver-generators/query-type-by-id-resolver-generator.js.map +1 -0
  84. package/dist/{graphql → esm/graphql}/resolver-generators/union-type-resolver-generator.js +6 -5
  85. package/dist/esm/graphql/resolver-generators/union-type-resolver-generator.js.map +1 -0
  86. package/dist/esm/graphql/schema-analyzer.service.js +36 -0
  87. package/dist/esm/graphql/schema-analyzer.service.js.map +1 -0
  88. package/dist/{graphql → esm/graphql}/schema-generator.service.js +24 -13
  89. package/dist/esm/graphql/schema-generator.service.js.map +1 -0
  90. package/dist/esm/graphql/schema-root-type-generator.service.js +35 -0
  91. package/dist/esm/graphql/schema-root-type-generator.service.js.map +1 -0
  92. package/dist/{graphql → esm/graphql}/schema-utils/entry-reference-util.js +22 -23
  93. package/dist/esm/graphql/schema-utils/entry-reference-util.js.map +1 -0
  94. package/dist/esm/graphql/schema-utils/entry-type-util.js +29 -0
  95. package/dist/esm/graphql/schema-utils/entry-type-util.js.map +1 -0
  96. package/dist/esm/graphql/schema-utils/union-type-util.js +18 -0
  97. package/dist/esm/graphql/schema-utils/union-type-util.js.map +1 -0
  98. package/dist/esm/graphql/schema-validator.js +25 -0
  99. package/dist/esm/graphql/schema-validator.js.map +1 -0
  100. package/dist/esm/index.js +7 -0
  101. package/dist/esm/index.js.map +1 -0
  102. package/dist/{persistence → esm/persistence}/persistence.service.js +5 -9
  103. package/dist/esm/persistence/persistence.service.js.map +1 -0
  104. package/dist/tsconfig.build.cjs.tsbuildinfo +1 -0
  105. package/dist/tsconfig.build.esm.tsbuildinfo +1 -0
  106. package/dist/tsconfig.build.types.tsbuildinfo +1 -0
  107. package/dist/{app → types/app}/api.service.d.ts +8 -5
  108. package/dist/types/app/api.service.d.ts.map +1 -0
  109. package/dist/{container.d.ts → types/container.d.ts} +1 -0
  110. package/dist/types/container.d.ts.map +1 -0
  111. package/dist/{graphql → types/graphql}/apollo-config-factory.service.d.ts +1 -0
  112. package/dist/types/graphql/apollo-config-factory.service.d.ts.map +1 -0
  113. package/dist/{graphql → types/graphql}/field-resolver/entry-reference-resolver.d.ts +3 -2
  114. package/dist/types/graphql/field-resolver/entry-reference-resolver.d.ts.map +1 -0
  115. package/dist/{graphql → types/graphql}/field-resolver/field-default-value-resolver.d.ts +3 -2
  116. package/dist/types/graphql/field-resolver/field-default-value-resolver.d.ts.map +1 -0
  117. package/dist/{graphql → types/graphql}/field-resolver/fieldResolver.d.ts +2 -2
  118. package/dist/types/graphql/field-resolver/fieldResolver.d.ts.map +1 -0
  119. package/dist/{graphql → types/graphql}/field-resolver/union-value-resolver.d.ts +2 -1
  120. package/dist/types/graphql/field-resolver/union-value-resolver.d.ts.map +1 -0
  121. package/dist/{graphql → types/graphql}/input-type-generator.service.d.ts +1 -0
  122. package/dist/types/graphql/input-type-generator.service.d.ts.map +1 -0
  123. package/dist/{graphql → types/graphql}/queries-mutations-generator.service.d.ts +2 -2
  124. package/dist/types/graphql/queries-mutations-generator.service.d.ts.map +1 -0
  125. package/dist/{graphql → types/graphql}/resolver-generators/mutation-create-resolver-generator.d.ts +2 -1
  126. package/dist/types/graphql/resolver-generators/mutation-create-resolver-generator.d.ts.map +1 -0
  127. package/dist/{graphql → types/graphql}/resolver-generators/mutation-delete-resolver-generator.d.ts +2 -1
  128. package/dist/types/graphql/resolver-generators/mutation-delete-resolver-generator.d.ts.map +1 -0
  129. package/dist/{graphql → types/graphql}/resolver-generators/mutation-update-resolver-generator.d.ts +2 -1
  130. package/dist/types/graphql/resolver-generators/mutation-update-resolver-generator.d.ts.map +1 -0
  131. package/dist/{graphql → types/graphql}/resolver-generators/object-type-field-default-value-resolver-generator.d.ts +2 -2
  132. package/dist/types/graphql/resolver-generators/object-type-field-default-value-resolver-generator.d.ts.map +1 -0
  133. package/dist/{graphql → types/graphql}/resolver-generators/query-all-resolver-generator.d.ts +2 -1
  134. package/dist/types/graphql/resolver-generators/query-all-resolver-generator.d.ts.map +1 -0
  135. package/dist/{graphql → types/graphql}/resolver-generators/query-by-id-resolver-generator.d.ts +2 -1
  136. package/dist/types/graphql/resolver-generators/query-by-id-resolver-generator.d.ts.map +1 -0
  137. package/dist/{graphql → types/graphql}/resolver-generators/query-count-all-resolver-generator.d.ts +2 -1
  138. package/dist/types/graphql/resolver-generators/query-count-all-resolver-generator.d.ts.map +1 -0
  139. package/dist/{graphql → types/graphql}/resolver-generators/query-type-by-id-resolver-generator.d.ts +2 -1
  140. package/dist/types/graphql/resolver-generators/query-type-by-id-resolver-generator.d.ts.map +1 -0
  141. package/dist/{graphql → types/graphql}/resolver-generators/union-type-resolver-generator.d.ts +1 -0
  142. package/dist/types/graphql/resolver-generators/union-type-resolver-generator.d.ts.map +1 -0
  143. package/dist/{graphql → types/graphql}/schema-analyzer.service.d.ts +2 -2
  144. package/dist/types/graphql/schema-analyzer.service.d.ts.map +1 -0
  145. package/dist/{graphql → types/graphql}/schema-generator.service.d.ts +1 -0
  146. package/dist/types/graphql/schema-generator.service.d.ts.map +1 -0
  147. package/dist/{graphql → types/graphql}/schema-root-type-generator.service.d.ts +1 -0
  148. package/dist/types/graphql/schema-root-type-generator.service.d.ts.map +1 -0
  149. package/dist/{graphql → types/graphql}/schema-utils/entry-reference-util.d.ts +1 -0
  150. package/dist/types/graphql/schema-utils/entry-reference-util.d.ts.map +1 -0
  151. package/dist/{graphql → types/graphql}/schema-utils/entry-type-util.d.ts +1 -0
  152. package/dist/types/graphql/schema-utils/entry-type-util.d.ts.map +1 -0
  153. package/dist/{graphql → types/graphql}/schema-utils/union-type-util.d.ts +1 -0
  154. package/dist/types/graphql/schema-utils/union-type-util.d.ts.map +1 -0
  155. package/dist/{graphql → types/graphql}/schema-validator.d.ts +1 -0
  156. package/dist/types/graphql/schema-validator.d.ts.map +1 -0
  157. package/dist/{index.d.ts → types/index.d.ts} +1 -0
  158. package/dist/types/index.d.ts.map +1 -0
  159. package/dist/{persistence → types/persistence}/persistence.service.d.ts +1 -0
  160. package/dist/types/persistence/persistence.service.d.ts.map +1 -0
  161. package/package.json +29 -17
  162. package/src/app/api.service.ts +13 -7
  163. package/src/container.ts +12 -12
  164. package/src/graphql/field-resolver/entry-reference-resolver.ts +2 -2
  165. package/src/graphql/field-resolver/field-default-value-resolver.ts +2 -4
  166. package/src/graphql/field-resolver/fieldResolver.ts +1 -2
  167. package/src/graphql/field-resolver/union-value-resolver.ts +1 -1
  168. package/src/graphql/input-type-generator.service.ts +1 -1
  169. package/src/graphql/queries-mutations-generator.service.ts +1 -2
  170. package/src/graphql/resolver-generators/mutation-create-resolver-generator.ts +4 -4
  171. package/src/graphql/resolver-generators/mutation-delete-resolver-generator.ts +1 -3
  172. package/src/graphql/resolver-generators/mutation-update-resolver-generator.ts +1 -2
  173. package/src/graphql/resolver-generators/object-type-field-default-value-resolver-generator.ts +4 -6
  174. package/src/graphql/resolver-generators/query-all-resolver-generator.ts +1 -1
  175. package/src/graphql/resolver-generators/query-by-id-resolver-generator.ts +1 -1
  176. package/src/graphql/resolver-generators/query-count-all-resolver-generator.ts +1 -1
  177. package/src/graphql/resolver-generators/query-type-by-id-resolver-generator.ts +1 -1
  178. package/src/graphql/schema-analyzer.service.ts +2 -1
  179. package/src/graphql/schema-generator.service.ts +1 -4
  180. package/src/graphql/schema-utils/entry-reference-util.ts +1 -1
  181. package/src/graphql/schema-validator.ts +1 -3
  182. package/src/persistence/persistence.service.ts +1 -1
  183. package/dist/app/api.service.js.map +0 -1
  184. package/dist/container.js.map +0 -1
  185. package/dist/graphql/apollo-config-factory.service.js +0 -20
  186. package/dist/graphql/apollo-config-factory.service.js.map +0 -1
  187. package/dist/graphql/field-resolver/entry-reference-resolver.js.map +0 -1
  188. package/dist/graphql/field-resolver/field-default-value-resolver.js.map +0 -1
  189. package/dist/graphql/field-resolver/fieldResolver.js.map +0 -1
  190. package/dist/graphql/field-resolver/union-value-resolver.js.map +0 -1
  191. package/dist/graphql/input-type-generator.service.js.map +0 -1
  192. package/dist/graphql/queries-mutations-generator.service.js.map +0 -1
  193. package/dist/graphql/resolver-generators/mutation-create-resolver-generator.js.map +0 -1
  194. package/dist/graphql/resolver-generators/mutation-delete-resolver-generator.js.map +0 -1
  195. package/dist/graphql/resolver-generators/mutation-update-resolver-generator.js.map +0 -1
  196. package/dist/graphql/resolver-generators/object-type-field-default-value-resolver-generator.js.map +0 -1
  197. package/dist/graphql/resolver-generators/query-all-resolver-generator.js +0 -18
  198. package/dist/graphql/resolver-generators/query-all-resolver-generator.js.map +0 -1
  199. package/dist/graphql/resolver-generators/query-by-id-resolver-generator.js +0 -16
  200. package/dist/graphql/resolver-generators/query-by-id-resolver-generator.js.map +0 -1
  201. package/dist/graphql/resolver-generators/query-count-all-resolver-generator.js.map +0 -1
  202. package/dist/graphql/resolver-generators/query-type-by-id-resolver-generator.js +0 -15
  203. package/dist/graphql/resolver-generators/query-type-by-id-resolver-generator.js.map +0 -1
  204. package/dist/graphql/resolver-generators/union-type-resolver-generator.js.map +0 -1
  205. package/dist/graphql/schema-analyzer.service.js.map +0 -1
  206. package/dist/graphql/schema-generator.service.js.map +0 -1
  207. package/dist/graphql/schema-root-type-generator.service.js.map +0 -1
  208. package/dist/graphql/schema-utils/entry-reference-util.js.map +0 -1
  209. package/dist/graphql/schema-utils/entry-type-util.js.map +0 -1
  210. package/dist/graphql/schema-utils/union-type-util.js.map +0 -1
  211. package/dist/graphql/schema-validator.js.map +0 -1
  212. package/dist/index.js +0 -11
  213. package/dist/index.js.map +0 -1
  214. package/dist/persistence/persistence.service.js.map +0 -1
  215. package/dist/tsconfig.build.tsbuildinfo +0 -1
  216. /package/dist/{graphql → cjs/graphql}/field-resolver/field-default-value-resolver.js +0 -0
  217. /package/dist/{graphql → cjs/graphql}/field-resolver/fieldResolver.js +0 -0
  218. /package/dist/{graphql → cjs/graphql}/queries-mutations-generator.service.js +0 -0
  219. /package/dist/{graphql → cjs/graphql}/resolver-generators/object-type-field-default-value-resolver-generator.js +0 -0
  220. /package/dist/{graphql → cjs/graphql}/schema-analyzer.service.js +0 -0
  221. /package/dist/{graphql → cjs/graphql}/schema-root-type-generator.service.js +0 -0
  222. /package/dist/{graphql → cjs/graphql}/schema-utils/entry-type-util.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-type-field-default-value-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/object-type-field-default-value-resolver-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,UAAU,EACV,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAA;AAMhB,MAAM,OAAO,4CAA4C;IAEpC;IADnB,YACmB,yBAAoD;QAApD,8BAAyB,GAAzB,yBAAyB,CAA2B;IACpE,CAAC;IAEG,cAAc,CACnB,MAAqB;QAarB,MAAM,SAAS,GAWX,EAAE,CAAA;QACN,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;YACrC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtD,SAAQ;YACV,CAAC;YACD,MAAM,UAAU,GAAG,IAAyB,CAAA;YAC5C,MAAM,mCAAmC,GACvC,IAAI,CAAC,sCAAsC,CAAC,UAAU,CAAC,CAAA;YAEzD,MAAM,cAAc,GAQhB,EAAE,CAAA;YACN,KAAK,MAAM,KAAK,IAAI,mCAAmC,EAAE,CAAC;gBACxD,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAC3B,GAAG,EACH,IAAI,EACJ,OAAO,EACP,IAAI,EACwD,EAAE,CAC9D,IAAI,CAAC,yBAAyB,CAAC,OAAO,CACpC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAC/C,IAAI,EACJ;oBACE,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;iBACrC,EACD,IAAI,CACL,CAAA;YACL,CAAC;YAED,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,SAAS,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAA;YACtC,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,sCAAsC,CAC5C,UAA6B;QAE7B,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC;YAC/C,MAAM,KAAK,GAA2B,UAAU,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAA;YACvE,IAAI,IAAI,CAAC,kCAAkC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAEO,kCAAkC,CAAC,IAAuB;QAChE,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC7D,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;CACF"}
@@ -0,0 +1,15 @@
1
+ export class QueryAllResolverGenerator {
2
+ persistence;
3
+ constructor(persistence) {
4
+ this.persistence = persistence;
5
+ }
6
+ createResolver(typeName) {
7
+ return async (obj, args, context, info) => {
8
+ const entries = await this.persistence.findByType(context.gitAdapter, context.getCurrentRef(), typeName);
9
+ return entries.map((entry) => {
10
+ return { ...entry.data, id: entry.id };
11
+ });
12
+ };
13
+ }
14
+ }
15
+ //# sourceMappingURL=query-all-resolver-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-all-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/query-all-resolver-generator.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,yBAAyB;IACP;IAA7B,YAA6B,WAA+B;QAA/B,gBAAW,GAAX,WAAW,CAAoB;IAAG,CAAC;IAEzD,cAAc,CACnB,QAAgB;QAEhB,OAAO,KAAK,EACV,GAAG,EACH,IAAI,EACJ,OAAsB,EACtB,IAAI,EACkB,EAAE;YACxB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAC/C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,QAAQ,CACT,CAAA;YAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC3B,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAA;YACxC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,13 @@
1
+ export class QueryByIdResolverGenerator {
2
+ persistence;
3
+ constructor(persistence) {
4
+ this.persistence = persistence;
5
+ }
6
+ createResolver(typeName) {
7
+ return async (obj, args, context, info) => {
8
+ const entry = await this.persistence.findByTypeId(context.gitAdapter, context.getCurrentRef(), typeName, args.id);
9
+ return { ...entry.data, id: entry.id };
10
+ };
11
+ }
12
+ }
13
+ //# sourceMappingURL=query-by-id-resolver-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-by-id-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/query-by-id-resolver-generator.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,0BAA0B;IACR;IAA7B,YAA6B,WAA+B;QAA/B,gBAAW,GAAX,WAAW,CAAoB;IAAG,CAAC;IAEzD,cAAc,CACnB,QAAgB;QAEhB,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAsB,EAAE;YAC5D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAC/C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,QAAQ,EACR,IAAI,CAAC,EAAE,CACR,CAAA;YAED,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAA;QACxC,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -1,7 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QueryCountAllResolverGenerator = void 0;
4
- class QueryCountAllResolverGenerator {
1
+ export class QueryCountAllResolverGenerator {
2
+ persistence;
5
3
  constructor(persistence) {
6
4
  this.persistence = persistence;
7
5
  }
@@ -13,5 +11,4 @@ class QueryCountAllResolverGenerator {
13
11
  };
14
12
  }
15
13
  }
16
- exports.QueryCountAllResolverGenerator = QueryCountAllResolverGenerator;
17
14
  //# sourceMappingURL=query-count-all-resolver-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-count-all-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/query-count-all-resolver-generator.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,8BAA8B;IACZ;IAA7B,YAA6B,WAA+B;QAA/B,gBAAW,GAAX,WAAW,CAAoB;IAAG,CAAC;IAEzD,cAAc,CACnB,QAAgB;QAEhB,OAAO,KAAK,EACV,GAAG,EACH,IAAI,EACJ,OAAsB,EACtB,IAAI,EACgB,EAAE;YACtB,OAAO;gBACL,KAAK,EAAE,CACL,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAC/B,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,QAAQ,CACT,CACF,CAAC,MAAM;aACT,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,12 @@
1
+ export class QueryTypeByIdResolverGenerator {
2
+ persistence;
3
+ constructor(persistence) {
4
+ this.persistence = persistence;
5
+ }
6
+ createResolver() {
7
+ return async (source, args, context, info) => {
8
+ return this.persistence.getTypeById(context.gitAdapter, context.getCurrentRef(), args.id);
9
+ };
10
+ }
11
+ }
12
+ //# sourceMappingURL=query-type-by-id-resolver-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-type-by-id-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/query-type-by-id-resolver-generator.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,8BAA8B;IACZ;IAA7B,YAA6B,WAA+B;QAA/B,gBAAW,GAAX,WAAW,CAAoB;IAAG,CAAC;IAEzD,cAAc;QAMnB,OAAO,KAAK,EACV,MAAM,EACN,IAAI,EACJ,OAAsB,EACtB,IAAI,EACa,EAAE;YACnB,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CACjC,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,IAAI,CAAC,EAAE,CACR,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -1,7 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.UnionTypeResolverGenerator = void 0;
4
- class UnionTypeResolverGenerator {
1
+ export class UnionTypeResolverGenerator {
2
+ persistence;
3
+ entryTypeUtil;
5
4
  constructor(persistence, entryTypeUtil) {
6
5
  this.persistence = persistence;
7
6
  this.entryTypeUtil = entryTypeUtil;
@@ -12,10 +11,12 @@ class UnionTypeResolverGenerator {
12
11
  return this.persistence.getTypeById(context.gitAdapter, context.getCurrentRef(), obj.id);
13
12
  }
14
13
  else {
14
+ // We have injected an internal `__typename` field into the data of fields pointing to a non-entry union
15
+ // in UnionValueResolver. This artificial field holds the type information we need here.
15
16
  return obj.__typename;
16
17
  }
18
+ // TODO same for interface type: https://www.apollographql.com/docs/apollo-server/data/resolvers/#resolving-unions-and-interfaces
17
19
  };
18
20
  }
19
21
  }
20
- exports.UnionTypeResolverGenerator = UnionTypeResolverGenerator;
21
22
  //# sourceMappingURL=union-type-resolver-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"union-type-resolver-generator.js","sourceRoot":"","sources":["../../../../src/graphql/resolver-generators/union-type-resolver-generator.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,0BAA0B;IAElB;IACA;IAFnB,YACmB,WAA+B,EAC/B,aAA4B;QAD5B,gBAAW,GAAX,WAAW,CAAoB;QAC/B,kBAAa,GAAb,aAAa,CAAe;IAC5C,CAAC;IAEG,cAAc;QACnB,OAAO,KAAK,EACV,GAAQ,EACR,OAAsB,EACtB,IAAwB,EACxB,YAAiC,EAChB,EAAE;YACnB,IAAI,IAAI,CAAC,aAAa,CAAC,8BAA8B,CAAC,YAAY,CAAC,EAAE,CAAC;gBACpE,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CACjC,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,aAAa,EAAE,EACvB,GAAG,CAAC,EAAE,CACP,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,wGAAwG;gBACxG,wFAAwF;gBACxF,OAAO,GAAG,CAAC,UAAU,CAAA;YACvB,CAAC;YAED,iIAAiI;QACnI,CAAC,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,36 @@
1
+ import { isInterfaceType, isObjectType, isUnionType, } from 'graphql';
2
+ import { getDirective } from '@graphql-tools/utils';
3
+ export class SchemaAnalyzerService {
4
+ analyzeSchema(schema) {
5
+ const result = {
6
+ entryDirectiveTypes: [],
7
+ objectTypes: [],
8
+ interfaceTypes: [],
9
+ unionTypes: [],
10
+ };
11
+ const typeMap = schema.getTypeMap();
12
+ for (const [key, type] of Object.entries(typeMap)) {
13
+ if (key.startsWith('__')) {
14
+ continue;
15
+ }
16
+ if (isObjectType(type)) {
17
+ const objectType = type;
18
+ result.objectTypes.push(objectType);
19
+ const entityDirective = getDirective(schema, objectType, 'Entry')?.[0];
20
+ if (entityDirective) {
21
+ result.entryDirectiveTypes.push(objectType);
22
+ }
23
+ }
24
+ if (isInterfaceType(type)) {
25
+ const interfaceType = type;
26
+ result.interfaceTypes.push(interfaceType);
27
+ }
28
+ if (isUnionType(type)) {
29
+ const unionType = type;
30
+ result.unionTypes.push(unionType);
31
+ }
32
+ }
33
+ return result;
34
+ }
35
+ }
36
+ //# sourceMappingURL=schema-analyzer.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-analyzer.service.js","sourceRoot":"","sources":["../../../src/graphql/schema-analyzer.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,eAAe,EACf,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,MAAM,OAAO,qBAAqB;IACzB,aAAa,CAAC,MAAqB;QACxC,MAAM,MAAM,GAA0B;YACpC,mBAAmB,EAAE,EAAE;YACvB,WAAW,EAAE,EAAE;YACf,cAAc,EAAE,EAAE;YAClB,UAAU,EAAE,EAAE;SACf,CAAA;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QAEnC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,SAAQ;YACV,CAAC;YAED,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAG,IAAyB,CAAA;gBAC5C,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBACnC,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACtE,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBAC7C,CAAC;YACH,CAAC;YAED,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,aAAa,GAAG,IAA4B,CAAA;gBAClD,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YAC3C,CAAC;YAED,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,IAAwB,CAAA;gBAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACnC,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;CACF"}
@@ -1,9 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SchemaGeneratorService = void 0;
4
- const schema_1 = require("@graphql-tools/schema");
5
- const utils_1 = require("@graphql-tools/utils");
6
- class SchemaGeneratorService {
1
+ import { makeExecutableSchema, } from '@graphql-tools/schema';
2
+ import { printSchemaWithDirectives } from '@graphql-tools/utils';
3
+ export class SchemaGeneratorService {
4
+ queriesMutationsGenerator;
5
+ schemaAnalyzer;
6
+ inputTypeGenerator;
7
+ schemaRootTypeGenerator;
8
+ unionTypeResolverGenerator;
9
+ objectTypeFieldDefaultValueResolverGenerator;
10
+ schemaValidator;
7
11
  constructor(queriesMutationsGenerator, schemaAnalyzer, inputTypeGenerator, schemaRootTypeGenerator, unionTypeResolverGenerator, objectTypeFieldDefaultValueResolverGenerator, schemaValidator) {
8
12
  this.queriesMutationsGenerator = queriesMutationsGenerator;
9
13
  this.schemaAnalyzer = schemaAnalyzer;
@@ -14,9 +18,8 @@ class SchemaGeneratorService {
14
18
  this.schemaValidator = schemaValidator;
15
19
  }
16
20
  async generateSchema(context) {
17
- var _a, _b, _c;
18
21
  const originalSchemaString = await context.gitAdapter.getSchema(context.getCurrentRef());
19
- const schema = (0, schema_1.makeExecutableSchema)({
22
+ const schema = makeExecutableSchema({
20
23
  typeDefs: originalSchemaString,
21
24
  });
22
25
  const validationResult = this.schemaValidator.getValidationResult(schema);
@@ -24,7 +27,7 @@ class SchemaGeneratorService {
24
27
  throw new Error(validationResult.join('\n'));
25
28
  }
26
29
  const schemaAnalyzerResult = this.schemaAnalyzer.analyzeSchema(schema);
27
- const filteredOriginalSchemaString = (0, utils_1.printSchemaWithDirectives)(schema) + '\n';
30
+ const filteredOriginalSchemaString = printSchemaWithDirectives(schema) + '\n';
28
31
  const generatedIdInputTypeStrings = this.inputTypeGenerator.generateIdInputTypeStrings(schemaAnalyzerResult);
29
32
  const generatedQueriesMutations = this.queriesMutationsGenerator.generateFromAnalyzedSchema(schemaAnalyzerResult.entryDirectiveTypes);
30
33
  const generatedTypeNameQuery = this.queriesMutationsGenerator.generateTypeNameQuery();
@@ -67,13 +70,22 @@ class SchemaGeneratorService {
67
70
  Mutation: generatedMutationResolvers,
68
71
  };
69
72
  for (const typeName of Object.keys(generatedUnionTypeResolvers)) {
70
- allGeneratedResolvers[typeName] = Object.assign(Object.assign({}, ((_a = allGeneratedResolvers[typeName]) !== null && _a !== void 0 ? _a : {})), generatedUnionTypeResolvers[typeName]);
73
+ allGeneratedResolvers[typeName] = {
74
+ ...(allGeneratedResolvers[typeName] ?? {}),
75
+ ...generatedUnionTypeResolvers[typeName],
76
+ };
71
77
  }
72
78
  for (const typeName of Object.keys(generatedObjectTypeFieldDefaultValueResolvers)) {
73
- allGeneratedResolvers[typeName] = Object.assign(Object.assign({}, ((_b = allGeneratedResolvers[typeName]) !== null && _b !== void 0 ? _b : {})), generatedObjectTypeFieldDefaultValueResolvers[typeName]);
79
+ allGeneratedResolvers[typeName] = {
80
+ ...(allGeneratedResolvers[typeName] ?? {}),
81
+ ...generatedObjectTypeFieldDefaultValueResolvers[typeName],
82
+ };
74
83
  }
75
84
  for (const typeName of Object.keys(generatedEntryReferenceResolvers)) {
76
- allGeneratedResolvers[typeName] = Object.assign(Object.assign({}, ((_c = allGeneratedResolvers[typeName]) !== null && _c !== void 0 ? _c : {})), generatedEntryReferenceResolvers[typeName]);
85
+ allGeneratedResolvers[typeName] = {
86
+ ...(allGeneratedResolvers[typeName] ?? {}),
87
+ ...generatedEntryReferenceResolvers[typeName],
88
+ };
77
89
  }
78
90
  const typeDefs = [
79
91
  filteredOriginalSchemaString,
@@ -88,5 +100,4 @@ class SchemaGeneratorService {
88
100
  };
89
101
  }
90
102
  }
91
- exports.SchemaGeneratorService = SchemaGeneratorService;
92
103
  //# sourceMappingURL=schema-generator.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-generator.service.js","sourceRoot":"","sources":["../../../src/graphql/schema-generator.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export class SchemaRootTypeGeneratorService {
2
+ generateSchemaRootTypeStrings(generatedSchemas, typeQuery) {
3
+ return (`type Query {\n` +
4
+ generatedSchemas
5
+ .map((generated) => ' ' + generated.queryAll.schemaString)
6
+ .join('\n') +
7
+ '\n' +
8
+ generatedSchemas
9
+ .map((generated) => ' ' + generated.queryAllMeta.schemaString)
10
+ .join('\n') +
11
+ '\n' +
12
+ generatedSchemas
13
+ .map((generated) => ' ' + generated.queryById.schemaString)
14
+ .join('\n') +
15
+ '\n' +
16
+ ` ${typeQuery.schemaString}` +
17
+ '\n' +
18
+ '}\n\n' +
19
+ 'type Mutation {\n' +
20
+ generatedSchemas
21
+ .map((generated) => ' ' + generated.createMutation.schemaString)
22
+ .join('\n') +
23
+ '\n' +
24
+ generatedSchemas
25
+ .map((generated) => ' ' + generated.updateMutation.schemaString)
26
+ .join('\n') +
27
+ '\n' +
28
+ generatedSchemas
29
+ .map((generated) => ' ' + generated.deleteMutation.schemaString)
30
+ .join('\n') +
31
+ '\n' +
32
+ '}\n');
33
+ }
34
+ }
35
+ //# sourceMappingURL=schema-root-type-generator.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-root-type-generator.service.js","sourceRoot":"","sources":["../../../src/graphql/schema-root-type-generator.service.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,8BAA8B;IAClC,6BAA6B,CAClC,gBAAoC,EACpC,SAA2C;QAE3C,OAAO,CACL,gBAAgB;YAChB,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC;iBAC1D,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC;iBAC9D,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,YAAY,CAAC;iBAC3D,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,KAAK,SAAS,CAAC,YAAY,EAAE;YAC7B,IAAI;YACJ,OAAO;YACP,mBAAmB;YACnB,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,gBAAgB;iBACb,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,KAAK,CACN,CAAA;IACH,CAAC;CACF"}
@@ -1,20 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntryReferenceUtil = void 0;
4
- const graphql_1 = require("graphql");
5
- const GraphQLError_1 = require("graphql/error/GraphQLError");
6
- class EntryReferenceUtil {
1
+ import { GraphQLError, isListType, isNonNullType, isObjectType, isUnionType, } from 'graphql';
2
+ export class EntryReferenceUtil {
3
+ persistence;
4
+ entryTypeUtil;
5
+ unionTypeUtil;
7
6
  constructor(persistence, entryTypeUtil, unionTypeUtil) {
8
7
  this.persistence = persistence;
9
8
  this.entryTypeUtil = entryTypeUtil;
10
9
  this.unionTypeUtil = unionTypeUtil;
11
10
  }
12
11
  async getReferencedEntryIds(rootType, context, fieldName, type, data) {
13
- var _a;
14
- if ((0, graphql_1.isNonNullType)(type)) {
12
+ if (isNonNullType(type)) {
15
13
  return this.getReferencedEntryIds(rootType, context, fieldName, type.ofType, data);
16
14
  }
17
- else if ((0, graphql_1.isListType)(type)) {
15
+ else if (isListType(type)) {
18
16
  let referencedEntryIds = [];
19
17
  for (const element of data) {
20
18
  referencedEntryIds = [
@@ -22,10 +20,11 @@ class EntryReferenceUtil {
22
20
  ...(await this.getReferencedEntryIds(rootType, context, fieldName, type.ofType, element)),
23
21
  ];
24
22
  }
23
+ // deduplicate
25
24
  referencedEntryIds = [...new Set(referencedEntryIds)];
26
25
  return referencedEntryIds;
27
26
  }
28
- else if ((0, graphql_1.isUnionType)(type)) {
27
+ else if (isUnionType(type)) {
29
28
  if (this.entryTypeUtil.isUnionOfEntryTypes(type)) {
30
29
  await this.validateReference(context, '', type, data);
31
30
  return [data.id];
@@ -40,21 +39,22 @@ class EntryReferenceUtil {
40
39
  const unionValue = this.unionTypeUtil.getUnionValue(data);
41
40
  return this.getReferencedEntryIds(rootType, context, fieldName, unionType, unionValue);
42
41
  }
43
- else if ((0, graphql_1.isObjectType)(type)) {
42
+ else if (isObjectType(type)) {
44
43
  if (type.name !== rootType.name &&
45
44
  this.entryTypeUtil.hasEntryDirective(type)) {
46
- await this.validateReference(context, fieldName !== null && fieldName !== void 0 ? fieldName : '', type, data);
45
+ await this.validateReference(context, fieldName ?? '', type, data);
47
46
  return [data.id];
48
47
  }
49
48
  else {
50
49
  let referencedEntryIds = [];
51
50
  for (const [fieldsKey, field] of Object.entries(type.getFields())) {
52
- const fieldValue = (_a = data[fieldsKey]) !== null && _a !== void 0 ? _a : undefined;
51
+ const fieldValue = data[fieldsKey] ?? undefined;
53
52
  if (fieldValue !== undefined) {
54
53
  const nestedResult = await this.getReferencedEntryIds(rootType, context, fieldsKey, field.type, fieldValue);
55
54
  referencedEntryIds = [...referencedEntryIds, ...nestedResult];
56
55
  }
57
56
  }
57
+ // deduplicate
58
58
  referencedEntryIds = [...new Set(referencedEntryIds)];
59
59
  return referencedEntryIds;
60
60
  }
@@ -62,11 +62,11 @@ class EntryReferenceUtil {
62
62
  return [];
63
63
  }
64
64
  async validateReference(context, fieldName, fieldType, fieldValue) {
65
- if ((0, graphql_1.isNonNullType)(fieldType)) {
65
+ if (isNonNullType(fieldType)) {
66
66
  await this.validateReference(context, fieldName, fieldType.ofType, fieldValue);
67
67
  return;
68
68
  }
69
- else if ((0, graphql_1.isListType)(fieldType)) {
69
+ else if (isListType(fieldType)) {
70
70
  if (!Array.isArray(fieldValue)) {
71
71
  throw new Error(`Expected array value in field "${fieldName}"`);
72
72
  }
@@ -75,7 +75,7 @@ class EntryReferenceUtil {
75
75
  }
76
76
  return;
77
77
  }
78
- else if ((0, graphql_1.isUnionType)(fieldType) || (0, graphql_1.isObjectType)(fieldType)) {
78
+ else if (isUnionType(fieldType) || isObjectType(fieldType)) {
79
79
  if (!('id' in fieldValue)) {
80
80
  throw new Error('Expected key "id"');
81
81
  }
@@ -85,7 +85,7 @@ class EntryReferenceUtil {
85
85
  referencedTypeName = await this.persistence.getTypeById(context.gitAdapter, context.getCurrentRef(), referencedId);
86
86
  }
87
87
  catch (error) {
88
- throw new GraphQLError_1.GraphQLError(`Reference with id "${referencedId}" points to non-existing entry`, {
88
+ throw new GraphQLError(`Reference with id "${referencedId}" points to non-existing entry`, {
89
89
  extensions: {
90
90
  code: 'BAD_USER_INPUT',
91
91
  fieldName: fieldName,
@@ -93,7 +93,7 @@ class EntryReferenceUtil {
93
93
  });
94
94
  }
95
95
  if (!this.isPermittedReferenceType(referencedTypeName, fieldType)) {
96
- throw new GraphQLError_1.GraphQLError(`Reference with id "${referencedId}" points to entry of incompatible type`, {
96
+ throw new GraphQLError(`Reference with id "${referencedId}" points to entry of incompatible type`, {
97
97
  extensions: {
98
98
  code: 'BAD_USER_INPUT',
99
99
  fieldName: fieldName,
@@ -103,23 +103,22 @@ class EntryReferenceUtil {
103
103
  }
104
104
  }
105
105
  isPermittedReferenceType(referencedTypeName, fieldType) {
106
- if ((0, graphql_1.isNonNullType)(fieldType)) {
106
+ if (isNonNullType(fieldType)) {
107
107
  return this.isPermittedReferenceType(referencedTypeName, fieldType.ofType);
108
108
  }
109
- else if ((0, graphql_1.isListType)(fieldType)) {
109
+ else if (isListType(fieldType)) {
110
110
  return this.isPermittedReferenceType(referencedTypeName, fieldType.ofType);
111
111
  }
112
- else if ((0, graphql_1.isUnionType)(fieldType)) {
112
+ else if (isUnionType(fieldType)) {
113
113
  return fieldType
114
114
  .getTypes()
115
115
  .map((concreteType) => concreteType.name)
116
116
  .includes(referencedTypeName);
117
117
  }
118
- else if ((0, graphql_1.isObjectType)(fieldType)) {
118
+ else if (isObjectType(fieldType)) {
119
119
  return fieldType.name === referencedTypeName;
120
120
  }
121
121
  return false;
122
122
  }
123
123
  }
124
- exports.EntryReferenceUtil = EntryReferenceUtil;
125
124
  //# sourceMappingURL=entry-reference-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entry-reference-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-reference-util.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { isListType, isNonNullType, isObjectType, isUnionType, } from 'graphql';
2
+ export class EntryTypeUtil {
3
+ buildsOnTypeWithEntryDirective(type) {
4
+ if (isNonNullType(type)) {
5
+ return this.buildsOnTypeWithEntryDirective(type.ofType);
6
+ }
7
+ else if (isListType(type)) {
8
+ return this.buildsOnTypeWithEntryDirective(type.ofType);
9
+ }
10
+ else if (isUnionType(type)) {
11
+ return this.isUnionOfEntryTypes(type);
12
+ }
13
+ else if (isObjectType(type)) {
14
+ return this.hasEntryDirective(type);
15
+ }
16
+ return false;
17
+ }
18
+ hasEntryDirective(type) {
19
+ return (!!type.astNode &&
20
+ type.astNode.directives?.find((directive) => directive.name.value === 'Entry') !== undefined);
21
+ }
22
+ isUnionOfEntryTypes(type) {
23
+ return (type
24
+ .getTypes()
25
+ .filter((unionType) => this.buildsOnTypeWithEntryDirective(unionType))
26
+ .length > 0);
27
+ }
28
+ }
29
+ //# sourceMappingURL=entry-type-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entry-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/entry-type-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,UAAU,EACV,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,SAAS,CAAA;AAEhB,MAAM,OAAO,aAAa;IACjB,8BAA8B,CAAC,IAAyB;QAC7D,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzD,CAAC;aAAM,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzD,CAAC;aAAM,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACvC,CAAC;aAAM,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,iBAAiB,CAAC,IAAuB;QAC9C,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAC3B,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAChD,KAAK,SAAS,CAChB,CAAA;IACH,CAAC;IAEM,mBAAmB,CAAC,IAAsB;QAC/C,OAAO,CACL,IAAI;aACD,QAAQ,EAAE;aACV,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC;aACrE,MAAM,GAAG,CAAC,CACd,CAAA;IACH,CAAC;CACF"}
@@ -0,0 +1,18 @@
1
+ export class UnionTypeUtil {
2
+ getUnionTypeNameFromFieldValue(fieldValue) {
3
+ if (typeof fieldValue !== 'object') {
4
+ throw new Error('Expected object as union value');
5
+ }
6
+ // Based on our @oneOf directive, we expect only one field whose name
7
+ // corresponds to the concrete type's name.
8
+ return Object.keys(fieldValue)[0];
9
+ }
10
+ getUnionValue(fieldValue) {
11
+ if (typeof fieldValue !== 'object') {
12
+ throw new Error('Expected object as union value');
13
+ }
14
+ const firstKey = Object.keys(fieldValue)[0];
15
+ return fieldValue[firstKey];
16
+ }
17
+ }
18
+ //# sourceMappingURL=union-type-util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"union-type-util.js","sourceRoot":"","sources":["../../../../src/graphql/schema-utils/union-type-util.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,aAAa;IACjB,8BAA8B,CAAC,UAAe;QACnD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QAED,qEAAqE;QACrE,2CAA2C;QAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IACnC,CAAC;IAEM,aAAa,CAAC,UAAe;QAClC,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC7B,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ import { Kind } from 'graphql';
2
+ export class SchemaValidator {
3
+ getValidationResult(schema) {
4
+ const results = [];
5
+ results.push(this.checkUnionMembersConsistentUseOfEntryDirective(schema));
6
+ return results.filter((result) => result !== '');
7
+ }
8
+ checkUnionMembersConsistentUseOfEntryDirective(schema) {
9
+ const typeMap = schema.getTypeMap();
10
+ for (const [key, type] of Object.entries(typeMap)) {
11
+ if (type.astNode?.kind !== Kind.UNION_TYPE_DEFINITION) {
12
+ continue;
13
+ }
14
+ const innerTypes = type.getTypes();
15
+ const numberUnionMembersWithEntryDirective = innerTypes.filter((innerType) => !!innerType.astNode &&
16
+ innerType.astNode.directives?.find((directive) => directive.name.value === 'Entry') !== undefined).length;
17
+ if (numberUnionMembersWithEntryDirective !== 0 &&
18
+ numberUnionMembersWithEntryDirective !== innerTypes.length) {
19
+ return `Either all union members of "${type.name}" must have "@Entry" directive or none.`;
20
+ }
21
+ }
22
+ return '';
23
+ }
24
+ }
25
+ //# sourceMappingURL=schema-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/graphql/schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,IAAI,EAAE,MAAM,SAAS,CAAA;AAE/D,MAAM,OAAO,eAAe;IACnB,mBAAmB,CAAC,MAAqB;QAC9C,MAAM,OAAO,GAAG,EAAE,CAAA;QAClB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,8CAA8C,CAAC,MAAM,CAAC,CAAC,CAAA;QACzE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,CAAA;IAClD,CAAC;IAEO,8CAA8C,CACpD,MAAqB;QAErB,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;QAEnC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,IAAI,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACtD,SAAQ;YACV,CAAC;YACD,MAAM,UAAU,GAAI,IAAyB,CAAC,QAAQ,EAAE,CAAA;YAExD,MAAM,oCAAoC,GAAG,UAAU,CAAC,MAAM,CAC5D,CAAC,SAAS,EAAE,EAAE,CACZ,CAAC,CAAC,SAAS,CAAC,OAAO;gBACnB,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAChC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,CAChD,KAAK,SAAS,CAClB,CAAC,MAAM,CAAA;YAER,IACE,oCAAoC,KAAK,CAAC;gBAC1C,oCAAoC,KAAK,UAAU,CAAC,MAAM,EAC1D,CAAC;gBACD,OAAO,gCAAgC,IAAI,CAAC,IAAI,yCAAyC,CAAA;YAC3F,CAAC;QACH,CAAC;QAED,OAAO,EAAE,CAAA;IACX,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { ApiService } from './app/api.service';
2
+ import { apiService } from './container';
3
+ export { ApiService };
4
+ export async function getApiService() {
5
+ return apiService;
6
+ }
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmC,MAAM,mBAAmB,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EAAE,UAAU,EAAmC,CAAA;AAEtD,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PersistenceService = void 0;
4
- const GraphQLError_1 = require("graphql/error/GraphQLError");
5
- class PersistenceService {
1
+ import { GraphQLError } from 'graphql';
2
+ export class PersistenceService {
6
3
  async getTypeById(gitAdapter, commitHash, id) {
7
4
  const allEntries = await gitAdapter.getEntries(commitHash);
8
5
  const requestedEntry = allEntries.find((entry) => entry.id === id);
9
6
  if (requestedEntry === undefined) {
10
- throw new GraphQLError_1.GraphQLError(`Not found: ${id}`, {
7
+ throw new GraphQLError(`Not found: ${id}`, {
11
8
  extensions: {
12
9
  code: 'NOT_FOUND',
13
10
  },
@@ -19,7 +16,7 @@ class PersistenceService {
19
16
  const allEntries = await gitAdapter.getEntries(commitHash);
20
17
  const requestedEntry = allEntries.find((entry) => entry.id === id);
21
18
  if (requestedEntry === undefined) {
22
- throw new GraphQLError_1.GraphQLError(`Not found: ${id}`, {
19
+ throw new GraphQLError(`Not found: ${id}`, {
23
20
  extensions: {
24
21
  code: 'NOT_FOUND',
25
22
  },
@@ -35,7 +32,7 @@ class PersistenceService {
35
32
  const allEntries = await gitAdapter.getEntries(commitHash);
36
33
  const requestedEntry = allEntries.find((entry) => entry.id === id && entry.metadata.type === type);
37
34
  if (requestedEntry === undefined) {
38
- throw new GraphQLError_1.GraphQLError(`No entry of type "${type}" with id "${id}" exists`, {
35
+ throw new GraphQLError(`No entry of type "${type}" with id "${id}" exists`, {
39
36
  extensions: {
40
37
  code: 'BAD_USER_INPUT',
41
38
  argumentName: 'id',
@@ -45,5 +42,4 @@ class PersistenceService {
45
42
  return requestedEntry;
46
43
  }
47
44
  }
48
- exports.PersistenceService = PersistenceService;
49
45
  //# sourceMappingURL=persistence.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistence.service.js","sourceRoot":"","sources":["../../../src/persistence/persistence.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAEtC,MAAM,OAAO,kBAAkB;IACtB,KAAK,CAAC,WAAW,CACtB,UAAsB,EACtB,UAAkB,EAClB,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC1D,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,YAAY,CAAC,cAAc,EAAE,EAAE,EAAE;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;iBAClB;aACF,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAA;IACrC,CAAC;IAEM,KAAK,CAAC,QAAQ,CACnB,UAAsB,EACtB,UAAkB,EAClB,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC1D,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,YAAY,CAAC,cAAc,EAAE,EAAE,EAAE;gBACzC,UAAU,EAAE;oBACV,IAAI,EAAE,WAAW;iBAClB;aACF,CAAC,CAAA;QACJ,CAAC;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;IAEM,KAAK,CAAC,UAAU,CACrB,UAAsB,EACtB,UAAkB,EAClB,IAAY;QAEZ,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC1D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;IAC1E,CAAC;IAEM,KAAK,CAAC,YAAY,CACvB,UAAsB,EACtB,UAAkB,EAClB,IAAY,EACZ,EAAU;QAEV,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;QAC1D,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CACpC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAClE,CAAA;QACD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,YAAY,CACpB,qBAAqB,IAAI,cAAc,EAAE,UAAU,EACnD;gBACE,UAAU,EAAE;oBACV,IAAI,EAAE,gBAAgB;oBACtB,YAAY,EAAE,IAAI;iBACnB;aACF,CACF,CAAA;QACH,CAAC;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;CACF"}