@strapi/core 0.0.0-experimental.c222e1c4de12dd05c26938a605a1128fb3481d1d → 0.0.0-experimental.c23f51fc41b3ef5de081f427d07e87af93cdcb2c

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 (699) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +427 -403
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +426 -402
  5. package/dist/Strapi.mjs.map +1 -1
  6. package/dist/compile.js +23 -14
  7. package/dist/compile.js.map +1 -1
  8. package/dist/compile.mjs +22 -14
  9. package/dist/compile.mjs.map +1 -1
  10. package/dist/configuration/config-loader.js +110 -97
  11. package/dist/configuration/config-loader.js.map +1 -1
  12. package/dist/configuration/config-loader.mjs +109 -96
  13. package/dist/configuration/config-loader.mjs.map +1 -1
  14. package/dist/configuration/get-dirs.js +31 -29
  15. package/dist/configuration/get-dirs.js.map +1 -1
  16. package/dist/configuration/get-dirs.mjs +30 -30
  17. package/dist/configuration/get-dirs.mjs.map +1 -1
  18. package/dist/configuration/index.d.ts.map +1 -1
  19. package/dist/configuration/index.js +84 -73
  20. package/dist/configuration/index.js.map +1 -1
  21. package/dist/configuration/index.mjs +83 -69
  22. package/dist/configuration/index.mjs.map +1 -1
  23. package/dist/configuration/urls.js +65 -61
  24. package/dist/configuration/urls.js.map +1 -1
  25. package/dist/configuration/urls.mjs +64 -62
  26. package/dist/configuration/urls.mjs.map +1 -1
  27. package/dist/container.js +27 -23
  28. package/dist/container.js.map +1 -1
  29. package/dist/container.mjs +26 -24
  30. package/dist/container.mjs.map +1 -1
  31. package/dist/core-api/controller/collection-type.js +77 -76
  32. package/dist/core-api/controller/collection-type.js.map +1 -1
  33. package/dist/core-api/controller/collection-type.mjs +76 -77
  34. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  35. package/dist/core-api/controller/index.js +63 -48
  36. package/dist/core-api/controller/index.js.map +1 -1
  37. package/dist/core-api/controller/index.mjs +62 -49
  38. package/dist/core-api/controller/index.mjs.map +1 -1
  39. package/dist/core-api/controller/single-type.js +41 -40
  40. package/dist/core-api/controller/single-type.js.map +1 -1
  41. package/dist/core-api/controller/single-type.mjs +40 -41
  42. package/dist/core-api/controller/single-type.mjs.map +1 -1
  43. package/dist/core-api/controller/transform.js +72 -63
  44. package/dist/core-api/controller/transform.js.map +1 -1
  45. package/dist/core-api/controller/transform.mjs +71 -64
  46. package/dist/core-api/controller/transform.mjs.map +1 -1
  47. package/dist/core-api/routes/index.js +64 -62
  48. package/dist/core-api/routes/index.js.map +1 -1
  49. package/dist/core-api/routes/index.mjs +62 -62
  50. package/dist/core-api/routes/index.mjs.map +1 -1
  51. package/dist/core-api/service/collection-type.js +73 -60
  52. package/dist/core-api/service/collection-type.js.map +1 -1
  53. package/dist/core-api/service/collection-type.mjs +72 -62
  54. package/dist/core-api/service/collection-type.mjs.map +1 -1
  55. package/dist/core-api/service/core-service.js +9 -8
  56. package/dist/core-api/service/core-service.js.map +1 -1
  57. package/dist/core-api/service/core-service.mjs +8 -9
  58. package/dist/core-api/service/core-service.mjs.map +1 -1
  59. package/dist/core-api/service/index.js +13 -13
  60. package/dist/core-api/service/index.js.map +1 -1
  61. package/dist/core-api/service/index.mjs +12 -14
  62. package/dist/core-api/service/index.mjs.map +1 -1
  63. package/dist/core-api/service/pagination.js +69 -43
  64. package/dist/core-api/service/pagination.js.map +1 -1
  65. package/dist/core-api/service/pagination.mjs +68 -47
  66. package/dist/core-api/service/pagination.mjs.map +1 -1
  67. package/dist/core-api/service/single-type.js +43 -39
  68. package/dist/core-api/service/single-type.js.map +1 -1
  69. package/dist/core-api/service/single-type.mjs +42 -41
  70. package/dist/core-api/service/single-type.mjs.map +1 -1
  71. package/dist/domain/content-type/index.js +95 -100
  72. package/dist/domain/content-type/index.js.map +1 -1
  73. package/dist/domain/content-type/index.mjs +94 -100
  74. package/dist/domain/content-type/index.mjs.map +1 -1
  75. package/dist/domain/content-type/validator.js +84 -69
  76. package/dist/domain/content-type/validator.js.map +1 -1
  77. package/dist/domain/content-type/validator.mjs +83 -68
  78. package/dist/domain/content-type/validator.mjs.map +1 -1
  79. package/dist/domain/module/index.js +109 -100
  80. package/dist/domain/module/index.js.map +1 -1
  81. package/dist/domain/module/index.mjs +108 -99
  82. package/dist/domain/module/index.mjs.map +1 -1
  83. package/dist/domain/module/validation.js +25 -20
  84. package/dist/domain/module/validation.js.map +1 -1
  85. package/dist/domain/module/validation.mjs +24 -21
  86. package/dist/domain/module/validation.mjs.map +1 -1
  87. package/dist/ee/index.js +168 -137
  88. package/dist/ee/index.js.map +1 -1
  89. package/dist/ee/index.mjs +167 -139
  90. package/dist/ee/index.mjs.map +1 -1
  91. package/dist/ee/license.js +96 -75
  92. package/dist/ee/license.js.map +1 -1
  93. package/dist/ee/license.mjs +95 -76
  94. package/dist/ee/license.mjs.map +1 -1
  95. package/dist/factories.js +72 -67
  96. package/dist/factories.js.map +1 -1
  97. package/dist/factories.mjs +71 -71
  98. package/dist/factories.mjs.map +1 -1
  99. package/dist/index.js +29 -26
  100. package/dist/index.js.map +1 -1
  101. package/dist/index.mjs +29 -29
  102. package/dist/index.mjs.map +1 -1
  103. package/dist/loaders/admin.d.ts.map +1 -1
  104. package/dist/loaders/admin.js +21 -20
  105. package/dist/loaders/admin.js.map +1 -1
  106. package/dist/loaders/admin.mjs +20 -20
  107. package/dist/loaders/admin.mjs.map +1 -1
  108. package/dist/loaders/apis.js +143 -120
  109. package/dist/loaders/apis.js.map +1 -1
  110. package/dist/loaders/apis.mjs +142 -119
  111. package/dist/loaders/apis.mjs.map +1 -1
  112. package/dist/loaders/components.js +33 -34
  113. package/dist/loaders/components.js.map +1 -1
  114. package/dist/loaders/components.mjs +32 -34
  115. package/dist/loaders/components.mjs.map +1 -1
  116. package/dist/loaders/index.js +22 -20
  117. package/dist/loaders/index.js.map +1 -1
  118. package/dist/loaders/index.mjs +21 -21
  119. package/dist/loaders/index.mjs.map +1 -1
  120. package/dist/loaders/middlewares.js +29 -25
  121. package/dist/loaders/middlewares.js.map +1 -1
  122. package/dist/loaders/middlewares.mjs +28 -25
  123. package/dist/loaders/middlewares.mjs.map +1 -1
  124. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  125. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  126. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  127. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  128. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  129. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  130. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  131. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  132. package/dist/loaders/plugins/index.js +132 -122
  133. package/dist/loaders/plugins/index.js.map +1 -1
  134. package/dist/loaders/plugins/index.mjs +121 -112
  135. package/dist/loaders/plugins/index.mjs.map +1 -1
  136. package/dist/loaders/policies.js +24 -20
  137. package/dist/loaders/policies.js.map +1 -1
  138. package/dist/loaders/policies.mjs +23 -20
  139. package/dist/loaders/policies.mjs.map +1 -1
  140. package/dist/loaders/sanitizers.js +10 -4
  141. package/dist/loaders/sanitizers.js.map +1 -1
  142. package/dist/loaders/sanitizers.mjs +9 -6
  143. package/dist/loaders/sanitizers.mjs.map +1 -1
  144. package/dist/loaders/src-index.js +35 -27
  145. package/dist/loaders/src-index.js.map +1 -1
  146. package/dist/loaders/src-index.mjs +34 -29
  147. package/dist/loaders/src-index.mjs.map +1 -1
  148. package/dist/loaders/validators.js +9 -4
  149. package/dist/loaders/validators.js.map +1 -1
  150. package/dist/loaders/validators.mjs +8 -6
  151. package/dist/loaders/validators.mjs.map +1 -1
  152. package/dist/middlewares/body.d.ts.map +1 -1
  153. package/dist/middlewares/body.js +58 -54
  154. package/dist/middlewares/body.js.map +1 -1
  155. package/dist/middlewares/body.mjs +57 -51
  156. package/dist/middlewares/body.mjs.map +1 -1
  157. package/dist/middlewares/compression.js +6 -6
  158. package/dist/middlewares/compression.js.map +1 -1
  159. package/dist/middlewares/compression.mjs +5 -5
  160. package/dist/middlewares/compression.mjs.map +1 -1
  161. package/dist/middlewares/cors.js +59 -48
  162. package/dist/middlewares/cors.js.map +1 -1
  163. package/dist/middlewares/cors.mjs +58 -47
  164. package/dist/middlewares/cors.mjs.map +1 -1
  165. package/dist/middlewares/errors.js +32 -30
  166. package/dist/middlewares/errors.js.map +1 -1
  167. package/dist/middlewares/errors.mjs +31 -31
  168. package/dist/middlewares/errors.mjs.map +1 -1
  169. package/dist/middlewares/favicon.js +27 -17
  170. package/dist/middlewares/favicon.js.map +1 -1
  171. package/dist/middlewares/favicon.mjs +26 -16
  172. package/dist/middlewares/favicon.mjs.map +1 -1
  173. package/dist/middlewares/index.js +32 -30
  174. package/dist/middlewares/index.js.map +1 -1
  175. package/dist/middlewares/index.mjs +31 -31
  176. package/dist/middlewares/index.mjs.map +1 -1
  177. package/dist/middlewares/ip.js +6 -6
  178. package/dist/middlewares/ip.js.map +1 -1
  179. package/dist/middlewares/ip.mjs +5 -5
  180. package/dist/middlewares/ip.mjs.map +1 -1
  181. package/dist/middlewares/logger.js +10 -9
  182. package/dist/middlewares/logger.js.map +1 -1
  183. package/dist/middlewares/logger.mjs +9 -10
  184. package/dist/middlewares/logger.mjs.map +1 -1
  185. package/dist/middlewares/powered-by.js +13 -9
  186. package/dist/middlewares/powered-by.js.map +1 -1
  187. package/dist/middlewares/powered-by.mjs +12 -10
  188. package/dist/middlewares/powered-by.mjs.map +1 -1
  189. package/dist/middlewares/public.js +33 -29
  190. package/dist/middlewares/public.js.map +1 -1
  191. package/dist/middlewares/public.mjs +32 -28
  192. package/dist/middlewares/public.mjs.map +1 -1
  193. package/dist/middlewares/query.js +35 -32
  194. package/dist/middlewares/query.js.map +1 -1
  195. package/dist/middlewares/query.mjs +34 -31
  196. package/dist/middlewares/query.mjs.map +1 -1
  197. package/dist/middlewares/response-time.js +10 -9
  198. package/dist/middlewares/response-time.js.map +1 -1
  199. package/dist/middlewares/response-time.mjs +9 -10
  200. package/dist/middlewares/response-time.mjs.map +1 -1
  201. package/dist/middlewares/responses.js +14 -12
  202. package/dist/middlewares/responses.js.map +1 -1
  203. package/dist/middlewares/responses.mjs +13 -13
  204. package/dist/middlewares/responses.mjs.map +1 -1
  205. package/dist/middlewares/security.js +109 -71
  206. package/dist/middlewares/security.js.map +1 -1
  207. package/dist/middlewares/security.mjs +108 -70
  208. package/dist/middlewares/security.mjs.map +1 -1
  209. package/dist/middlewares/session.js +26 -25
  210. package/dist/middlewares/session.js.map +1 -1
  211. package/dist/middlewares/session.mjs +25 -24
  212. package/dist/middlewares/session.mjs.map +1 -1
  213. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  214. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  215. package/dist/migrations/database/5.0.0-discard-drafts.js +152 -90
  216. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  217. package/dist/migrations/database/5.0.0-discard-drafts.mjs +151 -92
  218. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  219. package/dist/migrations/draft-publish.d.ts +1 -1
  220. package/dist/migrations/draft-publish.d.ts.map +1 -1
  221. package/dist/migrations/draft-publish.js +61 -34
  222. package/dist/migrations/draft-publish.js.map +1 -1
  223. package/dist/migrations/draft-publish.mjs +60 -36
  224. package/dist/migrations/draft-publish.mjs.map +1 -1
  225. package/dist/migrations/i18n.js +62 -45
  226. package/dist/migrations/i18n.js.map +1 -1
  227. package/dist/migrations/i18n.mjs +61 -47
  228. package/dist/migrations/i18n.mjs.map +1 -1
  229. package/dist/migrations/index.js +24 -10
  230. package/dist/migrations/index.js.map +1 -1
  231. package/dist/migrations/index.mjs +23 -12
  232. package/dist/migrations/index.mjs.map +1 -1
  233. package/dist/package.json.js +182 -0
  234. package/dist/package.json.js.map +1 -0
  235. package/dist/package.json.mjs +159 -0
  236. package/dist/package.json.mjs.map +1 -0
  237. package/dist/providers/admin.js +27 -17
  238. package/dist/providers/admin.js.map +1 -1
  239. package/dist/providers/admin.mjs +26 -19
  240. package/dist/providers/admin.mjs.map +1 -1
  241. package/dist/providers/coreStore.js +13 -8
  242. package/dist/providers/coreStore.js.map +1 -1
  243. package/dist/providers/coreStore.mjs +12 -10
  244. package/dist/providers/coreStore.mjs.map +1 -1
  245. package/dist/providers/cron.js +19 -16
  246. package/dist/providers/cron.js.map +1 -1
  247. package/dist/providers/cron.mjs +18 -18
  248. package/dist/providers/cron.mjs.map +1 -1
  249. package/dist/providers/index.js +18 -9
  250. package/dist/providers/index.js.map +1 -1
  251. package/dist/providers/index.mjs +17 -10
  252. package/dist/providers/index.mjs.map +1 -1
  253. package/dist/providers/provider.js +4 -3
  254. package/dist/providers/provider.js.map +1 -1
  255. package/dist/providers/provider.mjs +3 -4
  256. package/dist/providers/provider.mjs.map +1 -1
  257. package/dist/providers/registries.js +37 -32
  258. package/dist/providers/registries.js.map +1 -1
  259. package/dist/providers/registries.mjs +36 -34
  260. package/dist/providers/registries.mjs.map +1 -1
  261. package/dist/providers/telemetry.js +19 -16
  262. package/dist/providers/telemetry.js.map +1 -1
  263. package/dist/providers/telemetry.mjs +18 -18
  264. package/dist/providers/telemetry.mjs.map +1 -1
  265. package/dist/providers/webhooks.js +28 -26
  266. package/dist/providers/webhooks.js.map +1 -1
  267. package/dist/providers/webhooks.mjs +27 -28
  268. package/dist/providers/webhooks.mjs.map +1 -1
  269. package/dist/registries/apis.js +23 -20
  270. package/dist/registries/apis.js.map +1 -1
  271. package/dist/registries/apis.mjs +22 -22
  272. package/dist/registries/apis.mjs.map +1 -1
  273. package/dist/registries/components.js +35 -37
  274. package/dist/registries/components.js.map +1 -1
  275. package/dist/registries/components.mjs +34 -39
  276. package/dist/registries/components.mjs.map +1 -1
  277. package/dist/registries/content-types.js +54 -59
  278. package/dist/registries/content-types.js.map +1 -1
  279. package/dist/registries/content-types.mjs +53 -61
  280. package/dist/registries/content-types.mjs.map +1 -1
  281. package/dist/registries/controllers.js +70 -71
  282. package/dist/registries/controllers.js.map +1 -1
  283. package/dist/registries/controllers.mjs +69 -73
  284. package/dist/registries/controllers.mjs.map +1 -1
  285. package/dist/registries/custom-fields.js +75 -65
  286. package/dist/registries/custom-fields.js.map +1 -1
  287. package/dist/registries/custom-fields.mjs +74 -67
  288. package/dist/registries/custom-fields.mjs.map +1 -1
  289. package/dist/registries/hooks.js +46 -49
  290. package/dist/registries/hooks.js.map +1 -1
  291. package/dist/registries/hooks.mjs +45 -51
  292. package/dist/registries/hooks.mjs.map +1 -1
  293. package/dist/registries/middlewares.js +49 -51
  294. package/dist/registries/middlewares.js.map +1 -1
  295. package/dist/registries/middlewares.mjs +48 -53
  296. package/dist/registries/middlewares.mjs.map +1 -1
  297. package/dist/registries/models.js +14 -13
  298. package/dist/registries/models.js.map +1 -1
  299. package/dist/registries/models.mjs +13 -14
  300. package/dist/registries/models.mjs.map +1 -1
  301. package/dist/registries/modules.js +39 -36
  302. package/dist/registries/modules.js.map +1 -1
  303. package/dist/registries/modules.mjs +38 -38
  304. package/dist/registries/modules.mjs.map +1 -1
  305. package/dist/registries/namespace.js +21 -20
  306. package/dist/registries/namespace.js.map +1 -1
  307. package/dist/registries/namespace.mjs +20 -23
  308. package/dist/registries/namespace.mjs.map +1 -1
  309. package/dist/registries/plugins.js +23 -20
  310. package/dist/registries/plugins.js.map +1 -1
  311. package/dist/registries/plugins.mjs +22 -22
  312. package/dist/registries/plugins.mjs.map +1 -1
  313. package/dist/registries/policies.js +103 -96
  314. package/dist/registries/policies.js.map +1 -1
  315. package/dist/registries/policies.mjs +102 -98
  316. package/dist/registries/policies.mjs.map +1 -1
  317. package/dist/registries/sanitizers.js +23 -22
  318. package/dist/registries/sanitizers.js.map +1 -1
  319. package/dist/registries/sanitizers.mjs +22 -22
  320. package/dist/registries/sanitizers.mjs.map +1 -1
  321. package/dist/registries/services.js +71 -71
  322. package/dist/registries/services.js.map +1 -1
  323. package/dist/registries/services.mjs +70 -73
  324. package/dist/registries/services.mjs.map +1 -1
  325. package/dist/registries/validators.js +23 -22
  326. package/dist/registries/validators.js.map +1 -1
  327. package/dist/registries/validators.mjs +22 -22
  328. package/dist/registries/validators.mjs.map +1 -1
  329. package/dist/services/auth/index.js +74 -74
  330. package/dist/services/auth/index.js.map +1 -1
  331. package/dist/services/auth/index.mjs +73 -74
  332. package/dist/services/auth/index.mjs.map +1 -1
  333. package/dist/services/config.js +47 -43
  334. package/dist/services/config.js.map +1 -1
  335. package/dist/services/config.mjs +46 -44
  336. package/dist/services/config.mjs.map +1 -1
  337. package/dist/services/content-api/index.js +80 -79
  338. package/dist/services/content-api/index.js.map +1 -1
  339. package/dist/services/content-api/index.mjs +79 -79
  340. package/dist/services/content-api/index.mjs.map +1 -1
  341. package/dist/services/content-api/permissions/engine.js +8 -5
  342. package/dist/services/content-api/permissions/engine.js.map +1 -1
  343. package/dist/services/content-api/permissions/engine.mjs +7 -5
  344. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  345. package/dist/services/content-api/permissions/index.js +101 -81
  346. package/dist/services/content-api/permissions/index.js.map +1 -1
  347. package/dist/services/content-api/permissions/index.mjs +100 -81
  348. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  349. package/dist/services/content-api/permissions/providers/action.js +17 -14
  350. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  351. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  352. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  353. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  354. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  355. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  356. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  357. package/dist/services/core-store.js +115 -95
  358. package/dist/services/core-store.js.map +1 -1
  359. package/dist/services/core-store.mjs +114 -97
  360. package/dist/services/core-store.mjs.map +1 -1
  361. package/dist/services/cron.js +74 -65
  362. package/dist/services/cron.js.map +1 -1
  363. package/dist/services/cron.mjs +73 -67
  364. package/dist/services/cron.mjs.map +1 -1
  365. package/dist/services/custom-fields.js +9 -7
  366. package/dist/services/custom-fields.js.map +1 -1
  367. package/dist/services/custom-fields.mjs +8 -9
  368. package/dist/services/custom-fields.mjs.map +1 -1
  369. package/dist/services/document-service/attributes/index.js +23 -18
  370. package/dist/services/document-service/attributes/index.js.map +1 -1
  371. package/dist/services/document-service/attributes/index.mjs +22 -19
  372. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  373. package/dist/services/document-service/attributes/transforms.js +16 -15
  374. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  375. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  376. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  377. package/dist/services/document-service/common.js +5 -4
  378. package/dist/services/document-service/common.js.map +1 -1
  379. package/dist/services/document-service/common.mjs +4 -5
  380. package/dist/services/document-service/common.mjs.map +1 -1
  381. package/dist/services/document-service/components.d.ts.map +1 -1
  382. package/dist/services/document-service/components.js +255 -257
  383. package/dist/services/document-service/components.js.map +1 -1
  384. package/dist/services/document-service/components.mjs +254 -262
  385. package/dist/services/document-service/components.mjs.map +1 -1
  386. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  387. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  388. package/dist/services/document-service/draft-and-publish.js +88 -48
  389. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  390. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  391. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  392. package/dist/services/document-service/entries.js +109 -91
  393. package/dist/services/document-service/entries.js.map +1 -1
  394. package/dist/services/document-service/entries.mjs +108 -92
  395. package/dist/services/document-service/entries.mjs.map +1 -1
  396. package/dist/services/document-service/events.d.ts +1 -1
  397. package/dist/services/document-service/events.d.ts.map +1 -1
  398. package/dist/services/document-service/events.js +52 -40
  399. package/dist/services/document-service/events.js.map +1 -1
  400. package/dist/services/document-service/events.mjs +51 -41
  401. package/dist/services/document-service/events.mjs.map +1 -1
  402. package/dist/services/document-service/index.js +53 -33
  403. package/dist/services/document-service/index.js.map +1 -1
  404. package/dist/services/document-service/index.mjs +52 -34
  405. package/dist/services/document-service/index.mjs.map +1 -1
  406. package/dist/services/document-service/internationalization.js +62 -46
  407. package/dist/services/document-service/internationalization.js.map +1 -1
  408. package/dist/services/document-service/internationalization.mjs +61 -50
  409. package/dist/services/document-service/internationalization.mjs.map +1 -1
  410. package/dist/services/document-service/middlewares/errors.js +23 -19
  411. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  412. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  413. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  414. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  415. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  416. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  417. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  418. package/dist/services/document-service/params.js +11 -5
  419. package/dist/services/document-service/params.js.map +1 -1
  420. package/dist/services/document-service/params.mjs +10 -6
  421. package/dist/services/document-service/params.mjs.map +1 -1
  422. package/dist/services/document-service/repository.d.ts.map +1 -1
  423. package/dist/services/document-service/repository.js +354 -319
  424. package/dist/services/document-service/repository.js.map +1 -1
  425. package/dist/services/document-service/repository.mjs +353 -320
  426. package/dist/services/document-service/repository.mjs.map +1 -1
  427. package/dist/services/document-service/transform/data.js +22 -12
  428. package/dist/services/document-service/transform/data.js.map +1 -1
  429. package/dist/services/document-service/transform/data.mjs +21 -13
  430. package/dist/services/document-service/transform/data.mjs.map +1 -1
  431. package/dist/services/document-service/transform/fields.js +26 -17
  432. package/dist/services/document-service/transform/fields.js.map +1 -1
  433. package/dist/services/document-service/transform/fields.mjs +25 -18
  434. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  435. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  436. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  437. package/dist/services/document-service/transform/id-map.js +115 -77
  438. package/dist/services/document-service/transform/id-map.js.map +1 -1
  439. package/dist/services/document-service/transform/id-map.mjs +114 -78
  440. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  441. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  442. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  443. package/dist/services/document-service/transform/id-transform.js +37 -29
  444. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  445. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  446. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  447. package/dist/services/document-service/transform/populate.js +23 -18
  448. package/dist/services/document-service/transform/populate.js.map +1 -1
  449. package/dist/services/document-service/transform/populate.mjs +22 -19
  450. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  451. package/dist/services/document-service/transform/query.js +11 -6
  452. package/dist/services/document-service/transform/query.js.map +1 -1
  453. package/dist/services/document-service/transform/query.mjs +10 -7
  454. package/dist/services/document-service/transform/query.mjs.map +1 -1
  455. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  456. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  457. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  458. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  459. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  460. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  461. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  462. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  463. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  464. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  465. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  466. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  467. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  468. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  469. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  470. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  471. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  472. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  473. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  474. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  475. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  476. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  477. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  478. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  479. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  480. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  481. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  482. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  483. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  484. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  485. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  486. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  487. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  488. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  489. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  490. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  491. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  492. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  493. package/dist/services/document-service/utils/populate.d.ts +1 -1
  494. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  495. package/dist/services/document-service/utils/populate.js +66 -42
  496. package/dist/services/document-service/utils/populate.js.map +1 -1
  497. package/dist/services/document-service/utils/populate.mjs +65 -43
  498. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  499. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  500. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  501. package/dist/services/document-service/utils/unidirectional-relations.js +109 -62
  502. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  503. package/dist/services/document-service/utils/unidirectional-relations.mjs +108 -64
  504. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  505. package/dist/services/entity-service/index.js +230 -161
  506. package/dist/services/entity-service/index.js.map +1 -1
  507. package/dist/services/entity-service/index.mjs +229 -160
  508. package/dist/services/entity-service/index.mjs.map +1 -1
  509. package/dist/services/entity-validator/blocks-validator.js +135 -103
  510. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  511. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  512. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  513. package/dist/services/entity-validator/index.d.ts +1 -1
  514. package/dist/services/entity-validator/index.d.ts.map +1 -1
  515. package/dist/services/entity-validator/index.js +362 -367
  516. package/dist/services/entity-validator/index.js.map +1 -1
  517. package/dist/services/entity-validator/index.mjs +358 -364
  518. package/dist/services/entity-validator/index.mjs.map +1 -1
  519. package/dist/services/entity-validator/validators.js +268 -210
  520. package/dist/services/entity-validator/validators.js.map +1 -1
  521. package/dist/services/entity-validator/validators.mjs +267 -216
  522. package/dist/services/entity-validator/validators.mjs.map +1 -1
  523. package/dist/services/errors.js +65 -65
  524. package/dist/services/errors.js.map +1 -1
  525. package/dist/services/errors.mjs +64 -66
  526. package/dist/services/errors.mjs.map +1 -1
  527. package/dist/services/event-hub.js +82 -69
  528. package/dist/services/event-hub.js.map +1 -1
  529. package/dist/services/event-hub.mjs +81 -71
  530. package/dist/services/event-hub.mjs.map +1 -1
  531. package/dist/services/features.js +19 -14
  532. package/dist/services/features.js.map +1 -1
  533. package/dist/services/features.mjs +18 -15
  534. package/dist/services/features.mjs.map +1 -1
  535. package/dist/services/fs.js +41 -40
  536. package/dist/services/fs.js.map +1 -1
  537. package/dist/services/fs.mjs +40 -39
  538. package/dist/services/fs.mjs.map +1 -1
  539. package/dist/services/metrics/admin-user-hash.js +13 -11
  540. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  541. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  542. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  543. package/dist/services/metrics/index.js +46 -40
  544. package/dist/services/metrics/index.js.map +1 -1
  545. package/dist/services/metrics/index.mjs +45 -42
  546. package/dist/services/metrics/index.mjs.map +1 -1
  547. package/dist/services/metrics/is-truthy.js +13 -6
  548. package/dist/services/metrics/is-truthy.js.map +1 -1
  549. package/dist/services/metrics/is-truthy.mjs +12 -6
  550. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  551. package/dist/services/metrics/middleware.d.ts.map +1 -1
  552. package/dist/services/metrics/middleware.js +37 -22
  553. package/dist/services/metrics/middleware.js.map +1 -1
  554. package/dist/services/metrics/middleware.mjs +36 -24
  555. package/dist/services/metrics/middleware.mjs.map +1 -1
  556. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  557. package/dist/services/metrics/rate-limiter.js +24 -19
  558. package/dist/services/metrics/rate-limiter.js.map +1 -1
  559. package/dist/services/metrics/rate-limiter.mjs +23 -21
  560. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  561. package/dist/services/metrics/sender.js +78 -69
  562. package/dist/services/metrics/sender.js.map +1 -1
  563. package/dist/services/metrics/sender.mjs +77 -64
  564. package/dist/services/metrics/sender.mjs.map +1 -1
  565. package/dist/services/query-params.js +13 -10
  566. package/dist/services/query-params.js.map +1 -1
  567. package/dist/services/query-params.mjs +12 -12
  568. package/dist/services/query-params.mjs.map +1 -1
  569. package/dist/services/reloader.js +35 -32
  570. package/dist/services/reloader.js.map +1 -1
  571. package/dist/services/reloader.mjs +34 -33
  572. package/dist/services/reloader.mjs.map +1 -1
  573. package/dist/services/request-context.js +11 -8
  574. package/dist/services/request-context.js.map +1 -1
  575. package/dist/services/request-context.mjs +10 -10
  576. package/dist/services/request-context.mjs.map +1 -1
  577. package/dist/services/server/admin-api.js +11 -10
  578. package/dist/services/server/admin-api.js.map +1 -1
  579. package/dist/services/server/admin-api.mjs +10 -11
  580. package/dist/services/server/admin-api.mjs.map +1 -1
  581. package/dist/services/server/api.js +33 -27
  582. package/dist/services/server/api.js.map +1 -1
  583. package/dist/services/server/api.mjs +32 -26
  584. package/dist/services/server/api.mjs.map +1 -1
  585. package/dist/services/server/compose-endpoint.js +116 -105
  586. package/dist/services/server/compose-endpoint.js.map +1 -1
  587. package/dist/services/server/compose-endpoint.mjs +115 -105
  588. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  589. package/dist/services/server/content-api.js +11 -9
  590. package/dist/services/server/content-api.js.map +1 -1
  591. package/dist/services/server/content-api.mjs +10 -10
  592. package/dist/services/server/content-api.mjs.map +1 -1
  593. package/dist/services/server/http-server.js +48 -44
  594. package/dist/services/server/http-server.js.map +1 -1
  595. package/dist/services/server/http-server.mjs +47 -43
  596. package/dist/services/server/http-server.mjs.map +1 -1
  597. package/dist/services/server/index.js +85 -82
  598. package/dist/services/server/index.js.map +1 -1
  599. package/dist/services/server/index.mjs +84 -81
  600. package/dist/services/server/index.mjs.map +1 -1
  601. package/dist/services/server/koa.js +49 -47
  602. package/dist/services/server/koa.js.map +1 -1
  603. package/dist/services/server/koa.mjs +48 -44
  604. package/dist/services/server/koa.mjs.map +1 -1
  605. package/dist/services/server/middleware.js +86 -82
  606. package/dist/services/server/middleware.js.map +1 -1
  607. package/dist/services/server/middleware.mjs +85 -82
  608. package/dist/services/server/middleware.mjs.map +1 -1
  609. package/dist/services/server/policy.js +24 -17
  610. package/dist/services/server/policy.js.map +1 -1
  611. package/dist/services/server/policy.mjs +23 -18
  612. package/dist/services/server/policy.mjs.map +1 -1
  613. package/dist/services/server/register-middlewares.js +68 -61
  614. package/dist/services/server/register-middlewares.js.map +1 -1
  615. package/dist/services/server/register-middlewares.mjs +67 -63
  616. package/dist/services/server/register-middlewares.mjs.map +1 -1
  617. package/dist/services/server/register-routes.js +90 -67
  618. package/dist/services/server/register-routes.js.map +1 -1
  619. package/dist/services/server/register-routes.mjs +89 -67
  620. package/dist/services/server/register-routes.mjs.map +1 -1
  621. package/dist/services/server/routing.js +94 -81
  622. package/dist/services/server/routing.js.map +1 -1
  623. package/dist/services/server/routing.mjs +93 -81
  624. package/dist/services/server/routing.mjs.map +1 -1
  625. package/dist/services/utils/dynamic-zones.js +13 -14
  626. package/dist/services/utils/dynamic-zones.js.map +1 -1
  627. package/dist/services/utils/dynamic-zones.mjs +12 -16
  628. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  629. package/dist/services/webhook-runner.js +124 -122
  630. package/dist/services/webhook-runner.js.map +1 -1
  631. package/dist/services/webhook-runner.mjs +123 -121
  632. package/dist/services/webhook-runner.mjs.map +1 -1
  633. package/dist/services/webhook-store.js +132 -99
  634. package/dist/services/webhook-store.js.map +1 -1
  635. package/dist/services/webhook-store.mjs +131 -101
  636. package/dist/services/webhook-store.mjs.map +1 -1
  637. package/dist/services/worker-queue.js +44 -49
  638. package/dist/services/worker-queue.js.map +1 -1
  639. package/dist/services/worker-queue.mjs +43 -49
  640. package/dist/services/worker-queue.mjs.map +1 -1
  641. package/dist/utils/convert-custom-field-type.js +17 -20
  642. package/dist/utils/convert-custom-field-type.js.map +1 -1
  643. package/dist/utils/convert-custom-field-type.mjs +16 -21
  644. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  645. package/dist/utils/cron.js +64 -30
  646. package/dist/utils/cron.js.map +1 -1
  647. package/dist/utils/cron.mjs +63 -31
  648. package/dist/utils/cron.mjs.map +1 -1
  649. package/dist/utils/fetch.js +24 -18
  650. package/dist/utils/fetch.js.map +1 -1
  651. package/dist/utils/fetch.mjs +23 -19
  652. package/dist/utils/fetch.mjs.map +1 -1
  653. package/dist/utils/filepath-to-prop-path.js +20 -28
  654. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  655. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  656. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  657. package/dist/utils/is-initialized.js +21 -12
  658. package/dist/utils/is-initialized.js.map +1 -1
  659. package/dist/utils/is-initialized.mjs +20 -13
  660. package/dist/utils/is-initialized.mjs.map +1 -1
  661. package/dist/utils/lifecycles.js +6 -5
  662. package/dist/utils/lifecycles.js.map +1 -1
  663. package/dist/utils/lifecycles.mjs +5 -6
  664. package/dist/utils/lifecycles.mjs.map +1 -1
  665. package/dist/utils/load-config-file.js +40 -38
  666. package/dist/utils/load-config-file.js.map +1 -1
  667. package/dist/utils/load-config-file.mjs +39 -36
  668. package/dist/utils/load-config-file.mjs.map +1 -1
  669. package/dist/utils/load-files.js +40 -35
  670. package/dist/utils/load-files.js.map +1 -1
  671. package/dist/utils/load-files.mjs +39 -32
  672. package/dist/utils/load-files.mjs.map +1 -1
  673. package/dist/utils/open-browser.js +8 -8
  674. package/dist/utils/open-browser.js.map +1 -1
  675. package/dist/utils/open-browser.mjs +7 -7
  676. package/dist/utils/open-browser.mjs.map +1 -1
  677. package/dist/utils/resolve-working-dirs.js +23 -10
  678. package/dist/utils/resolve-working-dirs.js.map +1 -1
  679. package/dist/utils/resolve-working-dirs.mjs +22 -9
  680. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  681. package/dist/utils/signals.js +20 -14
  682. package/dist/utils/signals.js.map +1 -1
  683. package/dist/utils/signals.mjs +19 -15
  684. package/dist/utils/signals.mjs.map +1 -1
  685. package/dist/utils/startup-logger.d.ts.map +1 -1
  686. package/dist/utils/startup-logger.js +107 -78
  687. package/dist/utils/startup-logger.js.map +1 -1
  688. package/dist/utils/startup-logger.mjs +106 -75
  689. package/dist/utils/startup-logger.mjs.map +1 -1
  690. package/dist/utils/transform-content-types-to-models.js +350 -261
  691. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  692. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  693. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  694. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  695. package/dist/utils/update-notifier/index.js +68 -73
  696. package/dist/utils/update-notifier/index.js.map +1 -1
  697. package/dist/utils/update-notifier/index.mjs +67 -67
  698. package/dist/utils/update-notifier/index.mjs.map +1 -1
  699. package/package.json +25 -26
