@strapi/core 0.0.0-experimental.a407f3bc8fb79a53cf7975140864526b6ddbac4b → 0.0.0-experimental.a4bb06d54b493ab973659d0200e0e42937988850

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 (882) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts +52 -59
  3. package/dist/Strapi.d.ts.map +1 -1
  4. package/dist/Strapi.js +202 -212
  5. package/dist/Strapi.js.map +1 -1
  6. package/dist/Strapi.mjs +172 -202
  7. package/dist/Strapi.mjs.map +1 -1
  8. package/dist/compile.js.map +1 -1
  9. package/dist/compile.mjs.map +1 -1
  10. package/dist/configuration/config-loader.d.ts.map +1 -1
  11. package/dist/configuration/config-loader.js +10 -7
  12. package/dist/configuration/config-loader.js.map +1 -1
  13. package/dist/configuration/config-loader.mjs +10 -7
  14. package/dist/configuration/config-loader.mjs.map +1 -1
  15. package/dist/configuration/get-dirs.d.ts +10 -0
  16. package/dist/configuration/get-dirs.d.ts.map +1 -0
  17. package/dist/{utils → configuration}/get-dirs.js +3 -2
  18. package/dist/configuration/get-dirs.js.map +1 -0
  19. package/dist/{utils → configuration}/get-dirs.mjs +3 -2
  20. package/dist/configuration/get-dirs.mjs.map +1 -0
  21. package/dist/configuration/index.d.ts +4 -7
  22. package/dist/configuration/index.d.ts.map +1 -1
  23. package/dist/configuration/index.js +16 -9
  24. package/dist/configuration/index.js.map +1 -1
  25. package/dist/configuration/index.mjs +14 -8
  26. package/dist/configuration/index.mjs.map +1 -1
  27. package/dist/configuration/urls.d.ts +8 -0
  28. package/dist/configuration/urls.d.ts.map +1 -0
  29. package/dist/configuration/urls.js +68 -0
  30. package/dist/configuration/urls.js.map +1 -0
  31. package/dist/configuration/urls.mjs +66 -0
  32. package/dist/configuration/urls.mjs.map +1 -0
  33. package/dist/container.d.ts +2 -2
  34. package/dist/container.d.ts.map +1 -1
  35. package/dist/container.js.map +1 -1
  36. package/dist/container.mjs.map +1 -1
  37. package/dist/core-api/controller/collection-type.d.ts +3 -3
  38. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  39. package/dist/core-api/controller/collection-type.js +6 -3
  40. package/dist/core-api/controller/collection-type.js.map +1 -1
  41. package/dist/core-api/controller/collection-type.mjs +3 -0
  42. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  43. package/dist/core-api/controller/index.d.ts +3 -3
  44. package/dist/core-api/controller/index.d.ts.map +1 -1
  45. package/dist/core-api/controller/index.js +13 -8
  46. package/dist/core-api/controller/index.js.map +1 -1
  47. package/dist/core-api/controller/index.mjs +12 -7
  48. package/dist/core-api/controller/index.mjs.map +1 -1
  49. package/dist/core-api/controller/single-type.d.ts +3 -3
  50. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  51. package/dist/core-api/controller/single-type.js +3 -2
  52. package/dist/core-api/controller/single-type.js.map +1 -1
  53. package/dist/core-api/controller/single-type.mjs +1 -0
  54. package/dist/core-api/controller/single-type.mjs.map +1 -1
  55. package/dist/core-api/controller/transform.d.ts +10 -9
  56. package/dist/core-api/controller/transform.d.ts.map +1 -1
  57. package/dist/core-api/controller/transform.js +25 -19
  58. package/dist/core-api/controller/transform.js.map +1 -1
  59. package/dist/core-api/controller/transform.mjs +19 -13
  60. package/dist/core-api/controller/transform.mjs.map +1 -1
  61. package/dist/core-api/routes/index.d.ts.map +1 -1
  62. package/dist/core-api/routes/index.js.map +1 -1
  63. package/dist/core-api/routes/index.mjs.map +1 -1
  64. package/dist/core-api/service/collection-type.d.ts +11 -17
  65. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  66. package/dist/core-api/service/collection-type.js +18 -7
  67. package/dist/core-api/service/collection-type.js.map +1 -1
  68. package/dist/core-api/service/collection-type.mjs +19 -8
  69. package/dist/core-api/service/collection-type.mjs.map +1 -1
  70. package/dist/core-api/service/core-service.js.map +1 -1
  71. package/dist/core-api/service/core-service.mjs.map +1 -1
  72. package/dist/core-api/service/index.d.ts +3 -3
  73. package/dist/core-api/service/index.d.ts.map +1 -1
  74. package/dist/core-api/service/index.js.map +1 -1
  75. package/dist/core-api/service/index.mjs.map +1 -1
  76. package/dist/core-api/service/pagination.d.ts +4 -11
  77. package/dist/core-api/service/pagination.d.ts.map +1 -1
  78. package/dist/core-api/service/pagination.js +18 -44
  79. package/dist/core-api/service/pagination.js.map +1 -1
  80. package/dist/core-api/service/pagination.mjs +16 -42
  81. package/dist/core-api/service/pagination.mjs.map +1 -1
  82. package/dist/core-api/service/single-type.d.ts +5 -5
  83. package/dist/core-api/service/single-type.d.ts.map +1 -1
  84. package/dist/core-api/service/single-type.js +13 -8
  85. package/dist/core-api/service/single-type.js.map +1 -1
  86. package/dist/core-api/service/single-type.mjs +13 -8
  87. package/dist/core-api/service/single-type.mjs.map +1 -1
  88. package/dist/domain/content-type/index.d.ts +1 -1
  89. package/dist/domain/content-type/index.d.ts.map +1 -1
  90. package/dist/domain/content-type/index.js +7 -4
  91. package/dist/domain/content-type/index.js.map +1 -1
  92. package/dist/domain/content-type/index.mjs +3 -0
  93. package/dist/domain/content-type/index.mjs.map +1 -1
  94. package/dist/domain/content-type/validator.d.ts.map +1 -1
  95. package/dist/domain/content-type/validator.js +1 -1
  96. package/dist/domain/content-type/validator.js.map +1 -1
  97. package/dist/domain/content-type/validator.mjs +2 -2
  98. package/dist/domain/content-type/validator.mjs.map +1 -1
  99. package/dist/domain/module/index.d.ts +24 -23
  100. package/dist/domain/module/index.d.ts.map +1 -1
  101. package/dist/domain/module/index.js +3 -3
  102. package/dist/domain/module/index.js.map +1 -1
  103. package/dist/domain/module/index.mjs +4 -4
  104. package/dist/domain/module/index.mjs.map +1 -1
  105. package/dist/domain/module/validation.js.map +1 -1
  106. package/dist/domain/module/validation.mjs.map +1 -1
  107. package/dist/ee/index.d.ts +4 -2
  108. package/dist/ee/index.d.ts.map +1 -1
  109. package/dist/ee/index.js +9 -4
  110. package/dist/ee/index.js.map +1 -1
  111. package/dist/ee/index.mjs +6 -1
  112. package/dist/ee/index.mjs.map +1 -1
  113. package/dist/ee/license.d.ts +2 -2
  114. package/dist/ee/license.d.ts.map +1 -1
  115. package/dist/ee/license.js +2 -1
  116. package/dist/ee/license.js.map +1 -1
  117. package/dist/ee/license.mjs +2 -1
  118. package/dist/ee/license.mjs.map +1 -1
  119. package/dist/factories.d.ts +10 -10
  120. package/dist/factories.d.ts.map +1 -1
  121. package/dist/factories.js +10 -6
  122. package/dist/factories.js.map +1 -1
  123. package/dist/factories.mjs +6 -2
  124. package/dist/factories.mjs.map +1 -1
  125. package/dist/index.d.ts +18 -2
  126. package/dist/index.d.ts.map +1 -1
  127. package/dist/index.js +25 -1
  128. package/dist/index.js.map +1 -1
  129. package/dist/index.mjs +27 -3
  130. package/dist/index.mjs.map +1 -1
  131. package/dist/loaders/admin.d.ts +2 -2
  132. package/dist/loaders/admin.d.ts.map +1 -1
  133. package/dist/loaders/admin.js +0 -1
  134. package/dist/loaders/admin.js.map +1 -1
  135. package/dist/loaders/admin.mjs +0 -1
  136. package/dist/loaders/admin.mjs.map +1 -1
  137. package/dist/loaders/apis.d.ts +2 -2
  138. package/dist/loaders/apis.d.ts.map +1 -1
  139. package/dist/loaders/apis.js +13 -13
  140. package/dist/loaders/apis.js.map +1 -1
  141. package/dist/loaders/apis.mjs +12 -12
  142. package/dist/loaders/apis.mjs.map +1 -1
  143. package/dist/loaders/components.d.ts +2 -2
  144. package/dist/loaders/components.d.ts.map +1 -1
  145. package/dist/loaders/components.js.map +1 -1
  146. package/dist/loaders/components.mjs.map +1 -1
  147. package/dist/loaders/index.d.ts +2 -2
  148. package/dist/loaders/index.d.ts.map +1 -1
  149. package/dist/loaders/index.js +0 -2
  150. package/dist/loaders/index.js.map +1 -1
  151. package/dist/loaders/index.mjs +0 -2
  152. package/dist/loaders/index.mjs.map +1 -1
  153. package/dist/loaders/middlewares.d.ts +2 -2
  154. package/dist/loaders/middlewares.d.ts.map +1 -1
  155. package/dist/loaders/middlewares.js.map +1 -1
  156. package/dist/loaders/middlewares.mjs.map +1 -1
  157. package/dist/loaders/plugins/get-enabled-plugins.d.ts +2 -2
  158. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  159. package/dist/loaders/plugins/get-enabled-plugins.js +48 -18
  160. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  161. package/dist/loaders/plugins/get-enabled-plugins.mjs +19 -11
  162. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  163. package/dist/loaders/plugins/get-user-plugins-config.js +2 -2
  164. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  165. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  166. package/dist/loaders/plugins/index.d.ts +2 -2
  167. package/dist/loaders/plugins/index.d.ts.map +1 -1
  168. package/dist/loaders/plugins/index.js +33 -7
  169. package/dist/loaders/plugins/index.js.map +1 -1
  170. package/dist/loaders/plugins/index.mjs +9 -1
  171. package/dist/loaders/plugins/index.mjs.map +1 -1
  172. package/dist/loaders/policies.d.ts +2 -2
  173. package/dist/loaders/policies.d.ts.map +1 -1
  174. package/dist/loaders/policies.js.map +1 -1
  175. package/dist/loaders/policies.mjs.map +1 -1
  176. package/dist/loaders/sanitizers.d.ts +2 -2
  177. package/dist/loaders/sanitizers.d.ts.map +1 -1
  178. package/dist/loaders/sanitizers.js.map +1 -1
  179. package/dist/loaders/sanitizers.mjs.map +1 -1
  180. package/dist/loaders/src-index.d.ts +2 -2
  181. package/dist/loaders/src-index.d.ts.map +1 -1
  182. package/dist/loaders/src-index.js.map +1 -1
  183. package/dist/loaders/src-index.mjs.map +1 -1
  184. package/dist/loaders/validators.d.ts +2 -2
  185. package/dist/loaders/validators.d.ts.map +1 -1
  186. package/dist/loaders/validators.js.map +1 -1
  187. package/dist/loaders/validators.mjs.map +1 -1
  188. package/dist/middlewares/body.d.ts +4 -4
  189. package/dist/middlewares/body.d.ts.map +1 -1
  190. package/dist/middlewares/body.js +6 -6
  191. package/dist/middlewares/body.js.map +1 -1
  192. package/dist/middlewares/body.mjs +4 -4
  193. package/dist/middlewares/body.mjs.map +1 -1
  194. package/dist/middlewares/compression.d.ts +2 -2
  195. package/dist/middlewares/compression.d.ts.map +1 -1
  196. package/dist/middlewares/compression.js.map +1 -1
  197. package/dist/middlewares/compression.mjs.map +1 -1
  198. package/dist/middlewares/cors.d.ts +2 -2
  199. package/dist/middlewares/cors.d.ts.map +1 -1
  200. package/dist/middlewares/cors.js +9 -7
  201. package/dist/middlewares/cors.js.map +1 -1
  202. package/dist/middlewares/cors.mjs +9 -7
  203. package/dist/middlewares/cors.mjs.map +1 -1
  204. package/dist/middlewares/errors.d.ts +2 -2
  205. package/dist/middlewares/errors.d.ts.map +1 -1
  206. package/dist/middlewares/errors.js.map +1 -1
  207. package/dist/middlewares/errors.mjs.map +1 -1
  208. package/dist/middlewares/favicon.d.ts +2 -2
  209. package/dist/middlewares/favicon.d.ts.map +1 -1
  210. package/dist/middlewares/favicon.js.map +1 -1
  211. package/dist/middlewares/favicon.mjs.map +1 -1
  212. package/dist/middlewares/index.d.ts +2 -2
  213. package/dist/middlewares/index.d.ts.map +1 -1
  214. package/dist/middlewares/index.js.map +1 -1
  215. package/dist/middlewares/index.mjs.map +1 -1
  216. package/dist/middlewares/ip.d.ts +2 -2
  217. package/dist/middlewares/ip.d.ts.map +1 -1
  218. package/dist/middlewares/ip.js.map +1 -1
  219. package/dist/middlewares/ip.mjs.map +1 -1
  220. package/dist/middlewares/logger.d.ts +2 -2
  221. package/dist/middlewares/logger.d.ts.map +1 -1
  222. package/dist/middlewares/logger.js.map +1 -1
  223. package/dist/middlewares/logger.mjs.map +1 -1
  224. package/dist/middlewares/powered-by.d.ts +2 -2
  225. package/dist/middlewares/powered-by.d.ts.map +1 -1
  226. package/dist/middlewares/powered-by.js.map +1 -1
  227. package/dist/middlewares/powered-by.mjs.map +1 -1
  228. package/dist/middlewares/public.d.ts +2 -2
  229. package/dist/middlewares/public.d.ts.map +1 -1
  230. package/dist/middlewares/public.js +3 -3
  231. package/dist/middlewares/public.js.map +1 -1
  232. package/dist/middlewares/public.mjs +1 -1
  233. package/dist/middlewares/public.mjs.map +1 -1
  234. package/dist/middlewares/query.d.ts +2 -2
  235. package/dist/middlewares/query.d.ts.map +1 -1
  236. package/dist/middlewares/query.js.map +1 -1
  237. package/dist/middlewares/query.mjs.map +1 -1
  238. package/dist/middlewares/response-time.d.ts +2 -2
  239. package/dist/middlewares/response-time.d.ts.map +1 -1
  240. package/dist/middlewares/response-time.js.map +1 -1
  241. package/dist/middlewares/response-time.mjs.map +1 -1
  242. package/dist/middlewares/responses.d.ts +3 -3
  243. package/dist/middlewares/responses.d.ts.map +1 -1
  244. package/dist/middlewares/responses.js +2 -2
  245. package/dist/middlewares/responses.js.map +1 -1
  246. package/dist/middlewares/responses.mjs.map +1 -1
  247. package/dist/middlewares/security.d.ts +2 -2
  248. package/dist/middlewares/security.d.ts.map +1 -1
  249. package/dist/middlewares/security.js +13 -6
  250. package/dist/middlewares/security.js.map +1 -1
  251. package/dist/middlewares/security.mjs +12 -5
  252. package/dist/middlewares/security.mjs.map +1 -1
  253. package/dist/middlewares/session.d.ts +2 -2
  254. package/dist/middlewares/session.d.ts.map +1 -1
  255. package/dist/middlewares/session.js +2 -2
  256. package/dist/middlewares/session.js.map +1 -1
  257. package/dist/middlewares/session.mjs.map +1 -1
  258. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +33 -0
  259. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  260. package/dist/migrations/database/5.0.0-discard-drafts.js +109 -0
  261. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  262. package/dist/migrations/database/5.0.0-discard-drafts.mjs +109 -0
  263. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  264. package/dist/migrations/draft-publish.d.ts +17 -0
  265. package/dist/migrations/draft-publish.d.ts.map +1 -0
  266. package/dist/migrations/draft-publish.js +42 -0
  267. package/dist/migrations/draft-publish.js.map +1 -0
  268. package/dist/migrations/draft-publish.mjs +42 -0
  269. package/dist/migrations/draft-publish.mjs.map +1 -0
  270. package/dist/migrations/i18n.d.ts +5 -0
  271. package/dist/migrations/i18n.d.ts.map +1 -0
  272. package/dist/migrations/i18n.js +54 -0
  273. package/dist/migrations/i18n.js.map +1 -0
  274. package/dist/migrations/i18n.mjs +54 -0
  275. package/dist/migrations/i18n.mjs.map +1 -0
  276. package/dist/migrations/index.d.ts +5 -0
  277. package/dist/migrations/index.d.ts.map +1 -0
  278. package/dist/migrations/index.js +15 -0
  279. package/dist/migrations/index.js.map +1 -0
  280. package/dist/migrations/index.mjs +15 -0
  281. package/dist/migrations/index.mjs.map +1 -0
  282. package/dist/providers/admin.d.ts +3 -0
  283. package/dist/providers/admin.d.ts.map +1 -0
  284. package/dist/providers/admin.js +20 -0
  285. package/dist/providers/admin.js.map +1 -0
  286. package/dist/providers/admin.mjs +21 -0
  287. package/dist/providers/admin.mjs.map +1 -0
  288. package/dist/providers/coreStore.d.ts +3 -0
  289. package/dist/providers/coreStore.d.ts.map +1 -0
  290. package/dist/providers/coreStore.js +11 -0
  291. package/dist/providers/coreStore.js.map +1 -0
  292. package/dist/providers/coreStore.mjs +12 -0
  293. package/dist/providers/coreStore.mjs.map +1 -0
  294. package/dist/providers/cron.d.ts +3 -0
  295. package/dist/providers/cron.d.ts.map +1 -0
  296. package/dist/providers/cron.js +20 -0
  297. package/dist/providers/cron.js.map +1 -0
  298. package/dist/providers/cron.mjs +21 -0
  299. package/dist/providers/cron.mjs.map +1 -0
  300. package/dist/providers/index.d.ts +3 -0
  301. package/dist/providers/index.d.ts.map +1 -0
  302. package/dist/providers/index.js +11 -0
  303. package/dist/providers/index.js.map +1 -0
  304. package/dist/providers/index.mjs +11 -0
  305. package/dist/providers/index.mjs.map +1 -0
  306. package/dist/providers/provider.d.ts +9 -0
  307. package/dist/providers/provider.d.ts.map +1 -0
  308. package/dist/providers/provider.js +5 -0
  309. package/dist/providers/provider.js.map +1 -0
  310. package/dist/providers/provider.mjs +5 -0
  311. package/dist/providers/provider.mjs.map +1 -0
  312. package/dist/providers/registries.d.ts +3 -0
  313. package/dist/providers/registries.d.ts.map +1 -0
  314. package/dist/providers/registries.js +35 -0
  315. package/dist/providers/registries.js.map +1 -0
  316. package/dist/providers/registries.mjs +36 -0
  317. package/dist/providers/registries.mjs.map +1 -0
  318. package/dist/providers/telemetry.d.ts +3 -0
  319. package/dist/providers/telemetry.d.ts.map +1 -0
  320. package/dist/providers/telemetry.js +19 -0
  321. package/dist/providers/telemetry.js.map +1 -0
  322. package/dist/providers/telemetry.mjs +20 -0
  323. package/dist/providers/telemetry.mjs.map +1 -0
  324. package/dist/providers/webhooks.d.ts +3 -0
  325. package/dist/providers/webhooks.d.ts.map +1 -0
  326. package/dist/providers/webhooks.js +30 -0
  327. package/dist/providers/webhooks.js.map +1 -0
  328. package/dist/providers/webhooks.mjs +31 -0
  329. package/dist/providers/webhooks.mjs.map +1 -0
  330. package/dist/registries/apis.d.ts +2 -2
  331. package/dist/registries/apis.d.ts.map +1 -1
  332. package/dist/registries/apis.js +2 -2
  333. package/dist/registries/apis.js.map +1 -1
  334. package/dist/registries/apis.mjs.map +1 -1
  335. package/dist/registries/components.d.ts +6 -6
  336. package/dist/registries/components.d.ts.map +1 -1
  337. package/dist/registries/components.js +2 -2
  338. package/dist/registries/components.js.map +1 -1
  339. package/dist/registries/components.mjs.map +1 -1
  340. package/dist/registries/content-types.d.ts +5 -5
  341. package/dist/registries/content-types.d.ts.map +1 -1
  342. package/dist/registries/content-types.js +3 -3
  343. package/dist/registries/content-types.js.map +1 -1
  344. package/dist/registries/content-types.mjs.map +1 -1
  345. package/dist/registries/controllers.d.ts +10 -10
  346. package/dist/registries/controllers.d.ts.map +1 -1
  347. package/dist/registries/controllers.js +3 -3
  348. package/dist/registries/controllers.js.map +1 -1
  349. package/dist/registries/controllers.mjs.map +1 -1
  350. package/dist/registries/custom-fields.d.ts +3 -3
  351. package/dist/registries/custom-fields.d.ts.map +1 -1
  352. package/dist/registries/custom-fields.js +4 -4
  353. package/dist/registries/custom-fields.js.map +1 -1
  354. package/dist/registries/custom-fields.mjs.map +1 -1
  355. package/dist/registries/hooks.js +2 -2
  356. package/dist/registries/hooks.js.map +1 -1
  357. package/dist/registries/hooks.mjs.map +1 -1
  358. package/dist/registries/index.d.ts +0 -1
  359. package/dist/registries/index.d.ts.map +1 -1
  360. package/dist/registries/middlewares.d.ts +6 -6
  361. package/dist/registries/middlewares.d.ts.map +1 -1
  362. package/dist/registries/middlewares.js +3 -3
  363. package/dist/registries/middlewares.js.map +1 -1
  364. package/dist/registries/middlewares.mjs.map +1 -1
  365. package/dist/registries/models.js.map +1 -1
  366. package/dist/registries/models.mjs.map +1 -1
  367. package/dist/registries/modules.d.ts +2 -2
  368. package/dist/registries/modules.d.ts.map +1 -1
  369. package/dist/registries/modules.js +3 -3
  370. package/dist/registries/modules.js.map +1 -1
  371. package/dist/registries/modules.mjs.map +1 -1
  372. package/dist/registries/namespace.js.map +1 -1
  373. package/dist/registries/namespace.mjs.map +1 -1
  374. package/dist/registries/plugins.d.ts +5 -5
  375. package/dist/registries/plugins.d.ts.map +1 -1
  376. package/dist/registries/plugins.js +2 -2
  377. package/dist/registries/plugins.js.map +1 -1
  378. package/dist/registries/plugins.mjs.map +1 -1
  379. package/dist/registries/policies.d.ts +22 -10
  380. package/dist/registries/policies.d.ts.map +1 -1
  381. package/dist/registries/policies.js +66 -20
  382. package/dist/registries/policies.js.map +1 -1
  383. package/dist/registries/policies.mjs +65 -19
  384. package/dist/registries/policies.mjs.map +1 -1
  385. package/dist/registries/sanitizers.js.map +1 -1
  386. package/dist/registries/sanitizers.mjs.map +1 -1
  387. package/dist/registries/services.d.ts +8 -8
  388. package/dist/registries/services.d.ts.map +1 -1
  389. package/dist/registries/services.js +3 -3
  390. package/dist/registries/services.js.map +1 -1
  391. package/dist/registries/services.mjs.map +1 -1
  392. package/dist/registries/validators.js.map +1 -1
  393. package/dist/registries/validators.mjs.map +1 -1
  394. package/dist/services/auth/index.d.ts +4 -4
  395. package/dist/services/auth/index.d.ts.map +1 -1
  396. package/dist/services/auth/index.js +3 -3
  397. package/dist/services/auth/index.js.map +1 -1
  398. package/dist/services/auth/index.mjs.map +1 -1
  399. package/dist/services/config.d.ts +3 -0
  400. package/dist/services/config.d.ts.map +1 -0
  401. package/dist/services/config.js +47 -0
  402. package/dist/services/config.js.map +1 -0
  403. package/dist/services/config.mjs +47 -0
  404. package/dist/services/config.mjs.map +1 -0
  405. package/dist/services/content-api/index.d.ts +31 -15
  406. package/dist/services/content-api/index.d.ts.map +1 -1
  407. package/dist/services/content-api/index.js +28 -2
  408. package/dist/services/content-api/index.js.map +1 -1
  409. package/dist/services/content-api/index.mjs +28 -2
  410. package/dist/services/content-api/index.mjs.map +1 -1
  411. package/dist/services/content-api/permissions/index.d.ts +13 -15
  412. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  413. package/dist/services/content-api/permissions/index.js +1 -1
  414. package/dist/services/content-api/permissions/index.js.map +1 -1
  415. package/dist/services/content-api/permissions/index.mjs +1 -1
  416. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  417. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  418. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  419. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  420. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  421. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  422. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  423. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  424. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  425. package/dist/services/core-store.d.ts.map +1 -1
  426. package/dist/services/core-store.js +3 -3
  427. package/dist/services/core-store.js.map +1 -1
  428. package/dist/services/core-store.mjs.map +1 -1
  429. package/dist/services/cron.d.ts +5 -5
  430. package/dist/services/cron.d.ts.map +1 -1
  431. package/dist/services/cron.js +12 -8
  432. package/dist/services/cron.js.map +1 -1
  433. package/dist/services/cron.mjs +9 -5
  434. package/dist/services/cron.mjs.map +1 -1
  435. package/dist/services/custom-fields.d.ts +2 -2
  436. package/dist/services/custom-fields.d.ts.map +1 -1
  437. package/dist/services/custom-fields.js.map +1 -1
  438. package/dist/services/custom-fields.mjs.map +1 -1
  439. package/dist/services/document-service/attributes/index.d.ts +6 -0
  440. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  441. package/dist/services/{entity-service → document-service}/attributes/index.js +5 -5
  442. package/dist/services/document-service/attributes/index.js.map +1 -0
  443. package/dist/services/{entity-service → document-service}/attributes/index.mjs +5 -5
  444. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  445. package/dist/services/document-service/attributes/transforms.d.ts +10 -0
  446. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  447. package/dist/services/{entity-service → document-service}/attributes/transforms.js +3 -3
  448. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  449. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  450. package/dist/services/document-service/common.d.ts +2 -2
  451. package/dist/services/document-service/common.d.ts.map +1 -1
  452. package/dist/services/document-service/common.js.map +1 -1
  453. package/dist/services/document-service/common.mjs.map +1 -1
  454. package/dist/services/document-service/components.d.ts +25 -1
  455. package/dist/services/document-service/components.d.ts.map +1 -1
  456. package/dist/services/{entity-service → document-service}/components.js +57 -153
  457. package/dist/services/document-service/components.js.map +1 -0
  458. package/dist/services/{entity-service → document-service}/components.mjs +48 -144
  459. package/dist/services/document-service/components.mjs.map +1 -0
  460. package/dist/services/document-service/draft-and-publish.d.ts +9 -23
  461. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  462. package/dist/services/document-service/draft-and-publish.js +44 -16
  463. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  464. package/dist/services/document-service/draft-and-publish.mjs +38 -10
  465. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  466. package/dist/services/document-service/entries.d.ts +10 -0
  467. package/dist/services/document-service/entries.d.ts.map +1 -0
  468. package/dist/services/document-service/entries.js +95 -0
  469. package/dist/services/document-service/entries.js.map +1 -0
  470. package/dist/services/document-service/entries.mjs +95 -0
  471. package/dist/services/document-service/entries.mjs.map +1 -0
  472. package/dist/services/document-service/events.d.ts +25 -0
  473. package/dist/services/document-service/events.d.ts.map +1 -0
  474. package/dist/services/document-service/events.js +47 -0
  475. package/dist/services/document-service/events.js.map +1 -0
  476. package/dist/services/document-service/events.mjs +47 -0
  477. package/dist/services/document-service/events.mjs.map +1 -0
  478. package/dist/services/document-service/index.d.ts +3 -4
  479. package/dist/services/document-service/index.d.ts.map +1 -1
  480. package/dist/services/document-service/index.js +23 -9
  481. package/dist/services/document-service/index.js.map +1 -1
  482. package/dist/services/document-service/index.mjs +20 -6
  483. package/dist/services/document-service/index.mjs.map +1 -1
  484. package/dist/services/document-service/internationalization.d.ts +5 -5
  485. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  486. package/dist/services/document-service/internationalization.js +21 -12
  487. package/dist/services/document-service/internationalization.js.map +1 -1
  488. package/dist/services/document-service/internationalization.mjs +14 -5
  489. package/dist/services/document-service/internationalization.mjs.map +1 -1
  490. package/dist/services/document-service/middlewares/errors.d.ts +6 -0
  491. package/dist/services/document-service/middlewares/errors.d.ts.map +1 -0
  492. package/dist/services/document-service/middlewares/errors.js +25 -0
  493. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  494. package/dist/services/document-service/middlewares/errors.mjs +25 -0
  495. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  496. package/dist/services/document-service/middlewares/index.d.ts +3 -0
  497. package/dist/services/document-service/middlewares/index.d.ts.map +1 -0
  498. package/dist/services/document-service/middlewares/middleware-manager.d.ts +10 -0
  499. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -0
  500. package/dist/services/document-service/{middlewares.js → middlewares/middleware-manager.js} +9 -6
  501. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  502. package/dist/services/document-service/{middlewares.mjs → middlewares/middleware-manager.mjs} +9 -6
  503. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  504. package/dist/services/document-service/params.d.ts +3 -1
  505. package/dist/services/document-service/params.d.ts.map +1 -1
  506. package/dist/services/{entity-service → document-service}/params.js +2 -2
  507. package/dist/services/document-service/params.js.map +1 -0
  508. package/dist/services/{entity-service → document-service}/params.mjs +1 -1
  509. package/dist/services/document-service/params.mjs.map +1 -0
  510. package/dist/services/document-service/repository.d.ts +3 -0
  511. package/dist/services/document-service/repository.d.ts.map +1 -0
  512. package/dist/services/document-service/repository.js +332 -0
  513. package/dist/services/document-service/repository.js.map +1 -0
  514. package/dist/services/document-service/repository.mjs +332 -0
  515. package/dist/services/document-service/repository.mjs.map +1 -0
  516. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  517. package/dist/services/document-service/transform/data.js +4 -2
  518. package/dist/services/document-service/transform/data.js.map +1 -1
  519. package/dist/services/document-service/transform/data.mjs +4 -2
  520. package/dist/services/document-service/transform/data.mjs.map +1 -1
  521. package/dist/services/document-service/transform/fields.d.ts +2 -2
  522. package/dist/services/document-service/transform/fields.d.ts.map +1 -1
  523. package/dist/services/document-service/transform/fields.js.map +1 -1
  524. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  525. package/dist/services/document-service/transform/id-map.d.ts +4 -4
  526. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  527. package/dist/services/document-service/transform/id-map.js +27 -14
  528. package/dist/services/document-service/transform/id-map.js.map +1 -1
  529. package/dist/services/document-service/transform/id-map.mjs +28 -15
  530. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  531. package/dist/services/document-service/transform/id-transform.d.ts +4 -18
  532. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  533. package/dist/services/document-service/transform/id-transform.js +18 -12
  534. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  535. package/dist/services/document-service/transform/id-transform.mjs +18 -12
  536. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  537. package/dist/services/document-service/transform/populate.d.ts +5 -2
  538. package/dist/services/document-service/transform/populate.d.ts.map +1 -1
  539. package/dist/services/document-service/transform/populate.js +1 -1
  540. package/dist/services/document-service/transform/populate.js.map +1 -1
  541. package/dist/services/document-service/transform/populate.mjs +1 -1
  542. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  543. package/dist/services/document-service/transform/query.d.ts +5 -0
  544. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  545. package/dist/services/document-service/transform/query.js +9 -0
  546. package/dist/services/document-service/transform/query.js.map +1 -0
  547. package/dist/services/document-service/transform/query.mjs +9 -0
  548. package/dist/services/document-service/transform/query.mjs.map +1 -0
  549. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  550. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  551. package/dist/services/document-service/transform/relations/extract/data-ids.js +52 -67
  552. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  553. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +52 -67
  554. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  555. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +9 -5
  556. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  557. package/dist/services/document-service/transform/relations/transform/data-ids.js +73 -105
  558. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  559. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +73 -105
  560. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  561. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  562. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  563. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  564. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  565. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  566. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  567. package/dist/services/document-service/transform/relations/utils/dp.d.ts +10 -0
  568. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -0
  569. package/dist/services/document-service/transform/relations/utils/dp.js +30 -0
  570. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  571. package/dist/services/document-service/transform/relations/utils/dp.mjs +30 -0
  572. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  573. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +6 -6
  574. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  575. package/dist/services/document-service/transform/relations/utils/i18n.js +3 -9
  576. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  577. package/dist/services/document-service/transform/relations/utils/i18n.mjs +3 -9
  578. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  579. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  580. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  581. package/dist/services/document-service/transform/relations/utils/map-relation.js +84 -0
  582. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  583. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +84 -0
  584. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  585. package/dist/services/document-service/transform/relations/utils/types.d.ts +10 -1
  586. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  587. package/dist/services/document-service/transform/types.d.ts +4 -4
  588. package/dist/services/document-service/transform/types.d.ts.map +1 -1
  589. package/dist/services/document-service/utils/populate.d.ts +9 -2
  590. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  591. package/dist/services/document-service/utils/populate.js +12 -6
  592. package/dist/services/document-service/utils/populate.js.map +1 -1
  593. package/dist/services/document-service/utils/populate.mjs +12 -6
  594. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  595. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  596. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  597. package/dist/services/document-service/utils/unidirectional-relations.js +68 -0
  598. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  599. package/dist/services/document-service/utils/unidirectional-relations.mjs +68 -0
  600. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  601. package/dist/services/entity-service/index.d.ts +4 -6
  602. package/dist/services/entity-service/index.d.ts.map +1 -1
  603. package/dist/services/entity-service/index.js +44 -203
  604. package/dist/services/entity-service/index.js.map +1 -1
  605. package/dist/services/entity-service/index.mjs +38 -197
  606. package/dist/services/entity-service/index.mjs.map +1 -1
  607. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  608. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  609. package/dist/services/entity-validator/blocks-validator.js +4 -3
  610. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  611. package/dist/services/entity-validator/blocks-validator.mjs +3 -3
  612. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  613. package/dist/services/entity-validator/index.d.ts +16 -2
  614. package/dist/services/entity-validator/index.d.ts.map +1 -1
  615. package/dist/services/entity-validator/index.js +197 -130
  616. package/dist/services/entity-validator/index.js.map +1 -1
  617. package/dist/services/entity-validator/index.mjs +192 -125
  618. package/dist/services/entity-validator/index.mjs.map +1 -1
  619. package/dist/services/entity-validator/validators.d.ts +36 -25
  620. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  621. package/dist/services/entity-validator/validators.js +153 -33
  622. package/dist/services/entity-validator/validators.js.map +1 -1
  623. package/dist/services/entity-validator/validators.mjs +145 -25
  624. package/dist/services/entity-validator/validators.mjs.map +1 -1
  625. package/dist/services/errors.js.map +1 -1
  626. package/dist/services/errors.mjs.map +1 -1
  627. package/dist/services/event-hub.d.ts +1 -0
  628. package/dist/services/event-hub.d.ts.map +1 -1
  629. package/dist/services/event-hub.js +9 -4
  630. package/dist/services/event-hub.js.map +1 -1
  631. package/dist/services/event-hub.mjs +9 -4
  632. package/dist/services/event-hub.mjs.map +1 -1
  633. package/dist/services/features.d.ts +3 -3
  634. package/dist/services/features.d.ts.map +1 -1
  635. package/dist/services/features.js.map +1 -1
  636. package/dist/services/features.mjs.map +1 -1
  637. package/dist/services/fs.d.ts +2 -2
  638. package/dist/services/fs.d.ts.map +1 -1
  639. package/dist/services/fs.js.map +1 -1
  640. package/dist/services/fs.mjs.map +1 -1
  641. package/dist/services/metrics/admin-user-hash.d.ts +2 -2
  642. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  643. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  644. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  645. package/dist/services/metrics/index.d.ts +2 -2
  646. package/dist/services/metrics/index.d.ts.map +1 -1
  647. package/dist/services/metrics/index.js +1 -2
  648. package/dist/services/metrics/index.js.map +1 -1
  649. package/dist/services/metrics/index.mjs +1 -2
  650. package/dist/services/metrics/index.mjs.map +1 -1
  651. package/dist/services/metrics/is-truthy.js.map +1 -1
  652. package/dist/services/metrics/middleware.d.ts +2 -2
  653. package/dist/services/metrics/middleware.d.ts.map +1 -1
  654. package/dist/services/metrics/middleware.js.map +1 -1
  655. package/dist/services/metrics/middleware.mjs.map +1 -1
  656. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  657. package/dist/services/metrics/rate-limiter.js.map +1 -1
  658. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  659. package/dist/services/metrics/sender.d.ts +3 -3
  660. package/dist/services/metrics/sender.d.ts.map +1 -1
  661. package/dist/services/metrics/sender.js.map +1 -1
  662. package/dist/services/metrics/sender.mjs.map +1 -1
  663. package/dist/services/query-params.d.ts +7 -0
  664. package/dist/services/query-params.d.ts.map +1 -0
  665. package/dist/services/query-params.js +12 -0
  666. package/dist/services/query-params.js.map +1 -0
  667. package/dist/services/query-params.mjs +13 -0
  668. package/dist/services/query-params.mjs.map +1 -0
  669. package/dist/services/reloader.d.ts +7 -0
  670. package/dist/services/reloader.d.ts.map +1 -0
  671. package/dist/services/reloader.js +36 -0
  672. package/dist/services/reloader.js.map +1 -0
  673. package/dist/services/reloader.mjs +36 -0
  674. package/dist/services/reloader.mjs.map +1 -0
  675. package/dist/services/request-context.js.map +1 -1
  676. package/dist/services/request-context.mjs.map +1 -1
  677. package/dist/services/server/admin-api.d.ts +3 -3
  678. package/dist/services/server/admin-api.d.ts.map +1 -1
  679. package/dist/services/server/admin-api.js.map +1 -1
  680. package/dist/services/server/admin-api.mjs.map +1 -1
  681. package/dist/services/server/api.d.ts +3 -3
  682. package/dist/services/server/api.d.ts.map +1 -1
  683. package/dist/services/server/api.js.map +1 -1
  684. package/dist/services/server/api.mjs.map +1 -1
  685. package/dist/services/server/compose-endpoint.d.ts +2 -2
  686. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  687. package/dist/services/server/compose-endpoint.js +8 -9
  688. package/dist/services/server/compose-endpoint.js.map +1 -1
  689. package/dist/services/server/compose-endpoint.mjs +2 -3
  690. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  691. package/dist/services/server/content-api.d.ts +3 -3
  692. package/dist/services/server/content-api.d.ts.map +1 -1
  693. package/dist/services/server/content-api.js.map +1 -1
  694. package/dist/services/server/content-api.mjs.map +1 -1
  695. package/dist/services/server/http-server.d.ts +2 -2
  696. package/dist/services/server/http-server.d.ts.map +1 -1
  697. package/dist/services/server/http-server.js.map +1 -1
  698. package/dist/services/server/http-server.mjs.map +1 -1
  699. package/dist/services/server/index.d.ts +2 -2
  700. package/dist/services/server/index.d.ts.map +1 -1
  701. package/dist/services/server/index.js +2 -3
  702. package/dist/services/server/index.js.map +1 -1
  703. package/dist/services/server/index.mjs +2 -3
  704. package/dist/services/server/index.mjs.map +1 -1
  705. package/dist/services/server/koa.d.ts.map +1 -1
  706. package/dist/services/server/koa.js +4 -4
  707. package/dist/services/server/koa.js.map +1 -1
  708. package/dist/services/server/koa.mjs +1 -1
  709. package/dist/services/server/koa.mjs.map +1 -1
  710. package/dist/services/server/middleware.d.ts +4 -4
  711. package/dist/services/server/middleware.d.ts.map +1 -1
  712. package/dist/services/server/middleware.js +3 -3
  713. package/dist/services/server/middleware.js.map +1 -1
  714. package/dist/services/server/middleware.mjs.map +1 -1
  715. package/dist/services/server/policy.d.ts +3 -3
  716. package/dist/services/server/policy.d.ts.map +1 -1
  717. package/dist/services/server/policy.js +4 -4
  718. package/dist/services/server/policy.js.map +1 -1
  719. package/dist/services/server/policy.mjs +4 -4
  720. package/dist/services/server/policy.mjs.map +1 -1
  721. package/dist/services/server/register-middlewares.d.ts +2 -2
  722. package/dist/services/server/register-middlewares.d.ts.map +1 -1
  723. package/dist/services/server/register-middlewares.js.map +1 -1
  724. package/dist/services/server/register-middlewares.mjs.map +1 -1
  725. package/dist/services/server/register-routes.d.ts +2 -2
  726. package/dist/services/server/register-routes.d.ts.map +1 -1
  727. package/dist/services/server/register-routes.js +3 -3
  728. package/dist/services/server/register-routes.js.map +1 -1
  729. package/dist/services/server/register-routes.mjs +3 -3
  730. package/dist/services/server/register-routes.mjs.map +1 -1
  731. package/dist/services/server/routing.d.ts +5 -5
  732. package/dist/services/server/routing.d.ts.map +1 -1
  733. package/dist/services/server/routing.js +2 -2
  734. package/dist/services/server/routing.js.map +1 -1
  735. package/dist/services/server/routing.mjs.map +1 -1
  736. package/dist/services/utils/dynamic-zones.d.ts.map +1 -1
  737. package/dist/services/utils/dynamic-zones.js +7 -6
  738. package/dist/services/utils/dynamic-zones.js.map +1 -1
  739. package/dist/services/utils/dynamic-zones.mjs +2 -1
  740. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  741. package/dist/services/webhook-runner.d.ts +2 -1
  742. package/dist/services/webhook-runner.d.ts.map +1 -1
  743. package/dist/services/webhook-runner.js.map +1 -1
  744. package/dist/services/webhook-runner.mjs.map +1 -1
  745. package/dist/services/webhook-store.d.ts +2 -8
  746. package/dist/services/webhook-store.d.ts.map +1 -1
  747. package/dist/services/webhook-store.js +14 -8
  748. package/dist/services/webhook-store.js.map +1 -1
  749. package/dist/services/webhook-store.mjs +14 -8
  750. package/dist/services/webhook-store.mjs.map +1 -1
  751. package/dist/services/worker-queue.js.map +1 -1
  752. package/dist/services/worker-queue.mjs.map +1 -1
  753. package/dist/utils/convert-custom-field-type.d.ts +2 -2
  754. package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
  755. package/dist/utils/convert-custom-field-type.js.map +1 -1
  756. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  757. package/dist/utils/cron.js +3 -3
  758. package/dist/utils/cron.js.map +1 -1
  759. package/dist/utils/cron.mjs.map +1 -1
  760. package/dist/utils/fetch.d.ts +3 -3
  761. package/dist/utils/fetch.d.ts.map +1 -1
  762. package/dist/utils/fetch.js +4 -3
  763. package/dist/utils/fetch.js.map +1 -1
  764. package/dist/utils/fetch.mjs +4 -3
  765. package/dist/utils/fetch.mjs.map +1 -1
  766. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  767. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  768. package/dist/utils/filepath-to-prop-path.js +27 -6
  769. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  770. package/dist/utils/filepath-to-prop-path.mjs +25 -5
  771. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  772. package/dist/utils/index.d.ts +2 -1
  773. package/dist/utils/index.d.ts.map +1 -1
  774. package/dist/utils/is-initialized.d.ts +2 -2
  775. package/dist/utils/is-initialized.d.ts.map +1 -1
  776. package/dist/utils/is-initialized.js +4 -4
  777. package/dist/utils/is-initialized.js.map +1 -1
  778. package/dist/utils/is-initialized.mjs +1 -1
  779. package/dist/utils/is-initialized.mjs.map +1 -1
  780. package/dist/utils/load-config-file.js +1 -1
  781. package/dist/utils/load-config-file.js.map +1 -1
  782. package/dist/utils/load-config-file.mjs +2 -2
  783. package/dist/utils/load-config-file.mjs.map +1 -1
  784. package/dist/utils/load-files.d.ts.map +1 -1
  785. package/dist/utils/load-files.js +1 -2
  786. package/dist/utils/load-files.js.map +1 -1
  787. package/dist/utils/load-files.mjs +1 -2
  788. package/dist/utils/load-files.mjs.map +1 -1
  789. package/dist/utils/open-browser.d.ts +2 -2
  790. package/dist/utils/open-browser.d.ts.map +1 -1
  791. package/dist/utils/open-browser.js.map +1 -1
  792. package/dist/utils/open-browser.mjs.map +1 -1
  793. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  794. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  795. package/dist/utils/resolve-working-dirs.js +13 -0
  796. package/dist/utils/resolve-working-dirs.js.map +1 -0
  797. package/dist/utils/resolve-working-dirs.mjs +11 -0
  798. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  799. package/dist/utils/signals.d.ts +2 -2
  800. package/dist/utils/signals.d.ts.map +1 -1
  801. package/dist/utils/signals.js.map +1 -1
  802. package/dist/utils/signals.mjs.map +1 -1
  803. package/dist/utils/startup-logger.d.ts +2 -2
  804. package/dist/utils/startup-logger.d.ts.map +1 -1
  805. package/dist/utils/startup-logger.js +10 -5
  806. package/dist/utils/startup-logger.js.map +1 -1
  807. package/dist/utils/startup-logger.mjs +9 -4
  808. package/dist/utils/startup-logger.mjs.map +1 -1
  809. package/dist/utils/transform-content-types-to-models.d.ts +377 -90
  810. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  811. package/dist/utils/transform-content-types-to-models.js +112 -61
  812. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  813. package/dist/utils/transform-content-types-to-models.mjs +111 -60
  814. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  815. package/dist/utils/update-notifier/index.d.ts +2 -7
  816. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  817. package/dist/utils/update-notifier/index.js +11 -14
  818. package/dist/utils/update-notifier/index.js.map +1 -1
  819. package/dist/utils/update-notifier/index.mjs +11 -14
  820. package/dist/utils/update-notifier/index.mjs.map +1 -1
  821. package/package.json +36 -33
  822. package/dist/registries/config.d.ts +0 -4
  823. package/dist/registries/config.d.ts.map +0 -1
  824. package/dist/registries/config.js +0 -23
  825. package/dist/registries/config.js.map +0 -1
  826. package/dist/registries/config.mjs +0 -22
  827. package/dist/registries/config.mjs.map +0 -1
  828. package/dist/services/document-service/document-engine.d.ts +0 -8
  829. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  830. package/dist/services/document-service/document-engine.js +0 -241
  831. package/dist/services/document-service/document-engine.js.map +0 -1
  832. package/dist/services/document-service/document-engine.mjs +0 -242
  833. package/dist/services/document-service/document-engine.mjs.map +0 -1
  834. package/dist/services/document-service/middlewares.d.ts +0 -8
  835. package/dist/services/document-service/middlewares.d.ts.map +0 -1
  836. package/dist/services/document-service/middlewares.js.map +0 -1
  837. package/dist/services/document-service/middlewares.mjs.map +0 -1
  838. package/dist/services/document-service/repositories/content-type.d.ts +0 -3
  839. package/dist/services/document-service/repositories/content-type.d.ts.map +0 -1
  840. package/dist/services/document-service/repositories/content-type.js +0 -139
  841. package/dist/services/document-service/repositories/content-type.js.map +0 -1
  842. package/dist/services/document-service/repositories/content-type.mjs +0 -139
  843. package/dist/services/document-service/repositories/content-type.mjs.map +0 -1
  844. package/dist/services/document-service/transform/filters.d.ts +0 -3
  845. package/dist/services/document-service/transform/filters.d.ts.map +0 -1
  846. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -4
  847. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  848. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  849. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  850. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  851. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  852. package/dist/services/document-service/transform/sort.d.ts +0 -5
  853. package/dist/services/document-service/transform/sort.d.ts.map +0 -1
  854. package/dist/services/document-service/transform/utils.d.ts +0 -9
  855. package/dist/services/document-service/transform/utils.d.ts.map +0 -1
  856. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  857. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  858. package/dist/services/entity-service/attributes/index.js.map +0 -1
  859. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  860. package/dist/services/entity-service/attributes/transforms.d.ts +0 -10
  861. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  862. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  863. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  864. package/dist/services/entity-service/components.d.ts +0 -23
  865. package/dist/services/entity-service/components.d.ts.map +0 -1
  866. package/dist/services/entity-service/components.js.map +0 -1
  867. package/dist/services/entity-service/components.mjs.map +0 -1
  868. package/dist/services/entity-service/params.d.ts +0 -8
  869. package/dist/services/entity-service/params.d.ts.map +0 -1
  870. package/dist/services/entity-service/params.js.map +0 -1
  871. package/dist/services/entity-service/params.mjs.map +0 -1
  872. package/dist/services/utils/upload-files.d.ts +0 -8
  873. package/dist/services/utils/upload-files.d.ts.map +0 -1
  874. package/dist/services/utils/upload-files.js +0 -64
  875. package/dist/services/utils/upload-files.js.map +0 -1
  876. package/dist/services/utils/upload-files.mjs +0 -63
  877. package/dist/services/utils/upload-files.mjs.map +0 -1
  878. package/dist/utils/get-dirs.d.ts +0 -9
  879. package/dist/utils/get-dirs.d.ts.map +0 -1
  880. package/dist/utils/get-dirs.js.map +0 -1
  881. package/dist/utils/get-dirs.mjs.map +0 -1
  882. /package/dist/services/{entity-service → document-service}/attributes/transforms.mjs +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"compose-endpoint.js","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Strapi, Common } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { resolvePolicies } from './policy';\n\nconst getMethod = (route: Common.Route) => {\n return trim(toLower(route.method)) as Lowercase<Common.Route['method']>;\n};\n\nconst getPath = (route: Common.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Common.Route): Common.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Strapi): Common.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Strapi): Common.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Common.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Common.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n const policies = resolvePolicies(route);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n ...policies,\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (name: string, { pluginName, apiName }: Common.RouteInfo, strapi: Strapi) => {\n let ctrl: Common.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as Common.UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Common.Route, strapi: Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":["trim","toLower","prop","errors","isNil","resolveRouteMiddlewares","resolvePolicies","compose","castArray"],"mappings":"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"}
