@strapi/plugin-graphql 0.0.0-experimental.62ebf57bb35846666febb5ee2078fe02fe990f57 → 0.0.0-experimental.6340da17068c3bed7fb006e7bcc554c71129e282

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 (707) hide show
  1. package/dist/admin/index.js +58 -157
  2. package/dist/admin/index.js.map +1 -1
  3. package/dist/admin/index.mjs +54 -158
  4. package/dist/admin/index.mjs.map +1 -1
  5. package/dist/admin/package.json.js +13 -0
  6. package/dist/admin/package.json.js.map +1 -0
  7. package/dist/admin/package.json.mjs +8 -0
  8. package/dist/admin/package.json.mjs.map +1 -0
  9. package/dist/admin/pluginId.js +6 -0
  10. package/dist/admin/pluginId.js.map +1 -0
  11. package/dist/admin/pluginId.mjs +4 -0
  12. package/dist/admin/pluginId.mjs.map +1 -0
  13. package/dist/admin/src/utils/prefixPluginTranslations.d.ts +3 -0
  14. package/dist/admin/translations/cs.json.js +10 -0
  15. package/dist/admin/translations/cs.json.js.map +1 -0
  16. package/dist/admin/translations/cs.json.mjs +8 -0
  17. package/dist/admin/translations/cs.json.mjs.map +1 -0
  18. package/dist/admin/translations/da.json.js +10 -0
  19. package/dist/admin/translations/da.json.js.map +1 -0
  20. package/dist/admin/translations/da.json.mjs +8 -0
  21. package/dist/admin/translations/da.json.mjs.map +1 -0
  22. package/dist/admin/translations/en.json.js +10 -0
  23. package/dist/admin/translations/en.json.js.map +1 -0
  24. package/dist/admin/translations/en.json.mjs +8 -0
  25. package/dist/admin/translations/en.json.mjs.map +1 -0
  26. package/dist/admin/translations/es.json.js +10 -0
  27. package/dist/admin/translations/es.json.js.map +1 -0
  28. package/dist/admin/translations/es.json.mjs +8 -0
  29. package/dist/admin/translations/es.json.mjs.map +1 -0
  30. package/dist/admin/translations/fr.json.js +10 -0
  31. package/dist/admin/translations/fr.json.js.map +1 -0
  32. package/dist/admin/translations/fr.json.mjs +8 -0
  33. package/dist/admin/translations/fr.json.mjs.map +1 -0
  34. package/dist/admin/translations/pl.json.js +10 -0
  35. package/dist/admin/translations/pl.json.js.map +1 -0
  36. package/dist/admin/translations/pl.json.mjs +8 -0
  37. package/dist/admin/translations/pl.json.mjs.map +1 -0
  38. package/dist/admin/translations/ru.json.js +10 -0
  39. package/dist/admin/translations/ru.json.js.map +1 -0
  40. package/dist/admin/translations/ru.json.mjs +8 -0
  41. package/dist/admin/translations/ru.json.mjs.map +1 -0
  42. package/dist/admin/translations/sk.json.js +10 -0
  43. package/dist/admin/translations/sk.json.js.map +1 -0
  44. package/dist/admin/translations/sk.json.mjs +8 -0
  45. package/dist/admin/translations/sk.json.mjs.map +1 -0
  46. package/dist/admin/translations/sv.json.js +10 -0
  47. package/dist/admin/translations/sv.json.js.map +1 -0
  48. package/dist/admin/translations/sv.json.mjs +8 -0
  49. package/dist/admin/translations/sv.json.mjs.map +1 -0
  50. package/dist/admin/translations/tr.json.js +10 -0
  51. package/dist/admin/translations/tr.json.js.map +1 -0
  52. package/dist/admin/translations/tr.json.mjs +8 -0
  53. package/dist/admin/translations/tr.json.mjs.map +1 -0
  54. package/dist/admin/translations/uk.json.js +10 -0
  55. package/dist/admin/translations/uk.json.js.map +1 -0
  56. package/dist/admin/translations/uk.json.mjs +8 -0
  57. package/dist/admin/translations/uk.json.mjs.map +1 -0
  58. package/dist/admin/translations/zh-Hans.json.js +10 -0
  59. package/dist/admin/translations/zh-Hans.json.js.map +1 -0
  60. package/dist/admin/translations/zh-Hans.json.mjs +8 -0
  61. package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
  62. package/dist/admin/translations/zh.json.js +10 -0
  63. package/dist/admin/translations/zh.json.js.map +1 -0
  64. package/dist/admin/translations/zh.json.mjs +8 -0
  65. package/dist/admin/translations/zh.json.mjs.map +1 -0
  66. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  67. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  68. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  69. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  70. package/dist/server/bootstrap.js +221 -0
  71. package/dist/server/bootstrap.js.map +1 -0
  72. package/dist/server/bootstrap.mjs +212 -0
  73. package/dist/server/bootstrap.mjs.map +1 -0
  74. package/dist/server/config/default-config.js +13 -0
  75. package/dist/server/config/default-config.js.map +1 -0
  76. package/dist/server/config/default-config.mjs +11 -0
  77. package/dist/server/config/default-config.mjs.map +1 -0
  78. package/dist/server/config/index.js +10 -0
  79. package/dist/server/config/index.js.map +1 -0
  80. package/dist/server/config/index.mjs +8 -0
  81. package/dist/server/config/index.mjs.map +1 -0
  82. package/dist/server/format-graphql-error.js +60 -0
  83. package/dist/server/format-graphql-error.js.map +1 -0
  84. package/dist/server/format-graphql-error.mjs +58 -0
  85. package/dist/server/format-graphql-error.mjs.map +1 -0
  86. package/dist/server/index.js +12 -2963
  87. package/dist/server/index.js.map +1 -1
  88. package/dist/server/index.mjs +11 -2945
  89. package/dist/server/index.mjs.map +1 -1
  90. package/dist/server/services/builders/dynamic-zones.js +75 -0
  91. package/dist/server/services/builders/dynamic-zones.js.map +1 -0
  92. package/dist/server/services/builders/dynamic-zones.mjs +73 -0
  93. package/dist/server/services/builders/dynamic-zones.mjs.map +1 -0
  94. package/dist/server/services/builders/entity.js +38 -0
  95. package/dist/server/services/builders/entity.js.map +1 -0
  96. package/dist/server/services/builders/entity.mjs +36 -0
  97. package/dist/server/services/builders/entity.mjs.map +1 -0
  98. package/dist/server/services/builders/enums.js +24 -0
  99. package/dist/server/services/builders/enums.js.map +1 -0
  100. package/dist/server/services/builders/enums.mjs +22 -0
  101. package/dist/server/services/builders/enums.mjs.map +1 -0
  102. package/dist/server/services/builders/filters/content-type.js +94 -0
  103. package/dist/server/services/builders/filters/content-type.js.map +1 -0
  104. package/dist/server/services/builders/filters/content-type.mjs +92 -0
  105. package/dist/server/services/builders/filters/content-type.mjs.map +1 -0
  106. package/dist/server/services/builders/filters/index.js +10 -0
  107. package/dist/server/services/builders/filters/index.js.map +1 -0
  108. package/dist/server/services/builders/filters/index.mjs +8 -0
  109. package/dist/server/services/builders/filters/index.mjs.map +1 -0
  110. package/dist/server/services/builders/filters/operators/and.js +17 -0
  111. package/dist/server/services/builders/filters/operators/and.js.map +1 -0
  112. package/dist/server/services/builders/filters/operators/and.mjs +15 -0
  113. package/dist/server/services/builders/filters/operators/and.mjs.map +1 -0
  114. package/dist/server/services/builders/filters/operators/between.js +17 -0
  115. package/dist/server/services/builders/filters/operators/between.js.map +1 -0
  116. package/dist/server/services/builders/filters/operators/between.mjs +15 -0
  117. package/dist/server/services/builders/filters/operators/between.mjs.map +1 -0
  118. package/dist/server/services/builders/filters/operators/contains.js +15 -0
  119. package/dist/server/services/builders/filters/operators/contains.js.map +1 -0
  120. package/dist/server/services/builders/filters/operators/contains.mjs +13 -0
  121. package/dist/server/services/builders/filters/operators/contains.mjs.map +1 -0
  122. package/dist/server/services/builders/filters/operators/containsi.js +15 -0
  123. package/dist/server/services/builders/filters/operators/containsi.js.map +1 -0
  124. package/dist/server/services/builders/filters/operators/containsi.mjs +13 -0
  125. package/dist/server/services/builders/filters/operators/containsi.mjs.map +1 -0
  126. package/dist/server/services/builders/filters/operators/ends-with.js +15 -0
  127. package/dist/server/services/builders/filters/operators/ends-with.js.map +1 -0
  128. package/dist/server/services/builders/filters/operators/ends-with.mjs +13 -0
  129. package/dist/server/services/builders/filters/operators/ends-with.mjs.map +1 -0
  130. package/dist/server/services/builders/filters/operators/eq.js +22 -0
  131. package/dist/server/services/builders/filters/operators/eq.js.map +1 -0
  132. package/dist/server/services/builders/filters/operators/eq.mjs +20 -0
  133. package/dist/server/services/builders/filters/operators/eq.mjs.map +1 -0
  134. package/dist/server/services/builders/filters/operators/eqi.js +15 -0
  135. package/dist/server/services/builders/filters/operators/eqi.js.map +1 -0
  136. package/dist/server/services/builders/filters/operators/eqi.mjs +13 -0
  137. package/dist/server/services/builders/filters/operators/eqi.mjs.map +1 -0
  138. package/dist/server/services/builders/filters/operators/gt.js +15 -0
  139. package/dist/server/services/builders/filters/operators/gt.js.map +1 -0
  140. package/dist/server/services/builders/filters/operators/gt.mjs +13 -0
  141. package/dist/server/services/builders/filters/operators/gt.mjs.map +1 -0
  142. package/dist/server/services/builders/filters/operators/gte.js +15 -0
  143. package/dist/server/services/builders/filters/operators/gte.js.map +1 -0
  144. package/dist/server/services/builders/filters/operators/gte.mjs +13 -0
  145. package/dist/server/services/builders/filters/operators/gte.mjs.map +1 -0
  146. package/dist/server/services/builders/filters/operators/in.js +17 -0
  147. package/dist/server/services/builders/filters/operators/in.js.map +1 -0
  148. package/dist/server/services/builders/filters/operators/in.mjs +15 -0
  149. package/dist/server/services/builders/filters/operators/in.mjs.map +1 -0
  150. package/dist/server/services/builders/filters/operators/index.js +57 -0
  151. package/dist/server/services/builders/filters/operators/index.js.map +1 -0
  152. package/dist/server/services/builders/filters/operators/index.mjs +55 -0
  153. package/dist/server/services/builders/filters/operators/index.mjs.map +1 -0
  154. package/dist/server/services/builders/filters/operators/lt.js +15 -0
  155. package/dist/server/services/builders/filters/operators/lt.js.map +1 -0
  156. package/dist/server/services/builders/filters/operators/lt.mjs +13 -0
  157. package/dist/server/services/builders/filters/operators/lt.mjs.map +1 -0
  158. package/dist/server/services/builders/filters/operators/lte.js +15 -0
  159. package/dist/server/services/builders/filters/operators/lte.js.map +1 -0
  160. package/dist/server/services/builders/filters/operators/lte.mjs +13 -0
  161. package/dist/server/services/builders/filters/operators/lte.mjs.map +1 -0
  162. package/dist/server/services/builders/filters/operators/ne.js +15 -0
  163. package/dist/server/services/builders/filters/operators/ne.js.map +1 -0
  164. package/dist/server/services/builders/filters/operators/ne.mjs +13 -0
  165. package/dist/server/services/builders/filters/operators/ne.mjs.map +1 -0
  166. package/dist/server/services/builders/filters/operators/nei.js +15 -0
  167. package/dist/server/services/builders/filters/operators/nei.js.map +1 -0
  168. package/dist/server/services/builders/filters/operators/nei.mjs +13 -0
  169. package/dist/server/services/builders/filters/operators/nei.mjs.map +1 -0
  170. package/dist/server/services/builders/filters/operators/not-contains.js +15 -0
  171. package/dist/server/services/builders/filters/operators/not-contains.js.map +1 -0
  172. package/dist/server/services/builders/filters/operators/not-contains.mjs +13 -0
  173. package/dist/server/services/builders/filters/operators/not-contains.mjs.map +1 -0
  174. package/dist/server/services/builders/filters/operators/not-containsi.js +15 -0
  175. package/dist/server/services/builders/filters/operators/not-containsi.js.map +1 -0
  176. package/dist/server/services/builders/filters/operators/not-containsi.mjs +13 -0
  177. package/dist/server/services/builders/filters/operators/not-containsi.mjs.map +1 -0
  178. package/dist/server/services/builders/filters/operators/not-in.js +17 -0
  179. package/dist/server/services/builders/filters/operators/not-in.js.map +1 -0
  180. package/dist/server/services/builders/filters/operators/not-in.mjs +15 -0
  181. package/dist/server/services/builders/filters/operators/not-in.mjs.map +1 -0
  182. package/dist/server/services/builders/filters/operators/not-null.js +13 -0
  183. package/dist/server/services/builders/filters/operators/not-null.js.map +1 -0
  184. package/dist/server/services/builders/filters/operators/not-null.mjs +11 -0
  185. package/dist/server/services/builders/filters/operators/not-null.mjs.map +1 -0
  186. package/dist/server/services/builders/filters/operators/not.js +24 -0
  187. package/dist/server/services/builders/filters/operators/not.js.map +1 -0
  188. package/dist/server/services/builders/filters/operators/not.mjs +22 -0
  189. package/dist/server/services/builders/filters/operators/not.mjs.map +1 -0
  190. package/dist/server/services/builders/filters/operators/null.js +13 -0
  191. package/dist/server/services/builders/filters/operators/null.js.map +1 -0
  192. package/dist/server/services/builders/filters/operators/null.mjs +11 -0
  193. package/dist/server/services/builders/filters/operators/null.mjs.map +1 -0
  194. package/dist/server/services/builders/filters/operators/or.js +17 -0
  195. package/dist/server/services/builders/filters/operators/or.js.map +1 -0
  196. package/dist/server/services/builders/filters/operators/or.mjs +15 -0
  197. package/dist/server/services/builders/filters/operators/or.mjs.map +1 -0
  198. package/dist/server/services/builders/filters/operators/starts-with.js +15 -0
  199. package/dist/server/services/builders/filters/operators/starts-with.js.map +1 -0
  200. package/dist/server/services/builders/filters/operators/starts-with.mjs +13 -0
  201. package/dist/server/services/builders/filters/operators/starts-with.mjs.map +1 -0
  202. package/dist/server/services/builders/generic-morph.js +38 -0
  203. package/dist/server/services/builders/generic-morph.js.map +1 -0
  204. package/dist/server/services/builders/generic-morph.mjs +36 -0
  205. package/dist/server/services/builders/generic-morph.mjs.map +1 -0
  206. package/dist/server/services/builders/index.js +75 -0
  207. package/dist/server/services/builders/index.js.map +1 -0
  208. package/dist/server/services/builders/index.mjs +73 -0
  209. package/dist/server/services/builders/index.mjs.map +1 -0
  210. package/dist/server/services/builders/input.js +89 -0
  211. package/dist/server/services/builders/input.js.map +1 -0
  212. package/dist/server/services/builders/input.mjs +87 -0
  213. package/dist/server/services/builders/input.mjs.map +1 -0
  214. package/dist/server/services/builders/mutations/collection-type.js +155 -0
  215. package/dist/server/services/builders/mutations/collection-type.js.map +1 -0
  216. package/dist/server/services/builders/mutations/collection-type.mjs +153 -0
  217. package/dist/server/services/builders/mutations/collection-type.mjs.map +1 -0
  218. package/dist/server/services/builders/mutations/index.js +12 -0
  219. package/dist/server/services/builders/mutations/index.js.map +1 -0
  220. package/dist/server/services/builders/mutations/index.mjs +10 -0
  221. package/dist/server/services/builders/mutations/index.mjs.map +1 -0
  222. package/dist/server/services/builders/mutations/single-type.js +123 -0
  223. package/dist/server/services/builders/mutations/single-type.js.map +1 -0
  224. package/dist/server/services/builders/mutations/single-type.mjs +121 -0
  225. package/dist/server/services/builders/mutations/single-type.mjs.map +1 -0
  226. package/dist/server/services/builders/queries/collection-type.js +152 -0
  227. package/dist/server/services/builders/queries/collection-type.js.map +1 -0
  228. package/dist/server/services/builders/queries/collection-type.mjs +150 -0
  229. package/dist/server/services/builders/queries/collection-type.mjs.map +1 -0
  230. package/dist/server/services/builders/queries/index.js +12 -0
  231. package/dist/server/services/builders/queries/index.js.map +1 -0
  232. package/dist/server/services/builders/queries/index.mjs +10 -0
  233. package/dist/server/services/builders/queries/index.mjs.map +1 -0
  234. package/dist/server/services/builders/queries/single-type.js +70 -0
  235. package/dist/server/services/builders/queries/single-type.js.map +1 -0
  236. package/dist/server/services/builders/queries/single-type.mjs +68 -0
  237. package/dist/server/services/builders/queries/single-type.mjs.map +1 -0
  238. package/dist/server/services/builders/relation-response-collection.js +35 -0
  239. package/dist/server/services/builders/relation-response-collection.js.map +1 -0
  240. package/dist/server/services/builders/relation-response-collection.mjs +33 -0
  241. package/dist/server/services/builders/relation-response-collection.mjs.map +1 -0
  242. package/dist/server/services/builders/resolvers/association.js +141 -0
  243. package/dist/server/services/builders/resolvers/association.js.map +1 -0
  244. package/dist/server/services/builders/resolvers/association.mjs +139 -0
  245. package/dist/server/services/builders/resolvers/association.mjs.map +1 -0
  246. package/dist/server/services/builders/resolvers/component.js +27 -0
  247. package/dist/server/services/builders/resolvers/component.js.map +1 -0
  248. package/dist/server/services/builders/resolvers/component.mjs +25 -0
  249. package/dist/server/services/builders/resolvers/component.mjs.map +1 -0
  250. package/dist/server/services/builders/resolvers/dynamic-zone.js +12 -0
  251. package/dist/server/services/builders/resolvers/dynamic-zone.js.map +1 -0
  252. package/dist/server/services/builders/resolvers/dynamic-zone.mjs +10 -0
  253. package/dist/server/services/builders/resolvers/dynamic-zone.mjs.map +1 -0
  254. package/dist/server/services/builders/resolvers/index.js +20 -0
  255. package/dist/server/services/builders/resolvers/index.js.map +1 -0
  256. package/dist/server/services/builders/resolvers/index.mjs +18 -0
  257. package/dist/server/services/builders/resolvers/index.mjs.map +1 -0
  258. package/dist/server/services/builders/resolvers/merge-publication-args.js +23 -0
  259. package/dist/server/services/builders/resolvers/merge-publication-args.js.map +1 -0
  260. package/dist/server/services/builders/resolvers/merge-publication-args.mjs +21 -0
  261. package/dist/server/services/builders/resolvers/merge-publication-args.mjs.map +1 -0
  262. package/dist/server/services/builders/resolvers/pagination.js +40 -0
  263. package/dist/server/services/builders/resolvers/pagination.js.map +1 -0
  264. package/dist/server/services/builders/resolvers/pagination.mjs +38 -0
  265. package/dist/server/services/builders/resolvers/pagination.mjs.map +1 -0
  266. package/dist/server/services/builders/resolvers/query.js +62 -0
  267. package/dist/server/services/builders/resolvers/query.js.map +1 -0
  268. package/dist/server/services/builders/resolvers/query.mjs +60 -0
  269. package/dist/server/services/builders/resolvers/query.mjs.map +1 -0
  270. package/dist/server/services/builders/response-collection.js +50 -0
  271. package/dist/server/services/builders/response-collection.js.map +1 -0
  272. package/dist/server/services/builders/response-collection.mjs +48 -0
  273. package/dist/server/services/builders/response-collection.mjs.map +1 -0
  274. package/dist/server/services/builders/response.js +28 -0
  275. package/dist/server/services/builders/response.js.map +1 -0
  276. package/dist/server/services/builders/response.mjs +26 -0
  277. package/dist/server/services/builders/response.mjs.map +1 -0
  278. package/dist/server/services/builders/type.js +345 -0
  279. package/dist/server/services/builders/type.js.map +1 -0
  280. package/dist/server/services/builders/type.mjs +343 -0
  281. package/dist/server/services/builders/type.mjs.map +1 -0
  282. package/dist/server/services/builders/utils.js +132 -0
  283. package/dist/server/services/builders/utils.js.map +1 -0
  284. package/dist/server/services/builders/utils.mjs +130 -0
  285. package/dist/server/services/builders/utils.mjs.map +1 -0
  286. package/dist/server/services/constants.js +141 -0
  287. package/dist/server/services/constants.js.map +1 -0
  288. package/dist/server/services/constants.mjs +139 -0
  289. package/dist/server/services/constants.mjs.map +1 -0
  290. package/dist/server/services/content-api/index.js +198 -0
  291. package/dist/server/services/content-api/index.js.map +1 -0
  292. package/dist/server/services/content-api/index.mjs +196 -0
  293. package/dist/server/services/content-api/index.mjs.map +1 -0
  294. package/dist/server/services/content-api/policy.js +54 -0
  295. package/dist/server/services/content-api/policy.js.map +1 -0
  296. package/dist/server/services/content-api/policy.mjs +52 -0
  297. package/dist/server/services/content-api/policy.mjs.map +1 -0
  298. package/dist/server/services/content-api/register-functions/collection-type.js +41 -0
  299. package/dist/server/services/content-api/register-functions/collection-type.js.map +1 -0
  300. package/dist/server/services/content-api/register-functions/collection-type.mjs +39 -0
  301. package/dist/server/services/content-api/register-functions/collection-type.mjs.map +1 -0
  302. package/dist/server/services/content-api/register-functions/component.js +16 -0
  303. package/dist/server/services/content-api/register-functions/component.js.map +1 -0
  304. package/dist/server/services/content-api/register-functions/component.mjs +14 -0
  305. package/dist/server/services/content-api/register-functions/component.mjs.map +1 -0
  306. package/dist/server/services/content-api/register-functions/dynamic-zones.js +31 -0
  307. package/dist/server/services/content-api/register-functions/dynamic-zones.js.map +1 -0
  308. package/dist/server/services/content-api/register-functions/dynamic-zones.mjs +29 -0
  309. package/dist/server/services/content-api/register-functions/dynamic-zones.mjs.map +1 -0
  310. package/dist/server/services/content-api/register-functions/enums.js +23 -0
  311. package/dist/server/services/content-api/register-functions/enums.js.map +1 -0
  312. package/dist/server/services/content-api/register-functions/enums.mjs +21 -0
  313. package/dist/server/services/content-api/register-functions/enums.mjs.map +1 -0
  314. package/dist/server/services/content-api/register-functions/filters.js +16 -0
  315. package/dist/server/services/content-api/register-functions/filters.js.map +1 -0
  316. package/dist/server/services/content-api/register-functions/filters.mjs +14 -0
  317. package/dist/server/services/content-api/register-functions/filters.mjs.map +1 -0
  318. package/dist/server/services/content-api/register-functions/inputs.js +17 -0
  319. package/dist/server/services/content-api/register-functions/inputs.js.map +1 -0
  320. package/dist/server/services/content-api/register-functions/inputs.mjs +15 -0
  321. package/dist/server/services/content-api/register-functions/inputs.mjs.map +1 -0
  322. package/dist/server/services/content-api/register-functions/internals.js +16 -0
  323. package/dist/server/services/content-api/register-functions/internals.js.map +1 -0
  324. package/dist/server/services/content-api/register-functions/internals.mjs +14 -0
  325. package/dist/server/services/content-api/register-functions/internals.mjs.map +1 -0
  326. package/dist/server/services/content-api/register-functions/polymorphic.js +49 -0
  327. package/dist/server/services/content-api/register-functions/polymorphic.js.map +1 -0
  328. package/dist/server/services/content-api/register-functions/polymorphic.mjs +47 -0
  329. package/dist/server/services/content-api/register-functions/polymorphic.mjs.map +1 -0
  330. package/dist/server/services/content-api/register-functions/scalars.js +15 -0
  331. package/dist/server/services/content-api/register-functions/scalars.js.map +1 -0
  332. package/dist/server/services/content-api/register-functions/scalars.mjs +13 -0
  333. package/dist/server/services/content-api/register-functions/scalars.mjs.map +1 -0
  334. package/dist/server/services/content-api/register-functions/single-type.js +41 -0
  335. package/dist/server/services/content-api/register-functions/single-type.js.map +1 -0
  336. package/dist/server/services/content-api/register-functions/single-type.mjs +39 -0
  337. package/dist/server/services/content-api/register-functions/single-type.mjs.map +1 -0
  338. package/dist/server/services/content-api/wrap-resolvers.js +119 -0
  339. package/dist/server/services/content-api/wrap-resolvers.js.map +1 -0
  340. package/dist/server/services/content-api/wrap-resolvers.mjs +117 -0
  341. package/dist/server/services/content-api/wrap-resolvers.mjs.map +1 -0
  342. package/dist/server/services/extension/extension.js +85 -0
  343. package/dist/server/services/extension/extension.js.map +1 -0
  344. package/dist/server/services/extension/extension.mjs +63 -0
  345. package/dist/server/services/extension/extension.mjs.map +1 -0
  346. package/dist/server/services/extension/index.js +8 -0
  347. package/dist/server/services/extension/index.js.map +1 -0
  348. package/dist/server/services/extension/index.mjs +6 -0
  349. package/dist/server/services/extension/index.mjs.map +1 -0
  350. package/dist/server/services/extension/shadow-crud-manager.js +121 -0
  351. package/dist/server/services/extension/shadow-crud-manager.js.map +1 -0
  352. package/dist/server/services/extension/shadow-crud-manager.mjs +119 -0
  353. package/dist/server/services/extension/shadow-crud-manager.mjs.map +1 -0
  354. package/dist/server/services/format/index.js +10 -0
  355. package/dist/server/services/format/index.js.map +1 -0
  356. package/dist/server/services/format/index.mjs +8 -0
  357. package/dist/server/services/format/index.mjs.map +1 -0
  358. package/dist/server/services/format/return-types.js +27 -0
  359. package/dist/server/services/format/return-types.js.map +1 -0
  360. package/dist/server/services/format/return-types.mjs +25 -0
  361. package/dist/server/services/format/return-types.mjs.map +1 -0
  362. package/dist/server/services/index.js +24 -0
  363. package/dist/server/services/index.js.map +1 -0
  364. package/dist/server/services/index.mjs +22 -0
  365. package/dist/server/services/index.mjs.map +1 -0
  366. package/dist/server/services/internals/args/has-published-version.js +11 -0
  367. package/dist/server/services/internals/args/has-published-version.js.map +1 -0
  368. package/dist/server/services/internals/args/has-published-version.mjs +9 -0
  369. package/dist/server/services/internals/args/has-published-version.mjs.map +1 -0
  370. package/dist/server/services/internals/args/index.js +18 -0
  371. package/dist/server/services/internals/args/index.js.map +1 -0
  372. package/dist/server/services/internals/args/index.mjs +16 -0
  373. package/dist/server/services/internals/args/index.mjs.map +1 -0
  374. package/dist/server/services/internals/args/pagination.js +20 -0
  375. package/dist/server/services/internals/args/pagination.js.map +1 -0
  376. package/dist/server/services/internals/args/pagination.mjs +18 -0
  377. package/dist/server/services/internals/args/pagination.mjs.map +1 -0
  378. package/dist/server/services/internals/args/publication-filter.js +13 -0
  379. package/dist/server/services/internals/args/publication-filter.js.map +1 -0
  380. package/dist/server/services/internals/args/publication-filter.mjs +11 -0
  381. package/dist/server/services/internals/args/publication-filter.mjs.map +1 -0
  382. package/dist/server/services/internals/args/publication-status.js +14 -0
  383. package/dist/server/services/internals/args/publication-status.js.map +1 -0
  384. package/dist/server/services/internals/args/publication-status.mjs +12 -0
  385. package/dist/server/services/internals/args/publication-status.mjs.map +1 -0
  386. package/dist/server/services/internals/args/sort.js +11 -0
  387. package/dist/server/services/internals/args/sort.js.map +1 -0
  388. package/dist/server/services/internals/args/sort.mjs +9 -0
  389. package/dist/server/services/internals/args/sort.mjs.map +1 -0
  390. package/dist/server/services/internals/helpers/get-enabled-scalars.js +13 -0
  391. package/dist/server/services/internals/helpers/get-enabled-scalars.js.map +1 -0
  392. package/dist/server/services/internals/helpers/get-enabled-scalars.mjs +11 -0
  393. package/dist/server/services/internals/helpers/get-enabled-scalars.mjs.map +1 -0
  394. package/dist/server/services/internals/helpers/index.js +10 -0
  395. package/dist/server/services/internals/helpers/index.js.map +1 -0
  396. package/dist/server/services/internals/helpers/index.mjs +8 -0
  397. package/dist/server/services/internals/helpers/index.mjs.map +1 -0
  398. package/dist/server/services/internals/index.js +16 -0
  399. package/dist/server/services/internals/index.js.map +1 -0
  400. package/dist/server/services/internals/index.mjs +14 -0
  401. package/dist/server/services/internals/index.mjs.map +1 -0
  402. package/dist/server/services/internals/scalars/date.js +18 -0
  403. package/dist/server/services/internals/scalars/date.js.map +1 -0
  404. package/dist/server/services/internals/scalars/date.mjs +15 -0
  405. package/dist/server/services/internals/scalars/date.mjs.map +1 -0
  406. package/dist/server/services/internals/scalars/index.js +17 -0
  407. package/dist/server/services/internals/scalars/index.js.map +1 -0
  408. package/dist/server/services/internals/scalars/index.mjs +15 -0
  409. package/dist/server/services/internals/scalars/index.mjs.map +1 -0
  410. package/dist/server/services/internals/scalars/time.js +38 -0
  411. package/dist/server/services/internals/scalars/time.js.map +1 -0
  412. package/dist/server/services/internals/scalars/time.mjs +36 -0
  413. package/dist/server/services/internals/scalars/time.mjs.map +1 -0
  414. package/dist/server/services/internals/types/delete-mutation-response.js +18 -0
  415. package/dist/server/services/internals/types/delete-mutation-response.js.map +1 -0
  416. package/dist/server/services/internals/types/delete-mutation-response.mjs +16 -0
  417. package/dist/server/services/internals/types/delete-mutation-response.mjs.map +1 -0
  418. package/dist/server/services/internals/types/error.js +32 -0
  419. package/dist/server/services/internals/types/error.js.map +1 -0
  420. package/dist/server/services/internals/types/error.mjs +30 -0
  421. package/dist/server/services/internals/types/error.mjs.map +1 -0
  422. package/dist/server/services/internals/types/filters.js +35 -0
  423. package/dist/server/services/internals/types/filters.js.map +1 -0
  424. package/dist/server/services/internals/types/filters.mjs +33 -0
  425. package/dist/server/services/internals/types/filters.mjs.map +1 -0
  426. package/dist/server/services/internals/types/index.js +32 -0
  427. package/dist/server/services/internals/types/index.js.map +1 -0
  428. package/dist/server/services/internals/types/index.mjs +30 -0
  429. package/dist/server/services/internals/types/index.mjs.map +1 -0
  430. package/dist/server/services/internals/types/pagination.js +24 -0
  431. package/dist/server/services/internals/types/pagination.js.map +1 -0
  432. package/dist/server/services/internals/types/pagination.mjs +22 -0
  433. package/dist/server/services/internals/types/pagination.mjs.map +1 -0
  434. package/dist/server/services/internals/types/publication-filter.js +25 -0
  435. package/dist/server/services/internals/types/publication-filter.js.map +1 -0
  436. package/dist/server/services/internals/types/publication-filter.mjs +23 -0
  437. package/dist/server/services/internals/types/publication-filter.mjs.map +1 -0
  438. package/dist/server/services/internals/types/publication-status.js +22 -0
  439. package/dist/server/services/internals/types/publication-status.js.map +1 -0
  440. package/dist/server/services/internals/types/publication-status.mjs +20 -0
  441. package/dist/server/services/internals/types/publication-status.mjs.map +1 -0
  442. package/dist/server/services/internals/types/response-collection-meta.js +27 -0
  443. package/dist/server/services/internals/types/response-collection-meta.js.map +1 -0
  444. package/dist/server/services/internals/types/response-collection-meta.mjs +25 -0
  445. package/dist/server/services/internals/types/response-collection-meta.mjs.map +1 -0
  446. package/dist/server/services/type-registry.js +81 -0
  447. package/dist/server/services/type-registry.js.map +1 -0
  448. package/dist/server/services/type-registry.mjs +79 -0
  449. package/dist/server/services/type-registry.mjs.map +1 -0
  450. package/dist/server/services/utils/attributes.js +65 -0
  451. package/dist/server/services/utils/attributes.js.map +1 -0
  452. package/dist/server/services/utils/attributes.mjs +63 -0
  453. package/dist/server/services/utils/attributes.mjs.map +1 -0
  454. package/dist/server/services/utils/index.js +16 -0
  455. package/dist/server/services/utils/index.js.map +1 -0
  456. package/dist/server/services/utils/index.mjs +14 -0
  457. package/dist/server/services/utils/index.mjs.map +1 -0
  458. package/dist/server/services/utils/mappers/entity-to-response-entity.js +16 -0
  459. package/dist/server/services/utils/mappers/entity-to-response-entity.js.map +1 -0
  460. package/dist/server/services/utils/mappers/entity-to-response-entity.mjs +14 -0
  461. package/dist/server/services/utils/mappers/entity-to-response-entity.mjs.map +1 -0
  462. package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.js +95 -0
  463. package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.js.map +1 -0
  464. package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.mjs +93 -0
  465. package/dist/server/services/utils/mappers/graphql-filters-to-strapi-query.mjs.map +1 -0
  466. package/dist/server/services/utils/mappers/graphql-scalar-to-operators.js +15 -0
  467. package/dist/server/services/utils/mappers/graphql-scalar-to-operators.js.map +1 -0
  468. package/dist/server/services/utils/mappers/graphql-scalar-to-operators.mjs +13 -0
  469. package/dist/server/services/utils/mappers/graphql-scalar-to-operators.mjs.map +1 -0
  470. package/dist/server/services/utils/mappers/index.js +16 -0
  471. package/dist/server/services/utils/mappers/index.js.map +1 -0
  472. package/dist/server/services/utils/mappers/index.mjs +14 -0
  473. package/dist/server/services/utils/mappers/index.mjs.map +1 -0
  474. package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.js +23 -0
  475. package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.js.map +1 -0
  476. package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.mjs +21 -0
  477. package/dist/server/services/utils/mappers/strapi-scalar-to-graphql-scalar.mjs.map +1 -0
  478. package/dist/server/services/utils/naming.js +187 -0
  479. package/dist/server/services/utils/naming.js.map +1 -0
  480. package/dist/server/services/utils/naming.mjs +185 -0
  481. package/dist/server/services/utils/naming.mjs.map +1 -0
  482. package/dist/server/services/utils/playground.js +19 -0
  483. package/dist/server/services/utils/playground.js.map +1 -0
  484. package/dist/server/services/utils/playground.mjs +17 -0
  485. package/dist/server/services/utils/playground.mjs.map +1 -0
  486. package/dist/server/src/bootstrap.d.ts +9 -2
  487. package/dist/server/src/bootstrap.d.ts.map +1 -1
  488. package/dist/server/src/config/default-config.d.ts +1 -0
  489. package/dist/server/src/config/default-config.d.ts.map +1 -1
  490. package/dist/server/src/config/index.d.ts +1 -0
  491. package/dist/server/src/config/index.d.ts.map +1 -1
  492. package/dist/server/src/format-graphql-error.d.ts +7 -3
  493. package/dist/server/src/format-graphql-error.d.ts.map +1 -1
  494. package/dist/server/src/index.d.ts +98 -82
  495. package/dist/server/src/index.d.ts.map +1 -1
  496. package/dist/server/src/services/builders/dynamic-zones.d.ts +2 -6
  497. package/dist/server/src/services/builders/dynamic-zones.d.ts.map +1 -1
  498. package/dist/server/src/services/builders/entity.d.ts.map +1 -1
  499. package/dist/server/src/services/builders/enums.d.ts.map +1 -1
  500. package/dist/server/src/services/builders/filters/content-type.d.ts +2 -2
  501. package/dist/server/src/services/builders/filters/content-type.d.ts.map +1 -1
  502. package/dist/server/src/services/builders/filters/index.d.ts +1 -1
  503. package/dist/server/src/services/builders/filters/index.d.ts.map +1 -1
  504. package/dist/server/src/services/builders/filters/operators/and.d.ts.map +1 -1
  505. package/dist/server/src/services/builders/filters/operators/between.d.ts.map +1 -1
  506. package/dist/server/src/services/builders/filters/operators/contains.d.ts.map +1 -1
  507. package/dist/server/src/services/builders/filters/operators/containsi.d.ts.map +1 -1
  508. package/dist/server/src/services/builders/filters/operators/ends-with.d.ts.map +1 -1
  509. package/dist/server/src/services/builders/filters/operators/eq.d.ts +2 -2
  510. package/dist/server/src/services/builders/filters/operators/eq.d.ts.map +1 -1
  511. package/dist/server/src/services/builders/filters/operators/eqi.d.ts.map +1 -1
  512. package/dist/server/src/services/builders/filters/operators/gt.d.ts.map +1 -1
  513. package/dist/server/src/services/builders/filters/operators/gte.d.ts.map +1 -1
  514. package/dist/server/src/services/builders/filters/operators/in.d.ts.map +1 -1
  515. package/dist/server/src/services/builders/filters/operators/index.d.ts +2 -3
  516. package/dist/server/src/services/builders/filters/operators/index.d.ts.map +1 -1
  517. package/dist/server/src/services/builders/filters/operators/lt.d.ts.map +1 -1
  518. package/dist/server/src/services/builders/filters/operators/lte.d.ts.map +1 -1
  519. package/dist/server/src/services/builders/filters/operators/ne.d.ts.map +1 -1
  520. package/dist/server/src/services/builders/filters/operators/nei.d.ts.map +1 -1
  521. package/dist/server/src/services/builders/filters/operators/not-contains.d.ts.map +1 -1
  522. package/dist/server/src/services/builders/filters/operators/not-containsi.d.ts.map +1 -1
  523. package/dist/server/src/services/builders/filters/operators/not-in.d.ts.map +1 -1
  524. package/dist/server/src/services/builders/filters/operators/not-null.d.ts.map +1 -1
  525. package/dist/server/src/services/builders/filters/operators/not.d.ts +2 -2
  526. package/dist/server/src/services/builders/filters/operators/not.d.ts.map +1 -1
  527. package/dist/server/src/services/builders/filters/operators/null.d.ts.map +1 -1
  528. package/dist/server/src/services/builders/filters/operators/or.d.ts.map +1 -1
  529. package/dist/server/src/services/builders/filters/operators/starts-with.d.ts.map +1 -1
  530. package/dist/server/src/services/builders/generic-morph.d.ts.map +1 -1
  531. package/dist/server/src/services/builders/index.d.ts +16 -19
  532. package/dist/server/src/services/builders/index.d.ts.map +1 -1
  533. package/dist/server/src/services/builders/input.d.ts +2 -2
  534. package/dist/server/src/services/builders/input.d.ts.map +1 -1
  535. package/dist/server/src/services/builders/mutations/collection-type.d.ts +2 -2
  536. package/dist/server/src/services/builders/mutations/collection-type.d.ts.map +1 -1
  537. package/dist/server/src/services/builders/mutations/index.d.ts +2 -2
  538. package/dist/server/src/services/builders/mutations/index.d.ts.map +1 -1
  539. package/dist/server/src/services/builders/mutations/single-type.d.ts +2 -2
  540. package/dist/server/src/services/builders/mutations/single-type.d.ts.map +1 -1
  541. package/dist/server/src/services/builders/queries/collection-type.d.ts +2 -2
  542. package/dist/server/src/services/builders/queries/collection-type.d.ts.map +1 -1
  543. package/dist/server/src/services/builders/queries/index.d.ts +2 -2
  544. package/dist/server/src/services/builders/queries/index.d.ts.map +1 -1
  545. package/dist/server/src/services/builders/queries/single-type.d.ts +2 -2
  546. package/dist/server/src/services/builders/queries/single-type.d.ts.map +1 -1
  547. package/dist/server/src/services/builders/relation-response-collection.d.ts.map +1 -1
  548. package/dist/server/src/services/builders/resolvers/association.d.ts +3 -3
  549. package/dist/server/src/services/builders/resolvers/association.d.ts.map +1 -1
  550. package/dist/server/src/services/builders/resolvers/component.d.ts +2 -2
  551. package/dist/server/src/services/builders/resolvers/component.d.ts.map +1 -1
  552. package/dist/server/src/services/builders/resolvers/dynamic-zone.d.ts +2 -2
  553. package/dist/server/src/services/builders/resolvers/dynamic-zone.d.ts.map +1 -1
  554. package/dist/server/src/services/builders/resolvers/index.d.ts +14 -38
  555. package/dist/server/src/services/builders/resolvers/index.d.ts.map +1 -1
  556. package/dist/server/src/services/builders/resolvers/merge-publication-args.d.ts +9 -0
  557. package/dist/server/src/services/builders/resolvers/merge-publication-args.d.ts.map +1 -0
  558. package/dist/server/src/services/builders/resolvers/pagination.d.ts +11 -0
  559. package/dist/server/src/services/builders/resolvers/pagination.d.ts.map +1 -0
  560. package/dist/server/src/services/builders/resolvers/query.d.ts +3 -14
  561. package/dist/server/src/services/builders/resolvers/query.d.ts.map +1 -1
  562. package/dist/server/src/services/builders/response-collection.d.ts.map +1 -1
  563. package/dist/server/src/services/builders/response.d.ts.map +1 -1
  564. package/dist/server/src/services/builders/type.d.ts +2 -2
  565. package/dist/server/src/services/builders/type.d.ts.map +1 -1
  566. package/dist/server/src/services/builders/utils.d.ts +16 -25
  567. package/dist/server/src/services/builders/utils.d.ts.map +1 -1
  568. package/dist/server/src/services/constants.d.ts +3 -1
  569. package/dist/server/src/services/constants.d.ts.map +1 -1
  570. package/dist/server/src/services/content-api/index.d.ts +4 -2
  571. package/dist/server/src/services/content-api/index.d.ts.map +1 -1
  572. package/dist/server/src/services/content-api/policy.d.ts +3 -3
  573. package/dist/server/src/services/content-api/policy.d.ts.map +1 -1
  574. package/dist/server/src/services/content-api/register-functions/collection-type.d.ts +3 -3
  575. package/dist/server/src/services/content-api/register-functions/collection-type.d.ts.map +1 -1
  576. package/dist/server/src/services/content-api/register-functions/component.d.ts +3 -3
  577. package/dist/server/src/services/content-api/register-functions/component.d.ts.map +1 -1
  578. package/dist/server/src/services/content-api/register-functions/dynamic-zones.d.ts +9 -0
  579. package/dist/server/src/services/content-api/register-functions/dynamic-zones.d.ts.map +1 -0
  580. package/dist/server/src/services/content-api/register-functions/enums.d.ts +9 -0
  581. package/dist/server/src/services/content-api/register-functions/enums.d.ts.map +1 -0
  582. package/dist/server/src/services/content-api/register-functions/filters.d.ts +9 -0
  583. package/dist/server/src/services/content-api/register-functions/filters.d.ts.map +1 -0
  584. package/dist/server/src/services/content-api/register-functions/index.d.ts +5 -2
  585. package/dist/server/src/services/content-api/register-functions/index.d.ts.map +1 -1
  586. package/dist/server/src/services/content-api/register-functions/inputs.d.ts +9 -0
  587. package/dist/server/src/services/content-api/register-functions/inputs.d.ts.map +1 -0
  588. package/dist/server/src/services/content-api/register-functions/internals.d.ts.map +1 -1
  589. package/dist/server/src/services/content-api/register-functions/polymorphic.d.ts +2 -2
  590. package/dist/server/src/services/content-api/register-functions/polymorphic.d.ts.map +1 -1
  591. package/dist/server/src/services/content-api/register-functions/scalars.d.ts.map +1 -1
  592. package/dist/server/src/services/content-api/register-functions/single-type.d.ts +3 -3
  593. package/dist/server/src/services/content-api/register-functions/single-type.d.ts.map +1 -1
  594. package/dist/server/src/services/content-api/wrap-resolvers.d.ts +2 -2
  595. package/dist/server/src/services/content-api/wrap-resolvers.d.ts.map +1 -1
  596. package/dist/server/src/services/extension/extension.d.ts +13 -13
  597. package/dist/server/src/services/extension/extension.d.ts.map +1 -1
  598. package/dist/server/src/services/extension/shadow-crud-manager.d.ts +9 -9
  599. package/dist/server/src/services/extension/shadow-crud-manager.d.ts.map +1 -1
  600. package/dist/server/src/services/index.d.ts +97 -82
  601. package/dist/server/src/services/index.d.ts.map +1 -1
  602. package/dist/server/src/services/internals/args/has-published-version.d.ts +7 -0
  603. package/dist/server/src/services/internals/args/has-published-version.d.ts.map +1 -0
  604. package/dist/server/src/services/internals/args/index.d.ts +4 -1
  605. package/dist/server/src/services/internals/args/index.d.ts.map +1 -1
  606. package/dist/server/src/services/internals/args/publication-filter.d.ts +4 -0
  607. package/dist/server/src/services/internals/args/publication-filter.d.ts.map +1 -0
  608. package/dist/server/src/services/internals/args/{publication-state.d.ts → publication-status.d.ts} +1 -1
  609. package/dist/server/src/services/internals/args/publication-status.d.ts.map +1 -0
  610. package/dist/server/src/services/internals/helpers/get-enabled-scalars.d.ts.map +1 -1
  611. package/dist/server/src/services/internals/helpers/index.d.ts.map +1 -1
  612. package/dist/server/src/services/internals/index.d.ts +21 -10
  613. package/dist/server/src/services/internals/index.d.ts.map +1 -1
  614. package/dist/server/src/services/internals/scalars/index.d.ts +4 -5
  615. package/dist/server/src/services/internals/scalars/index.d.ts.map +1 -1
  616. package/dist/server/src/services/internals/scalars/time.d.ts +1 -1
  617. package/dist/server/src/services/internals/scalars/time.d.ts.map +1 -1
  618. package/dist/server/src/services/internals/types/delete-mutation-response.d.ts +6 -0
  619. package/dist/server/src/services/internals/types/delete-mutation-response.d.ts.map +1 -0
  620. package/dist/server/src/services/internals/types/error.d.ts.map +1 -1
  621. package/dist/server/src/services/internals/types/filters.d.ts.map +1 -1
  622. package/dist/server/src/services/internals/types/index.d.ts +14 -4
  623. package/dist/server/src/services/internals/types/index.d.ts.map +1 -1
  624. package/dist/server/src/services/internals/types/pagination.d.ts.map +1 -1
  625. package/dist/server/src/services/internals/types/publication-filter.d.ts +6 -0
  626. package/dist/server/src/services/internals/types/publication-filter.d.ts.map +1 -0
  627. package/dist/server/src/services/internals/types/publication-status.d.ts +10 -0
  628. package/dist/server/src/services/internals/types/publication-status.d.ts.map +1 -0
  629. package/dist/server/src/services/internals/types/response-collection-meta.d.ts.map +1 -1
  630. package/dist/server/src/services/type-registry.d.ts.map +1 -1
  631. package/dist/server/src/services/types.d.ts +2 -2
  632. package/dist/server/src/services/types.d.ts.map +1 -1
  633. package/dist/server/src/services/utils/attributes.d.ts +4 -4
  634. package/dist/server/src/services/utils/attributes.d.ts.map +1 -1
  635. package/dist/server/src/services/utils/index.d.ts +44 -41
  636. package/dist/server/src/services/utils/index.d.ts.map +1 -1
  637. package/dist/server/src/services/utils/mappers/entity-to-response-entity.d.ts +8 -10
  638. package/dist/server/src/services/utils/mappers/entity-to-response-entity.d.ts.map +1 -1
  639. package/dist/server/src/services/utils/mappers/graphql-filters-to-strapi-query.d.ts +2 -2
  640. package/dist/server/src/services/utils/mappers/graphql-filters-to-strapi-query.d.ts.map +1 -1
  641. package/dist/server/src/services/utils/mappers/graphql-scalar-to-operators.d.ts.map +1 -1
  642. package/dist/server/src/services/utils/mappers/index.d.ts +8 -10
  643. package/dist/server/src/services/utils/mappers/index.d.ts.map +1 -1
  644. package/dist/server/src/services/utils/mappers/strapi-scalar-to-graphql-scalar.d.ts.map +1 -1
  645. package/dist/server/src/services/utils/naming.d.ts +28 -27
  646. package/dist/server/src/services/utils/naming.d.ts.map +1 -1
  647. package/dist/server/src/services/utils/playground.d.ts +7 -0
  648. package/dist/server/src/services/utils/playground.d.ts.map +1 -0
  649. package/package.json +42 -32
  650. package/dist/_chunks/dk-KmLnUoJC.mjs +0 -9
  651. package/dist/_chunks/dk-KmLnUoJC.mjs.map +0 -1
  652. package/dist/_chunks/dk-SLrLqAtl.js +0 -9
  653. package/dist/_chunks/dk-SLrLqAtl.js.map +0 -1
  654. package/dist/_chunks/en-A16mqbIV.mjs +0 -9
  655. package/dist/_chunks/en-A16mqbIV.mjs.map +0 -1
  656. package/dist/_chunks/en-WmmC2MW8.js +0 -9
  657. package/dist/_chunks/en-WmmC2MW8.js.map +0 -1
  658. package/dist/_chunks/es-4tl6ikyU.js +0 -9
  659. package/dist/_chunks/es-4tl6ikyU.js.map +0 -1
  660. package/dist/_chunks/es-_xZ14QXK.mjs +0 -9
  661. package/dist/_chunks/es-_xZ14QXK.mjs.map +0 -1
  662. package/dist/_chunks/fr-4BkQ-Qvt.mjs +0 -9
  663. package/dist/_chunks/fr-4BkQ-Qvt.mjs.map +0 -1
  664. package/dist/_chunks/fr-cJXSt55N.js +0 -9
  665. package/dist/_chunks/fr-cJXSt55N.js.map +0 -1
  666. package/dist/_chunks/pl-TWurBBP_.mjs +0 -9
  667. package/dist/_chunks/pl-TWurBBP_.mjs.map +0 -1
  668. package/dist/_chunks/pl-wKw9Xgkw.js +0 -9
  669. package/dist/_chunks/pl-wKw9Xgkw.js.map +0 -1
  670. package/dist/_chunks/ru-CYAnXR6L.js +0 -9
  671. package/dist/_chunks/ru-CYAnXR6L.js.map +0 -1
  672. package/dist/_chunks/ru-aD804UEo.mjs +0 -9
  673. package/dist/_chunks/ru-aD804UEo.mjs.map +0 -1
  674. package/dist/_chunks/sv-N5RufX6w.mjs +0 -9
  675. package/dist/_chunks/sv-N5RufX6w.mjs.map +0 -1
  676. package/dist/_chunks/sv-XNOe1ctV.js +0 -9
  677. package/dist/_chunks/sv-XNOe1ctV.js.map +0 -1
  678. package/dist/_chunks/tr-POFbAHUC.js +0 -9
  679. package/dist/_chunks/tr-POFbAHUC.js.map +0 -1
  680. package/dist/_chunks/tr-UmSHgD8y.mjs +0 -9
  681. package/dist/_chunks/tr-UmSHgD8y.mjs.map +0 -1
  682. package/dist/_chunks/zh-Hans-ClgXy4wM.mjs +0 -9
  683. package/dist/_chunks/zh-Hans-ClgXy4wM.mjs.map +0 -1
  684. package/dist/_chunks/zh-Hans-pnigVFnS.js +0 -9
  685. package/dist/_chunks/zh-Hans-pnigVFnS.js.map +0 -1
  686. package/dist/_chunks/zh-KvwXXMnA.mjs +0 -9
  687. package/dist/_chunks/zh-KvwXXMnA.mjs.map +0 -1
  688. package/dist/_chunks/zh-kJ_DkSIe.js +0 -9
  689. package/dist/_chunks/zh-kJ_DkSIe.js.map +0 -1
  690. package/dist/server/src/services/builders/entity-meta.d.ts +0 -6
  691. package/dist/server/src/services/builders/entity-meta.d.ts.map +0 -1
  692. package/dist/server/src/services/builders/resolvers/mutation.d.ts +0 -25
  693. package/dist/server/src/services/builders/resolvers/mutation.d.ts.map +0 -1
  694. package/dist/server/src/services/content-api/register-functions/content-type/dynamic-zones.d.ts +0 -9
  695. package/dist/server/src/services/content-api/register-functions/content-type/dynamic-zones.d.ts.map +0 -1
  696. package/dist/server/src/services/content-api/register-functions/content-type/enums.d.ts +0 -9
  697. package/dist/server/src/services/content-api/register-functions/content-type/enums.d.ts.map +0 -1
  698. package/dist/server/src/services/content-api/register-functions/content-type/filters.d.ts +0 -9
  699. package/dist/server/src/services/content-api/register-functions/content-type/filters.d.ts.map +0 -1
  700. package/dist/server/src/services/content-api/register-functions/content-type/index.d.ts +0 -24
  701. package/dist/server/src/services/content-api/register-functions/content-type/index.d.ts.map +0 -1
  702. package/dist/server/src/services/content-api/register-functions/content-type/inputs.d.ts +0 -9
  703. package/dist/server/src/services/content-api/register-functions/content-type/inputs.d.ts.map +0 -1
  704. package/dist/server/src/services/internals/args/publication-state.d.ts.map +0 -1
  705. package/dist/server/src/services/internals/types/publication-state.d.ts +0 -10
  706. package/dist/server/src/services/internals/types/publication-state.d.ts.map +0 -1
  707. package/strapi-server.js +0 -3