@@ -1,20 +1,25 @@
1
- import { policy, errors } from "@strapi/utils";
2
- const createPolicicesMiddleware = (route, strapi) => {
3
- const policiesConfig = route?.config?.policies ?? [];
4
- const resolvedPolicies = strapi.get("policies").resolve(policiesConfig, route.info);
5
- const policiesMiddleware = async (ctx, next) => {
6
- const context = policy.createPolicyContext("koa", ctx);
7
- for (const { handler, config } of resolvedPolicies) {
8
- const result = await handler(context, config, { strapi });
9
- if (![true, void 0].includes(result)) {
10
- throw new errors.PolicyError();
11
- }
12
- }
13
- await next();
14
- };
15
- return policiesMiddleware;
16
- };
17
- export {
18
- createPolicicesMiddleware
1
+ import { policy, errors } from '@strapi/utils';
2
+
3
+ const createPolicicesMiddleware = (route, strapi)=>{
4
+ const policiesConfig = route?.config?.policies ?? [];
5
+ const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);
6
+ const policiesMiddleware = async (ctx, next)=>{
7
+ const context = policy.createPolicyContext('koa', ctx);
8
+ for (const { handler, config } of resolvedPolicies){
9
+ const result = await handler(context, config, {
10
+ strapi
11
+ });
12
+ if (![
13
+ true,
14
+ undefined
15
+ ].includes(result)) {
16
+ throw new errors.PolicyError();
17
+ }
18
+ }
19
+ await next();
20
+ };
21
+ return policiesMiddleware;
19
22
  };