1
+ {"version":3,"file":"compose-endpoint.js","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Core, UID } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { createPolicicesMiddleware } from './policy';\n\nconst getMethod = (route: Core.Route) => {\n return trim(toLower(route.method)) as Lowercase<Core.Route['method']>;\n};\n\nconst getPath = (route: Core.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Core.Route): Core.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Core.Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Core.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n createPolicicesMiddleware(route, strapi),\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (\n name: string,\n { pluginName, apiName }: Core.RouteInfo,\n strapi: Core.Strapi\n) => {\n let ctrl: Core.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Core.Route, strapi: Core.Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":["trim","toLower","prop","errors","isNil","resolveRouteMiddlewares","compose","createPolicicesMiddleware","castArray"],"mappings":";;;;;;;;AASA,MAAM,YAAY,CAAC,UAAsB;AACvC,SAAOA,QAAKC,GAAAA,QAAQ,MAAM,MAAM,CAAC;AACnC;AAEA,MAAM,UAAU,CAAC,UAAsBD,QAAK,MAAM,IAAI;AAEtD,MAAM,4BACJ,CAAC,cACD,CAAC,KAAK,SAAS;AACb,QAAM,QAAQ;AAAA,IACZ,GAAG;AAAA,IACH,QAAQ,UAAU,UAAU,CAAA;AAAA,EAC9B;AAEA,MAAI,MAAM,QAAQ;AAClB,SAAO,KAAK;AACd;AAEF,MAAM,gBAAgBE,QAAK,aAAa;AAExC,MAAM,4BACJ,CAAC,WACD,OAAO,KAAK,SAAS;AACnB,QAAM,EAAE,MAAM,MAAM,IAAI,IAAI;AAEtB,QAAA,cAAc,OAAO,IAAI,MAAM;AAEjC,MAAA;AACF,UAAM,YAAY,OAAO,MAAM,cAAc,KAAK,CAAC;AAEnD,WAAO,MAAM,KAAK;AAAA,WACX,OAAO;AACV,QAAA,iBAAiBC,mBAAO,mBAAmB;AAC7C,aAAO,IAAI,aAAa;AAAA,IAAA;AAGtB,QAAA,iBAAiBA,mBAAO,gBAAgB;AAEtC,UAAA,iBAAiBA,mBAAO,aAAa;AACjC,cAAA;AAAA,MAAA;AAER,aAAO,IAAI,UAAU;AAAA,IAAA;AAGjB,UAAA;AAAA,EAAA;AAEV;AAEF,MAAM,+BACJ,CAAC,WACD,OAAO,KAAK,SAAS;AACnB,SAAO,OAAO,IAAI,MAAM,EAAE,aAAa,KAAK,IAAI;AAClD;AAEF,MAAM,uBAA+C,OAAO,KAAK,SAAS;AAClE,QAAA,SAAS,MAAM,KAAK;AAE1B,MAAIC,GAAAA,MAAM,IAAI,IAAI,KAAK,CAACA,GAAAA,MAAM,MAAM,GAAG;AACrC,QAAI,OAAO;AAAA,EAAA;AAEf;AAEA,MAAe,yBAAA,CAAC,WAAwB;AAChC,QAAA,eAAe,6BAA6B,MAAM;AAClD,QAAA,YAAY,0BAA0B,MAAM;AAElD,SAAO,CAAC,OAAmB,EAAE,aAAiC;AACxD,QAAA;AACI,YAAA,SAAS,UAAU,KAAK;AACxB,YAAA,OAAO,QAAQ,KAAK;AAEpB,YAAA,cAAcC,WAAAA,wBAAwB,OAAO,MAAM;AAEnD,YAAA,SAAS,UAAU,OAAO,MAAM;AAEtC,YAAM,eAAeC,iBAAAA,QAAQ;AAAA,QAC3B,0BAA0B,KAAK;AAAA,QAC/B;AAAA,QACA;AAAA,QACAC,OAAA,0BAA0B,OAAO,MAAM;AAAA,QACvC,GAAG;AAAA,QACH;AAAA,QACA,GAAGC,aAAU,MAAM;AAAA,MAAA,CACpB;AAEM,aAAA,MAAM,EAAE,MAAM,YAAY;AAAA,aAC1B,OAAO;AACd,UAAI,iBAAiB,OAAO;AACpB,cAAA,UAAU,2BAA2B,MAAM,MAAM,IAAI,MAAM,IAAI,KAAK,MAAM,OAAO;AAAA,MAAA;AAGnF,YAAA;AAAA,IAAA;AAAA,EAEV;AACF;AAEA,MAAM,gBAAgB,CACpB,MACA,EAAE,YAAY,QAAA,GACd,WACG;AACC,MAAA;AAEJ,MAAI,YAAY;AACd,QAAI,eAAe,SAAS;AAC1B,aAAO,OAAO,WAAW,UAAU,IAAI,EAAE;AAAA,IAAA,OACpC;AACL,aAAO,OAAO,OAAO,UAAU,EAAE,WAAW,IAAI;AAAA,IAAA;AAAA,aAEzC,SAAS;AAClB,WAAO,OAAO,WAAW,QAAQ,OAAO,IAAI,IAAI,EAAE;AAAA,EAAA;AAGpD,MAAI,CAAC,MAAM;AACF,WAAA,OAAO,WAAW,IAAsB;AAAA,EAAA;AAG1C,SAAA;AACT;AAEA,MAAM,sBAAsB,CAAC,SAAiB;AAC5C,QAAM,iBAAiB,KAAK,MAAM,GAAG,KAAK,YAAY,GAAG,CAAC;AAC1D,QAAM,aAAa,KAAK,MAAM,KAAK,YAAY,GAAG,IAAI,CAAC;AAEhD,SAAA,EAAE,gBAAgB,WAAW;AACtC;AAEA,MAAM,YAAY,CAAC,OAAmB,WAAwB;AACtD,QAAA,EAAE,SAAS,KAAA,IAAS;AAC1B,QAAM,EAAE,YAAY,SAAS,KAAK,IAAI,QAAQ,CAAC;AAE/C,MAAI,MAAM,QAAQ,OAAO,KAAK,OAAO,YAAY,YAAY;AACpD,WAAA;AAAA,EAAA;AAGT,QAAM,EAAE,gBAAgB,WAAA,IAAe,oBAAoBR,GAAAA,KAAK,OAAO,CAAC;AAElE,QAAA,aAAa,cAAc,gBAAgB,EAAE,YAAY,SAAS,QAAQ,MAAM;AAEtF,MAAI,OAAO,WAAW,UAAU,MAAM,YAAY;AAChD,UAAM,IAAI,MAAM,sBAAsB,OAAO,GAAG;AAAA,EAAA;AAGlD,MAAI,OAAO,IAAI,UAAU,KAAK,WAAW,UAAU,GAAG;AACnD,eAAW,UAAU,EAAU,OAAO,IAAI,UAAU,CAAC,EAAE,KAAK,IAAI;AAAA,EAAA,OAC5D;AACJ,eAAW,UAAU,EAAU,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI;AAAA,EAAA;AAGjE,SAAO,WAAW,UAAU,EAAE,KAAK,UAAU;AAC/C;;"}
@@ -2,7 +2,7 @@ import { prop, castArray, trim, toLower, isNil } from "lodash/fp";
2
2
  import { errors } from "@strapi/utils";
