@strapi/core 0.0.0-next.504076d2165a82f124620a3f1f3e3a6017e97f3f → 0.0.0-next.5314209d201eef10092dc1c34d7b196c62e7115f

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 (711) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +427 -403
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +426 -402
  5. package/dist/Strapi.mjs.map +1 -1
  6. package/dist/compile.js +23 -14
  7. package/dist/compile.js.map +1 -1
  8. package/dist/compile.mjs +22 -14
  9. package/dist/compile.mjs.map +1 -1
  10. package/dist/configuration/config-loader.js +110 -97
  11. package/dist/configuration/config-loader.js.map +1 -1
  12. package/dist/configuration/config-loader.mjs +109 -96
  13. package/dist/configuration/config-loader.mjs.map +1 -1
  14. package/dist/configuration/get-dirs.js +31 -29
  15. package/dist/configuration/get-dirs.js.map +1 -1
  16. package/dist/configuration/get-dirs.mjs +30 -30
  17. package/dist/configuration/get-dirs.mjs.map +1 -1
  18. package/dist/configuration/index.d.ts.map +1 -1
  19. package/dist/configuration/index.js +84 -73
  20. package/dist/configuration/index.js.map +1 -1
  21. package/dist/configuration/index.mjs +83 -69
  22. package/dist/configuration/index.mjs.map +1 -1
  23. package/dist/configuration/urls.d.ts.map +1 -1
  24. package/dist/configuration/urls.js +74 -61
  25. package/dist/configuration/urls.js.map +1 -1
  26. package/dist/configuration/urls.mjs +73 -62
  27. package/dist/configuration/urls.mjs.map +1 -1
  28. package/dist/container.js +27 -23
  29. package/dist/container.js.map +1 -1
  30. package/dist/container.mjs +26 -24
  31. package/dist/container.mjs.map +1 -1
  32. package/dist/core-api/controller/collection-type.js +77 -76
  33. package/dist/core-api/controller/collection-type.js.map +1 -1
  34. package/dist/core-api/controller/collection-type.mjs +76 -77
  35. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  36. package/dist/core-api/controller/index.js +63 -48
  37. package/dist/core-api/controller/index.js.map +1 -1
  38. package/dist/core-api/controller/index.mjs +62 -49
  39. package/dist/core-api/controller/index.mjs.map +1 -1
  40. package/dist/core-api/controller/single-type.js +41 -40
  41. package/dist/core-api/controller/single-type.js.map +1 -1
  42. package/dist/core-api/controller/single-type.mjs +40 -41
  43. package/dist/core-api/controller/single-type.mjs.map +1 -1
  44. package/dist/core-api/controller/transform.js +72 -63
  45. package/dist/core-api/controller/transform.js.map +1 -1
  46. package/dist/core-api/controller/transform.mjs +71 -64
  47. package/dist/core-api/controller/transform.mjs.map +1 -1
  48. package/dist/core-api/routes/index.js +64 -62
  49. package/dist/core-api/routes/index.js.map +1 -1
  50. package/dist/core-api/routes/index.mjs +62 -62
  51. package/dist/core-api/routes/index.mjs.map +1 -1
  52. package/dist/core-api/service/collection-type.js +73 -60
  53. package/dist/core-api/service/collection-type.js.map +1 -1
  54. package/dist/core-api/service/collection-type.mjs +72 -62
  55. package/dist/core-api/service/collection-type.mjs.map +1 -1
  56. package/dist/core-api/service/core-service.js +9 -8
  57. package/dist/core-api/service/core-service.js.map +1 -1
  58. package/dist/core-api/service/core-service.mjs +8 -9
  59. package/dist/core-api/service/core-service.mjs.map +1 -1
  60. package/dist/core-api/service/index.js +13 -13
  61. package/dist/core-api/service/index.js.map +1 -1
  62. package/dist/core-api/service/index.mjs +12 -14
  63. package/dist/core-api/service/index.mjs.map +1 -1
  64. package/dist/core-api/service/pagination.js +69 -43
  65. package/dist/core-api/service/pagination.js.map +1 -1
  66. package/dist/core-api/service/pagination.mjs +68 -47
  67. package/dist/core-api/service/pagination.mjs.map +1 -1
  68. package/dist/core-api/service/single-type.js +43 -39
  69. package/dist/core-api/service/single-type.js.map +1 -1
  70. package/dist/core-api/service/single-type.mjs +42 -41
  71. package/dist/core-api/service/single-type.mjs.map +1 -1
  72. package/dist/domain/content-type/index.js +95 -100
  73. package/dist/domain/content-type/index.js.map +1 -1
  74. package/dist/domain/content-type/index.mjs +94 -100
  75. package/dist/domain/content-type/index.mjs.map +1 -1
  76. package/dist/domain/content-type/validator.js +84 -69
  77. package/dist/domain/content-type/validator.js.map +1 -1
  78. package/dist/domain/content-type/validator.mjs +83 -68
  79. package/dist/domain/content-type/validator.mjs.map +1 -1
  80. package/dist/domain/module/index.js +109 -100
  81. package/dist/domain/module/index.js.map +1 -1
  82. package/dist/domain/module/index.mjs +108 -99
  83. package/dist/domain/module/index.mjs.map +1 -1
  84. package/dist/domain/module/validation.js +25 -20
  85. package/dist/domain/module/validation.js.map +1 -1
  86. package/dist/domain/module/validation.mjs +24 -21
  87. package/dist/domain/module/validation.mjs.map +1 -1
  88. package/dist/ee/index.d.ts +1 -0
  89. package/dist/ee/index.d.ts.map +1 -1
  90. package/dist/ee/index.js +171 -132
  91. package/dist/ee/index.js.map +1 -1
  92. package/dist/ee/index.mjs +170 -134
  93. package/dist/ee/index.mjs.map +1 -1
  94. package/dist/ee/license.d.ts.map +1 -1
  95. package/dist/ee/license.js +99 -75
  96. package/dist/ee/license.js.map +1 -1
  97. package/dist/ee/license.mjs +98 -76
  98. package/dist/ee/license.mjs.map +1 -1
  99. package/dist/factories.js +72 -67
  100. package/dist/factories.js.map +1 -1
  101. package/dist/factories.mjs +71 -71
  102. package/dist/factories.mjs.map +1 -1
  103. package/dist/index.js +29 -26
  104. package/dist/index.js.map +1 -1
  105. package/dist/index.mjs +29 -29
  106. package/dist/index.mjs.map +1 -1
  107. package/dist/loaders/admin.d.ts.map +1 -1
  108. package/dist/loaders/admin.js +21 -20
  109. package/dist/loaders/admin.js.map +1 -1
  110. package/dist/loaders/admin.mjs +20 -20
  111. package/dist/loaders/admin.mjs.map +1 -1
  112. package/dist/loaders/apis.js +143 -120
  113. package/dist/loaders/apis.js.map +1 -1
  114. package/dist/loaders/apis.mjs +142 -119
  115. package/dist/loaders/apis.mjs.map +1 -1
  116. package/dist/loaders/components.js +33 -34
  117. package/dist/loaders/components.js.map +1 -1
  118. package/dist/loaders/components.mjs +32 -34
  119. package/dist/loaders/components.mjs.map +1 -1
  120. package/dist/loaders/index.js +22 -20
  121. package/dist/loaders/index.js.map +1 -1
  122. package/dist/loaders/index.mjs +21 -21
  123. package/dist/loaders/index.mjs.map +1 -1
  124. package/dist/loaders/middlewares.js +29 -25
  125. package/dist/loaders/middlewares.js.map +1 -1
  126. package/dist/loaders/middlewares.mjs +28 -25
  127. package/dist/loaders/middlewares.mjs.map +1 -1
  128. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  129. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  130. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  131. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  132. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  133. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  134. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  135. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  136. package/dist/loaders/plugins/index.js +132 -122
  137. package/dist/loaders/plugins/index.js.map +1 -1
  138. package/dist/loaders/plugins/index.mjs +121 -112
  139. package/dist/loaders/plugins/index.mjs.map +1 -1
  140. package/dist/loaders/policies.js +24 -20
  141. package/dist/loaders/policies.js.map +1 -1
  142. package/dist/loaders/policies.mjs +23 -20
  143. package/dist/loaders/policies.mjs.map +1 -1
  144. package/dist/loaders/sanitizers.js +10 -4
  145. package/dist/loaders/sanitizers.js.map +1 -1
  146. package/dist/loaders/sanitizers.mjs +9 -6
  147. package/dist/loaders/sanitizers.mjs.map +1 -1
  148. package/dist/loaders/src-index.js +35 -27
  149. package/dist/loaders/src-index.js.map +1 -1
  150. package/dist/loaders/src-index.mjs +34 -29
  151. package/dist/loaders/src-index.mjs.map +1 -1
  152. package/dist/loaders/validators.js +9 -4
  153. package/dist/loaders/validators.js.map +1 -1
  154. package/dist/loaders/validators.mjs +8 -6
  155. package/dist/loaders/validators.mjs.map +1 -1
  156. package/dist/middlewares/body.d.ts.map +1 -1
  157. package/dist/middlewares/body.js +58 -54
  158. package/dist/middlewares/body.js.map +1 -1
  159. package/dist/middlewares/body.mjs +57 -51
  160. package/dist/middlewares/body.mjs.map +1 -1
  161. package/dist/middlewares/compression.js +6 -6
  162. package/dist/middlewares/compression.js.map +1 -1
  163. package/dist/middlewares/compression.mjs +5 -5
  164. package/dist/middlewares/compression.mjs.map +1 -1
  165. package/dist/middlewares/cors.js +59 -48
  166. package/dist/middlewares/cors.js.map +1 -1
  167. package/dist/middlewares/cors.mjs +58 -47
  168. package/dist/middlewares/cors.mjs.map +1 -1
  169. package/dist/middlewares/errors.js +32 -30
  170. package/dist/middlewares/errors.js.map +1 -1
  171. package/dist/middlewares/errors.mjs +31 -31
  172. package/dist/middlewares/errors.mjs.map +1 -1
  173. package/dist/middlewares/favicon.js +27 -17
  174. package/dist/middlewares/favicon.js.map +1 -1
  175. package/dist/middlewares/favicon.mjs +26 -16
  176. package/dist/middlewares/favicon.mjs.map +1 -1
  177. package/dist/middlewares/index.js +32 -30
  178. package/dist/middlewares/index.js.map +1 -1
  179. package/dist/middlewares/index.mjs +31 -31
  180. package/dist/middlewares/index.mjs.map +1 -1
  181. package/dist/middlewares/ip.js +6 -6
  182. package/dist/middlewares/ip.js.map +1 -1
  183. package/dist/middlewares/ip.mjs +5 -5
  184. package/dist/middlewares/ip.mjs.map +1 -1
  185. package/dist/middlewares/logger.js +10 -9
  186. package/dist/middlewares/logger.js.map +1 -1
  187. package/dist/middlewares/logger.mjs +9 -10
  188. package/dist/middlewares/logger.mjs.map +1 -1
  189. package/dist/middlewares/powered-by.js +13 -9
  190. package/dist/middlewares/powered-by.js.map +1 -1
  191. package/dist/middlewares/powered-by.mjs +12 -10
  192. package/dist/middlewares/powered-by.mjs.map +1 -1
  193. package/dist/middlewares/public.js +33 -29
  194. package/dist/middlewares/public.js.map +1 -1
  195. package/dist/middlewares/public.mjs +32 -28
  196. package/dist/middlewares/public.mjs.map +1 -1
  197. package/dist/middlewares/query.js +35 -32
  198. package/dist/middlewares/query.js.map +1 -1
  199. package/dist/middlewares/query.mjs +34 -31
  200. package/dist/middlewares/query.mjs.map +1 -1
  201. package/dist/middlewares/response-time.js +10 -9
  202. package/dist/middlewares/response-time.js.map +1 -1
  203. package/dist/middlewares/response-time.mjs +9 -10
  204. package/dist/middlewares/response-time.mjs.map +1 -1
  205. package/dist/middlewares/responses.js +14 -12
  206. package/dist/middlewares/responses.js.map +1 -1
  207. package/dist/middlewares/responses.mjs +13 -13
  208. package/dist/middlewares/responses.mjs.map +1 -1
  209. package/dist/middlewares/security.js +109 -71
  210. package/dist/middlewares/security.js.map +1 -1
  211. package/dist/middlewares/security.mjs +108 -70
  212. package/dist/middlewares/security.mjs.map +1 -1
  213. package/dist/middlewares/session.js +26 -25
  214. package/dist/middlewares/session.js.map +1 -1
  215. package/dist/middlewares/session.mjs +25 -24
  216. package/dist/middlewares/session.mjs.map +1 -1
  217. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  218. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  219. package/dist/migrations/database/5.0.0-discard-drafts.js +154 -80
  220. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  221. package/dist/migrations/database/5.0.0-discard-drafts.mjs +153 -82
  222. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  223. package/dist/migrations/draft-publish.d.ts +1 -1
  224. package/dist/migrations/draft-publish.d.ts.map +1 -1
  225. package/dist/migrations/draft-publish.js +61 -34
  226. package/dist/migrations/draft-publish.js.map +1 -1
  227. package/dist/migrations/draft-publish.mjs +60 -36
  228. package/dist/migrations/draft-publish.mjs.map +1 -1
  229. package/dist/migrations/i18n.js +62 -45
  230. package/dist/migrations/i18n.js.map +1 -1
  231. package/dist/migrations/i18n.mjs +61 -47
  232. package/dist/migrations/i18n.mjs.map +1 -1
  233. package/dist/migrations/index.js +24 -10
  234. package/dist/migrations/index.js.map +1 -1
  235. package/dist/migrations/index.mjs +23 -12
  236. package/dist/migrations/index.mjs.map +1 -1
  237. package/dist/package.json.js +182 -0
  238. package/dist/package.json.js.map +1 -0
  239. package/dist/package.json.mjs +159 -0
  240. package/dist/package.json.mjs.map +1 -0
  241. package/dist/providers/admin.js +27 -17
  242. package/dist/providers/admin.js.map +1 -1
  243. package/dist/providers/admin.mjs +26 -19
  244. package/dist/providers/admin.mjs.map +1 -1
  245. package/dist/providers/coreStore.js +13 -8
  246. package/dist/providers/coreStore.js.map +1 -1
  247. package/dist/providers/coreStore.mjs +12 -10
  248. package/dist/providers/coreStore.mjs.map +1 -1
  249. package/dist/providers/cron.js +19 -16
  250. package/dist/providers/cron.js.map +1 -1
  251. package/dist/providers/cron.mjs +18 -18
  252. package/dist/providers/cron.mjs.map +1 -1
  253. package/dist/providers/index.js +18 -9
  254. package/dist/providers/index.js.map +1 -1
  255. package/dist/providers/index.mjs +17 -10
  256. package/dist/providers/index.mjs.map +1 -1
  257. package/dist/providers/provider.js +4 -3
  258. package/dist/providers/provider.js.map +1 -1
  259. package/dist/providers/provider.mjs +3 -4
  260. package/dist/providers/provider.mjs.map +1 -1
  261. package/dist/providers/registries.js +37 -32
  262. package/dist/providers/registries.js.map +1 -1
  263. package/dist/providers/registries.mjs +36 -34
  264. package/dist/providers/registries.mjs.map +1 -1
  265. package/dist/providers/telemetry.js +19 -16
  266. package/dist/providers/telemetry.js.map +1 -1
  267. package/dist/providers/telemetry.mjs +18 -18
  268. package/dist/providers/telemetry.mjs.map +1 -1
  269. package/dist/providers/webhooks.js +28 -26
  270. package/dist/providers/webhooks.js.map +1 -1
  271. package/dist/providers/webhooks.mjs +27 -28
  272. package/dist/providers/webhooks.mjs.map +1 -1
  273. package/dist/registries/apis.js +23 -20
  274. package/dist/registries/apis.js.map +1 -1
  275. package/dist/registries/apis.mjs +22 -22
  276. package/dist/registries/apis.mjs.map +1 -1
  277. package/dist/registries/components.js +35 -37
  278. package/dist/registries/components.js.map +1 -1
  279. package/dist/registries/components.mjs +34 -39
  280. package/dist/registries/components.mjs.map +1 -1
  281. package/dist/registries/content-types.js +54 -59
  282. package/dist/registries/content-types.js.map +1 -1
  283. package/dist/registries/content-types.mjs +53 -61
  284. package/dist/registries/content-types.mjs.map +1 -1
  285. package/dist/registries/controllers.js +70 -71
  286. package/dist/registries/controllers.js.map +1 -1
  287. package/dist/registries/controllers.mjs +69 -73
  288. package/dist/registries/controllers.mjs.map +1 -1
  289. package/dist/registries/custom-fields.js +75 -65
  290. package/dist/registries/custom-fields.js.map +1 -1
  291. package/dist/registries/custom-fields.mjs +74 -67
  292. package/dist/registries/custom-fields.mjs.map +1 -1
  293. package/dist/registries/hooks.js +46 -49
  294. package/dist/registries/hooks.js.map +1 -1
  295. package/dist/registries/hooks.mjs +45 -51
  296. package/dist/registries/hooks.mjs.map +1 -1
  297. package/dist/registries/middlewares.js +49 -51
  298. package/dist/registries/middlewares.js.map +1 -1
  299. package/dist/registries/middlewares.mjs +48 -53
  300. package/dist/registries/middlewares.mjs.map +1 -1
  301. package/dist/registries/models.js +14 -13
  302. package/dist/registries/models.js.map +1 -1
  303. package/dist/registries/models.mjs +13 -14
  304. package/dist/registries/models.mjs.map +1 -1
  305. package/dist/registries/modules.js +39 -36
  306. package/dist/registries/modules.js.map +1 -1
  307. package/dist/registries/modules.mjs +38 -38
  308. package/dist/registries/modules.mjs.map +1 -1
  309. package/dist/registries/namespace.js +21 -20
  310. package/dist/registries/namespace.js.map +1 -1
  311. package/dist/registries/namespace.mjs +20 -23
  312. package/dist/registries/namespace.mjs.map +1 -1
  313. package/dist/registries/plugins.js +23 -20
  314. package/dist/registries/plugins.js.map +1 -1
  315. package/dist/registries/plugins.mjs +22 -22
  316. package/dist/registries/plugins.mjs.map +1 -1
  317. package/dist/registries/policies.js +103 -96
  318. package/dist/registries/policies.js.map +1 -1
  319. package/dist/registries/policies.mjs +102 -98
  320. package/dist/registries/policies.mjs.map +1 -1
  321. package/dist/registries/sanitizers.js +23 -22
  322. package/dist/registries/sanitizers.js.map +1 -1
  323. package/dist/registries/sanitizers.mjs +22 -22
  324. package/dist/registries/sanitizers.mjs.map +1 -1
  325. package/dist/registries/services.js +71 -71
  326. package/dist/registries/services.js.map +1 -1
  327. package/dist/registries/services.mjs +70 -73
  328. package/dist/registries/services.mjs.map +1 -1
  329. package/dist/registries/validators.js +23 -22
  330. package/dist/registries/validators.js.map +1 -1
  331. package/dist/registries/validators.mjs +22 -22
  332. package/dist/registries/validators.mjs.map +1 -1
  333. package/dist/services/auth/index.js +74 -74
  334. package/dist/services/auth/index.js.map +1 -1
  335. package/dist/services/auth/index.mjs +73 -74
  336. package/dist/services/auth/index.mjs.map +1 -1
  337. package/dist/services/config.js +47 -43
  338. package/dist/services/config.js.map +1 -1
  339. package/dist/services/config.mjs +46 -44
  340. package/dist/services/config.mjs.map +1 -1
  341. package/dist/services/content-api/index.js +80 -79
  342. package/dist/services/content-api/index.js.map +1 -1
  343. package/dist/services/content-api/index.mjs +79 -79
  344. package/dist/services/content-api/index.mjs.map +1 -1
  345. package/dist/services/content-api/permissions/engine.js +8 -5
  346. package/dist/services/content-api/permissions/engine.js.map +1 -1
  347. package/dist/services/content-api/permissions/engine.mjs +7 -5
  348. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  349. package/dist/services/content-api/permissions/index.js +101 -81
  350. package/dist/services/content-api/permissions/index.js.map +1 -1
  351. package/dist/services/content-api/permissions/index.mjs +100 -81
  352. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  353. package/dist/services/content-api/permissions/providers/action.js +17 -14
  354. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  355. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  356. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  357. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  358. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  359. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  360. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  361. package/dist/services/core-store.js +115 -95
  362. package/dist/services/core-store.js.map +1 -1
  363. package/dist/services/core-store.mjs +114 -97
  364. package/dist/services/core-store.mjs.map +1 -1
  365. package/dist/services/cron.js +74 -60
  366. package/dist/services/cron.js.map +1 -1
  367. package/dist/services/cron.mjs +73 -62
  368. package/dist/services/cron.mjs.map +1 -1
  369. package/dist/services/custom-fields.js +9 -7
  370. package/dist/services/custom-fields.js.map +1 -1
  371. package/dist/services/custom-fields.mjs +8 -9
  372. package/dist/services/custom-fields.mjs.map +1 -1
  373. package/dist/services/document-service/attributes/index.js +23 -18
  374. package/dist/services/document-service/attributes/index.js.map +1 -1
  375. package/dist/services/document-service/attributes/index.mjs +22 -19
  376. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  377. package/dist/services/document-service/attributes/transforms.js +16 -15
  378. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  379. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  380. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  381. package/dist/services/document-service/common.d.ts +1 -1
  382. package/dist/services/document-service/common.d.ts.map +1 -1
  383. package/dist/services/document-service/common.js +5 -4
  384. package/dist/services/document-service/common.js.map +1 -1
  385. package/dist/services/document-service/common.mjs +4 -5
  386. package/dist/services/document-service/common.mjs.map +1 -1
  387. package/dist/services/document-service/components.d.ts.map +1 -1
  388. package/dist/services/document-service/components.js +255 -257
  389. package/dist/services/document-service/components.js.map +1 -1
  390. package/dist/services/document-service/components.mjs +254 -262
  391. package/dist/services/document-service/components.mjs.map +1 -1
  392. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  393. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  394. package/dist/services/document-service/draft-and-publish.js +88 -48
  395. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  396. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  397. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  398. package/dist/services/document-service/entries.d.ts +2 -2
  399. package/dist/services/document-service/entries.d.ts.map +1 -1
  400. package/dist/services/document-service/entries.js +109 -92
  401. package/dist/services/document-service/entries.js.map +1 -1
  402. package/dist/services/document-service/entries.mjs +108 -93
  403. package/dist/services/document-service/entries.mjs.map +1 -1
  404. package/dist/services/document-service/events.d.ts +1 -1
  405. package/dist/services/document-service/events.d.ts.map +1 -1
  406. package/dist/services/document-service/events.js +52 -40
  407. package/dist/services/document-service/events.js.map +1 -1
  408. package/dist/services/document-service/events.mjs +51 -41
  409. package/dist/services/document-service/events.mjs.map +1 -1
  410. package/dist/services/document-service/index.d.ts +2 -1
  411. package/dist/services/document-service/index.d.ts.map +1 -1
  412. package/dist/services/document-service/index.js +53 -32
  413. package/dist/services/document-service/index.js.map +1 -1
  414. package/dist/services/document-service/index.mjs +52 -33
  415. package/dist/services/document-service/index.mjs.map +1 -1
  416. package/dist/services/document-service/internationalization.js +62 -46
  417. package/dist/services/document-service/internationalization.js.map +1 -1
  418. package/dist/services/document-service/internationalization.mjs +61 -50
  419. package/dist/services/document-service/internationalization.mjs.map +1 -1
  420. package/dist/services/document-service/middlewares/errors.js +23 -19
  421. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  422. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  423. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  424. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  425. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  426. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  427. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  428. package/dist/services/document-service/params.js +11 -5
  429. package/dist/services/document-service/params.js.map +1 -1
  430. package/dist/services/document-service/params.mjs +10 -6
  431. package/dist/services/document-service/params.mjs.map +1 -1
  432. package/dist/services/document-service/repository.d.ts.map +1 -1
  433. package/dist/services/document-service/repository.js +354 -304
  434. package/dist/services/document-service/repository.js.map +1 -1
  435. package/dist/services/document-service/repository.mjs +353 -305
  436. package/dist/services/document-service/repository.mjs.map +1 -1
  437. package/dist/services/document-service/transform/data.js +22 -12
  438. package/dist/services/document-service/transform/data.js.map +1 -1
  439. package/dist/services/document-service/transform/data.mjs +21 -13
  440. package/dist/services/document-service/transform/data.mjs.map +1 -1
  441. package/dist/services/document-service/transform/fields.js +26 -17
  442. package/dist/services/document-service/transform/fields.js.map +1 -1
  443. package/dist/services/document-service/transform/fields.mjs +25 -18
  444. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  445. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  446. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  447. package/dist/services/document-service/transform/id-map.js +116 -69
  448. package/dist/services/document-service/transform/id-map.js.map +1 -1
  449. package/dist/services/document-service/transform/id-map.mjs +115 -70
  450. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  451. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  452. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  453. package/dist/services/document-service/transform/id-transform.js +37 -29
  454. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  455. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  456. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  457. package/dist/services/document-service/transform/populate.js +23 -18
  458. package/dist/services/document-service/transform/populate.js.map +1 -1
  459. package/dist/services/document-service/transform/populate.mjs +22 -19
  460. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  461. package/dist/services/document-service/transform/query.js +11 -6
  462. package/dist/services/document-service/transform/query.js.map +1 -1
  463. package/dist/services/document-service/transform/query.mjs +10 -7
  464. package/dist/services/document-service/transform/query.mjs.map +1 -1
  465. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  466. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  467. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  468. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  469. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  470. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  471. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  472. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  473. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  474. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  475. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  476. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  477. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  478. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  479. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  480. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  481. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  482. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  483. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  484. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  485. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  486. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  487. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  488. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  489. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  490. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  491. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  492. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  493. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  494. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  495. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  496. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  497. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  498. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  499. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  500. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  501. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  502. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  503. package/dist/services/document-service/utils/populate.d.ts +1 -1
  504. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  505. package/dist/services/document-service/utils/populate.js +66 -42
  506. package/dist/services/document-service/utils/populate.js.map +1 -1
  507. package/dist/services/document-service/utils/populate.mjs +65 -43
  508. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  509. package/dist/services/document-service/utils/unidirectional-relations.d.ts +12 -9
  510. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  511. package/dist/services/document-service/utils/unidirectional-relations.js +110 -52
  512. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  513. package/dist/services/document-service/utils/unidirectional-relations.mjs +109 -54
  514. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  515. package/dist/services/entity-service/index.js +230 -161
  516. package/dist/services/entity-service/index.js.map +1 -1
  517. package/dist/services/entity-service/index.mjs +229 -160
  518. package/dist/services/entity-service/index.mjs.map +1 -1
  519. package/dist/services/entity-validator/blocks-validator.js +135 -103
  520. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  521. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  522. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  523. package/dist/services/entity-validator/index.d.ts +1 -1
  524. package/dist/services/entity-validator/index.d.ts.map +1 -1
  525. package/dist/services/entity-validator/index.js +362 -367
  526. package/dist/services/entity-validator/index.js.map +1 -1
  527. package/dist/services/entity-validator/index.mjs +358 -364
  528. package/dist/services/entity-validator/index.mjs.map +1 -1
  529. package/dist/services/entity-validator/validators.js +268 -210
  530. package/dist/services/entity-validator/validators.js.map +1 -1
  531. package/dist/services/entity-validator/validators.mjs +267 -216
  532. package/dist/services/entity-validator/validators.mjs.map +1 -1
  533. package/dist/services/errors.js +65 -65
  534. package/dist/services/errors.js.map +1 -1
  535. package/dist/services/errors.mjs +64 -66
  536. package/dist/services/errors.mjs.map +1 -1
  537. package/dist/services/event-hub.js +82 -69
  538. package/dist/services/event-hub.js.map +1 -1
  539. package/dist/services/event-hub.mjs +81 -71
  540. package/dist/services/event-hub.mjs.map +1 -1
  541. package/dist/services/features.js +19 -14
  542. package/dist/services/features.js.map +1 -1
  543. package/dist/services/features.mjs +18 -15
  544. package/dist/services/features.mjs.map +1 -1
  545. package/dist/services/fs.js +41 -40
  546. package/dist/services/fs.js.map +1 -1
  547. package/dist/services/fs.mjs +40 -39
  548. package/dist/services/fs.mjs.map +1 -1
  549. package/dist/services/metrics/admin-user-hash.js +13 -11
  550. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  551. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  552. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  553. package/dist/services/metrics/index.js +46 -40
  554. package/dist/services/metrics/index.js.map +1 -1
  555. package/dist/services/metrics/index.mjs +45 -42
  556. package/dist/services/metrics/index.mjs.map +1 -1
  557. package/dist/services/metrics/is-truthy.js +13 -6
  558. package/dist/services/metrics/is-truthy.js.map +1 -1
  559. package/dist/services/metrics/is-truthy.mjs +12 -6
  560. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  561. package/dist/services/metrics/middleware.d.ts.map +1 -1
  562. package/dist/services/metrics/middleware.js +37 -22
  563. package/dist/services/metrics/middleware.js.map +1 -1
  564. package/dist/services/metrics/middleware.mjs +36 -24
  565. package/dist/services/metrics/middleware.mjs.map +1 -1
  566. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  567. package/dist/services/metrics/rate-limiter.js +24 -19
  568. package/dist/services/metrics/rate-limiter.js.map +1 -1
  569. package/dist/services/metrics/rate-limiter.mjs +23 -21
  570. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  571. package/dist/services/metrics/sender.js +78 -69
  572. package/dist/services/metrics/sender.js.map +1 -1
  573. package/dist/services/metrics/sender.mjs +77 -64
  574. package/dist/services/metrics/sender.mjs.map +1 -1
  575. package/dist/services/query-params.js +13 -10
  576. package/dist/services/query-params.js.map +1 -1
  577. package/dist/services/query-params.mjs +12 -12
  578. package/dist/services/query-params.mjs.map +1 -1
  579. package/dist/services/reloader.js +35 -32
  580. package/dist/services/reloader.js.map +1 -1
  581. package/dist/services/reloader.mjs +34 -33
  582. package/dist/services/reloader.mjs.map +1 -1
  583. package/dist/services/request-context.js +11 -8
  584. package/dist/services/request-context.js.map +1 -1
  585. package/dist/services/request-context.mjs +10 -10
  586. package/dist/services/request-context.mjs.map +1 -1
  587. package/dist/services/server/admin-api.js +11 -10
  588. package/dist/services/server/admin-api.js.map +1 -1
  589. package/dist/services/server/admin-api.mjs +10 -11
  590. package/dist/services/server/admin-api.mjs.map +1 -1
  591. package/dist/services/server/api.js +33 -27
  592. package/dist/services/server/api.js.map +1 -1
  593. package/dist/services/server/api.mjs +32 -26
  594. package/dist/services/server/api.mjs.map +1 -1
  595. package/dist/services/server/compose-endpoint.js +116 -105
  596. package/dist/services/server/compose-endpoint.js.map +1 -1
  597. package/dist/services/server/compose-endpoint.mjs +115 -105
  598. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  599. package/dist/services/server/content-api.js +11 -9
  600. package/dist/services/server/content-api.js.map +1 -1
  601. package/dist/services/server/content-api.mjs +10 -10
  602. package/dist/services/server/content-api.mjs.map +1 -1
  603. package/dist/services/server/http-server.js +48 -44
  604. package/dist/services/server/http-server.js.map +1 -1
  605. package/dist/services/server/http-server.mjs +47 -43
  606. package/dist/services/server/http-server.mjs.map +1 -1
  607. package/dist/services/server/index.js +85 -82
  608. package/dist/services/server/index.js.map +1 -1
  609. package/dist/services/server/index.mjs +84 -81
  610. package/dist/services/server/index.mjs.map +1 -1
  611. package/dist/services/server/koa.js +49 -47
  612. package/dist/services/server/koa.js.map +1 -1
  613. package/dist/services/server/koa.mjs +48 -44
  614. package/dist/services/server/koa.mjs.map +1 -1
  615. package/dist/services/server/middleware.js +86 -82
  616. package/dist/services/server/middleware.js.map +1 -1
  617. package/dist/services/server/middleware.mjs +85 -82
  618. package/dist/services/server/middleware.mjs.map +1 -1
  619. package/dist/services/server/policy.js +24 -17
  620. package/dist/services/server/policy.js.map +1 -1
  621. package/dist/services/server/policy.mjs +23 -18
  622. package/dist/services/server/policy.mjs.map +1 -1
  623. package/dist/services/server/register-middlewares.js +68 -61
  624. package/dist/services/server/register-middlewares.js.map +1 -1
  625. package/dist/services/server/register-middlewares.mjs +67 -63
  626. package/dist/services/server/register-middlewares.mjs.map +1 -1
  627. package/dist/services/server/register-routes.js +90 -67
  628. package/dist/services/server/register-routes.js.map +1 -1
  629. package/dist/services/server/register-routes.mjs +89 -67
  630. package/dist/services/server/register-routes.mjs.map +1 -1
  631. package/dist/services/server/routing.js +94 -81
  632. package/dist/services/server/routing.js.map +1 -1
  633. package/dist/services/server/routing.mjs +93 -81
  634. package/dist/services/server/routing.mjs.map +1 -1
  635. package/dist/services/utils/dynamic-zones.js +13 -14
  636. package/dist/services/utils/dynamic-zones.js.map +1 -1
  637. package/dist/services/utils/dynamic-zones.mjs +12 -16
  638. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  639. package/dist/services/webhook-runner.js +124 -122
  640. package/dist/services/webhook-runner.js.map +1 -1
  641. package/dist/services/webhook-runner.mjs +123 -121
  642. package/dist/services/webhook-runner.mjs.map +1 -1
  643. package/dist/services/webhook-store.js +132 -99
  644. package/dist/services/webhook-store.js.map +1 -1
  645. package/dist/services/webhook-store.mjs +131 -101
  646. package/dist/services/webhook-store.mjs.map +1 -1
  647. package/dist/services/worker-queue.js +44 -49
  648. package/dist/services/worker-queue.js.map +1 -1
  649. package/dist/services/worker-queue.mjs +43 -49
  650. package/dist/services/worker-queue.mjs.map +1 -1
  651. package/dist/utils/convert-custom-field-type.js +17 -20
  652. package/dist/utils/convert-custom-field-type.js.map +1 -1
  653. package/dist/utils/convert-custom-field-type.mjs +16 -21
  654. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  655. package/dist/utils/cron.js +64 -30
  656. package/dist/utils/cron.js.map +1 -1
  657. package/dist/utils/cron.mjs +63 -31
  658. package/dist/utils/cron.mjs.map +1 -1
  659. package/dist/utils/fetch.js +24 -18
  660. package/dist/utils/fetch.js.map +1 -1
  661. package/dist/utils/fetch.mjs +23 -19
  662. package/dist/utils/fetch.mjs.map +1 -1
  663. package/dist/utils/filepath-to-prop-path.js +20 -28
  664. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  665. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  666. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  667. package/dist/utils/is-initialized.js +21 -12
  668. package/dist/utils/is-initialized.js.map +1 -1
  669. package/dist/utils/is-initialized.mjs +20 -13
  670. package/dist/utils/is-initialized.mjs.map +1 -1
  671. package/dist/utils/lifecycles.js +6 -5
  672. package/dist/utils/lifecycles.js.map +1 -1
  673. package/dist/utils/lifecycles.mjs +5 -6
  674. package/dist/utils/lifecycles.mjs.map +1 -1
  675. package/dist/utils/load-config-file.js +40 -38
  676. package/dist/utils/load-config-file.js.map +1 -1
  677. package/dist/utils/load-config-file.mjs +39 -36
  678. package/dist/utils/load-config-file.mjs.map +1 -1
  679. package/dist/utils/load-files.js +40 -35
  680. package/dist/utils/load-files.js.map +1 -1
  681. package/dist/utils/load-files.mjs +39 -32
  682. package/dist/utils/load-files.mjs.map +1 -1
  683. package/dist/utils/open-browser.js +8 -8
  684. package/dist/utils/open-browser.js.map +1 -1
  685. package/dist/utils/open-browser.mjs +7 -7
  686. package/dist/utils/open-browser.mjs.map +1 -1
  687. package/dist/utils/resolve-working-dirs.js +23 -10
  688. package/dist/utils/resolve-working-dirs.js.map +1 -1
  689. package/dist/utils/resolve-working-dirs.mjs +22 -9
  690. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  691. package/dist/utils/signals.js +20 -14
  692. package/dist/utils/signals.js.map +1 -1
  693. package/dist/utils/signals.mjs +19 -15
  694. package/dist/utils/signals.mjs.map +1 -1
  695. package/dist/utils/startup-logger.d.ts.map +1 -1
  696. package/dist/utils/startup-logger.js +107 -78
  697. package/dist/utils/startup-logger.js.map +1 -1
  698. package/dist/utils/startup-logger.mjs +106 -75
  699. package/dist/utils/startup-logger.mjs.map +1 -1
  700. package/dist/utils/transform-content-types-to-models.d.ts +353 -21
  701. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  702. package/dist/utils/transform-content-types-to-models.js +350 -261
  703. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  704. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  705. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  706. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  707. package/dist/utils/update-notifier/index.js +68 -73
  708. package/dist/utils/update-notifier/index.js.map +1 -1
  709. package/dist/utils/update-notifier/index.mjs +67 -67
  710. package/dist/utils/update-notifier/index.mjs.map +1 -1
  711. package/package.json +27 -28