23
+
24
+ export { createPolicicesMiddleware };
20
25
  //# 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 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,CAAA;AAC5C,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;MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGN,SAAA;AACT;"}
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":["createPolicicesMiddleware","route","strapi","policiesConfig","config","policies","resolvedPolicies","get","resolve","info","policiesMiddleware","ctx","next","context","policyUtils","createPolicyContext","handler","result","undefined","includes","errors","PolicyError"],"mappings":";;AAGMA,MAAAA,yBAAAA,GAA4B,CAACC,KAAmBC,EAAAA,MAAAA,GAAAA;AACpD,IAAA,MAAMC,cAAiBF,GAAAA,KAAAA,EAAOG,MAAQC,EAAAA,QAAAA,IAAY,EAAE;IACpD,MAAMC,gBAAAA,GAAmBJ,OAAOK,GAAG,CAAC,YAAYC,OAAO,CAACL,cAAgBF,EAAAA,KAAAA,CAAMQ,IAAI,CAAA;IAElF,MAAMC,kBAAAA,GAA6C,OAAOC,GAAKC,EAAAA,IAAAA,GAAAA;AAC7D,QAAA,MAAMC,OAAUC,GAAAA,MAAAA,CAAYC,mBAAmB,CAAC,KAAOJ,EAAAA,GAAAA,CAAAA;AAEvD,QAAA,KAAK,MAAM,EAAEK,OAAO,EAAEZ,MAAM,EAAE,IAAIE,gBAAkB,CAAA;AAClD,YAAA,MAAMW,MAAS,GAAA,MAAMD,OAAQH,CAAAA,OAAAA,EAAST,MAAQ,EAAA;AAAEF,gBAAAA;AAAO,aAAA,CAAA;AAEvD,YAAA,IAAI,CAAC;AAAC,gBAAA,IAAA;AAAMgB,gBAAAA;aAAU,CAACC,QAAQ,CAACF,MAAS,CAAA,EAAA;gBACvC,MAAM,IAAIG,OAAOC,WAAW,EAAA;AAC9B;AACF;QAEA,MAAMT,IAAAA,EAAAA;AACR,KAAA;IAEA,OAAOF,kBAAAA;AACT;;;;"}
@@ -1,72 +1,79 @@
1
- "use strict";
2
- const strapiUtils = require("@strapi/utils");
3
- const middleware = require("./middleware.js");
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+ var middleware = require('./middleware.js');
5
+
4
6
  const defaultConfig = [
5
- "strapi::logger",
6
- "strapi::errors",
7
- "strapi::security",
8
- "strapi::cors",
9
- "strapi::poweredBy",
10
- "strapi::session",
11
- "strapi::query",
12
- "strapi::body",
13
- "strapi::favicon",
14
- "strapi::public"
7
+ 'strapi::logger',
8
+ 'strapi::errors',
9
+ 'strapi::security',
10
+ 'strapi::cors',
11
+ 'strapi::poweredBy',
12
+ 'strapi::session',
13
+ 'strapi::query',
14
+ 'strapi::body',
15
+ 'strapi::favicon',
16
+ 'strapi::public'
15
17
  ];