3
3
  import compose from "koa-compose";
4
4
  import { resolveRouteMiddlewares } from "./middleware.mjs";
5
- import { resolvePolicies } from "./policy.mjs";
5
+ import { createPolicicesMiddleware } from "./policy.mjs";
6
6
  const getMethod = (route) => {
7
7
  return trim(toLower(route.method));
8
8
  };
@@ -52,13 +52,12 @@ const createEndpointComposer = (strapi) => {
52
52
  const method = getMethod(route);
53
53
  const path = getPath(route);
54
54
  const middlewares = resolveRouteMiddlewares(route, strapi);
55
- const policies = resolvePolicies(route);
56
55
  const action = getAction(route, strapi);
57
56
  const routeHandler = compose([
58
57
  createRouteInfoMiddleware(route),
59
58
  authenticate,
60
59
  authorize,
61
- ...policies,
60
+ createPolicicesMiddleware(route, strapi),
62
61
  ...middlewares,
63
62
  returnBodyMiddleware,
64
63
  ...castArray(action)
@@ -1 +1 @@
1
- {"version":3,"file":"compose-endpoint.mjs","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Strapi, Common } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { resolvePolicies } from './policy';\n\nconst getMethod = (route: Common.Route) => {\n return trim(toLower(route.method)) as Lowercase<Common.Route['method']>;\n};\n\nconst getPath = (route: Common.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Common.Route): Common.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Strapi): Common.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Strapi): Common.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Common.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Common.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n const policies = resolvePolicies(route);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n ...policies,\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (name: string, { pluginName, apiName }: Common.RouteInfo, strapi: Strapi) => {\n let ctrl: Common.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as Common.UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Common.Route, strapi: Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose-endpoint.mjs","sources":["../../../src/services/server/compose-endpoint.ts"],"sourcesContent":["import { toLower, castArray, trim, prop, isNil } from 'lodash/fp';\nimport type { Core, UID } from '@strapi/types';\nimport { errors } from '@strapi/utils';\nimport Router from '@koa/router';\n\nimport compose from 'koa-compose';\nimport { resolveRouteMiddlewares } from './middleware';\nimport { createPolicicesMiddleware } from './policy';\n\nconst getMethod = (route: Core.Route) => {\n return trim(toLower(route.method)) as Lowercase<Core.Route['method']>;\n};\n\nconst getPath = (route: Core.Route) => trim(route.path);\n\nconst createRouteInfoMiddleware =\n (routeInfo: Core.Route): Core.MiddlewareHandler =>\n (ctx, next) => {\n const route = {\n ...routeInfo,\n config: routeInfo.config || {},\n };\n\n ctx.state.route = route;\n return next();\n };\n\nconst getAuthConfig = prop('config.auth');\n\nconst createAuthorizeMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n const { auth, route } = ctx.state;\n\n const authService = strapi.get('auth');\n\n try {\n await authService.verify(auth, getAuthConfig(route));\n\n return await next();\n } catch (error) {\n if (error instanceof errors.UnauthorizedError) {\n return ctx.unauthorized();\n }\n\n if (error instanceof errors.ForbiddenError) {\n // allow PolicyError as an exception to throw a publicly visible message in the API\n if (error instanceof errors.PolicyError) {\n throw error;\n }\n return ctx.forbidden();\n }\n\n throw error;\n }\n };\n\nconst createAuthenticateMiddleware =\n (strapi: Core.Strapi): Core.MiddlewareHandler =>\n async (ctx, next) => {\n return strapi.get('auth').authenticate(ctx, next);\n };\n\nconst returnBodyMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const values = await next();\n\n if (isNil(ctx.body) && !isNil(values)) {\n ctx.body = values;\n }\n};\n\nexport default (strapi: Core.Strapi) => {\n const authenticate = createAuthenticateMiddleware(strapi);\n const authorize = createAuthorizeMiddleware(strapi);\n\n return (route: Core.Route, { router }: { router: Router }) => {\n try {\n const method = getMethod(route);\n const path = getPath(route);\n\n const middlewares = resolveRouteMiddlewares(route, strapi);\n\n const action = getAction(route, strapi);\n\n const routeHandler = compose([\n createRouteInfoMiddleware(route),\n authenticate,\n authorize,\n createPolicicesMiddleware(route, strapi),\n ...middlewares,\n returnBodyMiddleware,\n ...castArray(action),\n ]);\n\n router[method](path, routeHandler);\n } catch (error) {\n if (error instanceof Error) {\n error.message = `Error creating endpoint ${route.method} ${route.path}: ${error.message}`;\n }\n\n throw error;\n }\n };\n};\n\nconst getController = (\n name: string,\n { pluginName, apiName }: Core.RouteInfo,\n strapi: Core.Strapi\n) => {\n let ctrl: Core.Controller | undefined;\n\n if (pluginName) {\n if (pluginName === 'admin') {\n ctrl = strapi.controller(`admin::${name}`);\n } else {\n ctrl = strapi.plugin(pluginName).controller(name);\n }\n } else if (apiName) {\n ctrl = strapi.controller(`api::${apiName}.${name}`);\n }\n\n if (!ctrl) {\n return strapi.controller(name as UID.Controller);\n }\n\n return ctrl;\n};\n\nconst extractHandlerParts = (name: string) => {\n const controllerName = name.slice(0, name.lastIndexOf('.'));\n const actionName = name.slice(name.lastIndexOf('.') + 1);\n\n return { controllerName, actionName };\n};\n\nconst getAction = (route: Core.Route, strapi: Core.Strapi) => {\n const { handler, info } = route;\n const { pluginName, apiName, type } = info ?? {};\n\n if (Array.isArray(handler) || typeof handler === 'function') {\n return handler;\n }\n\n const { controllerName, actionName } = extractHandlerParts(trim(handler));\n\n const controller = getController(controllerName, { pluginName, apiName, type }, strapi);\n\n if (typeof controller[actionName] !== 'function') {\n throw new Error(`Handler not found \"${handler}\"`);\n }\n\n if (Symbol.for('__type__') in controller[actionName]) {\n (controller[actionName] as any)[Symbol.for('__type__')].push(type);\n } else {\n (controller[actionName] as any)[Symbol.for('__type__')] = [type];\n }\n\n return controller[actionName].bind(controller);\n};\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  /// <reference types="koa__router" />
2
2
  /// <reference types="koa" />
3
- import type { Strapi } from '@strapi/types';
4
- declare const createContentAPI: (strapi: Strapi) => {
3
+ import type { Core } from '@strapi/types';
4
+ declare const createContentAPI: (strapi: Core.Strapi) => {
5
5
  listRoutes(): import("@koa/router").Layer[];
6
6
  use(fn: import("@koa/router").Middleware<import("koa").DefaultState, import("koa").DefaultContext, unknown>): any;
7
- routes(routes: import("@strapi/types/dist/types/core/common").Router | import("@strapi/types/dist/types/core/common").Route[]): any;
7
+ routes(routes: Core.Router | Core.Route[]): any;
8
8
  mount(router: import("@koa/router")<import("koa").DefaultState, import("koa").DefaultContext>): any;
9
9
  };
10
10
  export { createContentAPI };
@@ -1 +1 @@
1
- {"version":3,"file":"content-api.d.ts","sourceRoot":"","sources":["../../../src/services/server/content-api.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C,QAAA,MAAM,gBAAgB,WAAY,MAAM;;;;;CAOvC,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"content-api.d.ts","sourceRoot":"","sources":["../../../src/services/server/content-api.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAG1C,QAAA,MAAM,gBAAgB,WAAY,KAAK,MAAM;;;;;CAO5C,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"content-api.js","sources":["../../../src/services/server/content-api.ts"],"sourcesContent":["import type { Strapi } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createContentAPI = (strapi: Strapi) => {\n const opts = {\n prefix: strapi.config.get('api.rest.prefix', '/api'),\n type: 'content-api',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createContentAPI };\n"],"names":["createAPI"],"mappings":";;;AAGM,MAAA,mBAAmB,CAAC,WAAmB;AAC3C,QAAM,OAAO;AAAA,IACX,QAAQ,OAAO,OAAO,IAAI,mBAAmB,MAAM;AAAA,IACnD,MAAM;AAAA,EAAA;AAGD,SAAAA,IAAA,UAAU,QAAQ,IAAI;AAC/B;;"}
1
+ {"version":3,"file":"content-api.js","sources":["../../../src/services/server/content-api.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createContentAPI = (strapi: Core.Strapi) => {\n const opts = {\n prefix: strapi.config.get('api.rest.prefix', '/api'),\n type: 'content-api',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createContentAPI };\n"],"names":["createAPI"],"mappings":";;;AAGM,MAAA,mBAAmB,CAAC,WAAwB;AAChD,QAAM,OAAO;AAAA,IACX,QAAQ,OAAO,OAAO,IAAI,mBAAmB,MAAM;AAAA,IACnD,MAAM;AAAA,EACR;AAEO,SAAAA,IAAA,UAAU,QAAQ,IAAI;AAC/B;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"content-api.mjs","sources":["../../../src/services/server/content-api.ts"],"sourcesContent":["import type { Strapi } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createContentAPI = (strapi: Strapi) => {\n const opts = {\n prefix: strapi.config.get('api.rest.prefix', '/api'),\n type: 'content-api',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createContentAPI };\n"],"names":[],"mappings":";AAGM,MAAA,mBAAmB,CAAC,WAAmB;AAC3C,QAAM,OAAO;AAAA,IACX,QAAQ,OAAO,OAAO,IAAI,mBAAmB,MAAM;AAAA,IACnD,MAAM;AAAA,EAAA;AAGD,SAAA,UAAU,QAAQ,IAAI;AAC/B;"}
1
+ {"version":3,"file":"content-api.mjs","sources":["../../../src/services/server/content-api.ts"],"sourcesContent":["import type { Core } from '@strapi/types';\nimport { createAPI } from './api';\n\nconst createContentAPI = (strapi: Core.Strapi) => {\n const opts = {\n prefix: strapi.config.get('api.rest.prefix', '/api'),\n type: 'content-api',\n };\n\n return createAPI(strapi, opts);\n};\n\nexport { createContentAPI };\n"],"names":[],"mappings":";AAGM,MAAA,mBAAmB,CAAC,WAAwB;AAChD,QAAM,OAAO;AAAA,IACX,QAAQ,OAAO,OAAO,IAAI,mBAAmB,MAAM;AAAA,IACnD,MAAM;AAAA,EACR;AAEO,SAAA,UAAU,QAAQ,IAAI;AAC/B;"}
@@ -1,10 +1,10 @@
1
1
  /// <reference types="node" />
2
2
  import http from 'http';
3
3
  import Koa from 'koa';
4
- import type { Strapi } from '@strapi/types';
4
+ import type { Core } from '@strapi/types';
5
5
  export interface Server extends http.Server {
6
6
  destroy: () => Promise<void>;
7
7
  }
8
- declare const createHTTPServer: (strapi: Strapi, koaApp: Koa) => Server;
8
+ declare const createHTTPServer: (strapi: Core.Strapi, koaApp: Koa) => Server;
9
9
  export { createHTTPServer };
10
10
  //# sourceMappingURL=http-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../../../src/services/server/http-server.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,WAAW,MAAO,SAAQ,IAAI,CAAC,MAAM;IACzC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,QAAA,MAAM,gBAAgB,WAAY,MAAM,UAAU,GAAG,KAAG,MAyDvD,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"http-server.d.ts","sourceRoot":"","sources":["../../../src/services/server/http-server.ts"],"names":[],"mappings":";AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,WAAW,MAAO,SAAQ,IAAI,CAAC,MAAM;IACzC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,QAAA,MAAM,gBAAgB,WAAY,KAAK,MAAM,UAAU,GAAG,KAAG,MAyD5D,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.js","sources":["../../../src/services/server/http-server.ts"],"sourcesContent":["import http from 'http';\nimport type { Socket } from 'net';\nimport Koa from 'koa';\nimport type { Strapi } from '@strapi/types';\n\nexport interface Server extends http.Server {\n destroy: () => Promise<void>;\n}\n\nconst createHTTPServer = (strapi: Strapi, koaApp: Koa): Server => {\n const connections = new Set<Socket>();\n\n // lazy creation of the request listener\n let handler: http.RequestListener;\n const listener: http.RequestListener = function handleRequest(req, res) {\n if (!handler) {\n handler = koaApp.callback();\n }\n\n return handler(req, res);\n };\n\n const options = strapi.config.get<http.ServerOptions>('server.http.serverOptions', {});\n\n const server: http.Server = http.createServer(options, listener);\n\n server.on('connection', (connection) => {\n connections.add(connection);\n\n connection.on('close', () => {\n connections.delete(connection);\n });\n });\n\n // handle port in use cleanly\n server.on('error', (err) => {\n if ('code' in err && 'port' in err && err.code === 'EADDRINUSE') {\n return strapi.stopWithError(`The port ${err.port} is already used by another application.`);\n }\n\n strapi.log.error(err);\n });\n\n const destroy = async () => {\n for (const connection of connections) {\n connection.destroy();\n\n connections.delete(connection);\n }\n\n if (!server.listening) {\n return;\n }\n\n return new Promise<void>((resolve, reject) => {\n server.close((error) => {\n if (error) {\n reject(error);\n } else {\n resolve();\n }\n });\n });\n };\n\n return Object.assign(server, { destroy });\n};\n\nexport { createHTTPServer };\n"],"names":["http"],"mappings":";;;;;AASM,MAAA,mBAAmB,CAAC,QAAgB,WAAwB;AAC1D,QAAA,kCAAkB;AAGpB,MAAA;AACJ,QAAM,WAAiC,SAAS,cAAc,KAAK,KAAK;AACtE,QAAI,CAAC,SAAS;AACZ,gBAAU,OAAO;IACnB;AAEO,WAAA,QAAQ,KAAK,GAAG;AAAA,EAAA;AAGzB,QAAM,UAAU,OAAO,OAAO,IAAwB,6BAA6B,CAAA,CAAE;AAErF,QAAM,SAAsBA,cAAA,QAAK,aAAa,SAAS,QAAQ;AAExD,SAAA,GAAG,cAAc,CAAC,eAAe;AACtC,gBAAY,IAAI,UAAU;AAEf,eAAA,GAAG,SAAS,MAAM;AAC3B,kBAAY,OAAO,UAAU;AAAA,IAAA,CAC9B;AAAA,EAAA,CACF;AAGM,SAAA,GAAG,SAAS,CAAC,QAAQ;AAC1B,QAAI,UAAU,OAAO,UAAU,OAAO,IAAI,SAAS,cAAc;AAC/D,aAAO,OAAO,cAAc,YAAY,IAAI,IAAI,0CAA0C;AAAA,IAC5F;AAEO,WAAA,IAAI,MAAM,GAAG;AAAA,EAAA,CACrB;AAED,QAAM,UAAU,YAAY;AAC1B,eAAW,cAAc,aAAa;AACpC,iBAAW,QAAQ;AAEnB,kBAAY,OAAO,UAAU;AAAA,IAC/B;AAEI,QAAA,CAAC,OAAO,WAAW;AACrB;AAAA,IACF;AAEA,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AACrC,aAAA,MAAM,CAAC,UAAU;AACtB,YAAI,OAAO;AACT,iBAAO,KAAK;AAAA,QAAA,OACP;AACG;QACV;AAAA,MAAA,CACD;AAAA,IAAA,CACF;AAAA,EAAA;AAGH,SAAO,OAAO,OAAO,QAAQ,EAAE,QAAS,CAAA;AAC1C;;"}
1
+ {"version":3,"file":"http-server.js","sources":["../../../src/services/server/http-server.ts"],"sourcesContent":["import http from 'http';\nimport type { Socket } from 'net';\nimport Koa from 'koa';\nimport type { Core } from '@strapi/types';\n\nexport interface Server extends http.Server {\n destroy: () => Promise<void>;\n}\n\nconst createHTTPServer = (strapi: Core.Strapi, koaApp: Koa): Server => {\n const connections = new Set<Socket>();\n\n // lazy creation of the request listener\n let handler: http.RequestListener;\n const listener: http.RequestListener = function handleRequest(req, res) {\n if (!handler) {\n handler = koaApp.callback();\n }\n\n return handler(req, res);\n };\n\n const options = strapi.config.get<http.ServerOptions>('server.http.serverOptions', {});\n\n const server: http.Server = http.createServer(options, listener);\n\n server.on('connection', (connection) => {\n connections.add(connection);\n\n connection.on('close', () => {\n connections.delete(connection);\n });\n });\n\n // handle port in use cleanly\n server.on('error', (err) => {\n if ('code' in err && 'port' in err && err.code === 'EADDRINUSE') {\n return strapi.stopWithError(`The port ${err.port} is already used by another application.`);\n }\n\n strapi.log.error(err);\n });\n\n const destroy = async () => {\n for (const connection of connections) {\n connection.destroy();\n\n connections.delete(connection);\n }\n\n if (!server.listening) {\n return;\n }\n\n return new Promise<void>((resolve, reject) => {\n server.close((error) => {\n if (error) {\n reject(error);\n } else {\n resolve();\n }\n });\n });\n };\n\n return Object.assign(server, { destroy });\n};\n\nexport { createHTTPServer };\n"],"names":["http"],"mappings":";;;;;AASM,MAAA,mBAAmB,CAAC,QAAqB,WAAwB;AAC/D,QAAA,kCAAkB,IAAY;AAGhC,MAAA;AACJ,QAAM,WAAiC,SAAS,cAAc,KAAK,KAAK;AACtE,QAAI,CAAC,SAAS;AACZ,gBAAU,OAAO,SAAS;AAAA,IAAA;AAGrB,WAAA,QAAQ,KAAK,GAAG;AAAA,EACzB;AAEA,QAAM,UAAU,OAAO,OAAO,IAAwB,6BAA6B,CAAA,CAAE;AAErF,QAAM,SAAsBA,cAAA,QAAK,aAAa,SAAS,QAAQ;AAExD,SAAA,GAAG,cAAc,CAAC,eAAe;AACtC,gBAAY,IAAI,UAAU;AAEf,eAAA,GAAG,SAAS,MAAM;AAC3B,kBAAY,OAAO,UAAU;AAAA,IAAA,CAC9B;AAAA,EAAA,CACF;AAGM,SAAA,GAAG,SAAS,CAAC,QAAQ;AAC1B,QAAI,UAAU,OAAO,UAAU,OAAO,IAAI,SAAS,cAAc;AAC/D,aAAO,OAAO,cAAc,YAAY,IAAI,IAAI,0CAA0C;AAAA,IAAA;AAGrF,WAAA,IAAI,MAAM,GAAG;AAAA,EAAA,CACrB;AAED,QAAM,UAAU,YAAY;AAC1B,eAAW,cAAc,aAAa;AACpC,iBAAW,QAAQ;AAEnB,kBAAY,OAAO,UAAU;AAAA,IAAA;AAG3B,QAAA,CAAC,OAAO,WAAW;AACrB;AAAA,IAAA;AAGF,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AACrC,aAAA,MAAM,CAAC,UAAU;AACtB,YAAI,OAAO;AACT,iBAAO,KAAK;AAAA,QAAA,OACP;AACG,kBAAA;AAAA,QAAA;AAAA,MACV,CACD;AAAA,IAAA,CACF;AAAA,EACH;AAEA,SAAO,OAAO,OAAO,QAAQ,EAAE,SAAS;AAC1C;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"http-server.mjs","sources":["../../../src/services/server/http-server.ts"],"sourcesContent":["import http from 'http';\nimport type { Socket } from 'net';\nimport Koa from 'koa';\nimport type { Strapi } from '@strapi/types';\n\nexport interface Server extends http.Server {\n destroy: () => Promise<void>;\n}\n\nconst createHTTPServer = (strapi: Strapi, koaApp: Koa): Server => {\n const connections = new Set<Socket>();\n\n // lazy creation of the request listener\n let handler: http.RequestListener;\n const listener: http.RequestListener = function handleRequest(req, res) {\n if (!handler) {\n handler = koaApp.callback();\n }\n\n return handler(req, res);\n };\n\n const options = strapi.config.get<http.ServerOptions>('server.http.serverOptions', {});\n\n const server: http.Server = http.createServer(options, listener);\n\n server.on('connection', (connection) => {\n connections.add(connection);\n\n connection.on('close', () => {\n connections.delete(connection);\n });\n });\n\n // handle port in use cleanly\n server.on('error', (err) => {\n if ('code' in err && 'port' in err && err.code === 'EADDRINUSE') {\n return strapi.stopWithError(`The port ${err.port} is already used by another application.`);\n }\n\n strapi.log.error(err);\n });\n\n const destroy = async () => {\n for (const connection of connections) {\n connection.destroy();\n\n connections.delete(connection);\n }\n\n if (!server.listening) {\n return;\n }\n\n return new Promise<void>((resolve, reject) => {\n server.close((error) => {\n if (error) {\n reject(error);\n } else {\n resolve();\n }\n });\n });\n };\n\n return Object.assign(server, { destroy });\n};\n\nexport { createHTTPServer };\n"],"names":[],"mappings":";AASM,MAAA,mBAAmB,CAAC,QAAgB,WAAwB;AAC1D,QAAA,kCAAkB;AAGpB,MAAA;AACJ,QAAM,WAAiC,SAAS,cAAc,KAAK,KAAK;AACtE,QAAI,CAAC,SAAS;AACZ,gBAAU,OAAO;IACnB;AAEO,WAAA,QAAQ,KAAK,GAAG;AAAA,EAAA;AAGzB,QAAM,UAAU,OAAO,OAAO,IAAwB,6BAA6B,CAAA,CAAE;AAErF,QAAM,SAAsB,KAAK,aAAa,SAAS,QAAQ;AAExD,SAAA,GAAG,cAAc,CAAC,eAAe;AACtC,gBAAY,IAAI,UAAU;AAEf,eAAA,GAAG,SAAS,MAAM;AAC3B,kBAAY,OAAO,UAAU;AAAA,IAAA,CAC9B;AAAA,EAAA,CACF;AAGM,SAAA,GAAG,SAAS,CAAC,QAAQ;AAC1B,QAAI,UAAU,OAAO,UAAU,OAAO,IAAI,SAAS,cAAc;AAC/D,aAAO,OAAO,cAAc,YAAY,IAAI,IAAI,0CAA0C;AAAA,IAC5F;AAEO,WAAA,IAAI,MAAM,GAAG;AAAA,EAAA,CACrB;AAED,QAAM,UAAU,YAAY;AAC1B,eAAW,cAAc,aAAa;AACpC,iBAAW,QAAQ;AAEnB,kBAAY,OAAO,UAAU;AAAA,IAC/B;AAEI,QAAA,CAAC,OAAO,WAAW;AACrB;AAAA,IACF;AAEA,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AACrC,aAAA,MAAM,CAAC,UAAU;AACtB,YAAI,OAAO;AACT,iBAAO,KAAK;AAAA,QAAA,OACP;AACG;QACV;AAAA,MAAA,CACD;AAAA,IAAA,CACF;AAAA,EAAA;AAGH,SAAO,OAAO,OAAO,QAAQ,EAAE,QAAS,CAAA;AAC1C;"}
1
+ {"version":3,"file":"http-server.mjs","sources":["../../../src/services/server/http-server.ts"],"sourcesContent":["import http from 'http';\nimport type { Socket } from 'net';\nimport Koa from 'koa';\nimport type { Core } from '@strapi/types';\n\nexport interface Server extends http.Server {\n destroy: () => Promise<void>;\n}\n\nconst createHTTPServer = (strapi: Core.Strapi, koaApp: Koa): Server => {\n const connections = new Set<Socket>();\n\n // lazy creation of the request listener\n let handler: http.RequestListener;\n const listener: http.RequestListener = function handleRequest(req, res) {\n if (!handler) {\n handler = koaApp.callback();\n }\n\n return handler(req, res);\n };\n\n const options = strapi.config.get<http.ServerOptions>('server.http.serverOptions', {});\n\n const server: http.Server = http.createServer(options, listener);\n\n server.on('connection', (connection) => {\n connections.add(connection);\n\n connection.on('close', () => {\n connections.delete(connection);\n });\n });\n\n // handle port in use cleanly\n server.on('error', (err) => {\n if ('code' in err && 'port' in err && err.code === 'EADDRINUSE') {\n return strapi.stopWithError(`The port ${err.port} is already used by another application.`);\n }\n\n strapi.log.error(err);\n });\n\n const destroy = async () => {\n for (const connection of connections) {\n connection.destroy();\n\n connections.delete(connection);\n }\n\n if (!server.listening) {\n return;\n }\n\n return new Promise<void>((resolve, reject) => {\n server.close((error) => {\n if (error) {\n reject(error);\n } else {\n resolve();\n }\n });\n });\n };\n\n return Object.assign(server, { destroy });\n};\n\nexport { createHTTPServer };\n"],"names":[],"mappings":";AASM,MAAA,mBAAmB,CAAC,QAAqB,WAAwB;AAC/D,QAAA,kCAAkB,IAAY;AAGhC,MAAA;AACJ,QAAM,WAAiC,SAAS,cAAc,KAAK,KAAK;AACtE,QAAI,CAAC,SAAS;AACZ,gBAAU,OAAO,SAAS;AAAA,IAAA;AAGrB,WAAA,QAAQ,KAAK,GAAG;AAAA,EACzB;AAEA,QAAM,UAAU,OAAO,OAAO,IAAwB,6BAA6B,CAAA,CAAE;AAErF,QAAM,SAAsB,KAAK,aAAa,SAAS,QAAQ;AAExD,SAAA,GAAG,cAAc,CAAC,eAAe;AACtC,gBAAY,IAAI,UAAU;AAEf,eAAA,GAAG,SAAS,MAAM;AAC3B,kBAAY,OAAO,UAAU;AAAA,IAAA,CAC9B;AAAA,EAAA,CACF;AAGM,SAAA,GAAG,SAAS,CAAC,QAAQ;AAC1B,QAAI,UAAU,OAAO,UAAU,OAAO,IAAI,SAAS,cAAc;AAC/D,aAAO,OAAO,cAAc,YAAY,IAAI,IAAI,0CAA0C;AAAA,IAAA;AAGrF,WAAA,IAAI,MAAM,GAAG;AAAA,EAAA,CACrB;AAED,QAAM,UAAU,YAAY;AAC1B,eAAW,cAAc,aAAa;AACpC,iBAAW,QAAQ;AAEnB,kBAAY,OAAO,UAAU;AAAA,IAAA;AAG3B,QAAA,CAAC,OAAO,WAAW;AACrB;AAAA,IAAA;AAGF,WAAO,IAAI,QAAc,CAAC,SAAS,WAAW;AACrC,aAAA,MAAM,CAAC,UAAU;AACtB,YAAI,OAAO;AACT,iBAAO,KAAK;AAAA,QAAA,OACP;AACG,kBAAA;AAAA,QAAA;AAAA,MACV,CACD;AAAA,IAAA,CACF;AAAA,EACH;AAEA,SAAO,OAAO,OAAO,QAAQ,EAAE,SAAS;AAC1C;"}
@@ -1,4 +1,4 @@
1
- import type { Strapi, Server } from '@strapi/types';
2
- declare const createServer: (strapi: Strapi) => Server;
1
+ import type { Core, Modules } from '@strapi/types';
2
+ declare const createServer: (strapi: Core.Strapi) => Modules.Server.Server;
3
3
  export { createServer };
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/server/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAU,MAAM,EAAE,MAAM,eAAe,CAAC;AAgB5D,QAAA,MAAM,YAAY,WAAY,MAAM,KAAG,MA8FtC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/server/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgBnD,QAAA,MAAM,YAAY,WAAY,KAAK,MAAM,KAAG,QAAQ,MAAM,CAAC,MA4F1D,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -17,7 +17,7 @@ const healthCheck = async (ctx) => {
17
17
  };
18
18
  const createServer = (strapi) => {
19
19
  const app = koa({
20
- proxy: strapi.config.get("server.proxy"),
20
+ proxy: strapi.config.get("server.proxy.koa"),
21
21
  keys: strapi.config.get("server.app.keys")
22
22
  });
23
23
  app.use((ctx, next) => requestContext.run(ctx, () => next()));
@@ -70,8 +70,7 @@ const createServer = (strapi) => {
70
70
  return this;
71
71
  },
72
72
  listRoutes() {
73
- const allRoutes = [...router.stack];
74
- return allRoutes;
73
+ return [...router.stack];
75
74
  },
76
75
  listen(...args) {
77
76
  if (!state.mounted) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Strapi, Common, Server } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Common.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Strapi): Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Common.Router | Omit<Common.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n const allRoutes = [...router.stack];\n\n return allRoutes;\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":["createKoaApp","requestCtx","Router","createRouteManager","httpServer","createHTTPServer","createContentAPI","createAdminAPI","registerAllRoutes","registerApplicationMiddlewares"],"mappings":";;;;;;;;;;;;;AAYA,MAAM,cAAwC,OAAO,QAAQ;AACvD,MAAA,IAAI,UAAU,oBAAoB;AACtC,MAAI,SAAS;AACf;AAEM,MAAA,eAAe,CAAC,WAA2B;AAC/C,QAAM,MAAMA,IAAa;AAAA,IACvB,OAAO,OAAO,OAAO,IAAI,cAAc;AAAA,IACvC,MAAM,OAAO,OAAO,IAAI,iBAAiB;AAAA,EAAA,CAC1C;AAEG,MAAA,IAAI,CAAC,KAAK,SAASC,eAAW,IAAI,KAAK,MAAM,KAAM,CAAA,CAAC;AAElD,QAAA,SAAS,IAAIC,gBAAAA;AAEb,QAAA,eAAeC,2BAAmB,MAAM;AAExC,QAAAC,eAAaC,WAAAA,iBAAiB,QAAQ,GAAG;AAE/C,QAAM,OAAO;AAAA,IACX,eAAeC,4BAAiB,MAAM;AAAA,IACtC,OAAOC,wBAAe,MAAM;AAAA,EAAA;AAIvB,SAAA,IAAI,YAAY,WAAW;AAElC,QAAM,QAAQ;AAAA,IACZ,SAAS;AAAA,EAAA;AAGJ,SAAA;AAAA,IACL;AAAA,IACA;AAAA,IAAA,YACAH;AAAAA,IAEA,IAAI,MAAM;AACR,aAAO,KAAK,IAAI;AAAA,IAClB;AAAA,IAEA,OAAO,MAAM;AACP,UAAA,IAAI,GAAG,IAAI;AACR,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAsD;AAC3D,UAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM;AACnC,cAAA,MAAM,KAAK,OAAO,IAAI;AAC5B,YAAI,CAAC,KAAK;AACF,gBAAA,IAAI,MAAM,OAAO,OAAO,IAAI,iCAAiC,OAAO,KAAK,IAAI,CAAC,EAAE;AAAA,QACxF;AAEA,aAAK,OAAO,IAAI,EAAE,OAAO,MAAM;AACxB,eAAA;AAAA,MACT;AAEa,mBAAA,UAAU,QAAQ,MAAM;AAC9B,aAAA;AAAA,IACT;AAAA,IAEA,QAAQ;AACN,YAAM,UAAU;AAET,aAAA,OAAO,IAAI,EAAE,QAAQ,CAAC,QAAQ,IAAI,MAAM,MAAM,CAAC;AAClD,UAAA,IAAI,OAAO,OAAO,CAAC,EAAE,IAAI,OAAO,gBAAgB;AAE7C,aAAA;AAAA,IACT;AAAA,IAEA,cAAc;AACZI,qBAAkB,MAAM;AAEjB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,kBAAkB;AACtB,YAAMC,oBAA+B,MAAM;AAEpC,aAAA;AAAA,IACT;AAAA,IAEA,aAAa;AACX,YAAM,YAAY,CAAC,GAAG,OAAO,KAAK;AAE3B,aAAA;AAAA,IACT;AAAA,IAEA,UAAU,MAAa;AACjB,UAAA,CAAC,MAAM,SAAS;AAClB,aAAK,MAAM;AAAA,MACb;AAEO,aAAAL,aAAW,OAAO,GAAG,IAAI;AAAA,IAClC;AAAA,IAEA,MAAM,UAAU;AACd,YAAMA,aAAW;IACnB;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core, Modules } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Core.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Core.Strapi): Modules.Server.Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy.koa'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Core.Router | Omit<Core.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n return [...router.stack];\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":["createKoaApp","requestCtx","Router","createRouteManager","httpServer","createHTTPServer","createContentAPI","createAdminAPI","registerAllRoutes","registerApplicationMiddlewares"],"mappings":";;;;;;;;;;;;;AAYA,MAAM,cAAsC,OAAO,QAAQ;AACrD,MAAA,IAAI,UAAU,oBAAoB;AACtC,MAAI,SAAS;AACf;AAEM,MAAA,eAAe,CAAC,WAA+C;AACnE,QAAM,MAAMA,IAAa;AAAA,IACvB,OAAO,OAAO,OAAO,IAAI,kBAAkB;AAAA,IAC3C,MAAM,OAAO,OAAO,IAAI,iBAAiB;AAAA,EAAA,CAC1C;AAEG,MAAA,IAAI,CAAC,KAAK,SAASC,eAAW,IAAI,KAAK,MAAM,KAAK,CAAC,CAAC;AAElD,QAAA,SAAS,IAAIC,wBAAO;AAEpB,QAAA,eAAeC,2BAAmB,MAAM;AAExC,QAAAC,eAAaC,WAAAA,iBAAiB,QAAQ,GAAG;AAE/C,QAAM,OAAO;AAAA,IACX,eAAeC,4BAAiB,MAAM;AAAA,IACtC,OAAOC,wBAAe,MAAM;AAAA,EAC9B;AAGO,SAAA,IAAI,YAAY,WAAW;AAElC,QAAM,QAAQ;AAAA,IACZ,SAAS;AAAA,EACX;AAEO,SAAA;AAAA,IACL;AAAA,IACA;AAAA,IAAA,YACAH;AAAAA,IAEA,IAAI,MAAM;AACR,aAAO,KAAK,IAAI;AAAA,IAClB;AAAA,IAEA,OAAO,MAAM;AACP,UAAA,IAAI,GAAG,IAAI;AACR,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAkD;AACvD,UAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM;AACnC,cAAA,MAAM,KAAK,OAAO,IAAI;AAC5B,YAAI,CAAC,KAAK;AACF,gBAAA,IAAI,MAAM,OAAO,OAAO,IAAI,iCAAiC,OAAO,KAAK,IAAI,CAAC,EAAE;AAAA,QAAA;AAGxF,aAAK,OAAO,IAAI,EAAE,OAAO,MAAM;AACxB,eAAA;AAAA,MAAA;AAGI,mBAAA,UAAU,QAAQ,MAAM;AAC9B,aAAA;AAAA,IACT;AAAA,IAEA,QAAQ;AACN,YAAM,UAAU;AAET,aAAA,OAAO,IAAI,EAAE,QAAQ,CAAC,QAAQ,IAAI,MAAM,MAAM,CAAC;AAClD,UAAA,IAAI,OAAO,OAAO,CAAC,EAAE,IAAI,OAAO,gBAAgB;AAE7C,aAAA;AAAA,IACT;AAAA,IAEA,cAAc;AACZI,qBAAkB,MAAM;AAEjB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,kBAAkB;AACtB,YAAMC,oBAA+B,MAAM;AAEpC,aAAA;AAAA,IACT;AAAA,IAEA,aAAa;AACJ,aAAA,CAAC,GAAG,OAAO,KAAK;AAAA,IACzB;AAAA,IAEA,UAAU,MAAa;AACjB,UAAA,CAAC,MAAM,SAAS;AAClB,aAAK,MAAM;AAAA,MAAA;AAGN,aAAAL,aAAW,OAAO,GAAG,IAAI;AAAA,IAClC;AAAA,IAEA,MAAM,UAAU;AACd,YAAMA,aAAW,QAAQ;AAAA,IAAA;AAAA,EAE7B;AACF;;"}
@@ -13,7 +13,7 @@ const healthCheck = async (ctx) => {
13
13
  };
14
14
  const createServer = (strapi) => {
15
15
  const app = createKoaApp({
16
- proxy: strapi.config.get("server.proxy"),
16
+ proxy: strapi.config.get("server.proxy.koa"),
17
17
  keys: strapi.config.get("server.app.keys")
18
18
  });
19
19
  app.use((ctx, next) => requestCtx.run(ctx, () => next()));
@@ -66,8 +66,7 @@ const createServer = (strapi) => {
66
66
  return this;
67
67
  },
68
68
  listRoutes() {
69
- const allRoutes = [...router.stack];
70
- return allRoutes;
69
+ return [...router.stack];
71
70
  },
72
71
  listen(...args) {
73
72
  if (!state.mounted) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Strapi, Common, Server } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Common.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Strapi): Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Common.Router | Omit<Common.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n const allRoutes = [...router.stack];\n\n return allRoutes;\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":[],"mappings":";;;;;;;;;AAYA,MAAM,cAAwC,OAAO,QAAQ;AACvD,MAAA,IAAI,UAAU,oBAAoB;AACtC,MAAI,SAAS;AACf;AAEM,MAAA,eAAe,CAAC,WAA2B;AAC/C,QAAM,MAAM,aAAa;AAAA,IACvB,OAAO,OAAO,OAAO,IAAI,cAAc;AAAA,IACvC,MAAM,OAAO,OAAO,IAAI,iBAAiB;AAAA,EAAA,CAC1C;AAEG,MAAA,IAAI,CAAC,KAAK,SAAS,WAAW,IAAI,KAAK,MAAM,KAAM,CAAA,CAAC;AAElD,QAAA,SAAS,IAAI;AAEb,QAAA,eAAe,mBAAmB,MAAM;AAExC,QAAA,aAAa,iBAAiB,QAAQ,GAAG;AAE/C,QAAM,OAAO;AAAA,IACX,eAAe,iBAAiB,MAAM;AAAA,IACtC,OAAO,eAAe,MAAM;AAAA,EAAA;AAIvB,SAAA,IAAI,YAAY,WAAW;AAElC,QAAM,QAAQ;AAAA,IACZ,SAAS;AAAA,EAAA;AAGJ,SAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IAEA,IAAI,MAAM;AACR,aAAO,KAAK,IAAI;AAAA,IAClB;AAAA,IAEA,OAAO,MAAM;AACP,UAAA,IAAI,GAAG,IAAI;AACR,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAsD;AAC3D,UAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM;AACnC,cAAA,MAAM,KAAK,OAAO,IAAI;AAC5B,YAAI,CAAC,KAAK;AACF,gBAAA,IAAI,MAAM,OAAO,OAAO,IAAI,iCAAiC,OAAO,KAAK,IAAI,CAAC,EAAE;AAAA,QACxF;AAEA,aAAK,OAAO,IAAI,EAAE,OAAO,MAAM;AACxB,eAAA;AAAA,MACT;AAEa,mBAAA,UAAU,QAAQ,MAAM;AAC9B,aAAA;AAAA,IACT;AAAA,IAEA,QAAQ;AACN,YAAM,UAAU;AAET,aAAA,OAAO,IAAI,EAAE,QAAQ,CAAC,QAAQ,IAAI,MAAM,MAAM,CAAC;AAClD,UAAA,IAAI,OAAO,OAAO,CAAC,EAAE,IAAI,OAAO,gBAAgB;AAE7C,aAAA;AAAA,IACT;AAAA,IAEA,cAAc;AACZ,wBAAkB,MAAM;AAEjB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,kBAAkB;AACtB,YAAM,+BAA+B,MAAM;AAEpC,aAAA;AAAA,IACT;AAAA,IAEA,aAAa;AACX,YAAM,YAAY,CAAC,GAAG,OAAO,KAAK;AAE3B,aAAA;AAAA,IACT;AAAA,IAEA,UAAU,MAAa;AACjB,UAAA,CAAC,MAAM,SAAS;AAClB,aAAK,MAAM;AAAA,MACb;AAEO,aAAA,WAAW,OAAO,GAAG,IAAI;AAAA,IAClC;AAAA,IAEA,MAAM,UAAU;AACd,YAAM,WAAW;IACnB;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/services/server/index.ts"],"sourcesContent":["import Router from '@koa/router';\nimport type { Core, Modules } from '@strapi/types';\n\nimport { createHTTPServer } from './http-server';\nimport { createRouteManager } from './routing';\nimport { createAdminAPI } from './admin-api';\nimport { createContentAPI } from './content-api';\nimport registerAllRoutes from './register-routes';\nimport registerApplicationMiddlewares from './register-middlewares';\nimport createKoaApp from './koa';\nimport requestCtx from '../request-context';\n\nconst healthCheck: Core.MiddlewareHandler = async (ctx) => {\n ctx.set('strapi', 'You are so French!');\n ctx.status = 204;\n};\n\nconst createServer = (strapi: Core.Strapi): Modules.Server.Server => {\n const app = createKoaApp({\n proxy: strapi.config.get('server.proxy.koa'),\n keys: strapi.config.get('server.app.keys'),\n });\n\n app.use((ctx, next) => requestCtx.run(ctx, () => next()));\n\n const router = new Router();\n\n const routeManager = createRouteManager(strapi);\n\n const httpServer = createHTTPServer(strapi, app);\n\n const apis = {\n 'content-api': createContentAPI(strapi),\n admin: createAdminAPI(strapi),\n };\n\n // init health check\n router.all('/_health', healthCheck);\n\n const state = {\n mounted: false,\n };\n\n return {\n app,\n router,\n httpServer,\n\n api(name) {\n return apis[name];\n },\n\n use(...args) {\n app.use(...args);\n return this;\n },\n\n routes(routes: Core.Router | Omit<Core.Route, 'info'>[]) {\n if (!Array.isArray(routes) && routes.type) {\n const api = apis[routes.type];\n if (!api) {\n throw new Error(`API ${routes.type} not found. Possible APIs are ${Object.keys(apis)}`);\n }\n\n apis[routes.type].routes(routes);\n return this;\n }\n\n routeManager.addRoutes(routes, router);\n return this;\n },\n\n mount() {\n state.mounted = true;\n\n Object.values(apis).forEach((api) => api.mount(router));\n app.use(router.routes()).use(router.allowedMethods());\n\n return this;\n },\n\n initRouting() {\n registerAllRoutes(strapi);\n\n return this;\n },\n\n async initMiddlewares() {\n await registerApplicationMiddlewares(strapi);\n\n return this;\n },\n\n listRoutes() {\n return [...router.stack];\n },\n\n listen(...args: any[]) {\n if (!state.mounted) {\n this.mount();\n }\n\n return httpServer.listen(...args);\n },\n\n async destroy() {\n await httpServer.destroy();\n },\n };\n};\n\nexport { createServer };\n"],"names":[],"mappings":";;;;;;;;;AAYA,MAAM,cAAsC,OAAO,QAAQ;AACrD,MAAA,IAAI,UAAU,oBAAoB;AACtC,MAAI,SAAS;AACf;AAEM,MAAA,eAAe,CAAC,WAA+C;AACnE,QAAM,MAAM,aAAa;AAAA,IACvB,OAAO,OAAO,OAAO,IAAI,kBAAkB;AAAA,IAC3C,MAAM,OAAO,OAAO,IAAI,iBAAiB;AAAA,EAAA,CAC1C;AAEG,MAAA,IAAI,CAAC,KAAK,SAAS,WAAW,IAAI,KAAK,MAAM,KAAK,CAAC,CAAC;AAElD,QAAA,SAAS,IAAI,OAAO;AAEpB,QAAA,eAAe,mBAAmB,MAAM;AAExC,QAAA,aAAa,iBAAiB,QAAQ,GAAG;AAE/C,QAAM,OAAO;AAAA,IACX,eAAe,iBAAiB,MAAM;AAAA,IACtC,OAAO,eAAe,MAAM;AAAA,EAC9B;AAGO,SAAA,IAAI,YAAY,WAAW;AAElC,QAAM,QAAQ;AAAA,IACZ,SAAS;AAAA,EACX;AAEO,SAAA;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IAEA,IAAI,MAAM;AACR,aAAO,KAAK,IAAI;AAAA,IAClB;AAAA,IAEA,OAAO,MAAM;AACP,UAAA,IAAI,GAAG,IAAI;AACR,aAAA;AAAA,IACT;AAAA,IAEA,OAAO,QAAkD;AACvD,UAAI,CAAC,MAAM,QAAQ,MAAM,KAAK,OAAO,MAAM;AACnC,cAAA,MAAM,KAAK,OAAO,IAAI;AAC5B,YAAI,CAAC,KAAK;AACF,gBAAA,IAAI,MAAM,OAAO,OAAO,IAAI,iCAAiC,OAAO,KAAK,IAAI,CAAC,EAAE;AAAA,QAAA;AAGxF,aAAK,OAAO,IAAI,EAAE,OAAO,MAAM;AACxB,eAAA;AAAA,MAAA;AAGI,mBAAA,UAAU,QAAQ,MAAM;AAC9B,aAAA;AAAA,IACT;AAAA,IAEA,QAAQ;AACN,YAAM,UAAU;AAET,aAAA,OAAO,IAAI,EAAE,QAAQ,CAAC,QAAQ,IAAI,MAAM,MAAM,CAAC;AAClD,UAAA,IAAI,OAAO,OAAO,CAAC,EAAE,IAAI,OAAO,gBAAgB;AAE7C,aAAA;AAAA,IACT;AAAA,IAEA,cAAc;AACZ,wBAAkB,MAAM;AAEjB,aAAA;AAAA,IACT;AAAA,IAEA,MAAM,kBAAkB;AACtB,YAAM,+BAA+B,MAAM;AAEpC,aAAA;AAAA,IACT;AAAA,IAEA,aAAa;AACJ,aAAA,CAAC,GAAG,OAAO,KAAK;AAAA,IACzB;AAAA,IAEA,UAAU,MAAa;AACjB,UAAA,CAAC,MAAM,SAAS;AAClB,aAAK,MAAM;AAAA,MAAA;AAGN,aAAA,WAAW,OAAO,GAAG,IAAI;AAAA,IAClC;AAAA,IAEA,MAAM,UAAU;AACd,YAAM,WAAW,QAAQ;AAAA,IAAA;AAAA,EAE7B;AACF;"}
@@ -1 +1 @@
1
- {"version":3,"file":"koa.d.ts","sourceRoot":"","sources":["../../../src/services/server/koa.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,OAAO,QAAQ,KAAK,CAAC;IACnB,UAAU,YAAY;QACpB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,eAAe,EAAE,OAAO,CAAC;QACzB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC7D;CACF;AA6CD,QAAA,MAAM,YAAY;WAA8B,OAAO;UAAQ,MAAM,EAAE;+CAOtE,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"koa.d.ts","sourceRoot":"","sources":["../../../src/services/server/koa.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,KAAK,CAAC;AAMtB,OAAO,QAAQ,KAAK,CAAC;IACnB,UAAU,YAAY;QACpB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;QAC3C,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;QAC7B,eAAe,EAAE,OAAO,CAAC;QACzB,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KAC7D;CACF;AA8CD,QAAA,MAAM,YAAY,oBAAqB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,8CAOxE,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const _ = require("lodash/fp");
2
+ const fp = require("lodash/fp");
3
3
  const Koa = require("koa");
4
4
  const createError = require("http-errors");
5
5
  const delegate = require("delegates");
@@ -14,8 +14,8 @@ const addCustomMethods = (app) => {
14
14
  const delegator = delegate__default.default(app.context, "response");
15
15
  statuses__default.default.codes.filter((code) => code >= 400 && code < 600).forEach((code) => {
16
16
  const name = statuses__default.default(code);
17
- const camelCasedName = _.camelCase(name);
18
- app.response[camelCasedName] = function responseCode(message, details = {}) {
17
+ const camelCasedName = fp.camelCase(name);
18
+ app.response[camelCasedName] = function responseCode(message = name, details = {}) {
19
19
  const httpError = createError__default.default(code, message, { details });
20
20
  const { status, body } = errors.formatHttpError(httpError);
21
21
  this.status = status;
@@ -32,7 +32,7 @@ const addCustomMethods = (app) => {
32
32
  this.body = data;
33
33
  };
34
34
  app.response.deleted = function deleted(data) {
35
- if (_.isNil(data)) {
35
+ if (fp.isNil(data)) {
36
36
  this.status = 204;
37
37
  } else {
38
38
  this.status = 200;
@@ -1 +1 @@
1
- {"version":3,"file":"koa.js","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil, camelCase } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport statuses from 'statuses';\nimport { formatHttpError } from '../errors';\n\ndeclare module 'koa' {\n interface BaseResponse {\n send: (data: any, status?: number) => void;\n created: (data: any) => void;\n deleted: (data: any) => void;\n _explicitStatus: boolean;\n [key: string]: (message: string, details?: unknown) => void;\n }\n}\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n statuses.codes\n .filter((code) => code >= 400 && code < 600)\n .forEach((code) => {\n const name = statuses(code);\n const camelCasedName = camelCase(name);\n app.response[camelCasedName] = function responseCode(message, details = {}) {\n const httpError = createError(code, message, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n delegator.method(camelCasedName);\n });\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":["delegate","statuses","camelCase","createError","formatHttpError","isNil","Koa"],"mappings":";;;;;;;;;;;;AAiBA,MAAM,mBAAmB,CAAC,QAAa;AACrC,QAAM,YAAYA,kBAAA,QAAS,IAAI,SAAS,UAAU;AAGzCC,oBAAAA,QAAA,MACN,OAAO,CAAC,SAAS,QAAQ,OAAO,OAAO,GAAG,EAC1C,QAAQ,CAAC,SAAS;AACX,UAAA,OAAOA,0BAAS,IAAI;AACpB,UAAA,iBAAiBC,YAAU,IAAI;AACjC,QAAA,SAAS,cAAc,IAAI,SAAS,aAAa,SAAS,UAAU,IAAI;AAC1E,YAAM,YAAYC,qBAAAA,QAAY,MAAM,SAAS,EAAE,SAAS;AACxD,YAAM,EAAE,QAAQ,KAAK,IAAIC,uBAAgB,SAAS;AAClD,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IAAA;AAEd,cAAU,OAAO,cAAc;AAAA,EAAA,CAChC;AAGH,MAAI,SAAS,OAAO,SAAS,KAAK,MAAM,SAAS,KAAK;AACpD,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AAC5C,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AACxC,QAAAC,EAAAA,MAAM,IAAI,GAAG;AACf,WAAK,SAAS;AAAA,IAAA,OACT;AACL,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EAAA;AAGF,YAAU,OAAO,MAAM,EAAE,OAAO,SAAS,EAAE,OAAO,SAAS;AAEpD,SAAA;AACT;AAEA,MAAM,eAAe,CAAC,EAAE,OAAO,WAA+C;AAC5E,QAAM,MAAM,IAAIC,aAAAA,QAAI,EAAE,MAAO,CAAA;AAC7B,MAAI,OAAO;AAEX,mBAAiB,GAAG;AAEb,SAAA;AACT;;"}
1
+ {"version":3,"file":"koa.js","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil, camelCase } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport statuses from 'statuses';\nimport { formatHttpError } from '../errors';\n\ndeclare module 'koa' {\n interface BaseResponse {\n send: (data: any, status?: number) => void;\n created: (data: any) => void;\n deleted: (data: any) => void;\n _explicitStatus: boolean;\n [key: string]: (message: string, details?: unknown) => void;\n }\n}\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n statuses.codes\n .filter((code) => code >= 400 && code < 600)\n .forEach((code) => {\n const name = statuses(code);\n\n const camelCasedName = camelCase(name);\n app.response[camelCasedName] = function responseCode(message = name, details = {}) {\n const httpError = createError(code, message, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n delegator.method(camelCasedName);\n });\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":["delegate","statuses","camelCase","createError","formatHttpError","isNil","Koa"],"mappings":";;;;;;;;;;;;AAiBA,MAAM,mBAAmB,CAAC,QAAa;AACrC,QAAM,YAAYA,kBAAA,QAAS,IAAI,SAAS,UAAU;AAGzCC,oBAAAA,QAAA,MACN,OAAO,CAAC,SAAS,QAAQ,OAAO,OAAO,GAAG,EAC1C,QAAQ,CAAC,SAAS;AACX,UAAA,OAAOA,0BAAS,IAAI;AAEpB,UAAA,iBAAiBC,aAAU,IAAI;AACjC,QAAA,SAAS,cAAc,IAAI,SAAS,aAAa,UAAU,MAAM,UAAU,IAAI;AACjF,YAAM,YAAYC,qBAAAA,QAAY,MAAM,SAAS,EAAE,SAAS;AACxD,YAAM,EAAE,QAAQ,SAASC,OAAAA,gBAAgB,SAAS;AAClD,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AACA,cAAU,OAAO,cAAc;AAAA,EAAA,CAChC;AAGH,MAAI,SAAS,OAAO,SAAS,KAAK,MAAM,SAAS,KAAK;AACpD,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EACd;AAEA,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AAC5C,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EACd;AAEA,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AACxC,QAAAC,GAAAA,MAAM,IAAI,GAAG;AACf,WAAK,SAAS;AAAA,IAAA,OACT;AACL,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IAAA;AAAA,EAEhB;AAEA,YAAU,OAAO,MAAM,EAAE,OAAO,SAAS,EAAE,OAAO,SAAS;AAEpD,SAAA;AACT;AAEA,MAAM,eAAe,CAAC,EAAE,OAAO,WAA+C;AAC5E,QAAM,MAAM,IAAIC,qBAAI,EAAE,OAAO;AAC7B,MAAI,OAAO;AAEX,mBAAiB,GAAG;AAEb,SAAA;AACT;;"}
@@ -9,7 +9,7 @@ const addCustomMethods = (app) => {
9
9
  statuses.codes.filter((code) => code >= 400 && code < 600).forEach((code) => {
10
10
  const name = statuses(code);
11
11
  const camelCasedName = camelCase(name);
12
- app.response[camelCasedName] = function responseCode(message, details = {}) {
12
+ app.response[camelCasedName] = function responseCode(message = name, details = {}) {
13
13
  const httpError = createError(code, message, { details });
14
14
  const { status, body } = formatHttpError(httpError);
15
15
  this.status = status;
@@ -1 +1 @@
1
- {"version":3,"file":"koa.mjs","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil, camelCase } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport statuses from 'statuses';\nimport { formatHttpError } from '../errors';\n\ndeclare module 'koa' {\n interface BaseResponse {\n send: (data: any, status?: number) => void;\n created: (data: any) => void;\n deleted: (data: any) => void;\n _explicitStatus: boolean;\n [key: string]: (message: string, details?: unknown) => void;\n }\n}\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n statuses.codes\n .filter((code) => code >= 400 && code < 600)\n .forEach((code) => {\n const name = statuses(code);\n const camelCasedName = camelCase(name);\n app.response[camelCasedName] = function responseCode(message, details = {}) {\n const httpError = createError(code, message, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n delegator.method(camelCasedName);\n });\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":[],"mappings":";;;;;;AAiBA,MAAM,mBAAmB,CAAC,QAAa;AACrC,QAAM,YAAY,SAAS,IAAI,SAAS,UAAU;AAGzC,WAAA,MACN,OAAO,CAAC,SAAS,QAAQ,OAAO,OAAO,GAAG,EAC1C,QAAQ,CAAC,SAAS;AACX,UAAA,OAAO,SAAS,IAAI;AACpB,UAAA,iBAAiB,UAAU,IAAI;AACjC,QAAA,SAAS,cAAc,IAAI,SAAS,aAAa,SAAS,UAAU,IAAI;AAC1E,YAAM,YAAY,YAAY,MAAM,SAAS,EAAE,SAAS;AACxD,YAAM,EAAE,QAAQ,KAAK,IAAI,gBAAgB,SAAS;AAClD,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IAAA;AAEd,cAAU,OAAO,cAAc;AAAA,EAAA,CAChC;AAGH,MAAI,SAAS,OAAO,SAAS,KAAK,MAAM,SAAS,KAAK;AACpD,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AAC5C,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AACxC,QAAA,MAAM,IAAI,GAAG;AACf,WAAK,SAAS;AAAA,IAAA,OACT;AACL,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EAAA;AAGF,YAAU,OAAO,MAAM,EAAE,OAAO,SAAS,EAAE,OAAO,SAAS;AAEpD,SAAA;AACT;AAEA,MAAM,eAAe,CAAC,EAAE,OAAO,WAA+C;AAC5E,QAAM,MAAM,IAAI,IAAI,EAAE,MAAO,CAAA;AAC7B,MAAI,OAAO;AAEX,mBAAiB,GAAG;AAEb,SAAA;AACT;"}
1
+ {"version":3,"file":"koa.mjs","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil, camelCase } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport statuses from 'statuses';\nimport { formatHttpError } from '../errors';\n\ndeclare module 'koa' {\n interface BaseResponse {\n send: (data: any, status?: number) => void;\n created: (data: any) => void;\n deleted: (data: any) => void;\n _explicitStatus: boolean;\n [key: string]: (message: string, details?: unknown) => void;\n }\n}\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n statuses.codes\n .filter((code) => code >= 400 && code < 600)\n .forEach((code) => {\n const name = statuses(code);\n\n const camelCasedName = camelCase(name);\n app.response[camelCasedName] = function responseCode(message = name, details = {}) {\n const httpError = createError(code, message, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n delegator.method(camelCasedName);\n });\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":[],"mappings":";;;;;;AAiBA,MAAM,mBAAmB,CAAC,QAAa;AACrC,QAAM,YAAY,SAAS,IAAI,SAAS,UAAU;AAGzC,WAAA,MACN,OAAO,CAAC,SAAS,QAAQ,OAAO,OAAO,GAAG,EAC1C,QAAQ,CAAC,SAAS;AACX,UAAA,OAAO,SAAS,IAAI;AAEpB,UAAA,iBAAiB,UAAU,IAAI;AACjC,QAAA,SAAS,cAAc,IAAI,SAAS,aAAa,UAAU,MAAM,UAAU,IAAI;AACjF,YAAM,YAAY,YAAY,MAAM,SAAS,EAAE,SAAS;AACxD,YAAM,EAAE,QAAQ,SAAS,gBAAgB,SAAS;AAClD,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AACA,cAAU,OAAO,cAAc;AAAA,EAAA,CAChC;AAGH,MAAI,SAAS,OAAO,SAAS,KAAK,MAAM,SAAS,KAAK;AACpD,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EACd;AAEA,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AAC5C,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EACd;AAEA,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AACxC,QAAA,MAAM,IAAI,GAAG;AACf,WAAK,SAAS;AAAA,IAAA,OACT;AACL,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IAAA;AAAA,EAEhB;AAEA,YAAU,OAAO,MAAM,EAAE,OAAO,SAAS,EAAE,OAAO,SAAS;AAEpD,SAAA;AACT;AAEA,MAAM,eAAe,CAAC,EAAE,OAAO,WAA+C;AAC5E,QAAM,MAAM,IAAI,IAAI,EAAE,OAAO;AAC7B,MAAI,OAAO;AAEX,mBAAiB,GAAG;AAEb,SAAA;AACT;"}
@@ -1,11 +1,11 @@
1
- import type { Strapi, Common } from '@strapi/types';
2
- declare const resolveRouteMiddlewares: (route: Common.Route, strapi: Strapi) => Common.MiddlewareHandler[];
1
+ import type { Core } from '@strapi/types';
2
+ declare const resolveRouteMiddlewares: (route: Core.Route, strapi: Core.Strapi) => Core.MiddlewareHandler[];
3
3
  /**
4
4
  * Initialize every configured middlewares
5
5
  */
6
- declare const resolveMiddlewares: (config: Array<Common.MiddlewareName | Common.MiddlewareConfig | Common.MiddlewareHandler>, strapi: Strapi) => {
6
+ declare const resolveMiddlewares: (config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>, strapi: Core.Strapi) => {
7
7
  name: string | null;
8
- handler: Common.MiddlewareHandler;
8
+ handler: Core.MiddlewareHandler;
9
9
  }[];
10
10
  export { resolveRouteMiddlewares, resolveMiddlewares };
11
11
  //# sourceMappingURL=middleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/services/server/middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAiBpD,QAAA,MAAM,uBAAuB,UAAW,OAAO,KAAK,UAAU,MAAM,+BAUnE,CAAC;AAIF;;GAEG;AACH,QAAA,MAAM,kBAAkB,WACd,MAAM,OAAO,cAAc,GAAG,OAAO,gBAAgB,GAAG,OAAO,iBAAiB,CAAC,UACjF,MAAM;UAGN,MAAM,GAAG,IAAI;aACV,OAAO,iBAAiB;GA+DpC,CAAC;AAyBF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../../../src/services/server/middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAiB1C,QAAA,MAAM,uBAAuB,UAAW,KAAK,KAAK,UAAU,KAAK,MAAM,6BAUtE,CAAC;AAIF;;GAEG;AACH,QAAA,MAAM,kBAAkB,WACd,MAAM,KAAK,cAAc,GAAG,KAAK,gBAAgB,GAAG,KAAK,iBAAiB,CAAC,UAC3E,KAAK,MAAM;UAGX,MAAM,GAAG,IAAI;aACV,KAAK,iBAAiB;GA+DlC,CAAC;AAyBF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const path = require("path");
4
- const _ = require("lodash/fp");
4
+ const fp = require("lodash/fp");
5
5
  const strapiUtils = require("@strapi/utils");
6
6
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
7
  const path__default = /* @__PURE__ */ _interopDefault(path);
@@ -16,13 +16,13 @@ const instantiateMiddleware = (middlewareFactory, name, config, strapi) => {
16
16
  };
17
17
  const resolveRouteMiddlewares = (route, strapi) => {
18
18
  const middlewaresConfig = route?.config?.middlewares ?? [];
19
- if (!_.isArray(middlewaresConfig)) {
19
+ if (!fp.isArray(middlewaresConfig)) {
20
20
  throw new Error("Route middlewares config must be an array");
21
21
  }
22
22
  const middlewares = resolveMiddlewares(middlewaresConfig, strapi);
23
23
  return middlewares.map(({ handler }) => handler);
24
24
  };
25
- const dummyMiddleware = (_2, next) => next();
25
+ const dummyMiddleware = (_, next) => next();
26
26
  const resolveMiddlewares = (config, strapi) => {
27
27
  const middlewares = [];
28
28
  for (const item of config) {
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.js","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Strapi, Common } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Common.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Common.Route, strapi: Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Common.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Common.MiddlewareName | Common.MiddlewareConfig | Common.MiddlewareHandler>,\n strapi: Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Common.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["isArray","_","config","path","importDefault"],"mappings":";;;;;;;AAKA,MAAM,wBAAwB,CAC5B,mBACA,MACA,QACA,WACG;AACC,MAAA;AACF,WAAO,kBAAkB,QAAQ,EAAE,OAAQ,CAAA;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IACtD;AAAA,EACF;AACF;AAEM,MAAA,0BAA0B,CAAC,OAAqB,WAAmB;AACvE,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAA;AAEpD,MAAA,CAACA,EAAAA,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEM,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,cAAc,OAAO;AACjD;AAEA,MAAM,kBAA4C,CAACC,IAAG,SAAS,KAAK;AAK9D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAA;AAEN,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IACF;AAEI,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MACjD;AAEA,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAC,UAAS,CAAA,EAAO,IAAA;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MACF;AAEA,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MACF;AAEM,YAAA,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAEA,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEO,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,WAAmB;AAC/D,MAAA;AAEA,MAAA;AACW,iBAAA,QAAQ,QAAQ,OAAO;AAAA,WAC7B,OAAO;AACd,QAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,oBAAoB;AAClF,mBAAaC,cAAAA,QAAK,QAAQ,OAAO,KAAK,KAAK,MAAM,OAAO;AAAA,IAAA,OACnD;AACC,YAAA;AAAA,IACR;AAAA,EACF;AAEI,MAAA;AACF,WAAOC,YAAAA,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAC9D;AACF;;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["isArray","config","path","importDefault"],"mappings":";;;;;;;AAKA,MAAM,wBAAwB,CAC5B,mBACA,MACA,QACA,WACG;AACC,MAAA;AACF,WAAO,kBAAkB,QAAQ,EAAE,QAAQ;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IAAA;AAAA,EACtD;AAEJ;AAEM,MAAA,0BAA0B,CAAC,OAAmB,WAAwB;AAC1E,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAC;AAErD,MAAA,CAACA,GAAAA,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAAA;AAGvD,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,QAAA,MAAc,OAAO;AACjD;AAEA,MAAM,kBAA0C,CAAC,GAAG,SAAS,KAAK;AAK5D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAC;AAEP,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IAAA;AAGE,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MAAA;AAGjD,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IAAA;AAGF,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAC,UAAS,OAAO;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MAAA;AAGF,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MAAA;AAGI,YAAA,IAAI,MAAM,uEAAuE;AAAA,IAAA;AAGzF,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAGK,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,WAAwB;AACpE,MAAA;AAEA,MAAA;AACW,iBAAA,QAAQ,QAAQ,OAAO;AAAA,WAC7B,OAAO;AACd,QAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,oBAAoB;AAClF,mBAAaC,sBAAK,QAAQ,OAAO,KAAK,KAAK,MAAM,OAAO;AAAA,IAAA,OACnD;AACC,YAAA;AAAA,IAAA;AAAA,EACR;AAGE,MAAA;AACF,WAAOC,YAAAA,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAAA;AAEhE;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.mjs","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Strapi, Common } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Common.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Common.Route, strapi: Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Common.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Common.MiddlewareName | Common.MiddlewareConfig | Common.MiddlewareHandler>,\n strapi: Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Common.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["config"],"mappings":";;;AAKA,MAAM,wBAAwB,CAC5B,mBACA,MACA,QACA,WACG;AACC,MAAA;AACF,WAAO,kBAAkB,QAAQ,EAAE,OAAQ,CAAA;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IACtD;AAAA,EACF;AACF;AAEM,MAAA,0BAA0B,CAAC,OAAqB,WAAmB;AACvE,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAA;AAEpD,MAAA,CAAC,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEM,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,cAAc,OAAO;AACjD;AAEA,MAAM,kBAA4C,CAAC,GAAG,SAAS,KAAK;AAK9D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAA;AAEN,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IACF;AAEI,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MACjD;AAEA,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAA,UAAS,CAAA,EAAO,IAAA;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MACF;AAEA,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MACF;AAEM,YAAA,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAEA,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEO,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,WAAmB;AAC/D,MAAA;AAEA,MAAA;AACW,iBAAA,QAAQ,QAAQ,OAAO;AAAA,WAC7B,OAAO;AACd,QAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,oBAAoB;AAClF,mBAAa,KAAK,QAAQ,OAAO,KAAK,KAAK,MAAM,OAAO;AAAA,IAAA,OACnD;AACC,YAAA;AAAA,IACR;AAAA,EACF;AAEI,MAAA;AACF,WAAO,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAC9D;AACF;"}
1
+ {"version":3,"file":"middleware.mjs","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["config"],"mappings":";;;AAKA,MAAM,wBAAwB,CAC5B,mBACA,MACA,QACA,WACG;AACC,MAAA;AACF,WAAO,kBAAkB,QAAQ,EAAE,QAAQ;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IAAA;AAAA,EACtD;AAEJ;AAEM,MAAA,0BAA0B,CAAC,OAAmB,WAAwB;AAC1E,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAC;AAErD,MAAA,CAAC,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAAA;AAGvD,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,QAAA,MAAc,OAAO;AACjD;AAEA,MAAM,kBAA0C,CAAC,GAAG,SAAS,KAAK;AAK5D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAC;AAEP,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IAAA;AAGE,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MAAA;AAGjD,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IAAA;AAGF,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAA,UAAS,OAAO;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MAAA;AAGF,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MAAA;AAGI,YAAA,IAAI,MAAM,uEAAuE;AAAA,IAAA;AAGzF,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAGK,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,WAAwB;AACpE,MAAA;AAEA,MAAA;AACW,iBAAA,QAAQ,QAAQ,OAAO;AAAA,WAC7B,OAAO;AACd,QAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,oBAAoB;AAClF,mBAAa,KAAK,QAAQ,OAAO,KAAK,KAAK,MAAM,OAAO;AAAA,IAAA,OACnD;AACC,YAAA;AAAA,IAAA;AAAA,EACR;AAGE,MAAA;AACF,WAAO,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAAA;AAEhE;"}
@@ -1,4 +1,4 @@
1
- import { Common } from '@strapi/types';
2
- declare const resolvePolicies: (route: Common.Route) => Common.MiddlewareHandler[];
3
- export { resolvePolicies };
1
+ import type { Core } from '@strapi/types';
2
+ declare const createPolicicesMiddleware: (route: Core.Route, strapi: Core.Strapi) => Core.MiddlewareHandler;
3
+ export { createPolicicesMiddleware };
4
4
  //# sourceMappingURL=policy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/services/server/policy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,QAAA,MAAM,eAAe,UAAW,OAAO,KAAK,+BAmB3C,CAAC;AAEF,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../src/services/server/policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE1C,QAAA,MAAM,yBAAyB,UAAW,KAAK,KAAK,UAAU,KAAK,MAAM,2BAmBxE,CAAC;AAEF,OAAO,EAAE,yBAAyB,EAAE,CAAC"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const strapiUtils = require("@strapi/utils");
4
- const resolvePolicies = (route) => {
4
+ const createPolicicesMiddleware = (route, strapi) => {
5
5
  const policiesConfig = route?.config?.policies ?? [];
6
- const resolvedPolicies = strapiUtils.policy.resolve(policiesConfig, route.info);
6
+ const resolvedPolicies = strapi.get("policies").resolve(policiesConfig, route.info);
7
7
  const policiesMiddleware = async (ctx, next) => {
8
8
  const context = strapiUtils.policy.createPolicyContext("koa", ctx);
9
9
  for (const { handler, config } of resolvedPolicies) {
@@ -14,7 +14,7 @@ const resolvePolicies = (route) => {
14
14
  }
15
15
  await next();
16
16
  };
17
- return [policiesMiddleware];
17
+ return policiesMiddleware;
18
18
  };
19
- exports.resolvePolicies = resolvePolicies;
19
+ exports.createPolicicesMiddleware = createPolicicesMiddleware;
20
20
  //# sourceMappingURL=policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport { Common } from '@strapi/types';\n\nconst resolvePolicies = (route: Common.Route) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = policyUtils.resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Common.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return [policiesMiddleware];\n};\n\nexport { resolvePolicies };\n"],"names":["policyUtils","errors"],"mappings":";;;AAGM,MAAA,kBAAkB,CAAC,UAAwB;AAC/C,QAAM,iBAAiB,OAAO,QAAQ,YAAY,CAAA;AAClD,QAAM,mBAAmBA,YAAAA,OAAY,QAAQ,gBAAgB,MAAM,IAAI;AAEjE,QAAA,qBAA+C,OAAO,KAAK,SAAS;AACxE,UAAM,UAAUA,YAAA,OAAY,oBAAoB,OAAO,GAAG;AAE1D,eAAW,EAAE,SAAS,OAAO,KAAK,kBAAkB;AAClD,YAAM,SAAS,MAAM,QAAQ,SAAS,QAAQ,EAAE,QAAQ;AAExD,UAAI,CAAC,CAAC,MAAM,MAAS,EAAE,SAAS,MAAM,GAAG;AACjC,cAAA,IAAIC,YAAAA,OAAO;MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGb,SAAO,CAAC,kBAAkB;AAC5B;;"}
1
+ {"version":3,"file":"policy.js","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst createPolicicesMiddleware = (route: Core.Route, strapi: Core.Strapi) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return policiesMiddleware;\n};\n\nexport { createPolicicesMiddleware };\n"],"names":["policyUtils","errors"],"mappings":";;;AAGM,MAAA,4BAA4B,CAAC,OAAmB,WAAwB;AAC5E,QAAM,iBAAiB,OAAO,QAAQ,YAAY,CAAC;AAC7C,QAAA,mBAAmB,OAAO,IAAI,UAAU,EAAE,QAAQ,gBAAgB,MAAM,IAAI;AAE5E,QAAA,qBAA6C,OAAO,KAAK,SAAS;AACtE,UAAM,UAAUA,YAAA,OAAY,oBAAoB,OAAO,GAAG;AAE1D,eAAW,EAAE,SAAS,OAAO,KAAK,kBAAkB;AAClD,YAAM,SAAS,MAAM,QAAQ,SAAS,QAAQ,EAAE,QAAQ;AAExD,UAAI,CAAC,CAAC,MAAM,MAAS,EAAE,SAAS,MAAM,GAAG;AACjC,cAAA,IAAIC,mBAAO,YAAY;AAAA,MAAA;AAAA,IAC/B;AAGF,UAAM,KAAK;AAAA,EACb;AAEO,SAAA;AACT;;"}
@@ -1,7 +1,7 @@
1
1
  import { policy, errors } from "@strapi/utils";
2
- const resolvePolicies = (route) => {
2
+ const createPolicicesMiddleware = (route, strapi) => {
3
3
  const policiesConfig = route?.config?.policies ?? [];
4
- const resolvedPolicies = policy.resolve(policiesConfig, route.info);
4
+ const resolvedPolicies = strapi.get("policies").resolve(policiesConfig, route.info);
5
5
  const policiesMiddleware = async (ctx, next) => {
6
6
  const context = policy.createPolicyContext("koa", ctx);
7
7
  for (const { handler, config } of resolvedPolicies) {
@@ -12,9 +12,9 @@ const resolvePolicies = (route) => {
12
12
  }
13
13
  await next();
14
14
  };
15
- return [policiesMiddleware];
15
+ return policiesMiddleware;
16
16
  };
17
17
  export {
18
- resolvePolicies
18
+ createPolicicesMiddleware
19
19
  };
20
20
  //# sourceMappingURL=policy.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.mjs","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport { Common } from '@strapi/types';\n\nconst resolvePolicies = (route: Common.Route) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = policyUtils.resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Common.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return [policiesMiddleware];\n};\n\nexport { resolvePolicies };\n"],"names":["policyUtils"],"mappings":";AAGM,MAAA,kBAAkB,CAAC,UAAwB;AAC/C,QAAM,iBAAiB,OAAO,QAAQ,YAAY,CAAA;AAClD,QAAM,mBAAmBA,OAAY,QAAQ,gBAAgB,MAAM,IAAI;AAEjE,QAAA,qBAA+C,OAAO,KAAK,SAAS;AACxE,UAAM,UAAUA,OAAY,oBAAoB,OAAO,GAAG;AAE1D,eAAW,EAAE,SAAS,OAAO,KAAK,kBAAkB;AAClD,YAAM,SAAS,MAAM,QAAQ,SAAS,QAAQ,EAAE,QAAQ;AAExD,UAAI,CAAC,CAAC,MAAM,MAAS,EAAE,SAAS,MAAM,GAAG;AACjC,cAAA,IAAI,OAAO;MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGb,SAAO,CAAC,kBAAkB;AAC5B;"}
1
+ {"version":3,"file":"policy.mjs","sources":["../../../src/services/server/policy.ts"],"sourcesContent":["import { policy as policyUtils, errors } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst createPolicicesMiddleware = (route: Core.Route, strapi: Core.Strapi) => {\n const policiesConfig = route?.config?.policies ?? [];\n const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);\n\n const policiesMiddleware: Core.MiddlewareHandler = async (ctx, next) => {\n const context = policyUtils.createPolicyContext('koa', ctx);\n\n for (const { handler, config } of resolvedPolicies) {\n const result = await handler(context, config, { strapi });\n\n if (![true, undefined].includes(result)) {\n throw new errors.PolicyError();\n }\n }\n\n await next();\n };\n\n return policiesMiddleware;\n};\n\nexport { createPolicicesMiddleware };\n"],"names":["policyUtils"],"mappings":";AAGM,MAAA,4BAA4B,CAAC,OAAmB,WAAwB;AAC5E,QAAM,iBAAiB,OAAO,QAAQ,YAAY,CAAC;AAC7C,QAAA,mBAAmB,OAAO,IAAI,UAAU,EAAE,QAAQ,gBAAgB,MAAM,IAAI;AAE5E,QAAA,qBAA6C,OAAO,KAAK,SAAS;AACtE,UAAM,UAAUA,OAAY,oBAAoB,OAAO,GAAG;AAE1D,eAAW,EAAE,SAAS,OAAO,KAAK,kBAAkB;AAClD,YAAM,SAAS,MAAM,QAAQ,SAAS,QAAQ,EAAE,QAAQ;AAExD,UAAI,CAAC,CAAC,MAAM,MAAS,EAAE,SAAS,MAAM,GAAG;AACjC,cAAA,IAAI,OAAO,YAAY;AAAA,MAAA;AAAA,IAC/B;AAGF,UAAM,KAAK;AAAA,EACb;AAEO,SAAA;AACT;"}