@@ -1 +1 @@
1
- {"version":3,"file":"urls.mjs","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n const hostname =\n config.environment === 'development' && ['127.0.0.1', '0.0.0.0'].includes(serverConfig.host)\n ? 'localhost'\n : serverConfig.host;\n\n return `http://${hostname}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":[],"mappings":";;AASO,MAAM,gBAAgB,CAAC,QAAiC,gBAAgB,UAAU;AACvF,QAAM,eAAe,OAAO;AAC5B,QAAM,cAAc,OAAO;AAG3B,MAAI,YAAY,EAAE,IAAI,cAAc,OAAO,EAAE;AACjC,cAAA,EAAE,KAAK,WAAW,IAAI;AAC9B,MAAA,OAAO,cAAc,UAAU;AAC3B,UAAA,IAAI,MAAM,2DAA2D;AAAA,EAC7E;AAEI,MAAA,UAAU,WAAW,MAAM,GAAG;AAC5B,QAAA;AACU,kBAAA,EAAE,KAAK,IAAI,IAAI,aAAa,GAAG,EAAE,YAAY,GAAG;AAAA,aACrD,GAAG;AACV,YAAM,IAAI;AAAA,QACR;AAAA,MAAA;AAAA,IAEJ;AAAA,EAAA,WACS,cAAc,IAAI;AAC3B,gBAAY,IAAI,SAAS;AAAA,EAC3B;AAGA,MAAI,WAAW,EAAE,IAAI,aAAa,OAAO,QAAQ;AACtC,aAAA,EAAE,KAAK,UAAU,IAAI;AAC5B,MAAA,OAAO,aAAa,UAAU;AAC1B,UAAA,IAAI,MAAM,oEAAoE;AAAA,EACtF;AACI,MAAA,SAAS,WAAW,MAAM,GAAG;AAC3B,QAAA;AACS,iBAAA,EAAE,KAAK,IAAI,IAAI,QAAQ,EAAE,YAAY,GAAG;AAAA,aAC5C,GAAG;AACJ,YAAA,IAAI,MAAM,4EAA4E;AAAA,IAC9F;AAAA,EAAA,OACK;AACM,eAAA,GAAG,SAAS,IAAI,QAAQ;AAAA,EACrC;AAGA,MAAI,YAAY;AAChB,MACE,UAAU,WAAW,MAAM,KAC3B,SAAS,WAAW,MAAM,KAC1B,IAAI,IAAI,QAAQ,EAAE,WAAW,IAAI,IAAI,SAAS,EAAE,UAChD,CAAC,eACD;AACA,gBAAY,SAAS,QAAQ,QAAQ,cAAc,WAAW,QAAQ,GAAG,EAAE;AAC3E,gBAAY,IAAI,EAAE,KAAK,WAAW,GAAG,CAAC;AAAA,EAC7B,WAAA,SAAS,WAAW,MAAM,GAAG;AAC1B,gBAAA,IAAI,IAAI,QAAQ,EAAE;AAAA,EAChC;AAEO,SAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEJ;AAEA,MAAM,iBACJ,CAAC,kBACD,CAAC,QAAiC,gBAAgB,UAAU;AAC1D,QAAM,EAAE,WAAW,SAAA,IAAa,cAAc,QAAQ,aAAa;AAC7D,QAAA,MAAM,kBAAkB,WAAW,YAAY;AAEjD,MAAA,IAAI,WAAW,MAAM,GAAG;AACnB,WAAA;AAAA,EACT;AAEA,QAAM,eAAe,OAAO;AAC5B,QAAM,WACJ,OAAO,gBAAgB,iBAAiB,CAAC,aAAa,SAAS,EAAE,SAAS,aAAa,IAAI,IACvF,cACA,aAAa;AAEnB,SAAO,UAAU,QAAQ,IAAI,aAAa,IAAI,GAAG,GAAG;AACtD;AAEW,MAAA,sBAAsB,eAAe,OAAO;AAC5C,MAAA,uBAAuB,eAAe,QAAQ;"}
1
+ {"version":3,"file":"urls.mjs","sources":["../../src/configuration/urls.ts"],"sourcesContent":["import _ from 'lodash';\nimport { strings } from '@strapi/utils';\nimport { isIP } from 'node:net';\n\ninterface ServerConfig {\n url: string;\n host: string;\n port: number | string;\n}\n\nexport const getConfigUrls = (config: Record<string, unknown>, forAdminBuild = false) => {\n const serverConfig = config.server as ServerConfig;\n const adminConfig = config.admin;\n\n // Defines serverUrl value\n let serverUrl = _.get(serverConfig, 'url', '');\n serverUrl = _.trim(serverUrl, '/ ');\n if (typeof serverUrl !== 'string') {\n throw new Error('Invalid server url config. Make sure the url is a string.');\n }\n\n if (serverUrl.startsWith('http')) {\n try {\n serverUrl = _.trim(new URL(serverConfig.url).toString(), '/');\n } catch (e) {\n throw new Error(\n 'Invalid server url config. Make sure the url defined in server.js is valid.'\n );\n }\n } else if (serverUrl !== '') {\n serverUrl = `/${serverUrl}`;\n }\n\n // Defines adminUrl value\n let adminUrl = _.get(adminConfig, 'url', '/admin');\n adminUrl = _.trim(adminUrl, '/ ');\n if (typeof adminUrl !== 'string') {\n throw new Error('Invalid admin url config. Make sure the url is a non-empty string.');\n }\n if (adminUrl.startsWith('http')) {\n try {\n adminUrl = _.trim(new URL(adminUrl).toString(), '/');\n } catch (e) {\n throw new Error('Invalid admin url config. Make sure the url defined in server.js is valid.');\n }\n } else {\n adminUrl = `${serverUrl}/${adminUrl}`;\n }\n\n // Defines adminPath value\n let adminPath = adminUrl;\n if (\n serverUrl.startsWith('http') &&\n adminUrl.startsWith('http') &&\n new URL(adminUrl).origin === new URL(serverUrl).origin &&\n !forAdminBuild\n ) {\n adminPath = adminUrl.replace(strings.getCommonPath(serverUrl, adminUrl), '');\n adminPath = `/${_.trim(adminPath, '/')}`;\n } else if (adminUrl.startsWith('http')) {\n adminPath = new URL(adminUrl).pathname;\n }\n\n return {\n serverUrl,\n adminUrl,\n adminPath,\n };\n};\n\nconst getAbsoluteUrl =\n (adminOrServer: 'admin' | 'server') =>\n (config: Record<string, unknown>, forAdminBuild = false) => {\n const { serverUrl, adminUrl } = getConfigUrls(config, forAdminBuild);\n const url = adminOrServer === 'server' ? serverUrl : adminUrl;\n\n if (url.startsWith('http')) {\n return url;\n }\n\n const serverConfig = config.server as ServerConfig;\n\n const isLocalhost =\n config.environment === 'development' &&\n ['127.0.0.1', '0.0.0.0', '::1', '::'].includes(serverConfig.host);\n\n if (isLocalhost) {\n return `http://localhost:${serverConfig.port}${url}`;\n }\n\n if (isIP(serverConfig.host) === 6) {\n return `http://[${serverConfig.host}]:${serverConfig.port}${url}`;\n }\n\n return `http://${serverConfig.host}:${serverConfig.port}${url}`;\n };\n\nexport const getAbsoluteAdminUrl = getAbsoluteUrl('admin');\nexport const getAbsoluteServerUrl = getAbsoluteUrl('server');\n"],"names":["getConfigUrls","config","forAdminBuild","serverConfig","server","adminConfig","admin","serverUrl","_","get","trim","Error","startsWith","URL","url","toString","e","adminUrl","adminPath","origin","replace","strings","getCommonPath","pathname","getAbsoluteUrl","adminOrServer","isLocalhost","environment","includes","host","port","isIP","getAbsoluteAdminUrl","getAbsoluteServerUrl"],"mappings":"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"}
package/dist/container.js CHANGED
@@ -1,30 +1,34 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
1
+ 'use strict';
2
+
3
3
  class Container {
4
- registerMap = /* @__PURE__ */ new Map();
5
- serviceMap = /* @__PURE__ */ new Map();
6
- add(name, resolver) {
7
- if (this.registerMap.has(name)) {
8
- throw new Error(`Cannot register already registered service ${name}`);
4
+ add(name, resolver) {
5
+ if (this.registerMap.has(name)) {
6
+ throw new Error(`Cannot register already registered service ${name}`);
7
+ }
8
+ this.registerMap.set(name, resolver);
9
+ return this;
9
10
  }
10
- this.registerMap.set(name, resolver);
11
- return this;
12
- }
13
- get(name, args) {
14
- if (this.serviceMap.has(name)) {
15
- return this.serviceMap.get(name);
11
+ get(name, args) {
12
+ // TODO: handle singleton vs instantiation everytime
13
+ if (this.serviceMap.has(name)) {
14
+ return this.serviceMap.get(name);
15
+ }
16
+ if (this.registerMap.has(name)) {
17
+ const resolver = this.registerMap.get(name);
18
+ if (typeof resolver === 'function') {
19
+ this.serviceMap.set(name, resolver(this, args));
20
+ } else {
21
+ this.serviceMap.set(name, resolver);
22
+ }
23
+ return this.serviceMap.get(name);
24
+ }
25
+ throw new Error(`Could not resolve service ${name}`);
16
26
  }
17
- if (this.registerMap.has(name)) {
18
- const resolver = this.registerMap.get(name);
19
- if (typeof resolver === "function") {
20
- this.serviceMap.set(name, resolver(this, args));
21
- } else {
22
- this.serviceMap.set(name, resolver);
23
- }
24
- return this.serviceMap.get(name);
27
+ constructor(){
28
+ this.registerMap = new Map();
29
+ this.serviceMap = new Map();
25
30
  }
26
- throw new Error(`Could not resolve service ${name}`);
27
- }
28
31
  }
32
+
29
33
  exports.Container = Container;
30
34
  //# sourceMappingURL=container.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":[],"mappings":";;AAEO,MAAM,UAAoC;AAAA,EACvC,kCAAkB;EAElB,iCAAiB;EAEzB,IAAI,MAAc,UAAmB;AACnC,QAAI,KAAK,YAAY,IAAI,IAAI,GAAG;AAC9B,YAAM,IAAI,MAAM,8CAA8C,IAAI,EAAE;AAAA,IACtE;AAEK,SAAA,YAAY,IAAI,MAAM,QAAQ;AAC5B,WAAA;AAAA,EACT;AAAA,EAEA,IAAI,MAAc,MAAgB;AAEhC,QAAI,KAAK,WAAW,IAAI,IAAI,GAAG;AACtB,aAAA,KAAK,WAAW,IAAI,IAAI;AAAA,IACjC;AAEA,QAAI,KAAK,YAAY,IAAI,IAAI,GAAG;AAC9B,YAAM,WAAW,KAAK,YAAY,IAAI,IAAI;AAEtC,UAAA,OAAO,aAAa,YAAY;AAClC,aAAK,WAAW,IAAI,MAAM,SAAS,MAAM,IAAI,CAAC;AAAA,MAAA,OACzC;AACA,aAAA,WAAW,IAAI,MAAM,QAAQ;AAAA,MACpC;AAEO,aAAA,KAAK,WAAW,IAAI,IAAI;AAAA,IACjC;AAEA,UAAM,IAAI,MAAM,6BAA6B,IAAI,EAAE;AAAA,EACrD;AACF;;"}
1
+ {"version":3,"file":"container.js","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":";;AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAM,CAAA,CAAC,2CAA2C,EAAEJ,KAAK,CAAC,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAM,CAAA,CAAC,0BAA0B,EAAEJ,KAAK,CAAC,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
@@ -1,30 +1,32 @@
1
1
  class Container {
2
- registerMap = /* @__PURE__ */ new Map();
3
- serviceMap = /* @__PURE__ */ new Map();
4
- add(name, resolver) {
5
- if (this.registerMap.has(name)) {
6
- throw new Error(`Cannot register already registered service ${name}`);
2
+ add(name, resolver) {
3
+ if (this.registerMap.has(name)) {
4
+ throw new Error(`Cannot register already registered service ${name}`);
5
+ }
6
+ this.registerMap.set(name, resolver);
7
+ return this;
7
8
  }
8
- this.registerMap.set(name, resolver);
9
- return this;
10
- }
11
- get(name, args) {
12
- if (this.serviceMap.has(name)) {
13
- return this.serviceMap.get(name);
9
+ get(name, args) {
10
+ // TODO: handle singleton vs instantiation everytime
11
+ if (this.serviceMap.has(name)) {
12
+ return this.serviceMap.get(name);
13
+ }
14
+ if (this.registerMap.has(name)) {
15
+ const resolver = this.registerMap.get(name);
16
+ if (typeof resolver === 'function') {
17
+ this.serviceMap.set(name, resolver(this, args));
18
+ } else {
19
+ this.serviceMap.set(name, resolver);
20
+ }
21
+ return this.serviceMap.get(name);
22
+ }
23
+ throw new Error(`Could not resolve service ${name}`);
14
24
  }
15
- if (this.registerMap.has(name)) {
16
- const resolver = this.registerMap.get(name);
17
- if (typeof resolver === "function") {
18
- this.serviceMap.set(name, resolver(this, args));
19
- } else {
20
- this.serviceMap.set(name, resolver);
21
- }
22
- return this.serviceMap.get(name);
25
+ constructor(){
26
+ this.registerMap = new Map();
27
+ this.serviceMap = new Map();
23
28
  }
24
- throw new Error(`Could not resolve service ${name}`);
25
- }
26
29
  }
27
- export {
28
- Container
29
- };
30
+
31
+ export { Container };
30
32
  //# sourceMappingURL=container.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"container.mjs","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":[],"mappings":"AAEO,MAAM,UAAoC;AAAA,EACvC,kCAAkB;EAElB,iCAAiB;EAEzB,IAAI,MAAc,UAAmB;AACnC,QAAI,KAAK,YAAY,IAAI,IAAI,GAAG;AAC9B,YAAM,IAAI,MAAM,8CAA8C,IAAI,EAAE;AAAA,IACtE;AAEK,SAAA,YAAY,IAAI,MAAM,QAAQ;AAC5B,WAAA;AAAA,EACT;AAAA,EAEA,IAAI,MAAc,MAAgB;AAEhC,QAAI,KAAK,WAAW,IAAI,IAAI,GAAG;AACtB,aAAA,KAAK,WAAW,IAAI,IAAI;AAAA,IACjC;AAEA,QAAI,KAAK,YAAY,IAAI,IAAI,GAAG;AAC9B,YAAM,WAAW,KAAK,YAAY,IAAI,IAAI;AAEtC,UAAA,OAAO,aAAa,YAAY;AAClC,aAAK,WAAW,IAAI,MAAM,SAAS,MAAM,IAAI,CAAC;AAAA,MAAA,OACzC;AACA,aAAA,WAAW,IAAI,MAAM,QAAQ;AAAA,MACpC;AAEO,aAAA,KAAK,WAAW,IAAI,IAAI;AAAA,IACjC;AAEA,UAAM,IAAI,MAAM,6BAA6B,IAAI,EAAE;AAAA,EACrD;AACF;"}
1
+ {"version":3,"file":"container.mjs","sources":["../src/container.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\n\nexport class Container implements Core.Container {\n private registerMap = new Map<string, unknown>();\n\n private serviceMap = new Map();\n\n add(name: string, resolver: unknown) {\n if (this.registerMap.has(name)) {\n throw new Error(`Cannot register already registered service ${name}`);\n }\n\n this.registerMap.set(name, resolver);\n return this;\n }\n\n get(name: string, args?: unknown) {\n // TODO: handle singleton vs instantiation everytime\n if (this.serviceMap.has(name)) {\n return this.serviceMap.get(name);\n }\n\n if (this.registerMap.has(name)) {\n const resolver = this.registerMap.get(name);\n\n if (typeof resolver === 'function') {\n this.serviceMap.set(name, resolver(this, args));\n } else {\n this.serviceMap.set(name, resolver);\n }\n\n return this.serviceMap.get(name);\n }\n\n throw new Error(`Could not resolve service ${name}`);\n }\n}\n"],"names":["Container","add","name","resolver","registerMap","has","Error","set","get","args","serviceMap","Map"],"mappings":"AAEO,MAAMA,SAAAA,CAAAA;IAKXC,GAAIC,CAAAA,IAAY,EAAEC,QAAiB,EAAE;AACnC,QAAA,IAAI,IAAI,CAACC,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAM,IAAII,KAAM,CAAA,CAAC,2CAA2C,EAAEJ,KAAK,CAAC,CAAA;AACtE;AAEA,QAAA,IAAI,CAACE,WAAW,CAACG,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC3B,QAAA,OAAO,IAAI;AACb;IAEAK,GAAIN,CAAAA,IAAY,EAAEO,IAAc,EAAE;;AAEhC,QAAA,IAAI,IAAI,CAACC,UAAU,CAACL,GAAG,CAACH,IAAO,CAAA,EAAA;AAC7B,YAAA,OAAO,IAAI,CAACQ,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,IAAI,IAAI,CAACE,WAAW,CAACC,GAAG,CAACH,IAAO,CAAA,EAAA;AAC9B,YAAA,MAAMC,WAAW,IAAI,CAACC,WAAW,CAACI,GAAG,CAACN,IAAAA,CAAAA;YAEtC,IAAI,OAAOC,aAAa,UAAY,EAAA;gBAClC,IAAI,CAACO,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAS,IAAI,EAAEM,IAAAA,CAAAA,CAAAA;aACpC,MAAA;AACL,gBAAA,IAAI,CAACC,UAAU,CAACH,GAAG,CAACL,IAAMC,EAAAA,QAAAA,CAAAA;AAC5B;AAEA,YAAA,OAAO,IAAI,CAACO,UAAU,CAACF,GAAG,CAACN,IAAAA,CAAAA;AAC7B;AAEA,QAAA,MAAM,IAAII,KAAM,CAAA,CAAC,0BAA0B,EAAEJ,KAAK,CAAC,CAAA;AACrD;;AAhCQE,QAAAA,IAAAA,CAAAA,WAAAA,GAAc,IAAIO,GAAAA,EAAAA;AAElBD,QAAAA,IAAAA,CAAAA,UAAAA,GAAa,IAAIC,GAAAA,EAAAA;;AA+B3B;;;;"}
@@ -1,84 +1,85 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const fp = require("lodash/fp");
4
- const strapiUtils = require("@strapi/utils");
5
- const createCollectionTypeController = ({
6
- contentType
7
- }) => {
8
- const uid = contentType.uid;
9
- return {
10
- /**
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var strapiUtils = require('@strapi/utils');
5
+
6
+ /**
7
+ *
8
+ * Returns a collection type controller to handle default core-api actions
9
+ */ const createCollectionTypeController = ({ contentType })=>{
10
+ const uid = contentType.uid;
11
+ // TODO: transform into a class
12
+ return {
13
+ /**
11
14
  * Retrieve records.
12
- */
13
- async find(ctx) {
14
- await this.validateQuery(ctx);
15
- const sanitizedQuery = await this.sanitizeQuery(ctx);
16
- const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);
17
- const sanitizedResults = await this.sanitizeOutput(results, ctx);
18
- return this.transformResponse(sanitizedResults, { pagination });
19
- },
20
- /**
15
+ */ async find (ctx) {
16
+ await this.validateQuery(ctx);
17
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
18
+ const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);
19
+ const sanitizedResults = await this.sanitizeOutput(results, ctx);
20
+ return this.transformResponse(sanitizedResults, {
21
+ pagination
22
+ });
23
+ },
24
+ /**
21
25
  * Retrieve a record
22
- */
23
- async findOne(ctx) {
24
- const { id } = ctx.params;
25
- await this.validateQuery(ctx);
26
- const sanitizedQuery = await this.sanitizeQuery(ctx);
27
- const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
28
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
29
- return this.transformResponse(sanitizedEntity);
30
- },
31
- /**
26
+ */ async findOne (ctx) {
27
+ const { id } = ctx.params;
28
+ await this.validateQuery(ctx);
29
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
30
+ const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
31
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
32
+ return this.transformResponse(sanitizedEntity);
33
+ },
34
+ /**
32
35
  * Create a record.
33
- */
34
- async create(ctx) {
35
- await this.validateQuery(ctx);
36
- const sanitizedQuery = await this.sanitizeQuery(ctx);
37
- const { body = {} } = ctx.request;
38
- if (!fp.isObject(body.data)) {
39
- throw new strapiUtils.errors.ValidationError('Missing "data" payload in the request body');
40
- }
41
- await this.validateInput(body.data, ctx);
42
- const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
43
- const entity = await strapi.service(uid).create({
44
- ...sanitizedQuery,
45
- data: sanitizedInputData
46
- });
47
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
48
- ctx.status = 201;
49
- return this.transformResponse(sanitizedEntity);
50
- },
51
- /**
36
+ */ async create (ctx) {
37
+ await this.validateQuery(ctx);
38
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
39
+ const { body = {} } = ctx.request;
40
+ if (!fp.isObject(body.data)) {
41
+ throw new strapiUtils.errors.ValidationError('Missing "data" payload in the request body');
42
+ }
43
+ await this.validateInput(body.data, ctx);
44
+ const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
45
+ const entity = await strapi.service(uid).create({
46
+ ...sanitizedQuery,
47
+ data: sanitizedInputData
48
+ });
49
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
50
+ ctx.status = 201;
51
+ return this.transformResponse(sanitizedEntity);
52
+ },
53
+ /**
52
54
  * Update a record.
53
- */
54
- async update(ctx) {
55
- const { id } = ctx.params;
56
- await this.validateQuery(ctx);
57
- const sanitizedQuery = await this.sanitizeQuery(ctx);
58
- const { body = {} } = ctx.request;
59
- if (!fp.isObject(body.data)) {
60
- throw new strapiUtils.errors.ValidationError('Missing "data" payload in the request body');
61
- }
62
- await this.validateInput(body.data, ctx);
63
- const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
64
- const entity = await strapi.service(uid).update(id, {
65
- ...sanitizedQuery,
66
- data: sanitizedInputData
67
- });
68
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
69
- return this.transformResponse(sanitizedEntity);
70
- },
71
- /**
55
+ */ async update (ctx) {
56
+ const { id } = ctx.params;
57
+ await this.validateQuery(ctx);
58
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
59
+ const { body = {} } = ctx.request;
60
+ if (!fp.isObject(body.data)) {
61
+ throw new strapiUtils.errors.ValidationError('Missing "data" payload in the request body');
62
+ }
63
+ await this.validateInput(body.data, ctx);
64
+ const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
65
+ const entity = await strapi.service(uid).update(id, {
66
+ ...sanitizedQuery,
67
+ data: sanitizedInputData
68
+ });
69
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
70
+ return this.transformResponse(sanitizedEntity);
71
+ },
72
+ /**
72
73
  * Destroy a record.
73
- */
74
- async delete(ctx) {
75
- const { id } = ctx.params;
76
- await this.validateQuery(ctx);
77
- const sanitizedQuery = await this.sanitizeQuery(ctx);
78
- await strapi.service(uid).delete(id, sanitizedQuery);
79
- ctx.status = 204;
80
- }
81
- };
74
+ */ async delete (ctx) {
75
+ const { id } = ctx.params;
76
+ await this.validateQuery(ctx);
77
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
78
+ await strapi.service(uid).delete(id, sanitizedQuery);
79
+ ctx.status = 204;
80
+ }
81
+ };
82
82
  };
83
+
83
84
  exports.createCollectionTypeController = createCollectionTypeController;
84
85
  //# sourceMappingURL=collection-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection-type.js","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["isObject","errors"],"mappings":";;;;AAaA,MAAM,iCAAiC,CAAC;AAAA,EACtC;AACF,MAA8E;AAC5E,QAAM,MAAM,YAAY;AAGjB,SAAA;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,KAAK,KAAK;AACR,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAE7C,YAAA,EAAE,SAAS,WAAA,IAAe,MAAM,OAAO,QAAQ,GAAG,EAAE,KAAK,cAAc;AAC7E,YAAM,mBAAmB,MAAM,KAAK,eAAe,SAAS,GAAG;AAC/D,aAAO,KAAK,kBAAkB,kBAAkB,EAAE,WAAY,CAAA;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,QAAQ,KAAK;AACX,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAE7C,YAAA,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,QAAQ,IAAI,cAAc;AACnE,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAEtD,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAK;AACV,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,EAAE,OAAO,CAAA,MAAc,IAAI;AAEjC,UAAI,CAACA,GAAA,SAAS,KAAK,IAAI,GAAG;AAClB,cAAA,IAAIC,YAAO,OAAA,gBAAgB,4CAA4C;AAAA,MAC/E;AAEA,YAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAEvC,YAAM,qBAAqB,MAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAElE,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,OAAO;AAAA,QAC9C,GAAG;AAAA,QACH,MAAM;AAAA,MAAA,CACP;AAED,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAE7D,UAAI,SAAS;AACN,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAkB;AACvB,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,EAAE,OAAO,CAAA,MAAc,IAAI;AAEjC,UAAI,CAACD,GAAA,SAAS,KAAK,IAAI,GAAG;AAClB,cAAA,IAAIC,YAAO,OAAA,gBAAgB,4CAA4C;AAAA,MAC/E;AAEA,YAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAEvC,YAAM,qBAAqB,MAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAElE,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,OAAO,IAAI;AAAA,QAClD,GAAG;AAAA,QACH,MAAM;AAAA,MAAA,CACP;AAED,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAEtD,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAK;AACV,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,OAAO,QAAQ,GAAG,EAAE,OAAO,IAAI,cAAc;AAEnD,UAAI,SAAS;AAAA,IACf;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"collection-type.js","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":"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"}
@@ -1,84 +1,83 @@
1
- import { isObject } from "lodash/fp";
2
- import { errors } from "@strapi/utils";
3
- const createCollectionTypeController = ({
4
- contentType
5
- }) => {
6
- const uid = contentType.uid;
7
- return {
8
- /**
1
+ import { isObject } from 'lodash/fp';
2
+ import { errors } from '@strapi/utils';
3
+
4
+ /**
5
+ *
6
+ * Returns a collection type controller to handle default core-api actions
7
+ */ const createCollectionTypeController = ({ contentType })=>{
8
+ const uid = contentType.uid;
9
+ // TODO: transform into a class
10
+ return {
11
+ /**
9
12
  * Retrieve records.
10
- */
11
- async find(ctx) {
12
- await this.validateQuery(ctx);
13
- const sanitizedQuery = await this.sanitizeQuery(ctx);
14
- const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);
15
- const sanitizedResults = await this.sanitizeOutput(results, ctx);
16
- return this.transformResponse(sanitizedResults, { pagination });
17
- },
18
- /**
13
+ */ async find (ctx) {
14
+ await this.validateQuery(ctx);
15
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
16
+ const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);
17
+ const sanitizedResults = await this.sanitizeOutput(results, ctx);
18
+ return this.transformResponse(sanitizedResults, {
19
+ pagination
20
+ });
21
+ },
22
+ /**
19
23
  * Retrieve a record
20
- */
21
- async findOne(ctx) {
22
- const { id } = ctx.params;
23
- await this.validateQuery(ctx);
24
- const sanitizedQuery = await this.sanitizeQuery(ctx);
25
- const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
26
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
27
- return this.transformResponse(sanitizedEntity);
28
- },
29
- /**
24
+ */ async findOne (ctx) {
25
+ const { id } = ctx.params;
26
+ await this.validateQuery(ctx);
27
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
28
+ const entity = await strapi.service(uid).findOne(id, sanitizedQuery);
29
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
30
+ return this.transformResponse(sanitizedEntity);
31
+ },
32
+ /**
30
33
  * Create a record.
31
- */
32
- async create(ctx) {
33
- await this.validateQuery(ctx);
34
- const sanitizedQuery = await this.sanitizeQuery(ctx);
35
- const { body = {} } = ctx.request;
36
- if (!isObject(body.data)) {
37
- throw new errors.ValidationError('Missing "data" payload in the request body');
38
- }
39
- await this.validateInput(body.data, ctx);
40
- const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
41
- const entity = await strapi.service(uid).create({
42
- ...sanitizedQuery,
43
- data: sanitizedInputData
44
- });
45
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
46
- ctx.status = 201;
47
- return this.transformResponse(sanitizedEntity);
48
- },
49
- /**
34
+ */ async create (ctx) {
35
+ await this.validateQuery(ctx);
36
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
37
+ const { body = {} } = ctx.request;
38
+ if (!isObject(body.data)) {
39
+ throw new errors.ValidationError('Missing "data" payload in the request body');
40
+ }
41
+ await this.validateInput(body.data, ctx);
42
+ const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
43
+ const entity = await strapi.service(uid).create({
44
+ ...sanitizedQuery,
45
+ data: sanitizedInputData
46
+ });
47
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
48
+ ctx.status = 201;
49
+ return this.transformResponse(sanitizedEntity);
50
+ },
51
+ /**
50
52
  * Update a record.
51
- */
52
- async update(ctx) {
53
- const { id } = ctx.params;
54
- await this.validateQuery(ctx);
55
- const sanitizedQuery = await this.sanitizeQuery(ctx);
56
- const { body = {} } = ctx.request;
57
- if (!isObject(body.data)) {
58
- throw new errors.ValidationError('Missing "data" payload in the request body');
59
- }
60
- await this.validateInput(body.data, ctx);
61
- const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
62
- const entity = await strapi.service(uid).update(id, {
63
- ...sanitizedQuery,
64
- data: sanitizedInputData
65
- });
66
- const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
67
- return this.transformResponse(sanitizedEntity);
68
- },
69
- /**
53
+ */ async update (ctx) {
54
+ const { id } = ctx.params;
55
+ await this.validateQuery(ctx);
56
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
57
+ const { body = {} } = ctx.request;
58
+ if (!isObject(body.data)) {
59
+ throw new errors.ValidationError('Missing "data" payload in the request body');
60
+ }
61
+ await this.validateInput(body.data, ctx);
62
+ const sanitizedInputData = await this.sanitizeInput(body.data, ctx);
63
+ const entity = await strapi.service(uid).update(id, {
64
+ ...sanitizedQuery,
65
+ data: sanitizedInputData
66
+ });
67
+ const sanitizedEntity = await this.sanitizeOutput(entity, ctx);
68
+ return this.transformResponse(sanitizedEntity);
69
+ },
70
+ /**
70
71
  * Destroy a record.
71
- */
72
- async delete(ctx) {
73
- const { id } = ctx.params;
74
- await this.validateQuery(ctx);
75
- const sanitizedQuery = await this.sanitizeQuery(ctx);
76
- await strapi.service(uid).delete(id, sanitizedQuery);
77
- ctx.status = 204;
78
- }
79
- };
80
- };
81
- export {
82
- createCollectionTypeController
72
+ */ async delete (ctx) {
73
+ const { id } = ctx.params;
74
+ await this.validateQuery(ctx);
75
+ const sanitizedQuery = await this.sanitizeQuery(ctx);
76
+ await strapi.service(uid).delete(id, sanitizedQuery);
77
+ ctx.status = 204;
78
+ }
79
+ };
83
80
  };
81
+
82
+ export { createCollectionTypeController };
84
83
  //# sourceMappingURL=collection-type.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"collection-type.mjs","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":[],"mappings":";;AAaA,MAAM,iCAAiC,CAAC;AAAA,EACtC;AACF,MAA8E;AAC5E,QAAM,MAAM,YAAY;AAGjB,SAAA;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,KAAK,KAAK;AACR,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAE7C,YAAA,EAAE,SAAS,WAAA,IAAe,MAAM,OAAO,QAAQ,GAAG,EAAE,KAAK,cAAc;AAC7E,YAAM,mBAAmB,MAAM,KAAK,eAAe,SAAS,GAAG;AAC/D,aAAO,KAAK,kBAAkB,kBAAkB,EAAE,WAAY,CAAA;AAAA,IAChE;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,QAAQ,KAAK;AACX,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAE7C,YAAA,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,QAAQ,IAAI,cAAc;AACnE,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAEtD,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAK;AACV,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,EAAE,OAAO,CAAA,MAAc,IAAI;AAEjC,UAAI,CAAC,SAAS,KAAK,IAAI,GAAG;AAClB,cAAA,IAAI,OAAO,gBAAgB,4CAA4C;AAAA,MAC/E;AAEA,YAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAEvC,YAAM,qBAAqB,MAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAElE,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,OAAO;AAAA,QAC9C,GAAG;AAAA,QACH,MAAM;AAAA,MAAA,CACP;AAED,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAE7D,UAAI,SAAS;AACN,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAkB;AACvB,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,EAAE,OAAO,CAAA,MAAc,IAAI;AAEjC,UAAI,CAAC,SAAS,KAAK,IAAI,GAAG;AAClB,cAAA,IAAI,OAAO,gBAAgB,4CAA4C;AAAA,MAC/E;AAEA,YAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAEvC,YAAM,qBAAqB,MAAM,KAAK,cAAc,KAAK,MAAM,GAAG;AAElE,YAAM,SAAS,MAAM,OAAO,QAAQ,GAAG,EAAE,OAAO,IAAI;AAAA,QAClD,GAAG;AAAA,QACH,MAAM;AAAA,MAAA,CACP;AAED,YAAM,kBAAkB,MAAM,KAAK,eAAe,QAAQ,GAAG;AAEtD,aAAA,KAAK,kBAAkB,eAAe;AAAA,IAC/C;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO,KAAK;AACV,YAAA,EAAE,GAAG,IAAI,IAAI;AACb,YAAA,KAAK,cAAc,GAAG;AAC5B,YAAM,iBAAiB,MAAM,KAAK,cAAc,GAAG;AAEnD,YAAM,OAAO,QAAQ,GAAG,EAAE,OAAO,IAAI,cAAc;AAEnD,UAAI,SAAS;AAAA,IACf;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"collection-type.mjs","sources":["../../../src/core-api/controller/collection-type.ts"],"sourcesContent":["import { isObject } from 'lodash/fp';\nimport { errors } from '@strapi/utils';\nimport type { Core, Struct, Utils, UID } from '@strapi/types';\nimport type Koa from 'koa';\n\ninterface Options {\n contentType: Struct.CollectionTypeSchema;\n}\n\n/**\n *\n * Returns a collection type controller to handle default core-api actions\n */\nconst createCollectionTypeController = ({\n contentType,\n}: Options): Utils.PartialWithThis<Core.CoreAPI.Controller.CollectionType> => {\n const uid = contentType.uid as UID.Service;\n\n // TODO: transform into a class\n return {\n /**\n * Retrieve records.\n */\n async find(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { results, pagination } = await strapi.service(uid).find(sanitizedQuery);\n const sanitizedResults = await this.sanitizeOutput(results, ctx);\n return this.transformResponse(sanitizedResults, { pagination });\n },\n\n /**\n * Retrieve a record\n */\n async findOne(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const entity = await strapi.service(uid).findOne(id, sanitizedQuery);\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Create a record.\n */\n async create(ctx) {\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).create({\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n ctx.status = 201;\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Update a record.\n */\n async update(ctx: Koa.Context) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n const { body = {} as any } = ctx.request;\n\n if (!isObject(body.data)) {\n throw new errors.ValidationError('Missing \"data\" payload in the request body');\n }\n\n await this.validateInput(body.data, ctx);\n\n const sanitizedInputData = await this.sanitizeInput(body.data, ctx);\n\n const entity = await strapi.service(uid).update(id, {\n ...sanitizedQuery,\n data: sanitizedInputData,\n });\n\n const sanitizedEntity = await this.sanitizeOutput(entity, ctx);\n\n return this.transformResponse(sanitizedEntity);\n },\n\n /**\n * Destroy a record.\n */\n async delete(ctx) {\n const { id } = ctx.params;\n await this.validateQuery(ctx);\n const sanitizedQuery = await this.sanitizeQuery(ctx);\n\n await strapi.service(uid).delete(id, sanitizedQuery);\n\n ctx.status = 204;\n },\n };\n};\n\nexport { createCollectionTypeController };\n"],"names":["createCollectionTypeController","contentType","uid","find","ctx","validateQuery","sanitizedQuery","sanitizeQuery","results","pagination","strapi","service","sanitizedResults","sanitizeOutput","transformResponse","findOne","id","params","entity","sanitizedEntity","create","body","request","isObject","data","errors","ValidationError","validateInput","sanitizedInputData","sanitizeInput","status","update","delete"],"mappings":"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"}