@@ -0,0 +1,60 @@
1
+ import { omit } from 'lodash/fp';
2
+ import { mergePublicationFilterFromGraphQLArgs } from './merge-publication-args.mjs';
3
+
4
+ /** Merge sanitized query with resolver args so GraphQL-coerced publication args are not dropped. */ const mergeDocumentListParams = (sanitizedQuery, args)=>{
5
+ const { status, ...rest } = sanitizedQuery;
6
+ const merged = {
7
+ ...rest,
8
+ status: status ?? 'published'
9
+ };
10
+ const { publicationFilter } = mergePublicationFilterFromGraphQLArgs(args);
11
+ if (publicationFilter !== undefined) {
12
+ merged.publicationFilter = publicationFilter;
13
+ }
14
+ return merged;
15
+ };
16
+ var queriesResolvers = (({ strapi })=>({
17
+ buildQueriesResolvers ({ contentType }) {
18
+ const { uid } = contentType;
19
+ return {
20
+ async findMany (parent, args, ctx) {
21
+ await strapi.contentAPI.validate.query(args, contentType, {
22
+ auth: ctx?.state?.auth
23
+ });
24
+ const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
25
+ auth: ctx?.state?.auth
26
+ });
27
+ return strapi.documents(uid).findMany(mergeDocumentListParams(sanitizedQuery, args));
28
+ },
29
+ async findFirst (parent, args, ctx) {
30
+ await strapi.contentAPI.validate.query(args, contentType, {
31
+ auth: ctx?.state?.auth
32
+ });
33
+ const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
34
+ auth: ctx?.state?.auth
35
+ });
36
+ return strapi.documents(uid).findFirst(mergeDocumentListParams(sanitizedQuery, args));
37
+ },
38
+ async findOne (parent, args, ctx) {
39
+ const { documentId } = args;
40
+ await strapi.contentAPI.validate.query(args, contentType, {
41
+ auth: ctx?.state?.auth
42
+ });
43
+ const sanitizedQuery = await strapi.contentAPI.sanitize.query(args, contentType, {
44
+ auth: ctx?.state?.auth
45
+ });
46
+ const merged = mergeDocumentListParams(omit([
47
+ 'id',
48
+ 'documentId'
49
+ ], sanitizedQuery), args);
50
+ return strapi.documents(uid).findOne({
51
+ ...merged,
52
+ documentId
53
+ });
54
+ }
55
+ };
56
+ }
57
+ }));
58
+
59
+ export { queriesResolvers as default };
60
+ //# sourceMappingURL=query.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.mjs","sources":["../../../../../server/src/services/builders/resolvers/query.ts"],"sourcesContent":["import { omit } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../../types';\n\nimport { mergePublicationFilterFromGraphQLArgs } from './merge-publication-args';\n\n/** Merge sanitized query with resolver args so GraphQL-coerced publication args are not dropped. */\nconst mergeDocumentListParams = (\n sanitizedQuery: Record<string, unknown>,\n args: Record<string, unknown>\n) => {\n const { status, ...rest } = sanitizedQuery;\n\n const merged: Record<string, unknown> = {\n ...rest,\n status: (status as 'draft' | 'published' | undefined) ?? 'published',\n };\n\n const { publicationFilter } = mergePublicationFilterFromGraphQLArgs(args);\n if (publicationFilter !== undefined) {\n merged.publicationFilter = publicationFilter;\n }\n\n return merged;\n};\n\nexport default ({ strapi }: Context) => ({\n buildQueriesResolvers({ contentType }: { contentType: Schema.ContentType }) {\n const { uid } = contentType;\n\n return {\n async findMany(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findMany(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findFirst(parent: any, args: any, ctx: any) {\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n return strapi.documents!(uid).findFirst(\n mergeDocumentListParams(sanitizedQuery, args) as any\n );\n },\n\n async findOne(parent: any, args: any, ctx: any) {\n const { documentId } = args;\n\n await strapi.contentAPI.validate.query(args, contentType, {\n auth: ctx?.state?.auth,\n });\n\n const sanitizedQuery = (await strapi.contentAPI.sanitize.query(args, contentType, {\n auth: ctx?.state?.auth,\n })) as Record<string, unknown>;\n\n const merged = mergeDocumentListParams(\n omit(['id', 'documentId'], sanitizedQuery) as Record<string, unknown>,\n args\n );\n\n return strapi.documents!(uid).findOne({ ...merged, documentId } as any);\n },\n };\n },\n});\n"],"names":["mergeDocumentListParams","sanitizedQuery","args","status","rest","merged","publicationFilter","mergePublicationFilterFromGraphQLArgs","undefined","strapi","buildQueriesResolvers","contentType","uid","findMany","parent","ctx","contentAPI","validate","query","auth","state","sanitize","documents","findFirst","findOne","documentId","omit"],"mappings":";;;AAMA,qGACA,MAAMA,uBAAAA,GAA0B,CAC9BC,cAAAA,EACAC,IAAAA,GAAAA;AAEA,IAAA,MAAM,EAAEC,MAAM,EAAE,GAAGC,MAAM,GAAGH,cAAAA;AAE5B,IAAA,MAAMI,MAAAA,GAAkC;AACtC,QAAA,GAAGD,IAAI;AACPD,QAAAA,MAAAA,EAAQ,MAACA,IAAgD;AAC3D,KAAA;AAEA,IAAA,MAAM,EAAEG,iBAAiB,EAAE,GAAGC,qCAAAA,CAAsCL,IAAAA,CAAAA;AACpE,IAAA,IAAII,sBAAsBE,SAAAA,EAAW;AACnCH,QAAAA,MAAAA,CAAOC,iBAAiB,GAAGA,iBAAAA;AAC7B,IAAA;IAEA,OAAOD,MAAAA;AACT,CAAA;AAEA,uBAAe,CAAA,CAAC,EAAEI,MAAM,EAAW,IAAM;QACvCC,qBAAAA,CAAAA,CAAsB,EAAEC,WAAW,EAAuC,EAAA;YACxE,MAAM,EAAEC,GAAG,EAAE,GAAGD,WAAAA;YAEhB,OAAO;AACL,gBAAA,MAAME,QAAAA,CAAAA,CAASC,MAAW,EAAEZ,IAAS,EAAEa,GAAQ,EAAA;oBAC7C,MAAMN,MAAAA,CAAOO,UAAU,CAACC,QAAQ,CAACC,KAAK,CAAChB,MAAMS,WAAAA,EAAa;AACxDQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAMlB,cAAAA,GAAkB,MAAMQ,MAAAA,CAAOO,UAAU,CAACK,QAAQ,CAACH,KAAK,CAAChB,IAAAA,EAAMS,WAAAA,EAAa;AAChFQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOV,OAAOa,SAAS,CAAEV,KAAKC,QAAQ,CACpCb,wBAAwBC,cAAAA,EAAgBC,IAAAA,CAAAA,CAAAA;AAE5C,gBAAA,CAAA;AAEA,gBAAA,MAAMqB,SAAAA,CAAAA,CAAUT,MAAW,EAAEZ,IAAS,EAAEa,GAAQ,EAAA;oBAC9C,MAAMN,MAAAA,CAAOO,UAAU,CAACC,QAAQ,CAACC,KAAK,CAAChB,MAAMS,WAAAA,EAAa;AACxDQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAMlB,cAAAA,GAAkB,MAAMQ,MAAAA,CAAOO,UAAU,CAACK,QAAQ,CAACH,KAAK,CAAChB,IAAAA,EAAMS,WAAAA,EAAa;AAChFQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;AAEA,oBAAA,OAAOV,OAAOa,SAAS,CAAEV,KAAKW,SAAS,CACrCvB,wBAAwBC,cAAAA,EAAgBC,IAAAA,CAAAA,CAAAA;AAE5C,gBAAA,CAAA;AAEA,gBAAA,MAAMsB,OAAAA,CAAAA,CAAQV,MAAW,EAAEZ,IAAS,EAAEa,GAAQ,EAAA;oBAC5C,MAAM,EAAEU,UAAU,EAAE,GAAGvB,IAAAA;oBAEvB,MAAMO,MAAAA,CAAOO,UAAU,CAACC,QAAQ,CAACC,KAAK,CAAChB,MAAMS,WAAAA,EAAa;AACxDQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAMlB,cAAAA,GAAkB,MAAMQ,MAAAA,CAAOO,UAAU,CAACK,QAAQ,CAACH,KAAK,CAAChB,IAAAA,EAAMS,WAAAA,EAAa;AAChFQ,wBAAAA,IAAAA,EAAMJ,KAAKK,KAAAA,EAAOD;AACpB,qBAAA,CAAA;oBAEA,MAAMd,MAAAA,GAASL,wBACb0B,IAAAA,CAAK;AAAC,wBAAA,IAAA;AAAM,wBAAA;AAAa,qBAAA,EAAEzB,cAAAA,CAAAA,EAC3BC,IAAAA,CAAAA;AAGF,oBAAA,OAAOO,MAAAA,CAAOa,SAAS,CAAEV,GAAAA,CAAAA,CAAKY,OAAO,CAAC;AAAE,wBAAA,GAAGnB,MAAM;AAAEoB,wBAAAA;AAAW,qBAAA,CAAA;AAChE,gBAAA;AACF,aAAA;AACF,QAAA;AACF,KAAA,CAAC;;;;"}
@@ -0,0 +1,50 @@
1
+ 'use strict';
2
+
3
+ var nexus = require('nexus');
4
+ var fp = require('lodash/fp');
5
+
6
+ var responseCollection = (({ strapi })=>{
7
+ const { service: getService } = strapi.plugin('graphql');
8
+ const { naming } = getService('utils');
9
+ const { RESPONSE_COLLECTION_META_TYPE_NAME, PAGINATION_TYPE_NAME } = getService('constants');
10
+ return {
11
+ /**
12
+ * Build a type definition for a content API collection response for a given content type
13
+ * @param {Schema.ContentType} contentType The content type which will be used to build its content API response definition
14
+ * @return {NexusObjectTypeDef}
15
+ */ buildResponseCollectionDefinition (contentType) {
16
+ const name = naming.getEntityResponseCollectionName(contentType);
17
+ const typeName = naming.getTypeName(contentType);
18
+ const { resolvePagination } = getService('builders').get('content-api');
19
+ return nexus.objectType({
20
+ name,
21
+ definition (t) {
22
+ // NOTE: add edges & cursor based pagination to support the relay spec in a later version
23
+ t.nonNull.list.field('nodes', {
24
+ type: nexus.nonNull(typeName),
25
+ resolve: fp.pipe(fp.prop('nodes'), fp.defaultTo([]))
26
+ });
27
+ t.nonNull.field('pageInfo', {
28
+ type: PAGINATION_TYPE_NAME,
29
+ resolve: resolvePagination
30
+ });
31
+ if (strapi.plugin('graphql').config('v4CompatibilityMode', false)) {
32
+ t.nonNull.list.field('data', {
33
+ deprecation: 'Use `nodes` field instead',
34
+ type: nexus.nonNull(typeName),
35
+ resolve: fp.pipe(fp.prop('nodes'), fp.defaultTo([]))
36
+ });
37
+ t.nonNull.field('meta', {
38
+ deprecation: 'Use the `pageInfo` field instead',
39
+ type: RESPONSE_COLLECTION_META_TYPE_NAME,
40
+ resolve: fp.identity
41
+ });
42
+ }
43
+ }
44
+ });
45
+ }
46
+ };
47
+ });
48
+
49
+ module.exports = responseCollection;
50
+ //# sourceMappingURL=response-collection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-collection.js","sources":["../../../../server/src/services/builders/response-collection.ts"],"sourcesContent":["import { objectType, nonNull } from 'nexus';\nimport { defaultTo, prop, pipe, identity } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../types';\n\nexport default ({ strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { RESPONSE_COLLECTION_META_TYPE_NAME, PAGINATION_TYPE_NAME } = getService('constants');\n\n return {\n /**\n * Build a type definition for a content API collection response for a given content type\n * @param {Schema.ContentType} contentType The content type which will be used to build its content API response definition\n * @return {NexusObjectTypeDef}\n */\n buildResponseCollectionDefinition(contentType: Schema.ContentType) {\n const name = naming.getEntityResponseCollectionName(contentType);\n const typeName = naming.getTypeName(contentType);\n const { resolvePagination } = getService('builders').get('content-api');\n\n return objectType({\n name,\n definition(t) {\n // NOTE: add edges & cursor based pagination to support the relay spec in a later version\n\n t.nonNull.list.field('nodes', {\n type: nonNull(typeName),\n resolve: pipe(prop('nodes'), defaultTo([])),\n });\n\n t.nonNull.field('pageInfo', {\n type: PAGINATION_TYPE_NAME,\n resolve: resolvePagination,\n });\n\n if (strapi.plugin('graphql').config('v4CompatibilityMode', false)) {\n t.nonNull.list.field('data', {\n deprecation: 'Use `nodes` field instead',\n type: nonNull(typeName),\n resolve: pipe(prop('nodes'), defaultTo([])),\n });\n\n t.nonNull.field('meta', {\n deprecation: 'Use the `pageInfo` field instead',\n type: RESPONSE_COLLECTION_META_TYPE_NAME,\n resolve: identity,\n });\n }\n },\n });\n },\n };\n};\n"],"names":["strapi","service","getService","plugin","naming","RESPONSE_COLLECTION_META_TYPE_NAME","PAGINATION_TYPE_NAME","buildResponseCollectionDefinition","contentType","name","getEntityResponseCollectionName","typeName","getTypeName","resolvePagination","get","objectType","definition","t","nonNull","list","field","type","resolve","pipe","prop","defaultTo","config","deprecation","identity"],"mappings":";;;;;AAKA,yBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;AACjC,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;AAE9C,IAAA,MAAM,EAAEC,MAAM,EAAE,GAAGF,UAAAA,CAAW,OAAA,CAAA;AAC9B,IAAA,MAAM,EAAEG,kCAAkC,EAAEC,oBAAoB,EAAE,GAAGJ,UAAAA,CAAW,WAAA,CAAA;IAEhF,OAAO;AACL;;;;AAIC,QACDK,mCAAkCC,WAA+B,EAAA;YAC/D,MAAMC,IAAAA,GAAOL,MAAAA,CAAOM,+BAA+B,CAACF,WAAAA,CAAAA;YACpD,MAAMG,QAAAA,GAAWP,MAAAA,CAAOQ,WAAW,CAACJ,WAAAA,CAAAA;AACpC,YAAA,MAAM,EAAEK,iBAAiB,EAAE,GAAGX,UAAAA,CAAW,UAAA,CAAA,CAAYY,GAAG,CAAC,aAAA,CAAA;AAEzD,YAAA,OAAOC,gBAAAA,CAAW;AAChBN,gBAAAA,IAAAA;AACAO,gBAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;;AAGVA,oBAAAA,CAAAA,CAAEC,OAAO,CAACC,IAAI,CAACC,KAAK,CAAC,OAAA,EAAS;AAC5BC,wBAAAA,IAAAA,EAAMH,aAAAA,CAAQP,QAAAA,CAAAA;AACdW,wBAAAA,OAAAA,EAASC,OAAAA,CAAKC,OAAAA,CAAK,OAAA,CAAA,EAAUC,YAAAA,CAAU,EAAE,CAAA;AAC3C,qBAAA,CAAA;AAEAR,oBAAAA,CAAAA,CAAEC,OAAO,CAACE,KAAK,CAAC,UAAA,EAAY;wBAC1BC,IAAAA,EAAMf,oBAAAA;wBACNgB,OAAAA,EAAST;AACX,qBAAA,CAAA;AAEA,oBAAA,IAAIb,OAAOG,MAAM,CAAC,WAAWuB,MAAM,CAAC,uBAAuB,KAAA,CAAA,EAAQ;AACjET,wBAAAA,CAAAA,CAAEC,OAAO,CAACC,IAAI,CAACC,KAAK,CAAC,MAAA,EAAQ;4BAC3BO,WAAAA,EAAa,2BAAA;AACbN,4BAAAA,IAAAA,EAAMH,aAAAA,CAAQP,QAAAA,CAAAA;AACdW,4BAAAA,OAAAA,EAASC,OAAAA,CAAKC,OAAAA,CAAK,OAAA,CAAA,EAAUC,YAAAA,CAAU,EAAE,CAAA;AAC3C,yBAAA,CAAA;AAEAR,wBAAAA,CAAAA,CAAEC,OAAO,CAACE,KAAK,CAAC,MAAA,EAAQ;4BACtBO,WAAAA,EAAa,kCAAA;4BACbN,IAAAA,EAAMhB,kCAAAA;4BACNiB,OAAAA,EAASM;AACX,yBAAA,CAAA;AACF,oBAAA;AACF,gBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,48 @@
1
+ import { objectType, nonNull } from 'nexus';
2
+ import { pipe, prop, defaultTo, identity } from 'lodash/fp';
3
+
4
+ var responseCollection = (({ strapi })=>{
5
+ const { service: getService } = strapi.plugin('graphql');
6
+ const { naming } = getService('utils');
7
+ const { RESPONSE_COLLECTION_META_TYPE_NAME, PAGINATION_TYPE_NAME } = getService('constants');
8
+ return {
9
+ /**
10
+ * Build a type definition for a content API collection response for a given content type
11
+ * @param {Schema.ContentType} contentType The content type which will be used to build its content API response definition
12
+ * @return {NexusObjectTypeDef}
13
+ */ buildResponseCollectionDefinition (contentType) {
14
+ const name = naming.getEntityResponseCollectionName(contentType);
15
+ const typeName = naming.getTypeName(contentType);
16
+ const { resolvePagination } = getService('builders').get('content-api');
17
+ return objectType({
18
+ name,
19
+ definition (t) {
20
+ // NOTE: add edges & cursor based pagination to support the relay spec in a later version
21
+ t.nonNull.list.field('nodes', {
22
+ type: nonNull(typeName),
23
+ resolve: pipe(prop('nodes'), defaultTo([]))
24
+ });
25
+ t.nonNull.field('pageInfo', {
26
+ type: PAGINATION_TYPE_NAME,
27
+ resolve: resolvePagination
28
+ });
29
+ if (strapi.plugin('graphql').config('v4CompatibilityMode', false)) {
30
+ t.nonNull.list.field('data', {
31
+ deprecation: 'Use `nodes` field instead',
32
+ type: nonNull(typeName),
33
+ resolve: pipe(prop('nodes'), defaultTo([]))
34
+ });
35
+ t.nonNull.field('meta', {
36
+ deprecation: 'Use the `pageInfo` field instead',
37
+ type: RESPONSE_COLLECTION_META_TYPE_NAME,
38
+ resolve: identity
39
+ });
40
+ }
41
+ }
42
+ });
43
+ }
44
+ };
45
+ });
46
+
47
+ export { responseCollection as default };
48
+ //# sourceMappingURL=response-collection.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response-collection.mjs","sources":["../../../../server/src/services/builders/response-collection.ts"],"sourcesContent":["import { objectType, nonNull } from 'nexus';\nimport { defaultTo, prop, pipe, identity } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../types';\n\nexport default ({ strapi }: Context) => {\n const { service: getService } = strapi.plugin('graphql');\n\n const { naming } = getService('utils');\n const { RESPONSE_COLLECTION_META_TYPE_NAME, PAGINATION_TYPE_NAME } = getService('constants');\n\n return {\n /**\n * Build a type definition for a content API collection response for a given content type\n * @param {Schema.ContentType} contentType The content type which will be used to build its content API response definition\n * @return {NexusObjectTypeDef}\n */\n buildResponseCollectionDefinition(contentType: Schema.ContentType) {\n const name = naming.getEntityResponseCollectionName(contentType);\n const typeName = naming.getTypeName(contentType);\n const { resolvePagination } = getService('builders').get('content-api');\n\n return objectType({\n name,\n definition(t) {\n // NOTE: add edges & cursor based pagination to support the relay spec in a later version\n\n t.nonNull.list.field('nodes', {\n type: nonNull(typeName),\n resolve: pipe(prop('nodes'), defaultTo([])),\n });\n\n t.nonNull.field('pageInfo', {\n type: PAGINATION_TYPE_NAME,\n resolve: resolvePagination,\n });\n\n if (strapi.plugin('graphql').config('v4CompatibilityMode', false)) {\n t.nonNull.list.field('data', {\n deprecation: 'Use `nodes` field instead',\n type: nonNull(typeName),\n resolve: pipe(prop('nodes'), defaultTo([])),\n });\n\n t.nonNull.field('meta', {\n deprecation: 'Use the `pageInfo` field instead',\n type: RESPONSE_COLLECTION_META_TYPE_NAME,\n resolve: identity,\n });\n }\n },\n });\n },\n };\n};\n"],"names":["strapi","service","getService","plugin","naming","RESPONSE_COLLECTION_META_TYPE_NAME","PAGINATION_TYPE_NAME","buildResponseCollectionDefinition","contentType","name","getEntityResponseCollectionName","typeName","getTypeName","resolvePagination","get","objectType","definition","t","nonNull","list","field","type","resolve","pipe","prop","defaultTo","config","deprecation","identity"],"mappings":";;;AAKA,yBAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;AACjC,IAAA,MAAM,EAAEC,OAAAA,EAASC,UAAU,EAAE,GAAGF,MAAAA,CAAOG,MAAM,CAAC,SAAA,CAAA;AAE9C,IAAA,MAAM,EAAEC,MAAM,EAAE,GAAGF,UAAAA,CAAW,OAAA,CAAA;AAC9B,IAAA,MAAM,EAAEG,kCAAkC,EAAEC,oBAAoB,EAAE,GAAGJ,UAAAA,CAAW,WAAA,CAAA;IAEhF,OAAO;AACL;;;;AAIC,QACDK,mCAAkCC,WAA+B,EAAA;YAC/D,MAAMC,IAAAA,GAAOL,MAAAA,CAAOM,+BAA+B,CAACF,WAAAA,CAAAA;YACpD,MAAMG,QAAAA,GAAWP,MAAAA,CAAOQ,WAAW,CAACJ,WAAAA,CAAAA;AACpC,YAAA,MAAM,EAAEK,iBAAiB,EAAE,GAAGX,UAAAA,CAAW,UAAA,CAAA,CAAYY,GAAG,CAAC,aAAA,CAAA;AAEzD,YAAA,OAAOC,UAAAA,CAAW;AAChBN,gBAAAA,IAAAA;AACAO,gBAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;;AAGVA,oBAAAA,CAAAA,CAAEC,OAAO,CAACC,IAAI,CAACC,KAAK,CAAC,OAAA,EAAS;AAC5BC,wBAAAA,IAAAA,EAAMH,OAAAA,CAAQP,QAAAA,CAAAA;AACdW,wBAAAA,OAAAA,EAASC,IAAAA,CAAKC,IAAAA,CAAK,OAAA,CAAA,EAAUC,SAAAA,CAAU,EAAE,CAAA;AAC3C,qBAAA,CAAA;AAEAR,oBAAAA,CAAAA,CAAEC,OAAO,CAACE,KAAK,CAAC,UAAA,EAAY;wBAC1BC,IAAAA,EAAMf,oBAAAA;wBACNgB,OAAAA,EAAST;AACX,qBAAA,CAAA;AAEA,oBAAA,IAAIb,OAAOG,MAAM,CAAC,WAAWuB,MAAM,CAAC,uBAAuB,KAAA,CAAA,EAAQ;AACjET,wBAAAA,CAAAA,CAAEC,OAAO,CAACC,IAAI,CAACC,KAAK,CAAC,MAAA,EAAQ;4BAC3BO,WAAAA,EAAa,2BAAA;AACbN,4BAAAA,IAAAA,EAAMH,OAAAA,CAAQP,QAAAA,CAAAA;AACdW,4BAAAA,OAAAA,EAASC,IAAAA,CAAKC,IAAAA,CAAK,OAAA,CAAA,EAAUC,SAAAA,CAAU,EAAE,CAAA;AAC3C,yBAAA,CAAA;AAEAR,wBAAAA,CAAAA,CAAEC,OAAO,CAACE,KAAK,CAAC,MAAA,EAAQ;4BACtBO,WAAAA,EAAa,kCAAA;4BACbN,IAAAA,EAAMhB,kCAAAA;4BACNiB,OAAAA,EAASM;AACX,yBAAA,CAAA;AACF,oBAAA;AACF,gBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+
3
+ var nexus = require('nexus');
4
+ var fp = require('lodash/fp');
5
+
6
+ var response = (({ strapi })=>{
7
+ const { naming } = strapi.plugin('graphql').service('utils');
8
+ return {
9
+ /**
10
+ * Build a type definition for a content API response for a given content type
11
+ */ buildResponseDefinition (contentType) {
12
+ const name = naming.getEntityResponseName(contentType);
13
+ const typeName = naming.getTypeName(contentType);
14
+ return nexus.objectType({
15
+ name,
16
+ definition (t) {
17
+ t.field('data', {
18
+ type: typeName,
19
+ resolve: fp.prop('value')
20
+ });
21
+ }
22
+ });
23
+ }
24
+ };
25
+ });
26
+
27
+ module.exports = response;
28
+ //# sourceMappingURL=response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.js","sources":["../../../../server/src/services/builders/response.ts"],"sourcesContent":["import { objectType } from 'nexus';\nimport { prop } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../types';\n\nexport default ({ strapi }: Context) => {\n const { naming } = strapi.plugin('graphql').service('utils');\n\n return {\n /**\n * Build a type definition for a content API response for a given content type\n */\n buildResponseDefinition(contentType: Schema.ContentType) {\n const name = naming.getEntityResponseName(contentType);\n const typeName = naming.getTypeName(contentType);\n\n return objectType({\n name,\n\n definition(t) {\n t.field('data', {\n type: typeName,\n\n resolve: prop('value'),\n });\n },\n });\n },\n };\n};\n"],"names":["strapi","naming","plugin","service","buildResponseDefinition","contentType","name","getEntityResponseName","typeName","getTypeName","objectType","definition","t","field","type","resolve","prop"],"mappings":";;;;;AAKA,eAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,OAAA,CAAA;IAEpD,OAAO;AACL;;AAEC,QACDC,yBAAwBC,WAA+B,EAAA;YACrD,MAAMC,IAAAA,GAAOL,MAAAA,CAAOM,qBAAqB,CAACF,WAAAA,CAAAA;YAC1C,MAAMG,QAAAA,GAAWP,MAAAA,CAAOQ,WAAW,CAACJ,WAAAA,CAAAA;AAEpC,YAAA,OAAOK,gBAAAA,CAAW;AAChBJ,gBAAAA,IAAAA;AAEAK,gBAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;oBACVA,CAAAA,CAAEC,KAAK,CAAC,MAAA,EAAQ;wBACdC,IAAAA,EAAMN,QAAAA;AAENO,wBAAAA,OAAAA,EAASC,OAAAA,CAAK,OAAA;AAChB,qBAAA,CAAA;AACF,gBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,26 @@
1
+ import { objectType } from 'nexus';
2
+ import { prop } from 'lodash/fp';
3
+
4
+ var response = (({ strapi })=>{
5
+ const { naming } = strapi.plugin('graphql').service('utils');
6
+ return {
7
+ /**
8
+ * Build a type definition for a content API response for a given content type
9
+ */ buildResponseDefinition (contentType) {
10
+ const name = naming.getEntityResponseName(contentType);
11
+ const typeName = naming.getTypeName(contentType);
12
+ return objectType({
13
+ name,
14
+ definition (t) {
15
+ t.field('data', {
16
+ type: typeName,
17
+ resolve: prop('value')
18
+ });
19
+ }
20
+ });
21
+ }
22
+ };
23
+ });
24
+
25
+ export { response as default };
26
+ //# sourceMappingURL=response.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.mjs","sources":["../../../../server/src/services/builders/response.ts"],"sourcesContent":["import { objectType } from 'nexus';\nimport { prop } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport type { Context } from '../types';\n\nexport default ({ strapi }: Context) => {\n const { naming } = strapi.plugin('graphql').service('utils');\n\n return {\n /**\n * Build a type definition for a content API response for a given content type\n */\n buildResponseDefinition(contentType: Schema.ContentType) {\n const name = naming.getEntityResponseName(contentType);\n const typeName = naming.getTypeName(contentType);\n\n return objectType({\n name,\n\n definition(t) {\n t.field('data', {\n type: typeName,\n\n resolve: prop('value'),\n });\n },\n });\n },\n };\n};\n"],"names":["strapi","naming","plugin","service","buildResponseDefinition","contentType","name","getEntityResponseName","typeName","getTypeName","objectType","definition","t","field","type","resolve","prop"],"mappings":";;;AAKA,eAAe,CAAA,CAAC,EAAEA,MAAM,EAAW,GAAA;IACjC,MAAM,EAAEC,MAAM,EAAE,GAAGD,OAAOE,MAAM,CAAC,SAAA,CAAA,CAAWC,OAAO,CAAC,OAAA,CAAA;IAEpD,OAAO;AACL;;AAEC,QACDC,yBAAwBC,WAA+B,EAAA;YACrD,MAAMC,IAAAA,GAAOL,MAAAA,CAAOM,qBAAqB,CAACF,WAAAA,CAAAA;YAC1C,MAAMG,QAAAA,GAAWP,MAAAA,CAAOQ,WAAW,CAACJ,WAAAA,CAAAA;AAEpC,YAAA,OAAOK,UAAAA,CAAW;AAChBJ,gBAAAA,IAAAA;AAEAK,gBAAAA,UAAAA,CAAAA,CAAWC,CAAC,EAAA;oBACVA,CAAAA,CAAEC,KAAK,CAAC,MAAA,EAAQ;wBACdC,IAAAA,EAAMN,QAAAA;AAENO,wBAAAA,OAAAA,EAASC,IAAAA,CAAK,OAAA;AAChB,qBAAA,CAAA;AACF,gBAAA;AACF,aAAA,CAAA;AACF,QAAA;AACF,KAAA;AACF,CAAA;;;;"}
@@ -0,0 +1,345 @@
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var nexus = require('nexus');
5
+ var utils = require('@strapi/utils');
6
+
7
+ var typeBuilder = ((context)=>{
8
+ const { strapi } = context;
9
+ const getGraphQLService = strapi.plugin('graphql').service;
10
+ const extension = getGraphQLService('extension');
11
+ /**
12
+ * Add a scalar attribute to the type definition
13
+ *
14
+ * The attribute is added based on a simple association between a Strapi
15
+ * type and a GraphQL type (the map is defined in `strapiTypeToGraphQLScalar`)
16
+ */ const addScalarAttribute = (options)=>{
17
+ const { builder, attributeName, attribute } = options;
18
+ const { mappers } = getGraphQLService('utils');
19
+ const gqlType = mappers.strapiScalarToGraphQLScalar(attribute.type);
20
+ builder.field(attributeName, {
21
+ type: gqlType
22
+ });
23
+ };
24
+ /**
25
+ * Add a component attribute to the type definition
26
+ *
27
+ * The attribute is added by fetching the component's type
28
+ * name and using it as the attribute's type
29
+ */ const addComponentAttribute = (options)=>{
30
+ const { builder, attributeName, contentType, attribute } = options;
31
+ let localBuilder = builder;
32
+ const { naming } = getGraphQLService('utils');
33
+ const { getContentTypeArgs } = getGraphQLService('builders').utils;
34
+ const { buildComponentResolver } = getGraphQLService('builders').get('content-api');
35
+ const type = naming.getComponentNameFromAttribute(attribute);
36
+ if (attribute.repeatable) {
37
+ localBuilder = localBuilder.list;
38
+ }
39
+ const targetComponent = strapi.getModel(attribute.component);
40
+ const resolve = buildComponentResolver({
41
+ contentTypeUID: contentType.uid,
42
+ attributeName,
43
+ strapi
44
+ });
45
+ const args = getContentTypeArgs(targetComponent, {
46
+ multiple: !!attribute.repeatable,
47
+ isNested: true
48
+ });
49
+ localBuilder.field(attributeName, {
50
+ type,
51
+ resolve,
52
+ args
53
+ });
54
+ };
55
+ /**
56
+ * Add a dynamic zone attribute to the type definition
57
+ *
58
+ * The attribute is added by fetching the dynamic zone's
59
+ * type name and using it as the attribute's type
60
+ */ const addDynamicZoneAttribute = (options)=>{
61
+ const { builder, attributeName, contentType } = options;
62
+ const { naming } = getGraphQLService('utils');
63
+ const { ERROR_CODES } = getGraphQLService('constants');
64
+ const { buildDynamicZoneResolver } = getGraphQLService('builders').get('content-api');
65
+ const { components } = contentType.attributes[attributeName];
66
+ const isEmpty = components.length === 0;
67
+ const type = naming.getDynamicZoneName(contentType, attributeName);
68
+ const resolve = isEmpty ? fp.constant({
69
+ code: ERROR_CODES.emptyDynamicZone,
70
+ message: `This dynamic zone don't have any component attached to it`
71
+ }) : buildDynamicZoneResolver({
72
+ contentTypeUID: contentType.uid,
73
+ attributeName
74
+ });
75
+ builder.list.field(attributeName, {
76
+ type,
77
+ resolve
78
+ });
79
+ };
80
+ /**
81
+ * Add an enum attribute to the type definition
82
+ *
83
+ * The attribute is added by fetching the enum's type
84
+ * name and using it as the attribute's type
85
+ */ const addEnumAttribute = (options)=>{
86
+ const { builder, attributeName, contentType } = options;
87
+ const { naming } = getGraphQLService('utils');
88
+ const type = naming.getEnumName(contentType, attributeName);
89
+ builder.field(attributeName, {
90
+ type
91
+ });
92
+ };
93
+ /**
94
+ * Add a media attribute to the type definition
95
+ */ const addMediaAttribute = (options)=>{
96
+ const { naming } = getGraphQLService('utils');
97
+ const { getContentTypeArgs } = getGraphQLService('builders').utils;
98
+ const { buildAssociationResolver } = getGraphQLService('builders').get('content-api');
99
+ const extension = getGraphQLService('extension');
100
+ const { builder } = options;
101
+ const { attributeName, attribute, contentType } = options;
102
+ const fileUID = 'plugin::upload.file';
103
+ if (extension.shadowCRUD(fileUID).isDisabled()) {
104
+ return;
105
+ }
106
+ const fileContentType = strapi.contentTypes[fileUID];
107
+ const resolve = buildAssociationResolver({
108
+ contentTypeUID: contentType.uid,
109
+ attributeName,
110
+ strapi
111
+ });
112
+ const args = attribute.multiple ? getContentTypeArgs(fileContentType, {
113
+ isNested: true
114
+ }) : undefined;
115
+ const typeName = naming.getTypeName(fileContentType);
116
+ if (attribute.multiple) {
117
+ builder.field(`${attributeName}_connection`, {
118
+ type: naming.getRelationResponseCollectionName(fileContentType),
119
+ resolve,
120
+ args
121
+ });
122
+ builder.field(attributeName, {
123
+ type: nexus.nonNull(nexus.list(typeName)),
124
+ async resolve (...args) {
125
+ const res = await resolve(...args);
126
+ return res.nodes ?? [];
127
+ },
128
+ args
129
+ });
130
+ } else {
131
+ builder.field(attributeName, {
132
+ type: typeName,
133
+ async resolve (...args) {
134
+ const res = await resolve(...args);
135
+ return res.value;
136
+ },
137
+ args
138
+ });
139
+ }
140
+ };
141
+ /**
142
+ * Add a polymorphic relational attribute to the type definition
143
+ */ const addPolymorphicRelationalAttribute = (options)=>{
144
+ const { GENERIC_MORPH_TYPENAME } = getGraphQLService('constants');
145
+ const { naming } = getGraphQLService('utils');
146
+ const { buildAssociationResolver } = getGraphQLService('builders').get('content-api');
147
+ let { builder } = options;
148
+ const { attributeName, attribute, contentType } = options;
149
+ const { target } = attribute;
150
+ const isToManyRelation = attribute.relation.endsWith('Many');
151
+ if (isToManyRelation) {
152
+ builder = builder.list;
153
+ }
154
+ // todo[v4]: How to handle polymorphic relation w/ entity response collection types?
155
+ // -> Currently return raw polymorphic entities
156
+ const resolve = buildAssociationResolver({
157
+ contentTypeUID: contentType.uid,
158
+ attributeName,
159
+ strapi
160
+ });
161
+ // If there is no specific target specified, then use the GenericMorph type
162
+ if (fp.isUndefined(target)) {
163
+ builder.field(attributeName, {
164
+ type: GENERIC_MORPH_TYPENAME,
165
+ resolve
166
+ });
167
+ } else if (fp.isArray(target) && target.every(fp.isString)) {
168
+ const type = naming.getMorphRelationTypeName(contentType, attributeName);
169
+ builder.field(attributeName, {
170
+ type,
171
+ resolve
172
+ });
173
+ }
174
+ };
175
+ /**
176
+ * Add a regular relational attribute to the type definition
177
+ */ const addRegularRelationalAttribute = (options)=>{
178
+ const { naming } = getGraphQLService('utils');
179
+ const { getContentTypeArgs } = getGraphQLService('builders').utils;
180
+ const { buildAssociationResolver } = getGraphQLService('builders').get('content-api');
181
+ const extension = getGraphQLService('extension');
182
+ const { builder } = options;
183
+ const { attributeName, attribute, contentType } = options;
184
+ if (extension.shadowCRUD(attribute.target).isDisabled()) {
185
+ return;
186
+ }
187
+ const isToManyRelation = attribute.relation.endsWith('Many');
188
+ const resolve = buildAssociationResolver({
189
+ contentTypeUID: contentType.uid,
190
+ attributeName,
191
+ strapi
192
+ });
193
+ const targetContentType = strapi.getModel(attribute.target);
194
+ const typeName = naming.getTypeName(targetContentType);
195
+ const args = isToManyRelation ? getContentTypeArgs(targetContentType, {
196
+ isNested: true
197
+ }) : undefined;
198
+ const resolverScope = `${targetContentType.uid}.find`;
199
+ const resolverPath = `${naming.getTypeName(contentType)}.${attributeName}`;
200
+ extension.use({
201
+ resolversConfig: {
202
+ [resolverPath]: {
203
+ auth: {
204
+ scope: [
205
+ resolverScope
206
+ ]
207
+ }
208
+ }
209
+ }
210
+ });
211
+ if (isToManyRelation) {
212
+ builder.field(`${attributeName}_connection`, {
213
+ type: naming.getRelationResponseCollectionName(targetContentType),
214
+ resolve,
215
+ args
216
+ });
217
+ extension.use({
218
+ resolversConfig: {
219
+ [`${resolverPath}_connection`]: {
220
+ auth: {
221
+ scope: [
222
+ resolverScope
223
+ ]
224
+ }
225
+ }
226
+ }
227
+ });
228
+ builder.field(attributeName, {
229
+ type: nexus.nonNull(nexus.list(typeName)),
230
+ async resolve (...args) {
231
+ const res = await resolve(...args);
232
+ return res.nodes ?? [];
233
+ },
234
+ args
235
+ });
236
+ } else {
237
+ builder.field(attributeName, {
238
+ type: typeName,
239
+ async resolve (...args) {
240
+ const res = await resolve(...args);
241
+ return res.value;
242
+ },
243
+ args
244
+ });
245
+ }
246
+ };
247
+ const isNotPrivate = (contentType)=>(attributeName)=>{
248
+ return !utils.contentTypes.isPrivateAttribute(contentType, attributeName);
249
+ };
250
+ const isNotDisabled = (contentType)=>(attributeName)=>{
251
+ return extension.shadowCRUD(contentType.uid).field(attributeName).hasOutputEnabled();
252
+ };
253
+ return {
254
+ /**
255
+ * Create a type definition for a given content type
256
+ * @param contentType - The content type used to created the definition
257
+ * @return {NexusObjectTypeDef}
258
+ */ buildTypeDefinition (contentType) {
259
+ const utils = getGraphQLService('utils');
260
+ const { getComponentName, getTypeName } = utils.naming;
261
+ const { isStrapiScalar, isComponent, isDynamicZone, isEnumeration, isMedia, isMorphRelation, isRelation } = utils.attributes;
262
+ const { attributes, modelType } = contentType;
263
+ const attributesKey = Object.keys(attributes);
264
+ const name = (modelType === 'component' ? getComponentName : getTypeName).call(null, contentType);
265
+ return nexus.objectType({
266
+ name,
267
+ definition (t) {
268
+ // add back the old id attribute on contentType if v4 compat is enabled
269
+ if (modelType !== 'component' && isNotDisabled(contentType)('id') && strapi.plugin('graphql').config('v4CompatibilityMode', false)) {
270
+ t.nonNull.id('id', {
271
+ deprecation: 'Use `documentId` instead'
272
+ });
273
+ }
274
+ if (modelType === 'component' && isNotDisabled(contentType)('id')) {
275
+ t.nonNull.id('id');
276
+ }
277
+ if (modelType !== 'component' && isNotDisabled(contentType)('documentId')) {
278
+ t.nonNull.id('documentId');
279
+ }
280
+ if (strapi.plugin('graphql').config('v4CompatibilityMode', false)) {
281
+ t.nonNull.field('attributes', {
282
+ deprecation: 'Use root level fields instead',
283
+ type: name,
284
+ resolve: (parent)=>parent
285
+ });
286
+ t.nonNull.field('data', {
287
+ deprecation: 'Use root level fields instead',
288
+ type: name,
289
+ resolve: (parent)=>parent
290
+ });
291
+ }
292
+ /** Attributes
293
+ *
294
+ * Attributes can be of 7 different kind:
295
+ * - Scalar
296
+ * - Component
297
+ * - Dynamic Zone
298
+ * - Enum
299
+ * - Media
300
+ * - Polymorphic Relations
301
+ * - Regular Relations
302
+ *
303
+ * Here, we iterate over each non-private attribute
304
+ * and add it to the type definition based on its type
305
+ */ attributesKey// Ignore private attributes
306
+ .filter(isNotPrivate(contentType))// Ignore disabled fields (from extension service)
307
+ .filter(isNotDisabled(contentType))// Add each attribute to the type definition
308
+ .forEach((attributeName)=>{
309
+ const attribute = attributes[attributeName];
310
+ // We create a copy of the builder (t) to apply custom
311
+ // rules only on the current attribute (eg: nonNull, list, ...)
312
+ let builder = t;
313
+ if (attribute.required) {
314
+ builder = builder.nonNull;
315
+ }
316
+ const options = {
317
+ builder,
318
+ attributeName,
319
+ attribute,
320
+ contentType};
321
+ // Enums
322
+ if (isEnumeration(attribute)) {
323
+ addEnumAttribute(options);
324
+ } else if (isStrapiScalar(attribute)) {
325
+ addScalarAttribute(options);
326
+ } else if (isComponent(attribute)) {
327
+ addComponentAttribute(options);
328
+ } else if (isDynamicZone(attribute)) {
329
+ addDynamicZoneAttribute(options);
330
+ } else if (isMedia(attribute)) {
331
+ addMediaAttribute(options);
332
+ } else if (isMorphRelation(attribute)) {
333
+ addPolymorphicRelationalAttribute(options);
334
+ } else if (isRelation(attribute)) {
335
+ addRegularRelationalAttribute(options);
336
+ }
337
+ });
338
+ }
339
+ });
340
+ }
341
+ };
342
+ });
343
+
344
+ module.exports = typeBuilder;
345
+ //# sourceMappingURL=type.js.map