16
18
  const requiredMiddlewares = [
17
- "strapi::errors",
18
- "strapi::security",
19
- "strapi::cors",
20
- "strapi::query",
21
- "strapi::body",
22
- "strapi::public",
23
- "strapi::favicon"
19
+ 'strapi::errors',
20
+ 'strapi::security',
21
+ 'strapi::cors',
22
+ 'strapi::query',
23
+ 'strapi::body',
24
+ 'strapi::public',
25
+ 'strapi::favicon'
24
26
  ];
25
- const middlewareConfigSchema = strapiUtils.yup.array().of(
26
- strapiUtils.yup.lazy((value) => {
27
- if (typeof value === "string") {
28
- return strapiUtils.yup.string().required();
27
+ const middlewareConfigSchema = strapiUtils.yup.array().of(strapiUtils.yup.lazy((value)=>{
28
+ if (typeof value === 'string') {
29
+ return strapiUtils.yup.string().required();
29
30
  }
30
- if (typeof value === "object") {
31
- return strapiUtils.yup.object({
32
- name: strapiUtils.yup.string(),
33
- resolve: strapiUtils.yup.string(),
34
- config: strapiUtils.yup.mixed()
35
- }).required().noUnknown();
31
+ if (typeof value === 'object') {
32
+ return strapiUtils.yup.object({
33
+ name: strapiUtils.yup.string(),
34
+ resolve: strapiUtils.yup.string(),
35
+ config: strapiUtils.yup.mixed()
36
+ }).required().noUnknown();
37
+ }
38
+ return strapiUtils.yup.mixed().test(()=>false);
39
+ }));
40
+ /**
41
+ * Register middlewares in router
42
+ */ const registerApplicationMiddlewares = async (strapi)=>{
43
+ const middlewareConfig = strapi.config.get('middlewares', defaultConfig);
44
+ await validateMiddlewareConfig(middlewareConfig);
45
+ const middlewares = await middleware.resolveMiddlewares(middlewareConfig, strapi);
46
+ checkRequiredMiddlewares(middlewares);
47
+ // NOTE: exclude middlewares that return nothing.
48
+ // this is used for middlewares that only extend the app only need to be added in certain conditions
49
+ for (const middleware of middlewares){
50
+ strapi.server.use(middleware.handler);
36
51
  }
37
- return strapiUtils.yup.mixed().test(() => false);
38
- })
39
- // FIXME: yup v1
40
- );
41
- const registerApplicationMiddlewares = async (strapi) => {
42
- const middlewareConfig = strapi.config.get("middlewares", defaultConfig);
43
- await validateMiddlewareConfig(middlewareConfig);
44
- const middlewares = await middleware.resolveMiddlewares(middlewareConfig, strapi);
45
- checkRequiredMiddlewares(middlewares);
46
- for (const middleware2 of middlewares) {
47
- strapi.server.use(middleware2.handler);
48
- }
49
52
  };
50
- const validateMiddlewareConfig = async (config) => {
51
- try {
52
- await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });
53
- } catch (error) {
54
- throw new Error(
55
- "Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}."
56
- );
57
- }
53
+ /**
54
+ *
55
+ * @param {MiddlewaresConfig} config
56
+ */ const validateMiddlewareConfig = async (config)=>{
57
+ try {
58
+ await middlewareConfigSchema.validate(config, {
59
+ strict: true,
60
+ abortEarly: false
61
+ });
62
+ } catch (error) {
63
+ throw new Error('Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.');
64
+ }
58
65
  };
59
- const checkRequiredMiddlewares = (middlewares) => {
60
- const missingMiddlewares = requiredMiddlewares.filter((name) => {
61
- return middlewares.findIndex((mdl) => mdl.name === name) === -1;
62
- });
63
- if (missingMiddlewares.length > 0) {
64
- throw new Error(
65
- `Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(
66
- ", "
67
- )}".`
68
- );
69
- }
66
+ /**
67
+ * Check if some required middlewares are missing in configure middlewares
68
+ * @param {Middlewares} middlewares
69
+ */ const checkRequiredMiddlewares = (middlewares)=>{
70
+ const missingMiddlewares = requiredMiddlewares.filter((name)=>{
71
+ return middlewares.findIndex((mdl)=>mdl.name === name) === -1;
72
+ });
73
+ if (missingMiddlewares.length > 0) {
74
+ throw new Error(`Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(', ')}".`);
75
+ }
70
76
  };
77
+
71
78
  module.exports = registerApplicationMiddlewares;
72
79
  //# sourceMappingURL=register-middlewares.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-middlewares.js","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["yup","resolveMiddlewares","middleware"],"mappings":";;;AAMA,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,sBAAsB;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,yBAAyBA,YAAAA,IAAI,MAAA,EAAQ;AAAA,EACzCA,gBAAI,KAAK,CAAC,UAAU;AACd,QAAA,OAAO,UAAU,UAAU;AACtB,aAAAA,gBAAI,SAAS;IACtB;AAEI,QAAA,OAAO,UAAU,UAAU;AAC7B,aAAOA,YAAAA,IACJ,OAAO;AAAA,QACN,MAAMA,gBAAI,OAAO;AAAA,QACjB,SAASA,gBAAI,OAAO;AAAA,QACpB,QAAQA,gBAAI,MAAM;AAAA,MAAA,CACnB,EACA,WACA;IACL;AAEA,WAAOA,YAAI,IAAA,MAAA,EAAQ,KAAK,MAAM,KAAK;AAAA,EAAA,CACpC;AAAA;AACH;AAKM,MAAA,iCAAiC,OAAO,WAAwB;AACpE,QAAM,mBAAqC,OAAO,OAAO,IAAI,eAAe,aAAa;AAEzF,QAAM,yBAAyB,gBAAgB;AAE/C,QAAM,cAAc,MAAMC,WAAAA,mBAAmB,kBAAkB,MAAM;AAErE,2BAAyB,WAAW;AAIpC,aAAWC,eAAc,aAAa;AAC7B,WAAA,OAAO,IAAIA,YAAW,OAAO;AAAA,EACtC;AACF;AAMA,MAAM,2BAA2B,OAAO,WAA6B;AAC/D,MAAA;AACI,UAAA,uBAAuB,SAAS,QAAQ,EAAE,QAAQ,MAAM,YAAY,OAAO;AAAA,WAC1E,OAAO;AACd,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AACF;AAMA,MAAM,2BAA2B,CAAC,gBAA2C;AAC3E,QAAM,qBAAqB,oBAAoB,OAAO,CAAC,SAAS;AAC9D,WAAO,YAAY,UAAU,CAAC,QAAQ,IAAI,SAAS,IAAI,MAAM;AAAA,EAAA,CAC9D;AAEG,MAAA,mBAAmB,SAAS,GAAG;AACjC,UAAM,IAAI;AAAA,MACR,kFAAkF,mBAAmB;AAAA,QACnG;AAAA,MACD,CAAA;AAAA,IAAA;AAAA,EAEL;AACF;;"}
1
+ {"version":3,"file":"register-middlewares.js","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["defaultConfig","requiredMiddlewares","middlewareConfigSchema","yup","array","of","lazy","value","string","required","object","name","resolve","config","mixed","noUnknown","test","registerApplicationMiddlewares","strapi","middlewareConfig","get","validateMiddlewareConfig","middlewares","resolveMiddlewares","checkRequiredMiddlewares","middleware","server","use","handler","validate","strict","abortEarly","error","Error","missingMiddlewares","filter","findIndex","mdl","length","join"],"mappings":";;;;;AAMA,MAAMA,aAAgB,GAAA;AACpB,IAAA,gBAAA;AACA,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,mBAAA;AACA,IAAA,iBAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,iBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,mBAAsB,GAAA;AAC1B,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,gBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,sBAAAA,GAAyBC,gBAAIC,KAAK,EAAA,CAAGC,EAAE,CAC3CF,eAAAA,CAAIG,IAAI,CAAC,CAACC,KAAAA,GAAAA;IACR,IAAI,OAAOA,UAAU,QAAU,EAAA;QAC7B,OAAOJ,eAAAA,CAAIK,MAAM,EAAA,CAAGC,QAAQ,EAAA;AAC9B;IAEA,IAAI,OAAOF,UAAU,QAAU,EAAA;QAC7B,OAAOJ,eAAAA,CACJO,MAAM,CAAC;AACNC,YAAAA,IAAAA,EAAMR,gBAAIK,MAAM,EAAA;AAChBI,YAAAA,OAAAA,EAAST,gBAAIK,MAAM,EAAA;AACnBK,YAAAA,MAAAA,EAAQV,gBAAIW,KAAK;SAElBL,CAAAA,CAAAA,QAAQ,GACRM,SAAS,EAAA;AACd;AAEA,IAAA,OAAOZ,eAAIW,CAAAA,KAAK,EAAGE,CAAAA,IAAI,CAAC,IAAM,KAAA,CAAA;AAChC,CAAA,CAAA,CAAA;AAGF;;IAGA,MAAMC,iCAAiC,OAAOC,MAAAA,GAAAA;AAC5C,IAAA,MAAMC,mBAAqCD,MAAOL,CAAAA,MAAM,CAACO,GAAG,CAAC,aAAepB,EAAAA,aAAAA,CAAAA;AAE5E,IAAA,MAAMqB,wBAAyBF,CAAAA,gBAAAA,CAAAA;IAE/B,MAAMG,WAAAA,GAAc,MAAMC,6BAAAA,CAAmBJ,gBAAkBD,EAAAA,MAAAA,CAAAA;IAE/DM,wBAAyBF,CAAAA,WAAAA,CAAAA;;;IAIzB,KAAK,MAAMG,cAAcH,WAAa,CAAA;AACpCJ,QAAAA,MAAAA,CAAOQ,MAAM,CAACC,GAAG,CAACF,WAAWG,OAAO,CAAA;AACtC;AACF;AAEA;;;IAIA,MAAMP,2BAA2B,OAAOR,MAAAA,GAAAA;IACtC,IAAI;QACF,MAAMX,sBAAAA,CAAuB2B,QAAQ,CAAChB,MAAQ,EAAA;YAAEiB,MAAQ,EAAA,IAAA;YAAMC,UAAY,EAAA;AAAM,SAAA,CAAA;AAClF,KAAA,CAAE,OAAOC,KAAO,EAAA;AACd,QAAA,MAAM,IAAIC,KACR,CAAA,yGAAA,CAAA;AAEJ;AACF,CAAA;AAEA;;;IAIA,MAAMT,2BAA2B,CAACF,WAAAA,GAAAA;AAChC,IAAA,MAAMY,kBAAqBjC,GAAAA,mBAAAA,CAAoBkC,MAAM,CAAC,CAACxB,IAAAA,GAAAA;QACrD,OAAOW,WAAAA,CAAYc,SAAS,CAAC,CAACC,MAAQA,GAAI1B,CAAAA,IAAI,KAAKA,IAAAA,CAAAA,KAAU,CAAC,CAAA;AAChE,KAAA,CAAA;IAEA,IAAIuB,kBAAAA,CAAmBI,MAAM,GAAG,CAAG,EAAA;QACjC,MAAM,IAAIL,KACR,CAAA,CAAC,+EAA+E,EAAEC,mBAAmBK,IAAI,CACvG,IACA,CAAA,CAAA,EAAE,CAAC,CAAA;AAET;AACF,CAAA;;;;"}
@@ -1,73 +1,77 @@
1
- import { yup } from "@strapi/utils";
2
- import { resolveMiddlewares } from "./middleware.mjs";
1
+ import { yup } from '@strapi/utils';
2
+ import { resolveMiddlewares } from './middleware.mjs';
3
+
3
4
  const defaultConfig = [
4
- "strapi::logger",
5
- "strapi::errors",
6
- "strapi::security",
7
- "strapi::cors",
8
- "strapi::poweredBy",
9
- "strapi::session",
10
- "strapi::query",
11
- "strapi::body",
12
- "strapi::favicon",
13
- "strapi::public"
5
+ 'strapi::logger',
6
+ 'strapi::errors',
7
+ 'strapi::security',
8
+ 'strapi::cors',
9
+ 'strapi::poweredBy',
10
+ 'strapi::session',
11
+ 'strapi::query',
12
+ 'strapi::body',
13
+ 'strapi::favicon',
14
+ 'strapi::public'
14
15
  ];
15
16
  const requiredMiddlewares = [
16
- "strapi::errors",
17
- "strapi::security",
18
- "strapi::cors",
19
- "strapi::query",
20
- "strapi::body",
21
- "strapi::public",
22
- "strapi::favicon"
17
+ 'strapi::errors',
18
+ 'strapi::security',
19
+ 'strapi::cors',
20
+ 'strapi::query',
21
+ 'strapi::body',
22
+ 'strapi::public',
23
+ 'strapi::favicon'
23
24
  ];
24
- const middlewareConfigSchema = yup.array().of(
25
- yup.lazy((value) => {
26
- if (typeof value === "string") {
27
- return yup.string().required();
25
+ const middlewareConfigSchema = yup.array().of(yup.lazy((value)=>{
26
+ if (typeof value === 'string') {
27
+ return yup.string().required();
28
28
  }
29
- if (typeof value === "object") {
30
- return yup.object({
31
- name: yup.string(),
32
- resolve: yup.string(),
33
- config: yup.mixed()
34
- }).required().noUnknown();
29
+ if (typeof value === 'object') {
30
+ return yup.object({
31
+ name: yup.string(),
32
+ resolve: yup.string(),
33
+ config: yup.mixed()
34
+ }).required().noUnknown();
35
+ }
36
+ return yup.mixed().test(()=>false);
37
+ }));
38
+ /**
39
+ * Register middlewares in router
40
+ */ const registerApplicationMiddlewares = async (strapi)=>{
41
+ const middlewareConfig = strapi.config.get('middlewares', defaultConfig);
42
+ await validateMiddlewareConfig(middlewareConfig);
43
+ const middlewares = await resolveMiddlewares(middlewareConfig, strapi);
44
+ checkRequiredMiddlewares(middlewares);
45
+ // NOTE: exclude middlewares that return nothing.
46
+ // this is used for middlewares that only extend the app only need to be added in certain conditions
47
+ for (const middleware of middlewares){
48
+ strapi.server.use(middleware.handler);
35
49
  }
36
- return yup.mixed().test(() => false);
37
- })
38
- // FIXME: yup v1
39
- );
40
- const registerApplicationMiddlewares = async (strapi) => {
41
- const middlewareConfig = strapi.config.get("middlewares", defaultConfig);
42
- await validateMiddlewareConfig(middlewareConfig);
43
- const middlewares = await resolveMiddlewares(middlewareConfig, strapi);
44
- checkRequiredMiddlewares(middlewares);
45
- for (const middleware of middlewares) {
46
- strapi.server.use(middleware.handler);
47
- }
48
- };
49
- const validateMiddlewareConfig = async (config) => {
50
- try {
51
- await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });
52
- } catch (error) {
53
- throw new Error(
54
- "Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}."
55
- );
56
- }
57
50
  };
58
- const checkRequiredMiddlewares = (middlewares) => {
59
- const missingMiddlewares = requiredMiddlewares.filter((name) => {
60
- return middlewares.findIndex((mdl) => mdl.name === name) === -1;
61
- });
62
- if (missingMiddlewares.length > 0) {
63
- throw new Error(
64
- `Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(
65
- ", "
66
- )}".`
67
- );
68
- }
51
+ /**
52
+ *
53
+ * @param {MiddlewaresConfig} config
54
+ */ const validateMiddlewareConfig = async (config)=>{
55
+ try {
56
+ await middlewareConfigSchema.validate(config, {
57
+ strict: true,
58
+ abortEarly: false
59
+ });
60
+ } catch (error) {
61
+ throw new Error('Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.');
62
+ }
69
63
  };
70
- export {
71
- registerApplicationMiddlewares as default
64
+ /**
65
+ * Check if some required middlewares are missing in configure middlewares
66
+ * @param {Middlewares} middlewares
67
+ */ const checkRequiredMiddlewares = (middlewares)=>{
68
+ const missingMiddlewares = requiredMiddlewares.filter((name)=>{
69
+ return middlewares.findIndex((mdl)=>mdl.name === name) === -1;
70
+ });
71
+ if (missingMiddlewares.length > 0) {
72
+ throw new Error(`Missing required middlewares in configuration. Add the following middlewares: "${missingMiddlewares.join(', ')}".`);
73
+ }
72
74
  };
75
+
76
+ export { registerApplicationMiddlewares as default };
73
77
  //# sourceMappingURL=register-middlewares.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-middlewares.mjs","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":[],"mappings":";;AAMA,MAAM,gBAAgB;AAAA,EACpB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,sBAAsB;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,MAAM,yBAAyB,IAAI,MAAA,EAAQ;AAAA,EACzC,IAAI,KAAK,CAAC,UAAU;AACd,QAAA,OAAO,UAAU,UAAU;AACtB,aAAA,IAAI,SAAS;IACtB;AAEI,QAAA,OAAO,UAAU,UAAU;AAC7B,aAAO,IACJ,OAAO;AAAA,QACN,MAAM,IAAI,OAAO;AAAA,QACjB,SAAS,IAAI,OAAO;AAAA,QACpB,QAAQ,IAAI,MAAM;AAAA,MAAA,CACnB,EACA,WACA;IACL;AAEA,WAAO,IAAI,MAAA,EAAQ,KAAK,MAAM,KAAK;AAAA,EAAA,CACpC;AAAA;AACH;AAKM,MAAA,iCAAiC,OAAO,WAAwB;AACpE,QAAM,mBAAqC,OAAO,OAAO,IAAI,eAAe,aAAa;AAEzF,QAAM,yBAAyB,gBAAgB;AAE/C,QAAM,cAAc,MAAM,mBAAmB,kBAAkB,MAAM;AAErE,2BAAyB,WAAW;AAIpC,aAAW,cAAc,aAAa;AAC7B,WAAA,OAAO,IAAI,WAAW,OAAO;AAAA,EACtC;AACF;AAMA,MAAM,2BAA2B,OAAO,WAA6B;AAC/D,MAAA;AACI,UAAA,uBAAuB,SAAS,QAAQ,EAAE,QAAQ,MAAM,YAAY,OAAO;AAAA,WAC1E,OAAO;AACd,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AACF;AAMA,MAAM,2BAA2B,CAAC,gBAA2C;AAC3E,QAAM,qBAAqB,oBAAoB,OAAO,CAAC,SAAS;AAC9D,WAAO,YAAY,UAAU,CAAC,QAAQ,IAAI,SAAS,IAAI,MAAM;AAAA,EAAA,CAC9D;AAEG,MAAA,mBAAmB,SAAS,GAAG;AACjC,UAAM,IAAI;AAAA,MACR,kFAAkF,mBAAmB;AAAA,QACnG;AAAA,MACD,CAAA;AAAA,IAAA;AAAA,EAEL;AACF;"}
1
+ {"version":3,"file":"register-middlewares.mjs","sources":["../../../src/services/server/register-middlewares.ts"],"sourcesContent":["import { yup } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\nimport { resolveMiddlewares } from './middleware';\n\ntype MiddlewareConfig = (string | { name?: string; resolve?: string; config?: unknown })[];\n\nconst defaultConfig = [\n 'strapi::logger',\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::poweredBy',\n 'strapi::session',\n 'strapi::query',\n 'strapi::body',\n 'strapi::favicon',\n 'strapi::public',\n];\n\nconst requiredMiddlewares = [\n 'strapi::errors',\n 'strapi::security',\n 'strapi::cors',\n 'strapi::query',\n 'strapi::body',\n 'strapi::public',\n 'strapi::favicon',\n];\n\nconst middlewareConfigSchema = yup.array().of(\n yup.lazy((value) => {\n if (typeof value === 'string') {\n return yup.string().required();\n }\n\n if (typeof value === 'object') {\n return yup\n .object({\n name: yup.string(),\n resolve: yup.string(),\n config: yup.mixed(),\n })\n .required()\n .noUnknown();\n }\n\n return yup.mixed().test(() => false);\n }) as any // FIXME: yup v1\n);\n\n/**\n * Register middlewares in router\n */\nconst registerApplicationMiddlewares = async (strapi: Core.Strapi) => {\n const middlewareConfig: MiddlewareConfig = strapi.config.get('middlewares', defaultConfig);\n\n await validateMiddlewareConfig(middlewareConfig);\n\n const middlewares = await resolveMiddlewares(middlewareConfig, strapi);\n\n checkRequiredMiddlewares(middlewares);\n\n // NOTE: exclude middlewares that return nothing.\n // this is used for middlewares that only extend the app only need to be added in certain conditions\n for (const middleware of middlewares) {\n strapi.server.use(middleware.handler);\n }\n};\n\n/**\n *\n * @param {MiddlewaresConfig} config\n */\nconst validateMiddlewareConfig = async (config: MiddlewareConfig) => {\n try {\n await middlewareConfigSchema.validate(config, { strict: true, abortEarly: false });\n } catch (error) {\n throw new Error(\n 'Invalid middleware configuration. Expected Array<string|{name?: string, resolve?: string, config: any}.'\n );\n }\n};\n\n/**\n * Check if some required middlewares are missing in configure middlewares\n * @param {Middlewares} middlewares\n */\nconst checkRequiredMiddlewares = (middlewares: { name: string | null }[]) => {\n const missingMiddlewares = requiredMiddlewares.filter((name) => {\n return middlewares.findIndex((mdl) => mdl.name === name) === -1;\n });\n\n if (missingMiddlewares.length > 0) {\n throw new Error(\n `Missing required middlewares in configuration. Add the following middlewares: \"${missingMiddlewares.join(\n ', '\n )}\".`\n );\n }\n};\n\nexport default registerApplicationMiddlewares;\n"],"names":["defaultConfig","requiredMiddlewares","middlewareConfigSchema","yup","array","of","lazy","value","string","required","object","name","resolve","config","mixed","noUnknown","test","registerApplicationMiddlewares","strapi","middlewareConfig","get","validateMiddlewareConfig","middlewares","resolveMiddlewares","checkRequiredMiddlewares","middleware","server","use","handler","validate","strict","abortEarly","error","Error","missingMiddlewares","filter","findIndex","mdl","length","join"],"mappings":";;;AAMA,MAAMA,aAAgB,GAAA;AACpB,IAAA,gBAAA;AACA,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,mBAAA;AACA,IAAA,iBAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,iBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,mBAAsB,GAAA;AAC1B,IAAA,gBAAA;AACA,IAAA,kBAAA;AACA,IAAA,cAAA;AACA,IAAA,eAAA;AACA,IAAA,cAAA;AACA,IAAA,gBAAA;AACA,IAAA;AACD,CAAA;AAED,MAAMC,sBAAAA,GAAyBC,IAAIC,KAAK,EAAA,CAAGC,EAAE,CAC3CF,GAAAA,CAAIG,IAAI,CAAC,CAACC,KAAAA,GAAAA;IACR,IAAI,OAAOA,UAAU,QAAU,EAAA;QAC7B,OAAOJ,GAAAA,CAAIK,MAAM,EAAA,CAAGC,QAAQ,EAAA;AAC9B;IAEA,IAAI,OAAOF,UAAU,QAAU,EAAA;QAC7B,OAAOJ,GAAAA,CACJO,MAAM,CAAC;AACNC,YAAAA,IAAAA,EAAMR,IAAIK,MAAM,EAAA;AAChBI,YAAAA,OAAAA,EAAST,IAAIK,MAAM,EAAA;AACnBK,YAAAA,MAAAA,EAAQV,IAAIW,KAAK;SAElBL,CAAAA,CAAAA,QAAQ,GACRM,SAAS,EAAA;AACd;AAEA,IAAA,OAAOZ,GAAIW,CAAAA,KAAK,EAAGE,CAAAA,IAAI,CAAC,IAAM,KAAA,CAAA;AAChC,CAAA,CAAA,CAAA;AAGF;;IAGA,MAAMC,iCAAiC,OAAOC,MAAAA,GAAAA;AAC5C,IAAA,MAAMC,mBAAqCD,MAAOL,CAAAA,MAAM,CAACO,GAAG,CAAC,aAAepB,EAAAA,aAAAA,CAAAA;AAE5E,IAAA,MAAMqB,wBAAyBF,CAAAA,gBAAAA,CAAAA;IAE/B,MAAMG,WAAAA,GAAc,MAAMC,kBAAAA,CAAmBJ,gBAAkBD,EAAAA,MAAAA,CAAAA;IAE/DM,wBAAyBF,CAAAA,WAAAA,CAAAA;;;IAIzB,KAAK,MAAMG,cAAcH,WAAa,CAAA;AACpCJ,QAAAA,MAAAA,CAAOQ,MAAM,CAACC,GAAG,CAACF,WAAWG,OAAO,CAAA;AACtC;AACF;AAEA;;;IAIA,MAAMP,2BAA2B,OAAOR,MAAAA,GAAAA;IACtC,IAAI;QACF,MAAMX,sBAAAA,CAAuB2B,QAAQ,CAAChB,MAAQ,EAAA;YAAEiB,MAAQ,EAAA,IAAA;YAAMC,UAAY,EAAA;AAAM,SAAA,CAAA;AAClF,KAAA,CAAE,OAAOC,KAAO,EAAA;AACd,QAAA,MAAM,IAAIC,KACR,CAAA,yGAAA,CAAA;AAEJ;AACF,CAAA;AAEA;;;IAIA,MAAMT,2BAA2B,CAACF,WAAAA,GAAAA;AAChC,IAAA,MAAMY,kBAAqBjC,GAAAA,mBAAAA,CAAoBkC,MAAM,CAAC,CAACxB,IAAAA,GAAAA;QACrD,OAAOW,WAAAA,CAAYc,SAAS,CAAC,CAACC,MAAQA,GAAI1B,CAAAA,IAAI,KAAKA,IAAAA,CAAAA,KAAU,CAAC,CAAA;AAChE,KAAA,CAAA;IAEA,IAAIuB,kBAAAA,CAAmBI,MAAM,GAAG,CAAG,EAAA;QACjC,MAAM,IAAIL,KACR,CAAA,CAAC,+EAA+E,EAAEC,mBAAmBK,IAAI,CACvG,IACA,CAAA,CAAA,EAAE,CAAC,CAAA;AAET;AACF,CAAA;;;;"}
@@ -1,76 +1,99 @@
1
- "use strict";
2
- const _ = require("lodash");
3
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
4
- const ___default = /* @__PURE__ */ _interopDefault(_);
5
- const createRouteScopeGenerator = (namespace) => (route) => {
6
- const prefix = namespace.endsWith("::") ? namespace : `${namespace}.`;
7
- if (typeof route.handler === "string") {
8
- ___default.default.defaultsDeep(route, {
9
- config: {
10
- auth: {
11
- scope: [`${route.handler.startsWith(prefix) ? "" : prefix}${route.handler}`]
1
+ 'use strict';
2
+
3
+ var _ = require('lodash');
4
+
5
+ const createRouteScopeGenerator = (namespace)=>(route)=>{
6
+ const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;
7
+ if (typeof route.handler === 'string') {
8
+ _.defaultsDeep(route, {
9
+ config: {
10
+ auth: {
11
+ scope: [
12
+ `${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`
13
+ ]
14
+ }
15
+ }
16
+ });
12
17
  }
13
- }
18
+ };
19
+ /**
20
+ * Register all routes
21
+ */ var registerAllRoutes = ((strapi)=>{
22
+ registerAdminRoutes(strapi);
23
+ registerAPIRoutes(strapi);
24
+ registerPluginRoutes(strapi);
25
+ });
26
+ /**
27
+ * Register admin routes
28
+ * @param {import('../../').Strapi} strapi
29
+ */ const registerAdminRoutes = (strapi)=>{
30
+ const generateRouteScope = createRouteScopeGenerator(`admin::`);
31
+ _.forEach(strapi.admin.routes, (router)=>{
32
+ router.type = router.type || 'admin';
33
+ router.prefix = router.prefix || `/admin`;
34
+ router.routes.forEach((route)=>{
35
+ generateRouteScope(route);
36
+ route.info = {
37
+ pluginName: 'admin'
38
+ };
39
+ });
40
+ strapi.server.routes(router);
14
41
  });
15
- }
16
- };
17
- const registerAllRoutes = (strapi) => {
18
- registerAdminRoutes(strapi);
19
- registerAPIRoutes(strapi);
20
- registerPluginRoutes(strapi);
21
42
  };
22
- const registerAdminRoutes = (strapi) => {
23
- const generateRouteScope = createRouteScopeGenerator(`admin::`);
24
- ___default.default.forEach(strapi.admin.routes, (router) => {
25
- router.type = router.type || "admin";
26
- router.prefix = router.prefix || `/admin`;
27
- router.routes.forEach((route) => {
28
- generateRouteScope(route);
29
- route.info = { pluginName: "admin" };
30
- });
31
- strapi.server.routes(router);
32
- });
43
+ /**
44
+ * Register plugin routes
45
+ * @param {import('../../').Strapi} strapi
46
+ */ const registerPluginRoutes = (strapi)=>{
47
+ for (const pluginName of Object.keys(strapi.plugins)){
48
+ const plugin = strapi.plugins[pluginName];
49
+ const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);
50
+ if (Array.isArray(plugin.routes)) {
51
+ plugin.routes.forEach((route)=>{
52
+ generateRouteScope(route);
53
+ route.info = {
54
+ pluginName
55
+ };
56
+ });
57
+ strapi.server.routes({
58
+ type: 'admin',
59
+ prefix: `/${pluginName}`,
60
+ routes: plugin.routes
61
+ });
62
+ } else {
63
+ _.forEach(plugin.routes, (router)=>{
64
+ router.type = router.type || 'admin';
65
+ router.prefix = router.prefix || `/${pluginName}`;
66
+ router.routes.forEach((route)=>{
67
+ generateRouteScope(route);
68
+ route.info = {
69
+ pluginName
70
+ };
71
+ });
72
+ strapi.server.routes(router);
73
+ });
74
+ }
75
+ }
33
76
  };
34
- const registerPluginRoutes = (strapi) => {
35
- for (const pluginName of Object.keys(strapi.plugins)) {
36
- const plugin = strapi.plugins[pluginName];
37
- const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);
38
- if (Array.isArray(plugin.routes)) {
39
- plugin.routes.forEach((route) => {
40
- generateRouteScope(route);
41
- route.info = { pluginName };
42
- });
43
- strapi.server.routes({
44
- type: "admin",
45
- prefix: `/${pluginName}`,
46
- routes: plugin.routes
47
- });
48
- } else {
49
- ___default.default.forEach(plugin.routes, (router) => {
50
- router.type = router.type || "admin";
51
- router.prefix = router.prefix || `/${pluginName}`;
52
- router.routes.forEach((route) => {
53
- generateRouteScope(route);
54
- route.info = { pluginName };
77
+ /**
78
+ * Register api routes
79
+ */ const registerAPIRoutes = (strapi)=>{
80
+ for (const apiName of Object.keys(strapi.apis)){
81
+ const api = strapi.api(apiName);
82
+ const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);
83
+ _.forEach(api.routes, (router)=>{
84
+ // TODO: remove once auth setup
85
+ // pass meta down to compose endpoint
86
+ router.type = 'content-api';
87
+ router.routes?.forEach((route)=>{
88
+ generateRouteScope(route);
89
+ route.info = {
90
+ apiName
91
+ };
92
+ });
93
+ return strapi.server.routes(router);
55
94
  });
56
- strapi.server.routes(router);
57
- });
58
95
  }
59
- }
60
- };
61
- const registerAPIRoutes = (strapi) => {
62
- for (const apiName of Object.keys(strapi.apis)) {
63
- const api = strapi.api(apiName);
64
- const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);
65
- ___default.default.forEach(api.routes, (router) => {
66
- router.type = "content-api";
67
- router.routes?.forEach((route) => {
68
- generateRouteScope(route);
69
- route.info = { apiName };
70
- });
71
- return strapi.server.routes(router);
72
- });
73
- }
74
96
  };
97
+
75
98
  module.exports = registerAllRoutes;
76
99
  //# sourceMappingURL=register-routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"register-routes.js","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.apis)) {\n const api = strapi.api(apiName);\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":["_"],"mappings":";;;;AAGA,MAAM,4BAA4B,CAAC,cAAsB,CAAC,UAA2B;AACnF,QAAM,SAAS,UAAU,SAAS,IAAI,IAAI,YAAY,GAAG,SAAS;AAE9D,MAAA,OAAO,MAAM,YAAY,UAAU;AACrCA,eAAA,QAAE,aAAa,OAAO;AAAA,MACpB,QAAQ;AAAA,QACN,MAAM;AAAA,UACJ,OAAO,CAAC,GAAG,MAAM,QAAQ,WAAW,MAAM,IAAI,KAAK,MAAM,GAAG,MAAM,OAAO,EAAE;AAAA,QAC7E;AAAA,MACF;AAAA,IAAA,CACD;AAAA,EACH;AACF;AAKA,MAAe,oBAAA,CAAC,WAAwB;AACtC,sBAAoB,MAAM;AAC1B,oBAAkB,MAAM;AACxB,uBAAqB,MAAM;AAC7B;AAMA,MAAM,sBAAsB,CAAC,WAAwB;AAC7C,QAAA,qBAAqB,0BAA0B,SAAS;AAE9DA,aAAA,QAAE,QAAQ,OAAO,MAAM,QAAQ,CAAC,WAAW;AAClC,WAAA,OAAO,OAAO,QAAQ;AACtB,WAAA,SAAS,OAAO,UAAU;AAC1B,WAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,yBAAmB,KAAK;AAClB,YAAA,OAAO,EAAE,YAAY,QAAQ;AAAA,IAAA,CACpC;AACM,WAAA,OAAO,OAAO,MAAM;AAAA,EAAA,CAC5B;AACH;AAMA,MAAM,uBAAuB,CAAC,WAAwB;AACpD,aAAW,cAAc,OAAO,KAAK,OAAO,OAAO,GAAG;AAC9C,UAAA,SAAS,OAAO,QAAQ,UAAU;AAExC,UAAM,qBAAqB,0BAA0B,WAAW,UAAU,EAAE;AAE5E,QAAI,MAAM,QAAQ,OAAO,MAAM,GAAG;AACzB,aAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAW,CAC3B;AAED,aAAO,OAAO,OAAO;AAAA,QACnB,MAAM;AAAA,QACN,QAAQ,IAAI,UAAU;AAAA,QACtB,QAAQ,OAAO;AAAA,MAAA,CAChB;AAAA,IAAA,OACI;AACLA,iBAAAA,QAAE,QAAQ,OAAO,QAAQ,CAAC,WAAW;AAC5B,eAAA,OAAO,OAAO,QAAQ;AAC7B,eAAO,SAAS,OAAO,UAAU,IAAI,UAAU;AACxC,eAAA,OAAO,QAAQ,CAAC,UAAU;AAC/B,6BAAmB,KAAK;AAClB,gBAAA,OAAO,EAAE;QAAW,CAC3B;AAEM,eAAA,OAAO,OAAO,MAAM;AAAA,MAAA,CAC5B;AAAA,IACH;AAAA,EACF;AACF;AAKA,MAAM,oBAAoB,CAAC,WAAwB;AACjD,aAAW,WAAW,OAAO,KAAK,OAAO,IAAI,GAAG;AACxC,UAAA,MAAM,OAAO,IAAI,OAAO;AAE9B,UAAM,qBAAqB,0BAA0B,QAAQ,OAAO,EAAE;AAEtEA,eAAAA,QAAE,QAAQ,IAAI,QAAQ,CAAC,WAAW;AAGhC,aAAO,OAAO;AACP,aAAA,QAAQ,QAAQ,CAAC,UAAU;AAChC,2BAAmB,KAAK;AAClB,cAAA,OAAO,EAAE;MAAQ,CACxB;AAEM,aAAA,OAAO,OAAO,OAAO,MAAM;AAAA,IAAA,CACnC;AAAA,EACH;AACF;;"}
1
+ {"version":3,"file":"register-routes.js","sources":["../../../src/services/server/register-routes.ts"],"sourcesContent":["import _ from 'lodash';\nimport type { Core } from '@strapi/types';\n\nconst createRouteScopeGenerator = (namespace: string) => (route: Core.RouteInput) => {\n const prefix = namespace.endsWith('::') ? namespace : `${namespace}.`;\n\n if (typeof route.handler === 'string') {\n _.defaultsDeep(route, {\n config: {\n auth: {\n scope: [`${route.handler.startsWith(prefix) ? '' : prefix}${route.handler}`],\n },\n },\n });\n }\n};\n\n/**\n * Register all routes\n */\nexport default (strapi: Core.Strapi) => {\n registerAdminRoutes(strapi);\n registerAPIRoutes(strapi);\n registerPluginRoutes(strapi);\n};\n\n/**\n * Register admin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerAdminRoutes = (strapi: Core.Strapi) => {\n const generateRouteScope = createRouteScopeGenerator(`admin::`);\n\n _.forEach(strapi.admin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/admin`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName: 'admin' };\n });\n strapi.server.routes(router);\n });\n};\n\n/**\n * Register plugin routes\n * @param {import('../../').Strapi} strapi\n */\nconst registerPluginRoutes = (strapi: Core.Strapi) => {\n for (const pluginName of Object.keys(strapi.plugins)) {\n const plugin = strapi.plugins[pluginName];\n\n const generateRouteScope = createRouteScopeGenerator(`plugin::${pluginName}`);\n\n if (Array.isArray(plugin.routes)) {\n plugin.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes({\n type: 'admin',\n prefix: `/${pluginName}`,\n routes: plugin.routes,\n });\n } else {\n _.forEach(plugin.routes, (router) => {\n router.type = router.type || 'admin';\n router.prefix = router.prefix || `/${pluginName}`;\n router.routes.forEach((route) => {\n generateRouteScope(route);\n route.info = { pluginName };\n });\n\n strapi.server.routes(router);\n });\n }\n }\n};\n\n/**\n * Register api routes\n */\nconst registerAPIRoutes = (strapi: Core.Strapi) => {\n for (const apiName of Object.keys(strapi.apis)) {\n const api = strapi.api(apiName);\n\n const generateRouteScope = createRouteScopeGenerator(`api::${apiName}`);\n\n _.forEach(api.routes, (router) => {\n // TODO: remove once auth setup\n // pass meta down to compose endpoint\n router.type = 'content-api';\n router.routes?.forEach((route) => {\n generateRouteScope(route);\n route.info = { apiName };\n });\n\n return strapi.server.routes(router);\n });\n }\n};\n"],"names":["createRouteScopeGenerator","namespace","route","prefix","endsWith","handler","_","defaultsDeep","config","auth","scope","startsWith","strapi","registerAdminRoutes","registerAPIRoutes","registerPluginRoutes","generateRouteScope","forEach","admin","routes","router","type","info","pluginName","server","Object","keys","plugins","plugin","Array","isArray","apiName","apis","api"],"mappings":";;;;AAGA,MAAMA,yBAAAA,GAA4B,CAACC,SAAAA,GAAsB,CAACC,KAAAA,GAAAA;QACxD,MAAMC,MAAAA,GAASF,SAAUG,CAAAA,QAAQ,CAAC,IAAA,CAAA,GAAQH,YAAY,CAAC,EAAEA,SAAU,CAAA,CAAC,CAAC;AAErE,QAAA,IAAI,OAAOC,KAAAA,CAAMG,OAAO,KAAK,QAAU,EAAA;YACrCC,CAAEC,CAAAA,YAAY,CAACL,KAAO,EAAA;gBACpBM,MAAQ,EAAA;oBACNC,IAAM,EAAA;wBACJC,KAAO,EAAA;AAAC,4BAAA,CAAC,EAAER,KAAAA,CAAMG,OAAO,CAACM,UAAU,CAACR,MAAU,CAAA,GAAA,EAAA,GAAKA,MAAO,CAAA,EAAED,KAAMG,CAAAA,OAAO,CAAC;AAAE;AAC9E;AACF;AACF,aAAA,CAAA;AACF;AACF,KAAA;AAEA;;IAGA,wBAAe,CAAA,CAACO,MAAAA,GAAAA;IACdC,mBAAoBD,CAAAA,MAAAA,CAAAA;IACpBE,iBAAkBF,CAAAA,MAAAA,CAAAA;IAClBG,oBAAqBH,CAAAA,MAAAA,CAAAA;AACvB,CAAA;AAEA;;;IAIA,MAAMC,sBAAsB,CAACD,MAAAA,GAAAA;AAC3B,IAAA,MAAMI,kBAAqBhB,GAAAA,yBAAAA,CAA0B,CAAC,OAAO,CAAC,CAAA;AAE9DM,IAAAA,CAAAA,CAAEW,OAAO,CAACL,MAAAA,CAAOM,KAAK,CAACC,MAAM,EAAE,CAACC,MAAAA,GAAAA;AAC9BA,QAAAA,MAAAA,CAAOC,IAAI,GAAGD,MAAOC,CAAAA,IAAI,IAAI,OAAA;AAC7BD,QAAAA,MAAAA,CAAOjB,MAAM,GAAGiB,MAAAA,CAAOjB,MAAM,IAAI,CAAC,MAAM,CAAC;AACzCiB,QAAAA,MAAAA,CAAOD,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;YACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,YAAAA,KAAAA,CAAMoB,IAAI,GAAG;gBAAEC,UAAY,EAAA;AAAQ,aAAA;AACrC,SAAA,CAAA;QACAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AACvB,KAAA,CAAA;AACF,CAAA;AAEA;;;IAIA,MAAML,uBAAuB,CAACH,MAAAA,GAAAA;AAC5B,IAAA,KAAK,MAAMW,UAAcE,IAAAA,MAAAA,CAAOC,IAAI,CAACd,MAAAA,CAAOe,OAAO,CAAG,CAAA;AACpD,QAAA,MAAMC,MAAShB,GAAAA,MAAAA,CAAOe,OAAO,CAACJ,UAAW,CAAA;AAEzC,QAAA,MAAMP,qBAAqBhB,yBAA0B,CAAA,CAAC,QAAQ,EAAEuB,WAAW,CAAC,CAAA;AAE5E,QAAA,IAAIM,KAAMC,CAAAA,OAAO,CAACF,MAAAA,CAAOT,MAAM,CAAG,EAAA;AAChCS,YAAAA,MAAAA,CAAOT,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;gBACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,gBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAEC,oBAAAA;AAAW,iBAAA;AAC5B,aAAA,CAAA;YAEAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAAC;gBACnBE,IAAM,EAAA,OAAA;AACNlB,gBAAAA,MAAAA,EAAQ,CAAC,CAAC,EAAEoB,UAAAA,CAAW,CAAC;AACxBJ,gBAAAA,MAAAA,EAAQS,OAAOT;AACjB,aAAA,CAAA;SACK,MAAA;AACLb,YAAAA,CAAAA,CAAEW,OAAO,CAACW,MAAOT,CAAAA,MAAM,EAAE,CAACC,MAAAA,GAAAA;AACxBA,gBAAAA,MAAAA,CAAOC,IAAI,GAAGD,MAAOC,CAAAA,IAAI,IAAI,OAAA;gBAC7BD,MAAOjB,CAAAA,MAAM,GAAGiB,MAAOjB,CAAAA,MAAM,IAAI,CAAC,CAAC,EAAEoB,UAAAA,CAAW,CAAC;AACjDH,gBAAAA,MAAAA,CAAOD,MAAM,CAACF,OAAO,CAAC,CAACf,KAAAA,GAAAA;oBACrBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,oBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAEC,wBAAAA;AAAW,qBAAA;AAC5B,iBAAA,CAAA;gBAEAX,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AACvB,aAAA,CAAA;AACF;AACF;AACF,CAAA;AAEA;;IAGA,MAAMN,oBAAoB,CAACF,MAAAA,GAAAA;AACzB,IAAA,KAAK,MAAMmB,OAAWN,IAAAA,MAAAA,CAAOC,IAAI,CAACd,MAAAA,CAAOoB,IAAI,CAAG,CAAA;QAC9C,MAAMC,GAAAA,GAAMrB,MAAOqB,CAAAA,GAAG,CAACF,OAAAA,CAAAA;AAEvB,QAAA,MAAMf,qBAAqBhB,yBAA0B,CAAA,CAAC,KAAK,EAAE+B,QAAQ,CAAC,CAAA;AAEtEzB,QAAAA,CAAAA,CAAEW,OAAO,CAACgB,GAAId,CAAAA,MAAM,EAAE,CAACC,MAAAA,GAAAA;;;AAGrBA,YAAAA,MAAAA,CAAOC,IAAI,GAAG,aAAA;YACdD,MAAOD,CAAAA,MAAM,EAAEF,OAAAA,CAAQ,CAACf,KAAAA,GAAAA;gBACtBc,kBAAmBd,CAAAA,KAAAA,CAAAA;AACnBA,gBAAAA,KAAAA,CAAMoB,IAAI,GAAG;AAAES,oBAAAA;AAAQ,iBAAA;AACzB,aAAA,CAAA;AAEA,YAAA,OAAOnB,MAAOY,CAAAA,MAAM,CAACL,MAAM,CAACC,MAAAA,CAAAA;AAC9B,SAAA,CAAA;AACF;AACF,CAAA;;;;"}