@ptc-org/nestjs-query-graphql 0.30.1 → 1.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (452) hide show
  1. package/CHANGELOG.md +149 -149
  2. package/README.md +4 -4
  3. package/package.json +7 -6
  4. package/src/auth/authorizer.d.ts +26 -0
  5. package/src/auth/authorizer.js +12 -0
  6. package/src/auth/authorizer.js.map +1 -0
  7. package/src/auth/default-crud.authorizer.d.ts +6 -0
  8. package/src/auth/default-crud.authorizer.js +74 -0
  9. package/src/auth/default-crud.authorizer.js.map +1 -0
  10. package/src/auth/index.d.ts +3 -0
  11. package/src/auth/index.js +7 -0
  12. package/src/auth/index.js.map +1 -0
  13. package/src/auth/tokens.d.ts +3 -0
  14. package/src/auth/tokens.js +8 -0
  15. package/src/auth/tokens.js.map +1 -0
  16. package/src/common/dto.utils.d.ts +15 -0
  17. package/src/common/dto.utils.js +32 -0
  18. package/src/common/dto.utils.js.map +1 -0
  19. package/src/common/external.utils.d.ts +10 -0
  20. package/src/common/external.utils.js +33 -0
  21. package/src/common/external.utils.js.map +1 -0
  22. package/src/common/index.d.ts +4 -0
  23. package/src/common/index.js +11 -0
  24. package/src/common/index.js.map +1 -0
  25. package/src/common/object.utils.d.ts +1 -0
  26. package/src/common/object.utils.js +14 -0
  27. package/src/common/object.utils.js.map +1 -0
  28. package/src/common/resolver.utils.d.ts +2 -0
  29. package/src/common/resolver.utils.js +19 -0
  30. package/src/common/resolver.utils.js.map +1 -0
  31. package/src/decorators/aggregate-query-param.decorator.d.ts +1 -0
  32. package/src/decorators/aggregate-query-param.decorator.js +21 -0
  33. package/src/decorators/aggregate-query-param.decorator.js.map +1 -0
  34. package/src/decorators/authorize-filter.decorator.d.ts +6 -0
  35. package/src/decorators/authorize-filter.decorator.js +67 -0
  36. package/src/decorators/authorize-filter.decorator.js.map +1 -0
  37. package/src/decorators/authorizer.decorator.d.ts +5 -0
  38. package/src/decorators/authorizer.decorator.js +24 -0
  39. package/src/decorators/authorizer.decorator.js.map +1 -0
  40. package/src/decorators/constants.d.ts +8 -0
  41. package/src/decorators/constants.js +12 -0
  42. package/src/decorators/constants.js.map +1 -0
  43. package/src/decorators/decorator.utils.d.ts +3 -0
  44. package/src/decorators/decorator.utils.js +21 -0
  45. package/src/decorators/decorator.utils.js.map +1 -0
  46. package/src/decorators/filterable-field.decorator.d.ts +47 -0
  47. package/src/decorators/filterable-field.decorator.js +53 -0
  48. package/src/decorators/filterable-field.decorator.js.map +1 -0
  49. package/src/decorators/hook-args.decorator.d.ts +3 -0
  50. package/src/decorators/hook-args.decorator.js +43 -0
  51. package/src/decorators/hook-args.decorator.js.map +1 -0
  52. package/src/decorators/hook.decorator.d.ts +13 -0
  53. package/src/decorators/hook.decorator.js +31 -0
  54. package/src/decorators/hook.decorator.js.map +1 -0
  55. package/src/decorators/id-field.decorator.d.ts +32 -0
  56. package/src/decorators/id-field.decorator.js +48 -0
  57. package/src/decorators/id-field.decorator.js.map +1 -0
  58. package/src/decorators/index.d.ts +21 -0
  59. package/src/decorators/index.js +39 -0
  60. package/src/decorators/index.js.map +1 -0
  61. package/src/decorators/inject-authorizer.decorator.d.ts +2 -0
  62. package/src/decorators/inject-authorizer.decorator.js +8 -0
  63. package/src/decorators/inject-authorizer.decorator.js.map +1 -0
  64. package/src/decorators/inject-custom-authorizer.decorator.d.ts +2 -0
  65. package/src/decorators/inject-custom-authorizer.decorator.js +8 -0
  66. package/src/decorators/inject-custom-authorizer.decorator.js.map +1 -0
  67. package/src/decorators/inject-pub-sub.decorator.d.ts +1 -0
  68. package/src/decorators/inject-pub-sub.decorator.js +8 -0
  69. package/src/decorators/inject-pub-sub.decorator.js.map +1 -0
  70. package/src/decorators/key-set.decorator.d.ts +3 -0
  71. package/src/decorators/key-set.decorator.js +13 -0
  72. package/src/decorators/key-set.decorator.js.map +1 -0
  73. package/src/decorators/query-options.decorator.d.ts +5 -0
  74. package/src/decorators/query-options.decorator.js +16 -0
  75. package/src/decorators/query-options.decorator.js.map +1 -0
  76. package/src/decorators/reference.decorator.d.ts +8 -0
  77. package/src/decorators/reference.decorator.js +36 -0
  78. package/src/decorators/reference.decorator.js.map +1 -0
  79. package/src/decorators/relation.decorator.d.ts +16 -0
  80. package/src/decorators/relation.decorator.js +53 -0
  81. package/src/decorators/relation.decorator.js.map +1 -0
  82. package/src/decorators/resolver-field.decorator.d.ts +11 -0
  83. package/src/decorators/resolver-field.decorator.js +22 -0
  84. package/src/decorators/resolver-field.decorator.js.map +1 -0
  85. package/src/decorators/resolver-method.decorator.d.ts +34 -0
  86. package/src/decorators/resolver-method.decorator.js +35 -0
  87. package/src/decorators/resolver-method.decorator.js.map +1 -0
  88. package/src/decorators/resolver-mutation.decorator.d.ts +10 -0
  89. package/src/decorators/resolver-mutation.decorator.js +21 -0
  90. package/src/decorators/resolver-mutation.decorator.js.map +1 -0
  91. package/src/decorators/resolver-query.decorator.d.ts +13 -0
  92. package/src/decorators/resolver-query.decorator.js +21 -0
  93. package/src/decorators/resolver-query.decorator.js.map +1 -0
  94. package/src/decorators/resolver-subscription.decorator.d.ts +7 -0
  95. package/src/decorators/resolver-subscription.decorator.js +18 -0
  96. package/src/decorators/resolver-subscription.decorator.js.map +1 -0
  97. package/src/decorators/skip-if.decorator.d.ts +8 -0
  98. package/src/decorators/skip-if.decorator.js +18 -0
  99. package/src/decorators/skip-if.decorator.js.map +1 -0
  100. package/src/federation/index.d.ts +1 -0
  101. package/src/federation/index.js +3 -0
  102. package/src/federation/index.js.map +1 -0
  103. package/src/federation/representation.type.d.ts +3 -0
  104. package/src/federation/representation.type.js +3 -0
  105. package/src/federation/representation.type.js.map +1 -0
  106. package/src/hooks/default.hook.d.ts +3 -0
  107. package/src/hooks/default.hook.js +13 -0
  108. package/src/hooks/default.hook.js.map +1 -0
  109. package/src/hooks/hooks.d.ts +14 -0
  110. package/src/hooks/hooks.js +8 -0
  111. package/src/hooks/hooks.js.map +1 -0
  112. package/src/hooks/index.d.ts +4 -0
  113. package/src/hooks/index.js +10 -0
  114. package/src/hooks/index.js.map +1 -0
  115. package/src/hooks/tokens.d.ts +3 -0
  116. package/src/hooks/tokens.js +6 -0
  117. package/src/hooks/tokens.js.map +1 -0
  118. package/src/hooks/types.d.ts +10 -0
  119. package/src/hooks/types.js +15 -0
  120. package/src/hooks/types.js.map +1 -0
  121. package/src/index.d.ts +11 -0
  122. package/src/index.js.map +1 -0
  123. package/src/interceptors/authorizer.interceptor.d.ts +7 -0
  124. package/src/interceptors/authorizer.interceptor.js +33 -0
  125. package/src/interceptors/authorizer.interceptor.js.map +1 -0
  126. package/src/interceptors/hook.interceptor.d.ts +7 -0
  127. package/src/interceptors/hook.interceptor.js +44 -0
  128. package/src/interceptors/hook.interceptor.js.map +1 -0
  129. package/src/interceptors/index.d.ts +2 -0
  130. package/src/interceptors/index.js +6 -0
  131. package/src/interceptors/index.js.map +1 -0
  132. package/src/loader/aggregate-relations.loader.d.ts +16 -0
  133. package/src/loader/aggregate-relations.loader.js +43 -0
  134. package/src/loader/aggregate-relations.loader.js.map +1 -0
  135. package/src/loader/count-relations.loader.d.ts +15 -0
  136. package/src/loader/count-relations.loader.js +42 -0
  137. package/src/loader/count-relations.loader.js.map +1 -0
  138. package/src/loader/dataloader.factory.d.ts +9 -0
  139. package/src/loader/dataloader.factory.js +27 -0
  140. package/src/loader/dataloader.factory.js.map +1 -0
  141. package/src/loader/find-relations.loader.d.ts +14 -0
  142. package/src/loader/find-relations.loader.js +42 -0
  143. package/src/loader/find-relations.loader.js.map +1 -0
  144. package/src/loader/index.d.ts +5 -0
  145. package/src/loader/index.js +9 -0
  146. package/src/loader/index.js.map +1 -0
  147. package/src/loader/query-relations.loader.d.ts +15 -0
  148. package/src/loader/query-relations.loader.js +43 -0
  149. package/src/loader/query-relations.loader.js.map +1 -0
  150. package/src/loader/relations.loader.d.ts +4 -0
  151. package/src/loader/relations.loader.js +3 -0
  152. package/src/loader/relations.loader.js.map +1 -0
  153. package/src/module.d.ts +31 -0
  154. package/src/module.js +55 -0
  155. package/src/module.js.map +1 -0
  156. package/src/providers/authorizer.provider.d.ts +3 -0
  157. package/src/providers/authorizer.provider.js +31 -0
  158. package/src/providers/authorizer.provider.js.map +1 -0
  159. package/src/providers/hook.provider.d.ts +5 -0
  160. package/src/providers/hook.provider.js +33 -0
  161. package/src/providers/hook.provider.js.map +1 -0
  162. package/src/providers/index.d.ts +3 -0
  163. package/src/providers/index.js +7 -0
  164. package/src/providers/index.js.map +1 -0
  165. package/src/providers/resolver.provider.d.ts +26 -0
  166. package/src/providers/resolver.provider.js +112 -0
  167. package/src/providers/resolver.provider.js.map +1 -0
  168. package/src/resolvers/aggregate.resolver.d.ts +16 -0
  169. package/src/resolvers/aggregate.resolver.js +56 -0
  170. package/src/resolvers/aggregate.resolver.js.map +1 -0
  171. package/src/resolvers/create.resolver.d.ts +57 -0
  172. package/src/resolvers/create.resolver.js +190 -0
  173. package/src/resolvers/create.resolver.js.map +1 -0
  174. package/src/resolvers/crud.resolver.d.ts +52 -0
  175. package/src/resolvers/crud.resolver.js +68 -0
  176. package/src/resolvers/crud.resolver.js.map +1 -0
  177. package/src/resolvers/delete.resolver.d.ts +32 -0
  178. package/src/resolvers/delete.resolver.js +186 -0
  179. package/src/resolvers/delete.resolver.js.map +1 -0
  180. package/src/resolvers/federation/federation.resolver.d.ts +4 -0
  181. package/src/resolvers/federation/federation.resolver.js +8 -0
  182. package/src/resolvers/federation/federation.resolver.js.map +1 -0
  183. package/src/resolvers/federation/index.d.ts +1 -0
  184. package/src/resolvers/federation/index.js +6 -0
  185. package/src/resolvers/federation/index.js.map +1 -0
  186. package/src/resolvers/helpers.d.ts +6 -0
  187. package/src/resolvers/helpers.js +38 -0
  188. package/src/resolvers/helpers.js.map +1 -0
  189. package/src/resolvers/index.d.ts +9 -0
  190. package/src/resolvers/index.js +20 -0
  191. package/src/resolvers/index.js.map +1 -0
  192. package/src/resolvers/read.resolver.d.ts +18 -0
  193. package/src/resolvers/read.resolver.js +75 -0
  194. package/src/resolvers/read.resolver.js.map +1 -0
  195. package/src/resolvers/reference.resolver.d.ts +11 -0
  196. package/src/resolvers/reference.resolver.js +41 -0
  197. package/src/resolvers/reference.resolver.js.map +1 -0
  198. package/src/resolvers/relations/aggregate-relations.resolver.d.ts +11 -0
  199. package/src/resolvers/relations/aggregate-relations.resolver.js +76 -0
  200. package/src/resolvers/relations/aggregate-relations.resolver.js.map +1 -0
  201. package/src/resolvers/relations/helpers.d.ts +4 -0
  202. package/src/resolvers/relations/helpers.js +10 -0
  203. package/src/resolvers/relations/helpers.js.map +1 -0
  204. package/src/resolvers/relations/index.d.ts +7 -0
  205. package/src/resolvers/relations/index.js +16 -0
  206. package/src/resolvers/relations/index.js.map +1 -0
  207. package/src/resolvers/relations/read-relations.resolver.d.ts +8 -0
  208. package/src/resolvers/relations/read-relations.resolver.js +114 -0
  209. package/src/resolvers/relations/read-relations.resolver.js.map +1 -0
  210. package/src/resolvers/relations/references-relation.resolver.d.ts +5 -0
  211. package/src/resolvers/relations/references-relation.resolver.js +55 -0
  212. package/src/resolvers/relations/references-relation.resolver.js.map +1 -0
  213. package/src/resolvers/relations/relations.interface.d.ts +78 -0
  214. package/src/resolvers/relations/relations.interface.js +3 -0
  215. package/src/resolvers/relations/relations.interface.js.map +1 -0
  216. package/src/resolvers/relations/relations.resolver.d.ts +8 -0
  217. package/src/resolvers/relations/relations.resolver.js +22 -0
  218. package/src/resolvers/relations/relations.resolver.js.map +1 -0
  219. package/src/resolvers/relations/remove-relations.resolver.d.ts +5 -0
  220. package/src/resolvers/relations/remove-relations.resolver.js +107 -0
  221. package/src/resolvers/relations/remove-relations.resolver.js.map +1 -0
  222. package/src/resolvers/relations/update-relations.resolver.d.ts +5 -0
  223. package/src/resolvers/relations/update-relations.resolver.js +138 -0
  224. package/src/resolvers/relations/update-relations.resolver.js.map +1 -0
  225. package/src/resolvers/resolver.interface.d.ts +47 -0
  226. package/src/resolvers/resolver.interface.js +14 -0
  227. package/src/resolvers/resolver.interface.js.map +1 -0
  228. package/src/resolvers/update.resolver.d.ts +23 -0
  229. package/src/resolvers/update.resolver.js +198 -0
  230. package/src/resolvers/update.resolver.js.map +1 -0
  231. package/src/subscription/index.d.ts +14 -0
  232. package/src/subscription/index.js +32 -0
  233. package/src/subscription/index.js.map +1 -0
  234. package/src/subscription/pub-sub.interface.d.ts +6 -0
  235. package/src/subscription/pub-sub.interface.js +3 -0
  236. package/src/subscription/pub-sub.interface.js.map +1 -0
  237. package/src/types/aggregate/aggregate-args.type.d.ts +9 -0
  238. package/src/types/aggregate/aggregate-args.type.js +30 -0
  239. package/src/types/aggregate/aggregate-args.type.js.map +1 -0
  240. package/src/types/aggregate/aggregate-response.type.d.ts +5 -0
  241. package/src/types/aggregate/aggregate-response.type.js +96 -0
  242. package/src/types/aggregate/aggregate-response.type.js.map +1 -0
  243. package/src/types/aggregate/index.d.ts +2 -0
  244. package/src/types/aggregate/index.js +8 -0
  245. package/src/types/aggregate/index.js.map +1 -0
  246. package/src/types/connection/array-connection.type.d.ts +4 -0
  247. package/src/types/connection/array-connection.type.js +20 -0
  248. package/src/types/connection/array-connection.type.js.map +1 -0
  249. package/src/types/connection/cursor/cursor-connection.type.d.ts +4 -0
  250. package/src/types/connection/cursor/cursor-connection.type.js +72 -0
  251. package/src/types/connection/cursor/cursor-connection.type.js.map +1 -0
  252. package/src/types/connection/cursor/edge.type.d.ts +7 -0
  253. package/src/types/connection/cursor/edge.type.js +36 -0
  254. package/src/types/connection/cursor/edge.type.js.map +1 -0
  255. package/src/types/connection/cursor/index.d.ts +1 -0
  256. package/src/types/connection/cursor/index.js +5 -0
  257. package/src/types/connection/cursor/index.js.map +1 -0
  258. package/src/types/connection/cursor/page-info.type.d.ts +6 -0
  259. package/src/types/connection/cursor/page-info.type.js +49 -0
  260. package/src/types/connection/cursor/page-info.type.js.map +1 -0
  261. package/src/types/connection/cursor/pager/index.d.ts +7 -0
  262. package/src/types/connection/cursor/pager/index.js +16 -0
  263. package/src/types/connection/cursor/pager/index.js.map +1 -0
  264. package/src/types/connection/cursor/pager/interfaces.d.ts +12 -0
  265. package/src/types/connection/cursor/pager/interfaces.js +3 -0
  266. package/src/types/connection/cursor/pager/interfaces.js.map +1 -0
  267. package/src/types/connection/cursor/pager/pager.d.ts +15 -0
  268. package/src/types/connection/cursor/pager/pager.js +83 -0
  269. package/src/types/connection/cursor/pager/pager.js.map +1 -0
  270. package/src/types/connection/cursor/pager/strategies/helpers.d.ts +6 -0
  271. package/src/types/connection/cursor/pager/strategies/helpers.js +24 -0
  272. package/src/types/connection/cursor/pager/strategies/helpers.js.map +1 -0
  273. package/src/types/connection/cursor/pager/strategies/index.d.ts +4 -0
  274. package/src/types/connection/cursor/pager/strategies/index.js +8 -0
  275. package/src/types/connection/cursor/pager/strategies/index.js.map +1 -0
  276. package/src/types/connection/cursor/pager/strategies/keyset.pager-strategy.d.ts +19 -0
  277. package/src/types/connection/cursor/pager/strategies/keyset.pager-strategy.js +123 -0
  278. package/src/types/connection/cursor/pager/strategies/keyset.pager-strategy.js.map +1 -0
  279. package/src/types/connection/cursor/pager/strategies/limit-offset.pager-strategy.d.ts +15 -0
  280. package/src/types/connection/cursor/pager/strategies/limit-offset.pager-strategy.js +88 -0
  281. package/src/types/connection/cursor/pager/strategies/limit-offset.pager-strategy.js.map +1 -0
  282. package/src/types/connection/cursor/pager/strategies/pager-strategy.d.ts +33 -0
  283. package/src/types/connection/cursor/pager/strategies/pager-strategy.js +3 -0
  284. package/src/types/connection/cursor/pager/strategies/pager-strategy.js.map +1 -0
  285. package/src/types/connection/index.d.ts +4 -0
  286. package/src/types/connection/index.js +10 -0
  287. package/src/types/connection/index.js.map +1 -0
  288. package/src/types/connection/interfaces.d.ts +60 -0
  289. package/src/types/connection/interfaces.js +3 -0
  290. package/src/types/connection/interfaces.js.map +1 -0
  291. package/src/types/connection/offset/index.d.ts +2 -0
  292. package/src/types/connection/offset/index.js +6 -0
  293. package/src/types/connection/offset/index.js.map +1 -0
  294. package/src/types/connection/offset/offset-connection.type.d.ts +4 -0
  295. package/src/types/connection/offset/offset-connection.type.js +68 -0
  296. package/src/types/connection/offset/offset-connection.type.js.map +1 -0
  297. package/src/types/connection/offset/offset-page-info.type.d.ts +5 -0
  298. package/src/types/connection/offset/offset-page-info.type.js +35 -0
  299. package/src/types/connection/offset/offset-page-info.type.js.map +1 -0
  300. package/src/types/connection/offset/pager/index.d.ts +4 -0
  301. package/src/types/connection/offset/pager/index.js +8 -0
  302. package/src/types/connection/offset/pager/index.js.map +1 -0
  303. package/src/types/connection/offset/pager/interfaces.d.ts +12 -0
  304. package/src/types/connection/offset/pager/interfaces.js +3 -0
  305. package/src/types/connection/offset/pager/interfaces.js.map +1 -0
  306. package/src/types/connection/offset/pager/pager.d.ts +12 -0
  307. package/src/types/connection/offset/pager/pager.js +62 -0
  308. package/src/types/connection/offset/pager/pager.js.map +1 -0
  309. package/src/types/create-many-input.type.d.ts +10 -0
  310. package/src/types/create-many-input.type.js +42 -0
  311. package/src/types/create-many-input.type.js.map +1 -0
  312. package/src/types/create-one-input.type.d.ts +11 -0
  313. package/src/types/create-one-input.type.js +42 -0
  314. package/src/types/create-one-input.type.js.map +1 -0
  315. package/src/types/cursor.scalar.d.ts +3 -0
  316. package/src/types/cursor.scalar.js +21 -0
  317. package/src/types/cursor.scalar.js.map +1 -0
  318. package/src/types/delete-many-input.type.d.ts +9 -0
  319. package/src/types/delete-many-input.type.js +31 -0
  320. package/src/types/delete-many-input.type.js.map +1 -0
  321. package/src/types/delete-many-reponse.type.d.ts +2 -0
  322. package/src/types/delete-many-reponse.type.js +25 -0
  323. package/src/types/delete-many-reponse.type.js.map +1 -0
  324. package/src/types/delete-one-input.type.d.ts +8 -0
  325. package/src/types/delete-one-input.type.js +27 -0
  326. package/src/types/delete-one-input.type.js.map +1 -0
  327. package/src/types/find-one-args.type.d.ts +8 -0
  328. package/src/types/find-one-args.type.js +27 -0
  329. package/src/types/find-one-args.type.js.map +1 -0
  330. package/src/types/index.d.ts +18 -0
  331. package/src/types/index.js +44 -0
  332. package/src/types/index.js.map +1 -0
  333. package/src/types/mutation-args.type.d.ts +5 -0
  334. package/src/types/mutation-args.type.js +24 -0
  335. package/src/types/mutation-args.type.js.map +1 -0
  336. package/src/types/query/field-comparison/boolean-field-comparison.type.d.ts +3 -0
  337. package/src/types/query/field-comparison/boolean-field-comparison.type.js +35 -0
  338. package/src/types/query/field-comparison/boolean-field-comparison.type.js.map +1 -0
  339. package/src/types/query/field-comparison/date-field-comparison.type.d.ts +3 -0
  340. package/src/types/query/field-comparison/date-field-comparison.type.js +112 -0
  341. package/src/types/query/field-comparison/date-field-comparison.type.js.map +1 -0
  342. package/src/types/query/field-comparison/field-comparison.factory.d.ts +11 -0
  343. package/src/types/query/field-comparison/field-comparison.factory.js +166 -0
  344. package/src/types/query/field-comparison/field-comparison.factory.js.map +1 -0
  345. package/src/types/query/field-comparison/float-field-comparison.type.d.ts +3 -0
  346. package/src/types/query/field-comparison/float-field-comparison.type.js +112 -0
  347. package/src/types/query/field-comparison/float-field-comparison.type.js.map +1 -0
  348. package/src/types/query/field-comparison/index.d.ts +8 -0
  349. package/src/types/query/field-comparison/index.js +12 -0
  350. package/src/types/query/field-comparison/index.js.map +1 -0
  351. package/src/types/query/field-comparison/int-field-comparison.type.d.ts +3 -0
  352. package/src/types/query/field-comparison/int-field-comparison.type.js +112 -0
  353. package/src/types/query/field-comparison/int-field-comparison.type.js.map +1 -0
  354. package/src/types/query/field-comparison/number-field-comparison.type.d.ts +3 -0
  355. package/src/types/query/field-comparison/number-field-comparison.type.js +112 -0
  356. package/src/types/query/field-comparison/number-field-comparison.type.js.map +1 -0
  357. package/src/types/query/field-comparison/string-field-comparison.type.d.ts +3 -0
  358. package/src/types/query/field-comparison/string-field-comparison.type.js +108 -0
  359. package/src/types/query/field-comparison/string-field-comparison.type.js.map +1 -0
  360. package/src/types/query/field-comparison/timestamp-field-comparison.type.d.ts +3 -0
  361. package/src/types/query/field-comparison/timestamp-field-comparison.type.js +112 -0
  362. package/src/types/query/field-comparison/timestamp-field-comparison.type.js.map +1 -0
  363. package/src/types/query/filter.type.d.ts +14 -0
  364. package/src/types/query/filter.type.js +103 -0
  365. package/src/types/query/filter.type.js.map +1 -0
  366. package/src/types/query/helpers.d.ts +1 -0
  367. package/src/types/query/helpers.js +6 -0
  368. package/src/types/query/helpers.js.map +1 -0
  369. package/src/types/query/index.d.ts +4 -0
  370. package/src/types/query/index.js +14 -0
  371. package/src/types/query/index.js.map +1 -0
  372. package/src/types/query/paging/constants.d.ts +5 -0
  373. package/src/types/query/paging/constants.js +10 -0
  374. package/src/types/query/paging/constants.js.map +1 -0
  375. package/src/types/query/paging/cursor-paging.type.d.ts +3 -0
  376. package/src/types/query/paging/cursor-paging.type.js +69 -0
  377. package/src/types/query/paging/cursor-paging.type.js.map +1 -0
  378. package/src/types/query/paging/index.d.ts +5 -0
  379. package/src/types/query/paging/index.js +12 -0
  380. package/src/types/query/paging/index.js.map +1 -0
  381. package/src/types/query/paging/interfaces.d.ts +13 -0
  382. package/src/types/query/paging/interfaces.js +3 -0
  383. package/src/types/query/paging/interfaces.js.map +1 -0
  384. package/src/types/query/paging/none-paging.type.d.ts +3 -0
  385. package/src/types/query/paging/none-paging.type.js +18 -0
  386. package/src/types/query/paging/none-paging.type.js.map +1 -0
  387. package/src/types/query/paging/offset-paging.type.d.ts +3 -0
  388. package/src/types/query/paging/offset-paging.type.js +43 -0
  389. package/src/types/query/paging/offset-paging.type.js.map +1 -0
  390. package/src/types/query/query-args/constants.d.ts +6 -0
  391. package/src/types/query/query-args/constants.js +10 -0
  392. package/src/types/query/query-args/constants.js.map +1 -0
  393. package/src/types/query/query-args/cursor-query-args.type.d.ts +5 -0
  394. package/src/types/query/query-args/cursor-query-args.type.js +61 -0
  395. package/src/types/query/query-args/cursor-query-args.type.js.map +1 -0
  396. package/src/types/query/query-args/index.d.ts +5 -0
  397. package/src/types/query/query-args/index.js +9 -0
  398. package/src/types/query/query-args/index.js.map +1 -0
  399. package/src/types/query/query-args/interfaces.d.ts +45 -0
  400. package/src/types/query/query-args/interfaces.js +3 -0
  401. package/src/types/query/query-args/interfaces.js.map +1 -0
  402. package/src/types/query/query-args/none-paging-query-args.type.d.ts +5 -0
  403. package/src/types/query/query-args/none-paging-query-args.type.js +49 -0
  404. package/src/types/query/query-args/none-paging-query-args.type.js.map +1 -0
  405. package/src/types/query/query-args/offset-query-args.type.d.ts +5 -0
  406. package/src/types/query/query-args/offset-query-args.type.js +60 -0
  407. package/src/types/query/query-args/offset-query-args.type.js.map +1 -0
  408. package/src/types/query/query-args.type.d.ts +8 -0
  409. package/src/types/query/query-args.type.js +33 -0
  410. package/src/types/query/query-args.type.js.map +1 -0
  411. package/src/types/query/sorting.type.d.ts +2 -0
  412. package/src/types/query/sorting.type.js +55 -0
  413. package/src/types/query/sorting.type.js.map +1 -0
  414. package/src/types/relation-input.type.d.ts +6 -0
  415. package/src/types/relation-input.type.js +30 -0
  416. package/src/types/relation-input.type.js.map +1 -0
  417. package/src/types/relations-input.type.d.ts +6 -0
  418. package/src/types/relations-input.type.js +31 -0
  419. package/src/types/relations-input.type.js.map +1 -0
  420. package/src/types/subscription-args.type.d.ts +5 -0
  421. package/src/types/subscription-args.type.js +24 -0
  422. package/src/types/subscription-args.type.js.map +1 -0
  423. package/src/types/subscription-filter-input.type.d.ts +9 -0
  424. package/src/types/subscription-filter-input.type.js +32 -0
  425. package/src/types/subscription-filter-input.type.js.map +1 -0
  426. package/src/types/type.errors.d.ts +5 -0
  427. package/src/types/type.errors.js +11 -0
  428. package/src/types/type.errors.js.map +1 -0
  429. package/src/types/update-many-input.type.d.ts +11 -0
  430. package/src/types/update-many-input.type.js +38 -0
  431. package/src/types/update-many-input.type.js.map +1 -0
  432. package/src/types/update-many-response.type.d.ts +2 -0
  433. package/src/types/update-many-response.type.js +25 -0
  434. package/src/types/update-many-response.type.js.map +1 -0
  435. package/src/types/update-one-input.type.d.ts +11 -0
  436. package/src/types/update-one-input.type.js +36 -0
  437. package/src/types/update-one-input.type.js.map +1 -0
  438. package/src/types/validators/cannot-use-with.validator.d.ts +6 -0
  439. package/src/types/validators/cannot-use-with.validator.js +21 -0
  440. package/src/types/validators/cannot-use-with.validator.js.map +1 -0
  441. package/src/types/validators/cannot-use-without.validator.d.ts +6 -0
  442. package/src/types/validators/cannot-use-without.validator.js +22 -0
  443. package/src/types/validators/cannot-use-without.validator.js.map +1 -0
  444. package/src/types/validators/index.d.ts +3 -0
  445. package/src/types/validators/index.js +7 -0
  446. package/src/types/validators/index.js.map +1 -0
  447. package/src/types/validators/is-undefined.validator.d.ts +3 -0
  448. package/src/types/validators/is-undefined.validator.js +11 -0
  449. package/src/types/validators/is-undefined.validator.js.map +1 -0
  450. package/src/types/validators/property-max.validator.d.ts +6 -0
  451. package/src/types/validators/property-max.validator.js +30 -0
  452. package/src/types/validators/property-max.validator.js.map +1 -0
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.composeDecorators = void 0;
4
+ function composeDecorators(...decorators) {
5
+ // eslint-disable-next-line @typescript-eslint/ban-types
6
+ return (
7
+ // eslint-disable-next-line @typescript-eslint/ban-types
8
+ target, propertyKey, descriptorOrIndex) => {
9
+ decorators.forEach((decorator) => {
10
+ if (target instanceof Function && !descriptorOrIndex) {
11
+ return decorator(target);
12
+ }
13
+ if (typeof descriptorOrIndex === 'number') {
14
+ return decorator(target, propertyKey, descriptorOrIndex);
15
+ }
16
+ return decorator(target, propertyKey, descriptorOrIndex);
17
+ });
18
+ };
19
+ }
20
+ exports.composeDecorators = composeDecorators;
21
+ //# sourceMappingURL=decorator.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorator.utils.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/decorator.utils.ts"],"names":[],"mappings":";;;AAGA,SAAgB,iBAAiB,CAAC,GAAG,UAAiC;IACpE,wDAAwD;IACxD,OAAO;IACL,wDAAwD;IACxD,MAA0B,EAC1B,WAA6B,EAC7B,iBAAuD,EACvD,EAAE;QACF,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAC/B,IAAI,MAAM,YAAY,QAAQ,IAAI,CAAC,iBAAiB,EAAE;gBACpD,OAAQ,SAA4B,CAAC,MAAM,CAAC,CAAC;aAC9C;YACD,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE;gBACzC,OAAQ,SAAgC,CAAC,MAAM,EAAE,WAA8B,EAAE,iBAAiB,CAAC,CAAC;aACrG;YACD,OAAQ,SAAiD,CACvD,MAAM,EACN,WAA8B,EAC9B,iBAA+C,CAChD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAtBD,8CAsBC"}
@@ -0,0 +1,47 @@
1
+ import { Class, FilterComparisonOperators } from '@ptc-org/nestjs-query-core';
2
+ import { FieldOptions, ReturnTypeFunc } from '@nestjs/graphql';
3
+ export declare type FilterableFieldOptions = {
4
+ allowedComparisons?: FilterComparisonOperators<unknown>[];
5
+ filterRequired?: boolean;
6
+ filterOnly?: boolean;
7
+ } & FieldOptions;
8
+ export interface FilterableFieldDescriptor {
9
+ propertyName: string;
10
+ target: Class<unknown>;
11
+ returnTypeFunc?: ReturnTypeFunc;
12
+ advancedOptions?: FilterableFieldOptions;
13
+ }
14
+ /**
15
+ * Decorator for Fields that should be filterable through a [[FilterType]]
16
+ *
17
+ * @example
18
+ *
19
+ * In the following DTO `id`, `title` and `completed` are filterable.
20
+ *
21
+ * ```ts
22
+ * import { FilterableField } from '@ptc-org/nestjs-query-graphql';
23
+ * import { ObjectType, ID, GraphQLISODateTime, Field } from '@nestjs/graphql';
24
+ *
25
+ * @ObjectType('TodoItem')
26
+ * export class TodoItemDTO {
27
+ * @FilterableField(() => ID)
28
+ * id!: string;
29
+ *
30
+ * @FilterableField()
31
+ * title!: string;
32
+ *
33
+ * @FilterableField()
34
+ * completed!: boolean;
35
+ *
36
+ * @Field(() => GraphQLISODateTime)
37
+ * created!: Date;
38
+ *
39
+ * @Field(() => GraphQLISODateTime)
40
+ * updated!: Date;
41
+ * }
42
+ * ```
43
+ */
44
+ export declare function FilterableField(): PropertyDecorator & MethodDecorator;
45
+ export declare function FilterableField(options: FilterableFieldOptions): PropertyDecorator & MethodDecorator;
46
+ export declare function FilterableField(returnTypeFunction?: ReturnTypeFunc, options?: FilterableFieldOptions): PropertyDecorator & MethodDecorator;
47
+ export declare function getFilterableFields<DTO>(DTOClass: Class<DTO>): FilterableFieldDescriptor[];
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getFilterableFields = exports.FilterableField = void 0;
4
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const constants_1 = require("./constants");
7
+ const reflector = new nestjs_query_core_1.ArrayReflector(constants_1.FILTERABLE_FIELD_KEY);
8
+ function FilterableField(returnTypeFuncOrOptions, maybeOptions) {
9
+ let returnTypeFunc;
10
+ let advancedOptions;
11
+ if (typeof returnTypeFuncOrOptions === 'function') {
12
+ returnTypeFunc = returnTypeFuncOrOptions;
13
+ advancedOptions = maybeOptions;
14
+ }
15
+ else if (typeof returnTypeFuncOrOptions === 'object') {
16
+ advancedOptions = returnTypeFuncOrOptions;
17
+ }
18
+ else if (typeof maybeOptions === 'object') {
19
+ advancedOptions = maybeOptions;
20
+ }
21
+ return (
22
+ // eslint-disable-next-line @typescript-eslint/ban-types
23
+ target, propertyName, descriptor) => {
24
+ const Ctx = Reflect.getMetadata('design:type', target, propertyName);
25
+ reflector.append(target.constructor, {
26
+ propertyName: propertyName.toString(),
27
+ target: Ctx,
28
+ returnTypeFunc,
29
+ advancedOptions,
30
+ });
31
+ if (advancedOptions?.filterOnly) {
32
+ return undefined;
33
+ }
34
+ if (returnTypeFunc) {
35
+ return (0, graphql_1.Field)(returnTypeFunc, advancedOptions)(target, propertyName, descriptor);
36
+ }
37
+ if (advancedOptions) {
38
+ return (0, graphql_1.Field)(advancedOptions)(target, propertyName, descriptor);
39
+ }
40
+ return (0, graphql_1.Field)()(target, propertyName, descriptor);
41
+ };
42
+ }
43
+ exports.FilterableField = FilterableField;
44
+ function getFilterableFields(DTOClass) {
45
+ return (0, nestjs_query_core_1.getPrototypeChain)(DTOClass).reduce((fields, Cls) => {
46
+ const existingFieldNames = fields.map((t) => t.propertyName);
47
+ const typeFields = reflector.get(Cls) ?? [];
48
+ const newFields = typeFields.filter((t) => !existingFieldNames.includes(t.propertyName));
49
+ return [...newFields, ...fields];
50
+ }, []);
51
+ }
52
+ exports.getFilterableFields = getFilterableFields;
53
+ //# sourceMappingURL=filterable-field.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterable-field.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/filterable-field.decorator.ts"],"names":[],"mappings":";;;AAAA,kEAAiH;AACjH,6CAAsE;AACtE,2CAAmD;AAEnD,MAAM,SAAS,GAAG,IAAI,kCAAc,CAAC,gCAAoB,CAAC,CAAC;AAkD3D,SAAgB,eAAe,CAC7B,uBAAiE,EACjE,YAAqC;IAErC,IAAI,cAA0C,CAAC;IAC/C,IAAI,eAAmD,CAAC;IACxD,IAAI,OAAO,uBAAuB,KAAK,UAAU,EAAE;QACjD,cAAc,GAAG,uBAAuB,CAAC;QACzC,eAAe,GAAG,YAAY,CAAC;KAChC;SAAM,IAAI,OAAO,uBAAuB,KAAK,QAAQ,EAAE;QACtD,eAAe,GAAG,uBAAuB,CAAC;KAC3C;SAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;QAC3C,eAAe,GAAG,YAAY,CAAC;KAChC;IACD,OAAO;IACL,wDAAwD;IACxD,MAAc,EACd,YAA6B,EAC7B,UAAsC,EACH,EAAE;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAmB,CAAC;QACvF,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,WAA6B,EAAE;YACrD,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;YACrC,MAAM,EAAE,GAAG;YACX,cAAc;YACd,eAAe;SAChB,CAAC,CAAC;QAEH,IAAI,eAAe,EAAE,UAAU,EAAE;YAC/B,OAAO,SAAS,CAAC;SAClB;QAED,IAAI,cAAc,EAAE;YAClB,OAAO,IAAA,eAAK,EAAC,cAAc,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;SACjF;QACD,IAAI,eAAe,EAAE;YACnB,OAAO,IAAA,eAAK,EAAC,eAAe,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;SACjE;QACD,OAAO,IAAA,eAAK,GAAE,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC,CAAC;AACJ,CAAC;AAxCD,0CAwCC;AAED,SAAgB,mBAAmB,CAAM,QAAoB;IAC3D,OAAO,IAAA,qCAAiB,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACxD,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAqC,GAAG,CAAC,IAAI,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACzF,OAAO,CAAC,GAAG,SAAS,EAAE,GAAG,MAAM,CAAC,CAAC;IACnC,CAAC,EAAE,EAAiC,CAAC,CAAC;AACxC,CAAC;AAPD,kDAOC"}
@@ -0,0 +1,3 @@
1
+ import { MutationArgsType } from '../types';
2
+ export declare const HookArgs: <T>() => ParameterDecorator;
3
+ export declare const MutationHookArgs: <T extends MutationArgsType<unknown>>() => ParameterDecorator;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MutationHookArgs = exports.HookArgs = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const class_transformer_1 = require("class-transformer");
7
+ const decorator_utils_1 = require("./decorator.utils");
8
+ function transformValue(value, type) {
9
+ if (type && !(value instanceof type)) {
10
+ return (0, class_transformer_1.plainToClass)(type, value);
11
+ }
12
+ return value;
13
+ }
14
+ function createArgsDecorator(fn) {
15
+ const dec = (target, methodName, paramIndex) => {
16
+ const params = Reflect.getMetadata('design:paramtypes', target, methodName);
17
+ const ArgType = params[paramIndex];
18
+ return (0, common_1.createParamDecorator)(async (data, executionContext) => {
19
+ const gqlExecutionContext = graphql_1.GqlExecutionContext.create(executionContext);
20
+ const gqlContext = gqlExecutionContext.getContext();
21
+ const args = gqlExecutionContext.getArgs();
22
+ return fn(transformValue(args, ArgType), gqlContext);
23
+ })()(target, methodName, paramIndex);
24
+ };
25
+ return (0, decorator_utils_1.composeDecorators)((0, graphql_1.Args)(), dec);
26
+ }
27
+ const HookArgs = () => createArgsDecorator(async (data, context) => {
28
+ if (context.hook) {
29
+ const hookedArgs = await context.hook.run(data, context);
30
+ return hookedArgs;
31
+ }
32
+ return data;
33
+ });
34
+ exports.HookArgs = HookArgs;
35
+ const MutationHookArgs = () => createArgsDecorator(async (data, context) => {
36
+ if (context.hook) {
37
+ const { input } = data;
38
+ return { input: await context.hook.run(input, context) };
39
+ }
40
+ return data;
41
+ });
42
+ exports.MutationHookArgs = MutationHookArgs;
43
+ //# sourceMappingURL=hook-args.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-args.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/hook-args.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAwE;AACxE,6CAA4D;AAE5D,yDAAiD;AAEjD,uDAAsD;AAItD,SAAS,cAAc,CAAI,KAAQ,EAAE,IAAe;IAClD,IAAI,IAAI,IAAI,CAAC,CAAC,KAAK,YAAY,IAAI,CAAC,EAAE;QACpC,OAAO,IAAA,gCAAY,EAAa,IAAI,EAAE,KAAK,CAAC,CAAC;KAC9C;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAiB,EAA0C;IACrF,MAAM,GAAG,GAAG,CAAC,MAAsB,EAAE,UAAkB,EAAE,UAAkB,EAAQ,EAAE;QACnF,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,mBAAmB,EAAE,MAAM,EAAE,UAAU,CAAe,CAAC;QAC1F,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QACnC,OAAO,IAAA,6BAAoB,EAAC,KAAK,EAAE,IAAa,EAAE,gBAAkC,EAAE,EAAE;YACtF,MAAM,mBAAmB,GAAG,6BAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACzE,MAAM,UAAU,GAAG,mBAAmB,CAAC,UAAU,EAAK,CAAC;YACvD,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAK,CAAC;YAC9C,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;QACvD,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC,CAAC;IACF,OAAO,IAAA,mCAAiB,EAAC,IAAA,cAAI,GAAE,EAAE,GAAyB,CAAC,CAAC;AAC9D,CAAC;AAEM,MAAM,QAAQ,GAAG,GAA0B,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAO,EAAE,OAAmC,EAAE,EAAE;IAC9H,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO,UAAe,CAAC;KACxB;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC,CAAC;AANU,QAAA,QAAQ,YAMlB;AAEI,MAAM,gBAAgB,GAAG,GAA4D,EAAE,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAO,EAAE,OAAmC,EAAE,EAAE;IACxK,IAAI,OAAO,CAAC,IAAI,EAAE;QAChB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,EAAO,CAAC;KAC/D;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC,CAAC;AANU,QAAA,gBAAgB,oBAM1B"}
@@ -0,0 +1,13 @@
1
+ import { Class, MetaValue } from '@ptc-org/nestjs-query-core';
2
+ import { BeforeCreateManyHook, BeforeCreateOneHook, BeforeDeleteManyHook, BeforeDeleteOneHook, BeforeFindOneHook, BeforeQueryManyHook, BeforeUpdateManyHook, BeforeUpdateOneHook, Hook, HookTypes } from '../hooks';
3
+ export declare type HookMetaValue<H extends Hook<unknown>> = MetaValue<Class<H>>;
4
+ export declare type HookDecoratorArg<H extends Hook<unknown>> = Class<H> | H['run'];
5
+ export declare const BeforeCreateOne: (data: HookDecoratorArg<BeforeCreateOneHook<any, any>>) => (target: Function) => void;
6
+ export declare const BeforeCreateMany: (data: HookDecoratorArg<BeforeCreateManyHook<any, any>>) => (target: Function) => void;
7
+ export declare const BeforeUpdateOne: (data: HookDecoratorArg<BeforeUpdateOneHook<any, any>>) => (target: Function) => void;
8
+ export declare const BeforeUpdateMany: (data: HookDecoratorArg<BeforeUpdateManyHook<any, any, any>>) => (target: Function) => void;
9
+ export declare const BeforeDeleteOne: (data: HookDecoratorArg<BeforeDeleteOneHook<any>>) => (target: Function) => void;
10
+ export declare const BeforeDeleteMany: (data: HookDecoratorArg<BeforeDeleteManyHook<any, any>>) => (target: Function) => void;
11
+ export declare const BeforeQueryMany: (data: HookDecoratorArg<BeforeQueryManyHook<any, any>>) => (target: Function) => void;
12
+ export declare const BeforeFindOne: (data: HookDecoratorArg<BeforeFindOneHook<any>>) => (target: Function) => void;
13
+ export declare const getHookForType: <H extends Hook<unknown, any>>(hookType: HookTypes, DTOClass: Class<unknown>) => Class<H>;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getHookForType = exports.BeforeFindOne = exports.BeforeQueryMany = exports.BeforeDeleteMany = exports.BeforeDeleteOne = exports.BeforeUpdateMany = exports.BeforeUpdateOne = exports.BeforeCreateMany = exports.BeforeCreateOne = void 0;
4
+ /* eslint-disable @typescript-eslint/no-explicit-any */
5
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
6
+ const hooks_1 = require("../hooks");
7
+ const hookMetaDataKey = (hookType) => `nestjs-query:${hookType}`;
8
+ const hookDecorator = (hookType) => {
9
+ const key = hookMetaDataKey(hookType);
10
+ // eslint-disable-next-line @typescript-eslint/ban-types
11
+ return (data) =>
12
+ // eslint-disable-next-line @typescript-eslint/ban-types
13
+ (target) => {
14
+ if ((0, hooks_1.isHookClass)(data)) {
15
+ return Reflect.defineMetadata(key, data, target);
16
+ }
17
+ const hook = (0, hooks_1.createDefaultHook)(data);
18
+ return Reflect.defineMetadata(key, hook, target);
19
+ };
20
+ };
21
+ exports.BeforeCreateOne = hookDecorator(hooks_1.HookTypes.BEFORE_CREATE_ONE);
22
+ exports.BeforeCreateMany = hookDecorator(hooks_1.HookTypes.BEFORE_CREATE_MANY);
23
+ exports.BeforeUpdateOne = hookDecorator(hooks_1.HookTypes.BEFORE_UPDATE_ONE);
24
+ exports.BeforeUpdateMany = hookDecorator(hooks_1.HookTypes.BEFORE_UPDATE_MANY);
25
+ exports.BeforeDeleteOne = hookDecorator(hooks_1.HookTypes.BEFORE_DELETE_ONE);
26
+ exports.BeforeDeleteMany = hookDecorator(hooks_1.HookTypes.BEFORE_DELETE_MANY);
27
+ exports.BeforeQueryMany = hookDecorator(hooks_1.HookTypes.BEFORE_QUERY_MANY);
28
+ exports.BeforeFindOne = hookDecorator(hooks_1.HookTypes.BEFORE_FIND_ONE);
29
+ const getHookForType = (hookType, DTOClass) => (0, nestjs_query_core_1.getClassMetadata)(DTOClass, hookMetaDataKey(hookType), true);
30
+ exports.getHookForType = getHookForType;
31
+ //# sourceMappingURL=hook.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/hook.decorator.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,kEAAgF;AAChF,oCAakB;AAMlB,MAAM,eAAe,GAAG,CAAC,QAAmB,EAAU,EAAE,CAAC,gBAAgB,QAAQ,EAAE,CAAC;AAEpF,MAAM,aAAa,GAAG,CAA0B,QAAmB,EAAE,EAAE;IACrE,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IACtC,wDAAwD;IACxD,OAAO,CAAC,IAAyB,EAAE,EAAE;IACnC,wDAAwD;IACxD,CAAC,MAAgB,EAAQ,EAAE;QACzB,IAAI,IAAA,mBAAW,EAAC,IAAI,CAAC,EAAE;YACrB,OAAO,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAClD;QACD,MAAM,IAAI,GAAG,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC,CAAC;AACN,CAAC,CAAC;AAEW,QAAA,eAAe,GAAG,aAAa,CAA2B,iBAAS,CAAC,iBAAiB,CAAC,CAAC;AACvF,QAAA,gBAAgB,GAAG,aAAa,CAA4B,iBAAS,CAAC,kBAAkB,CAAC,CAAC;AAC1F,QAAA,eAAe,GAAG,aAAa,CAA2B,iBAAS,CAAC,iBAAiB,CAAC,CAAC;AACvF,QAAA,gBAAgB,GAAG,aAAa,CAAiC,iBAAS,CAAC,kBAAkB,CAAC,CAAC;AAC/F,QAAA,eAAe,GAAG,aAAa,CAAsB,iBAAS,CAAC,iBAAiB,CAAC,CAAC;AAClF,QAAA,gBAAgB,GAAG,aAAa,CAA4B,iBAAS,CAAC,kBAAkB,CAAC,CAAC;AAC1F,QAAA,eAAe,GAAG,aAAa,CAA2B,iBAAS,CAAC,iBAAiB,CAAC,CAAC;AACvF,QAAA,aAAa,GAAG,aAAa,CAAoB,iBAAS,CAAC,eAAe,CAAC,CAAC;AAElF,MAAM,cAAc,GAAG,CAC5B,QAAmB,EACnB,QAAwB,EACN,EAAE,CAAC,IAAA,oCAAgB,EAAC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;AAHtE,QAAA,cAAc,kBAGwD"}
@@ -0,0 +1,32 @@
1
+ import { Class, MetaValue } from '@ptc-org/nestjs-query-core';
2
+ import { FieldOptions, ReturnTypeFunc } from '@nestjs/graphql';
3
+ import { FilterableFieldOptions } from './filterable-field.decorator';
4
+ declare type NoFilterIDFieldOptions = {
5
+ disableFilter: true;
6
+ } & FieldOptions;
7
+ export declare type IDFieldOptions = FilterableFieldOptions | NoFilterIDFieldOptions;
8
+ export interface IDFieldDescriptor {
9
+ propertyName: string;
10
+ returnTypeFunc: ReturnTypeFunc;
11
+ }
12
+ /**
13
+ * Decorator for Fields that should be filterable through a [[FilterType]]
14
+ *
15
+ * @example
16
+ *
17
+ * In the following DTO `id`, `title` and `completed` are filterable.
18
+ *
19
+ * ```ts
20
+ * import { IDField } from '@ptc-org/nestjs-query-graphql';
21
+ * import { ObjectType, ID } from '@nestjs/graphql';
22
+ *
23
+ * @ObjectType('TodoItem')
24
+ * export class TodoItemDTO {
25
+ * @IDField(() => ID)
26
+ * id!: string;
27
+ * }
28
+ * ```
29
+ */
30
+ export declare function IDField(returnTypeFunc: ReturnTypeFunc, options?: IDFieldOptions): PropertyDecorator & MethodDecorator;
31
+ export declare function getIDField<DTO>(DTOClass: Class<DTO>): MetaValue<IDFieldDescriptor>;
32
+ export {};
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getIDField = exports.IDField = void 0;
4
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const constants_1 = require("./constants");
7
+ const filterable_field_decorator_1 = require("./filterable-field.decorator");
8
+ const reflector = new nestjs_query_core_1.ValueReflector(constants_1.ID_FIELD_KEY);
9
+ /**
10
+ * Decorator for Fields that should be filterable through a [[FilterType]]
11
+ *
12
+ * @example
13
+ *
14
+ * In the following DTO `id`, `title` and `completed` are filterable.
15
+ *
16
+ * ```ts
17
+ * import { IDField } from '@ptc-org/nestjs-query-graphql';
18
+ * import { ObjectType, ID } from '@nestjs/graphql';
19
+ *
20
+ * @ObjectType('TodoItem')
21
+ * export class TodoItemDTO {
22
+ * @IDField(() => ID)
23
+ * id!: string;
24
+ * }
25
+ * ```
26
+ */
27
+ function IDField(returnTypeFunc, options) {
28
+ return (
29
+ // eslint-disable-next-line @typescript-eslint/ban-types
30
+ target, propertyName, descriptor) => {
31
+ reflector.set(target.constructor, {
32
+ propertyName: propertyName.toString(),
33
+ returnTypeFunc,
34
+ });
35
+ const disableFilter = options && 'disableFilter' in options;
36
+ const FieldDecorator = disableFilter ? graphql_1.Field : filterable_field_decorator_1.FilterableField;
37
+ if (descriptor) {
38
+ return FieldDecorator(returnTypeFunc, options)(target, propertyName, descriptor);
39
+ }
40
+ return FieldDecorator(returnTypeFunc, options)(target, propertyName);
41
+ };
42
+ }
43
+ exports.IDField = IDField;
44
+ function getIDField(DTOClass) {
45
+ return reflector.get(DTOClass, true);
46
+ }
47
+ exports.getIDField = getIDField;
48
+ //# sourceMappingURL=id-field.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-field.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/id-field.decorator.ts"],"names":[],"mappings":";;;AAAA,kEAA8E;AAC9E,6CAAsE;AACtE,2CAA2C;AAC3C,6EAAuF;AAEvF,MAAM,SAAS,GAAG,IAAI,kCAAc,CAAC,wBAAY,CAAC,CAAC;AAWnD;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,OAAO,CAAC,cAA8B,EAAE,OAAwB;IAC9E,OAAO;IACL,wDAAwD;IACxD,MAAc,EACd,YAA6B,EAC7B,UAAuC,EACJ,EAAE;QACrC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,WAA6B,EAAE;YAClD,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;YACrC,cAAc;SACf,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,IAAI,eAAe,IAAI,OAAO,CAAC;QAC5D,MAAM,cAAc,GAAG,aAAa,CAAC,CAAC,CAAC,eAAK,CAAC,CAAC,CAAC,4CAAe,CAAC;QAC/D,IAAI,UAAU,EAAE;YACd,OAAO,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;SAClF;QACD,OAAO,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC,CAAC;AACJ,CAAC;AAlBD,0BAkBC;AAED,SAAgB,UAAU,CAAM,QAAoB;IAClD,OAAO,SAAS,CAAC,GAAG,CAAyB,QAAQ,EAAE,IAAI,CAAC,CAAC;AAC/D,CAAC;AAFD,gCAEC"}
@@ -0,0 +1,21 @@
1
+ export { FilterableField, FilterableFieldOptions, FilterableFieldDescriptor, getFilterableFields, } from './filterable-field.decorator';
2
+ export { ResolverMethodOpts } from './resolver-method.decorator';
3
+ export { CursorConnection, FilterableCursorConnection, OffsetConnection, FilterableOffsetConnection, UnPagedRelation, FilterableUnPagedRelation, Relation, FilterableRelation, RelationDecoratorOpts, RelationTypeFunc, getRelations, } from './relation.decorator';
4
+ export * from './resolver-mutation.decorator';
5
+ export * from './resolver-query.decorator';
6
+ export * from './resolver-field.decorator';
7
+ export { Reference, ReferenceDecoratorOpts, ReferenceTypeFunc } from './reference.decorator';
8
+ export { ResolverSubscription, SubscriptionResolverMethodOpts } from './resolver-subscription.decorator';
9
+ export { InjectPubSub } from './inject-pub-sub.decorator';
10
+ export * from './skip-if.decorator';
11
+ export * from './aggregate-query-param.decorator';
12
+ export * from './hook.decorator';
13
+ export * from './decorator.utils';
14
+ export * from './hook-args.decorator';
15
+ export * from './authorizer.decorator';
16
+ export * from './inject-authorizer.decorator';
17
+ export * from './inject-custom-authorizer.decorator';
18
+ export * from './key-set.decorator';
19
+ export * from './authorize-filter.decorator';
20
+ export * from './query-options.decorator';
21
+ export * from './id-field.decorator';
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InjectPubSub = exports.ResolverSubscription = exports.Reference = exports.getRelations = exports.FilterableRelation = exports.Relation = exports.FilterableUnPagedRelation = exports.UnPagedRelation = exports.FilterableOffsetConnection = exports.OffsetConnection = exports.FilterableCursorConnection = exports.CursorConnection = exports.getFilterableFields = exports.FilterableField = void 0;
4
+ const tslib_1 = require("tslib");
5
+ var filterable_field_decorator_1 = require("./filterable-field.decorator");
6
+ Object.defineProperty(exports, "FilterableField", { enumerable: true, get: function () { return filterable_field_decorator_1.FilterableField; } });
7
+ Object.defineProperty(exports, "getFilterableFields", { enumerable: true, get: function () { return filterable_field_decorator_1.getFilterableFields; } });
8
+ var relation_decorator_1 = require("./relation.decorator");
9
+ Object.defineProperty(exports, "CursorConnection", { enumerable: true, get: function () { return relation_decorator_1.CursorConnection; } });
10
+ Object.defineProperty(exports, "FilterableCursorConnection", { enumerable: true, get: function () { return relation_decorator_1.FilterableCursorConnection; } });
11
+ Object.defineProperty(exports, "OffsetConnection", { enumerable: true, get: function () { return relation_decorator_1.OffsetConnection; } });
12
+ Object.defineProperty(exports, "FilterableOffsetConnection", { enumerable: true, get: function () { return relation_decorator_1.FilterableOffsetConnection; } });
13
+ Object.defineProperty(exports, "UnPagedRelation", { enumerable: true, get: function () { return relation_decorator_1.UnPagedRelation; } });
14
+ Object.defineProperty(exports, "FilterableUnPagedRelation", { enumerable: true, get: function () { return relation_decorator_1.FilterableUnPagedRelation; } });
15
+ Object.defineProperty(exports, "Relation", { enumerable: true, get: function () { return relation_decorator_1.Relation; } });
16
+ Object.defineProperty(exports, "FilterableRelation", { enumerable: true, get: function () { return relation_decorator_1.FilterableRelation; } });
17
+ Object.defineProperty(exports, "getRelations", { enumerable: true, get: function () { return relation_decorator_1.getRelations; } });
18
+ (0, tslib_1.__exportStar)(require("./resolver-mutation.decorator"), exports);
19
+ (0, tslib_1.__exportStar)(require("./resolver-query.decorator"), exports);
20
+ (0, tslib_1.__exportStar)(require("./resolver-field.decorator"), exports);
21
+ var reference_decorator_1 = require("./reference.decorator");
22
+ Object.defineProperty(exports, "Reference", { enumerable: true, get: function () { return reference_decorator_1.Reference; } });
23
+ var resolver_subscription_decorator_1 = require("./resolver-subscription.decorator");
24
+ Object.defineProperty(exports, "ResolverSubscription", { enumerable: true, get: function () { return resolver_subscription_decorator_1.ResolverSubscription; } });
25
+ var inject_pub_sub_decorator_1 = require("./inject-pub-sub.decorator");
26
+ Object.defineProperty(exports, "InjectPubSub", { enumerable: true, get: function () { return inject_pub_sub_decorator_1.InjectPubSub; } });
27
+ (0, tslib_1.__exportStar)(require("./skip-if.decorator"), exports);
28
+ (0, tslib_1.__exportStar)(require("./aggregate-query-param.decorator"), exports);
29
+ (0, tslib_1.__exportStar)(require("./hook.decorator"), exports);
30
+ (0, tslib_1.__exportStar)(require("./decorator.utils"), exports);
31
+ (0, tslib_1.__exportStar)(require("./hook-args.decorator"), exports);
32
+ (0, tslib_1.__exportStar)(require("./authorizer.decorator"), exports);
33
+ (0, tslib_1.__exportStar)(require("./inject-authorizer.decorator"), exports);
34
+ (0, tslib_1.__exportStar)(require("./inject-custom-authorizer.decorator"), exports);
35
+ (0, tslib_1.__exportStar)(require("./key-set.decorator"), exports);
36
+ (0, tslib_1.__exportStar)(require("./authorize-filter.decorator"), exports);
37
+ (0, tslib_1.__exportStar)(require("./query-options.decorator"), exports);
38
+ (0, tslib_1.__exportStar)(require("./id-field.decorator"), exports);
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/index.ts"],"names":[],"mappings":";;;;AAAA,2EAKsC;AAJpC,6HAAA,eAAe,OAAA;AAGf,iIAAA,mBAAmB,OAAA;AAGrB,2DAY8B;AAX5B,sHAAA,gBAAgB,OAAA;AAChB,gIAAA,0BAA0B,OAAA;AAC1B,sHAAA,gBAAgB,OAAA;AAChB,gIAAA,0BAA0B,OAAA;AAC1B,qHAAA,eAAe,OAAA;AACf,+HAAA,yBAAyB,OAAA;AACzB,8GAAA,QAAQ,OAAA;AACR,wHAAA,kBAAkB,OAAA;AAGlB,kHAAA,YAAY,OAAA;AAEd,6EAA8C;AAC9C,0EAA2C;AAC3C,0EAA2C;AAC3C,6DAA6F;AAApF,gHAAA,SAAS,OAAA;AAClB,qFAAyG;AAAhG,uIAAA,oBAAoB,OAAA;AAC7B,uEAA0D;AAAjD,wHAAA,YAAY,OAAA;AACrB,mEAAoC;AACpC,iFAAkD;AAClD,gEAAiC;AACjC,iEAAkC;AAClC,qEAAsC;AACtC,sEAAuC;AACvC,6EAA8C;AAC9C,oFAAqD;AACrD,mEAAoC;AACpC,4EAA6C;AAC7C,yEAA0C;AAC1C,oEAAqC"}
@@ -0,0 +1,2 @@
1
+ import { Class } from '@ptc-org/nestjs-query-core';
2
+ export declare const InjectAuthorizer: <DTO>(DTOClass: Class<DTO>) => ParameterDecorator;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InjectAuthorizer = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const auth_1 = require("../auth");
6
+ const InjectAuthorizer = (DTOClass) => (0, common_1.Inject)((0, auth_1.getAuthorizerToken)(DTOClass));
7
+ exports.InjectAuthorizer = InjectAuthorizer;
8
+ //# sourceMappingURL=inject-authorizer.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject-authorizer.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/inject-authorizer.decorator.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AACxC,kCAA6C;AAEtC,MAAM,gBAAgB,GAAG,CAAM,QAAoB,EAAsB,EAAE,CAAC,IAAA,eAAM,EAAC,IAAA,yBAAkB,EAAC,QAAQ,CAAC,CAAC,CAAC;AAA3G,QAAA,gBAAgB,oBAA2F"}
@@ -0,0 +1,2 @@
1
+ import { Class } from '@ptc-org/nestjs-query-core';
2
+ export declare const InjectCustomAuthorizer: <DTO>(DTOClass: Class<DTO>) => ParameterDecorator;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InjectCustomAuthorizer = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const auth_1 = require("../auth");
6
+ const InjectCustomAuthorizer = (DTOClass) => (0, common_1.Inject)((0, auth_1.getCustomAuthorizerToken)(DTOClass));
7
+ exports.InjectCustomAuthorizer = InjectCustomAuthorizer;
8
+ //# sourceMappingURL=inject-custom-authorizer.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject-custom-authorizer.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/inject-custom-authorizer.decorator.ts"],"names":[],"mappings":";;;AACA,2CAAwC;AACxC,kCAAmD;AAE5C,MAAM,sBAAsB,GAAG,CAAM,QAAoB,EAAsB,EAAE,CACtF,IAAA,eAAM,EAAC,IAAA,+BAAwB,EAAC,QAAQ,CAAC,CAAC,CAAC;AADhC,QAAA,sBAAsB,0BACU"}
@@ -0,0 +1 @@
1
+ export declare const InjectPubSub: () => ParameterDecorator;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InjectPubSub = void 0;
4
+ const common_1 = require("@nestjs/common");
5
+ const subscription_1 = require("../subscription");
6
+ const InjectPubSub = () => (0, common_1.Inject)((0, subscription_1.pubSubToken)());
7
+ exports.InjectPubSub = InjectPubSub;
8
+ //# sourceMappingURL=inject-pub-sub.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inject-pub-sub.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/inject-pub-sub.decorator.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AACxC,kDAA8C;AAEvC,MAAM,YAAY,GAAG,GAAuB,EAAE,CAAC,IAAA,eAAM,EAAC,IAAA,0BAAW,GAAE,CAAC,CAAC;AAA/D,QAAA,YAAY,gBAAmD"}
@@ -0,0 +1,3 @@
1
+ import { Class, MetaValue } from '@ptc-org/nestjs-query-core';
2
+ export declare function KeySet<DTO>(keys: (keyof DTO)[]): (DTOClass: Class<DTO>) => void;
3
+ export declare const getKeySet: <DTO>(DTOClass: Class<DTO>) => (keyof DTO)[];
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getKeySet = exports.KeySet = void 0;
4
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
+ const constants_1 = require("./constants");
6
+ const reflector = new nestjs_query_core_1.ValueReflector(constants_1.KEY_SET_KEY);
7
+ function KeySet(keys) {
8
+ return (DTOClass) => reflector.set(DTOClass, keys);
9
+ }
10
+ exports.KeySet = KeySet;
11
+ const getKeySet = (DTOClass) => reflector.get(DTOClass, true);
12
+ exports.getKeySet = getKeySet;
13
+ //# sourceMappingURL=key-set.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key-set.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/key-set.decorator.ts"],"names":[],"mappings":";;;AAAA,kEAA8E;AAC9E,2CAA0C;AAE1C,MAAM,SAAS,GAAG,IAAI,kCAAc,CAAC,uBAAW,CAAC,CAAC;AAClD,SAAgB,MAAM,CAAM,IAAmB;IAC7C,OAAO,CAAC,QAAoB,EAAQ,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACvE,CAAC;AAFD,wBAEC;AAEM,MAAM,SAAS,GAAG,CAAM,QAAoB,EAA4B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AAAnG,QAAA,SAAS,aAA0F"}
@@ -0,0 +1,5 @@
1
+ import { Class, MetaValue } from '@ptc-org/nestjs-query-core';
2
+ import { QueryArgsTypeOpts } from '../types';
3
+ export declare type QueryOptionsDecoratorOpts<DTO> = QueryArgsTypeOpts<DTO>;
4
+ export declare function QueryOptions(opts: QueryOptionsDecoratorOpts<any>): (target: Class<unknown>) => void;
5
+ export declare const getQueryOptions: <DTO>(DTOClass: Class<DTO>) => QueryArgsTypeOpts<DTO>;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getQueryOptions = exports.QueryOptions = void 0;
4
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
+ const constants_1 = require("./constants");
6
+ const valueReflector = new nestjs_query_core_1.ValueReflector(constants_1.QUERY_OPTIONS_KEY);
7
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
8
+ function QueryOptions(opts) {
9
+ return (target) => {
10
+ valueReflector.set(target, opts);
11
+ };
12
+ }
13
+ exports.QueryOptions = QueryOptions;
14
+ const getQueryOptions = (DTOClass) => valueReflector.get(DTOClass);
15
+ exports.getQueryOptions = getQueryOptions;
16
+ //# sourceMappingURL=query-options.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query-options.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/query-options.decorator.ts"],"names":[],"mappings":";;;AAAA,kEAA8E;AAE9E,2CAAgD;AAEhD,MAAM,cAAc,GAAG,IAAI,kCAAc,CAAC,6BAAiB,CAAC,CAAC;AAI7D,8DAA8D;AAC9D,SAAgB,YAAY,CAAC,IAAoC;IAC/D,OAAO,CAAC,MAAsB,EAAQ,EAAE;QACtC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC;AACJ,CAAC;AAJD,oCAIC;AAEM,MAAM,eAAe,GAAG,CAAM,QAAoB,EAAqC,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAAjH,QAAA,eAAe,mBAAkG"}
@@ -0,0 +1,8 @@
1
+ import { Class } from '@ptc-org/nestjs-query-core';
2
+ import { ReferencesOpts, ResolverRelationReference } from '../resolvers/relations';
3
+ import { ReferencesKeys } from '../resolvers/relations/relations.interface';
4
+ import { BaseResolverOptions } from './resolver-method.decorator';
5
+ export declare type ReferenceDecoratorOpts<DTO, Relation> = Omit<ResolverRelationReference<DTO, Relation>, 'DTO' | 'keys'>;
6
+ export declare type ReferenceTypeFunc<Relation> = () => Class<Relation>;
7
+ export declare function getReferences<DTO>(DTOClass: Class<DTO>, opts?: BaseResolverOptions): ReferencesOpts<DTO>;
8
+ export declare function Reference<DTO, Reference>(name: string, relationTypeFunc: ReferenceTypeFunc<Reference>, keys: ReferencesKeys<any, Reference>, relationOpts?: ReferenceDecoratorOpts<DTO, Reference>): <Cls extends Class<DTO>>(DTOClass: Cls) => void | Cls;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Reference = exports.getReferences = void 0;
4
+ const nestjs_query_core_1 = require("@ptc-org/nestjs-query-core");
5
+ const constants_1 = require("./constants");
6
+ const common_1 = require("../common");
7
+ const reflector = new nestjs_query_core_1.ArrayReflector(constants_1.REFERENCE_KEY);
8
+ function getReferenceDescriptors(DTOClass) {
9
+ return (0, nestjs_query_core_1.getPrototypeChain)(DTOClass).reduce((references, cls) => {
10
+ const referenceNames = references.map((r) => r.name);
11
+ const metaReferences = reflector.get(cls) ?? [];
12
+ const inheritedReferences = metaReferences.filter((t) => !referenceNames.includes(t.name));
13
+ return [...inheritedReferences, ...references];
14
+ }, []);
15
+ }
16
+ function convertReferencesToOpts(references, baseOpts) {
17
+ return references.reduce((referenceOpts, r) => {
18
+ const opts = (0, common_1.mergeBaseResolverOpts)({ ...r.relationOpts, DTO: r.relationTypeFunc(), keys: r.keys }, baseOpts ?? {});
19
+ return { ...referenceOpts, [r.name]: opts };
20
+ }, {});
21
+ }
22
+ function getReferences(DTOClass, opts) {
23
+ const referenceDescriptors = getReferenceDescriptors(DTOClass);
24
+ return convertReferencesToOpts(referenceDescriptors, opts);
25
+ }
26
+ exports.getReferences = getReferences;
27
+ function Reference(name, relationTypeFunc,
28
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
29
+ keys, relationOpts) {
30
+ return (DTOClass) => {
31
+ reflector.append(DTOClass, { name, keys, relationOpts, relationTypeFunc });
32
+ return DTOClass;
33
+ };
34
+ }
35
+ exports.Reference = Reference;
36
+ //# sourceMappingURL=reference.decorator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.decorator.js","sourceRoot":"","sources":["../../../../../packages/query-graphql/src/decorators/reference.decorator.ts"],"names":[],"mappings":";;;AAAA,kEAAsF;AAGtF,2CAA4C;AAE5C,sCAAkD;AAElD,MAAM,SAAS,GAAG,IAAI,kCAAc,CAAC,yBAAa,CAAC,CAAC;AAWpD,SAAS,uBAAuB,CAAM,QAAoB;IACxD,OAAO,IAAA,qCAAiB,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,GAAG,EAAE,EAAE;QAC5D,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAyC,GAAiB,CAAC,IAAI,EAAE,CAAC;QACtG,MAAM,mBAAmB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,mBAAmB,EAAE,GAAG,UAAU,CAAC,CAAC;IACjD,CAAC,EAAE,EAAyC,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,uBAAuB,CAC9B,UAA+C,EAC/C,QAA8B;IAE9B,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE;QAC5C,MAAM,IAAI,GAAG,IAAA,8BAAqB,EAChC,EAAE,GAAG,CAAC,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAC9D,QAAQ,IAAI,EAAE,CACf,CAAC;QACF,OAAO,EAAE,GAAG,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IAC9C,CAAC,EAAE,EAAyB,CAAC,CAAC;AAChC,CAAC;AAED,SAAgB,aAAa,CAAM,QAAoB,EAAE,IAA0B;IACjF,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC/D,OAAO,uBAAuB,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;AAC7D,CAAC;AAHD,sCAGC;AAED,SAAgB,SAAS,CACvB,IAAY,EACZ,gBAA8C;AAC9C,8DAA8D;AAC9D,IAAoC,EACpC,YAAqD;IAErD,OAAO,CAAyB,QAAa,EAAc,EAAE;QAC3D,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC3E,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AAXD,8BAWC"}
@@ -0,0 +1,16 @@
1
+ import { ArrayReflector, Class } from '@ptc-org/nestjs-query-core';
2
+ import { RelationsOpts, ResolverRelation } from '../resolvers/relations';
3
+ import { BaseResolverOptions } from './resolver-method.decorator';
4
+ export declare const reflector: ArrayReflector;
5
+ export declare type RelationDecoratorOpts<Relation> = Omit<ResolverRelation<Relation>, 'DTO'>;
6
+ export declare type RelationTypeFunc<Relation> = () => Class<Relation>;
7
+ export declare type RelationClassDecorator<DTO> = <Cls extends Class<DTO>>(DTOClass: Cls) => Cls | void;
8
+ export declare function getRelations<DTO>(DTOClass: Class<DTO>, opts?: BaseResolverOptions): RelationsOpts;
9
+ export declare const Relation: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
10
+ export declare const FilterableRelation: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
11
+ export declare const UnPagedRelation: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
12
+ export declare const FilterableUnPagedRelation: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
13
+ export declare const OffsetConnection: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
14
+ export declare const FilterableOffsetConnection: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
15
+ export declare const CursorConnection: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;
16
+ export declare const FilterableCursorConnection: <DTO, Relation>(name: string, relationTypeFunc: RelationTypeFunc<Relation>, options?: RelationDecoratorOpts<Relation>) => RelationClassDecorator<DTO>;