@strapi/core 0.0.0-experimental.3218535c8b12e654be4191f9c36c07b43861b437 → 0.0.0-experimental.32a96e212ac6550182455c62b032966a13f0a362

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.

Potentially problematic release.


This version of @strapi/core might be problematic. Click here for more details.

Files changed (742) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +427 -406
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +426 -405
  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 -96
  11. package/dist/configuration/config-loader.js.map +1 -1
  12. package/dist/configuration/config-loader.mjs +109 -95
  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 +1 -0
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +85 -78
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +84 -74
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/configuration/urls.d.ts.map +1 -1
  25. package/dist/configuration/urls.js +74 -61
  26. package/dist/configuration/urls.js.map +1 -1
  27. package/dist/configuration/urls.mjs +73 -62
  28. package/dist/configuration/urls.mjs.map +1 -1
  29. package/dist/container.js +27 -23
  30. package/dist/container.js.map +1 -1
  31. package/dist/container.mjs +26 -24
  32. package/dist/container.mjs.map +1 -1
  33. package/dist/core-api/controller/collection-type.js +77 -76
  34. package/dist/core-api/controller/collection-type.js.map +1 -1
  35. package/dist/core-api/controller/collection-type.mjs +76 -77
  36. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  37. package/dist/core-api/controller/index.js +63 -48
  38. package/dist/core-api/controller/index.js.map +1 -1
  39. package/dist/core-api/controller/index.mjs +62 -49
  40. package/dist/core-api/controller/index.mjs.map +1 -1
  41. package/dist/core-api/controller/single-type.js +41 -40
  42. package/dist/core-api/controller/single-type.js.map +1 -1
  43. package/dist/core-api/controller/single-type.mjs +40 -41
  44. package/dist/core-api/controller/single-type.mjs.map +1 -1
  45. package/dist/core-api/controller/transform.js +72 -63
  46. package/dist/core-api/controller/transform.js.map +1 -1
  47. package/dist/core-api/controller/transform.mjs +71 -64
  48. package/dist/core-api/controller/transform.mjs.map +1 -1
  49. package/dist/core-api/routes/index.d.ts +4 -22
  50. package/dist/core-api/routes/index.d.ts.map +1 -1
  51. package/dist/core-api/routes/index.js +187 -62
  52. package/dist/core-api/routes/index.js.map +1 -1
  53. package/dist/core-api/routes/index.mjs +185 -62
  54. package/dist/core-api/routes/index.mjs.map +1 -1
  55. package/dist/core-api/routes/validation/attributes.d.ts +88 -0
  56. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  57. package/dist/core-api/routes/validation/attributes.js +588 -0
  58. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  59. package/dist/core-api/routes/validation/attributes.mjs +585 -0
  60. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  61. package/dist/core-api/routes/validation/common.d.ts +103 -0
  62. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  63. package/dist/core-api/routes/validation/common.js +95 -0
  64. package/dist/core-api/routes/validation/common.js.map +1 -0
  65. package/dist/core-api/routes/validation/common.mjs +93 -0
  66. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  67. package/dist/core-api/routes/validation/component.d.ts +42 -0
  68. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  69. package/dist/core-api/routes/validation/component.js +59 -0
  70. package/dist/core-api/routes/validation/component.js.map +1 -0
  71. package/dist/core-api/routes/validation/component.mjs +57 -0
  72. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  73. package/dist/core-api/routes/validation/constants.d.ts +2 -0
  74. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  75. package/dist/core-api/routes/validation/constants.js +13 -0
  76. package/dist/core-api/routes/validation/constants.js.map +1 -0
  77. package/dist/core-api/routes/validation/constants.mjs +11 -0
  78. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  79. package/dist/core-api/routes/validation/content-type.d.ts +171 -0
  80. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  81. package/dist/core-api/routes/validation/content-type.js +246 -0
  82. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  83. package/dist/core-api/routes/validation/content-type.mjs +244 -0
  84. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  85. package/dist/core-api/routes/validation/index.d.ts +5 -0
  86. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  87. package/dist/core-api/service/collection-type.js +73 -60
  88. package/dist/core-api/service/collection-type.js.map +1 -1
  89. package/dist/core-api/service/collection-type.mjs +72 -62
  90. package/dist/core-api/service/collection-type.mjs.map +1 -1
  91. package/dist/core-api/service/core-service.js +9 -8
  92. package/dist/core-api/service/core-service.js.map +1 -1
  93. package/dist/core-api/service/core-service.mjs +8 -9
  94. package/dist/core-api/service/core-service.mjs.map +1 -1
  95. package/dist/core-api/service/index.js +13 -13
  96. package/dist/core-api/service/index.js.map +1 -1
  97. package/dist/core-api/service/index.mjs +12 -14
  98. package/dist/core-api/service/index.mjs.map +1 -1
  99. package/dist/core-api/service/pagination.js +69 -43
  100. package/dist/core-api/service/pagination.js.map +1 -1
  101. package/dist/core-api/service/pagination.mjs +68 -47
  102. package/dist/core-api/service/pagination.mjs.map +1 -1
  103. package/dist/core-api/service/single-type.js +43 -38
  104. package/dist/core-api/service/single-type.js.map +1 -1
  105. package/dist/core-api/service/single-type.mjs +42 -40
  106. package/dist/core-api/service/single-type.mjs.map +1 -1
  107. package/dist/domain/content-type/index.js +95 -100
  108. package/dist/domain/content-type/index.js.map +1 -1
  109. package/dist/domain/content-type/index.mjs +94 -100
  110. package/dist/domain/content-type/index.mjs.map +1 -1
  111. package/dist/domain/content-type/validator.js +84 -69
  112. package/dist/domain/content-type/validator.js.map +1 -1
  113. package/dist/domain/content-type/validator.mjs +83 -68
  114. package/dist/domain/content-type/validator.mjs.map +1 -1
  115. package/dist/domain/module/index.d.ts.map +1 -1
  116. package/dist/domain/module/index.js +112 -100
  117. package/dist/domain/module/index.js.map +1 -1
  118. package/dist/domain/module/index.mjs +111 -99
  119. package/dist/domain/module/index.mjs.map +1 -1
  120. package/dist/domain/module/validation.js +25 -20
  121. package/dist/domain/module/validation.js.map +1 -1
  122. package/dist/domain/module/validation.mjs +24 -21
  123. package/dist/domain/module/validation.mjs.map +1 -1
  124. package/dist/ee/index.d.ts +1 -0
  125. package/dist/ee/index.d.ts.map +1 -1
  126. package/dist/ee/index.js +171 -137
  127. package/dist/ee/index.js.map +1 -1
  128. package/dist/ee/index.mjs +170 -139
  129. package/dist/ee/index.mjs.map +1 -1
  130. package/dist/ee/license.d.ts.map +1 -1
  131. package/dist/ee/license.js +100 -75
  132. package/dist/ee/license.js.map +1 -1
  133. package/dist/ee/license.mjs +99 -76
  134. package/dist/ee/license.mjs.map +1 -1
  135. package/dist/factories.d.ts +3 -1
  136. package/dist/factories.d.ts.map +1 -1
  137. package/dist/factories.js +80 -67
  138. package/dist/factories.js.map +1 -1
  139. package/dist/factories.mjs +77 -70
  140. package/dist/factories.mjs.map +1 -1
  141. package/dist/index.js +29 -26
  142. package/dist/index.js.map +1 -1
  143. package/dist/index.mjs +29 -29
  144. package/dist/index.mjs.map +1 -1
  145. package/dist/loaders/admin.d.ts.map +1 -1
  146. package/dist/loaders/admin.js +21 -20
  147. package/dist/loaders/admin.js.map +1 -1
  148. package/dist/loaders/admin.mjs +20 -20
  149. package/dist/loaders/admin.mjs.map +1 -1
  150. package/dist/loaders/apis.js +143 -120
  151. package/dist/loaders/apis.js.map +1 -1
  152. package/dist/loaders/apis.mjs +142 -119
  153. package/dist/loaders/apis.mjs.map +1 -1
  154. package/dist/loaders/components.js +33 -34
  155. package/dist/loaders/components.js.map +1 -1
  156. package/dist/loaders/components.mjs +32 -34
  157. package/dist/loaders/components.mjs.map +1 -1
  158. package/dist/loaders/index.js +22 -20
  159. package/dist/loaders/index.js.map +1 -1
  160. package/dist/loaders/index.mjs +21 -21
  161. package/dist/loaders/index.mjs.map +1 -1
  162. package/dist/loaders/middlewares.js +29 -25
  163. package/dist/loaders/middlewares.js.map +1 -1
  164. package/dist/loaders/middlewares.mjs +28 -25
  165. package/dist/loaders/middlewares.mjs.map +1 -1
  166. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  167. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  168. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  169. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  170. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  171. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  172. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  173. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  174. package/dist/loaders/plugins/index.js +132 -121
  175. package/dist/loaders/plugins/index.js.map +1 -1
  176. package/dist/loaders/plugins/index.mjs +121 -112
  177. package/dist/loaders/plugins/index.mjs.map +1 -1
  178. package/dist/loaders/policies.js +24 -20
  179. package/dist/loaders/policies.js.map +1 -1
  180. package/dist/loaders/policies.mjs +23 -20
  181. package/dist/loaders/policies.mjs.map +1 -1
  182. package/dist/loaders/sanitizers.js +10 -4
  183. package/dist/loaders/sanitizers.js.map +1 -1
  184. package/dist/loaders/sanitizers.mjs +9 -6
  185. package/dist/loaders/sanitizers.mjs.map +1 -1
  186. package/dist/loaders/src-index.js +35 -27
  187. package/dist/loaders/src-index.js.map +1 -1
  188. package/dist/loaders/src-index.mjs +34 -29
  189. package/dist/loaders/src-index.mjs.map +1 -1
  190. package/dist/loaders/validators.js +9 -4
  191. package/dist/loaders/validators.js.map +1 -1
  192. package/dist/loaders/validators.mjs +8 -6
  193. package/dist/loaders/validators.mjs.map +1 -1
  194. package/dist/middlewares/body.d.ts.map +1 -1
  195. package/dist/middlewares/body.js +58 -54
  196. package/dist/middlewares/body.js.map +1 -1
  197. package/dist/middlewares/body.mjs +57 -51
  198. package/dist/middlewares/body.mjs.map +1 -1
  199. package/dist/middlewares/compression.js +6 -6
  200. package/dist/middlewares/compression.js.map +1 -1
  201. package/dist/middlewares/compression.mjs +5 -5
  202. package/dist/middlewares/compression.mjs.map +1 -1
  203. package/dist/middlewares/cors.js +59 -48
  204. package/dist/middlewares/cors.js.map +1 -1
  205. package/dist/middlewares/cors.mjs +58 -47
  206. package/dist/middlewares/cors.mjs.map +1 -1
  207. package/dist/middlewares/errors.js +32 -30
  208. package/dist/middlewares/errors.js.map +1 -1
  209. package/dist/middlewares/errors.mjs +31 -31
  210. package/dist/middlewares/errors.mjs.map +1 -1
  211. package/dist/middlewares/favicon.js +27 -17
  212. package/dist/middlewares/favicon.js.map +1 -1
  213. package/dist/middlewares/favicon.mjs +26 -16
  214. package/dist/middlewares/favicon.mjs.map +1 -1
  215. package/dist/middlewares/index.js +32 -30
  216. package/dist/middlewares/index.js.map +1 -1
  217. package/dist/middlewares/index.mjs +31 -31
  218. package/dist/middlewares/index.mjs.map +1 -1
  219. package/dist/middlewares/ip.js +6 -6
  220. package/dist/middlewares/ip.js.map +1 -1
  221. package/dist/middlewares/ip.mjs +5 -5
  222. package/dist/middlewares/ip.mjs.map +1 -1
  223. package/dist/middlewares/logger.js +10 -9
  224. package/dist/middlewares/logger.js.map +1 -1
  225. package/dist/middlewares/logger.mjs +9 -10
  226. package/dist/middlewares/logger.mjs.map +1 -1
  227. package/dist/middlewares/powered-by.js +13 -9
  228. package/dist/middlewares/powered-by.js.map +1 -1
  229. package/dist/middlewares/powered-by.mjs +12 -10
  230. package/dist/middlewares/powered-by.mjs.map +1 -1
  231. package/dist/middlewares/public.js +33 -29
  232. package/dist/middlewares/public.js.map +1 -1
  233. package/dist/middlewares/public.mjs +32 -28
  234. package/dist/middlewares/public.mjs.map +1 -1
  235. package/dist/middlewares/query.js +35 -32
  236. package/dist/middlewares/query.js.map +1 -1
  237. package/dist/middlewares/query.mjs +34 -31
  238. package/dist/middlewares/query.mjs.map +1 -1
  239. package/dist/middlewares/response-time.js +10 -9
  240. package/dist/middlewares/response-time.js.map +1 -1
  241. package/dist/middlewares/response-time.mjs +9 -10
  242. package/dist/middlewares/response-time.mjs.map +1 -1
  243. package/dist/middlewares/responses.js +14 -12
  244. package/dist/middlewares/responses.js.map +1 -1
  245. package/dist/middlewares/responses.mjs +13 -13
  246. package/dist/middlewares/responses.mjs.map +1 -1
  247. package/dist/middlewares/security.js +109 -71
  248. package/dist/middlewares/security.js.map +1 -1
  249. package/dist/middlewares/security.mjs +108 -70
  250. package/dist/middlewares/security.mjs.map +1 -1
  251. package/dist/middlewares/session.js +26 -25
  252. package/dist/middlewares/session.js.map +1 -1
  253. package/dist/middlewares/session.mjs +25 -24
  254. package/dist/middlewares/session.mjs.map +1 -1
  255. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  256. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  257. package/dist/migrations/database/5.0.0-discard-drafts.js +152 -90
  258. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  259. package/dist/migrations/database/5.0.0-discard-drafts.mjs +151 -92
  260. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  261. package/dist/migrations/draft-publish.d.ts +1 -1
  262. package/dist/migrations/draft-publish.d.ts.map +1 -1
  263. package/dist/migrations/draft-publish.js +61 -34
  264. package/dist/migrations/draft-publish.js.map +1 -1
  265. package/dist/migrations/draft-publish.mjs +60 -36
  266. package/dist/migrations/draft-publish.mjs.map +1 -1
  267. package/dist/migrations/i18n.js +62 -45
  268. package/dist/migrations/i18n.js.map +1 -1
  269. package/dist/migrations/i18n.mjs +61 -47
  270. package/dist/migrations/i18n.mjs.map +1 -1
  271. package/dist/migrations/index.js +24 -10
  272. package/dist/migrations/index.js.map +1 -1
  273. package/dist/migrations/index.mjs +23 -12
  274. package/dist/migrations/index.mjs.map +1 -1
  275. package/dist/package.json.js +183 -0
  276. package/dist/package.json.js.map +1 -0
  277. package/dist/package.json.mjs +160 -0
  278. package/dist/package.json.mjs.map +1 -0
  279. package/dist/providers/admin.js +27 -17
  280. package/dist/providers/admin.js.map +1 -1
  281. package/dist/providers/admin.mjs +26 -19
  282. package/dist/providers/admin.mjs.map +1 -1
  283. package/dist/providers/coreStore.js +13 -8
  284. package/dist/providers/coreStore.js.map +1 -1
  285. package/dist/providers/coreStore.mjs +12 -10
  286. package/dist/providers/coreStore.mjs.map +1 -1
  287. package/dist/providers/cron.js +19 -16
  288. package/dist/providers/cron.js.map +1 -1
  289. package/dist/providers/cron.mjs +18 -18
  290. package/dist/providers/cron.mjs.map +1 -1
  291. package/dist/providers/index.js +18 -9
  292. package/dist/providers/index.js.map +1 -1
  293. package/dist/providers/index.mjs +17 -10
  294. package/dist/providers/index.mjs.map +1 -1
  295. package/dist/providers/provider.js +4 -3
  296. package/dist/providers/provider.js.map +1 -1
  297. package/dist/providers/provider.mjs +3 -4
  298. package/dist/providers/provider.mjs.map +1 -1
  299. package/dist/providers/registries.js +37 -32
  300. package/dist/providers/registries.js.map +1 -1
  301. package/dist/providers/registries.mjs +36 -34
  302. package/dist/providers/registries.mjs.map +1 -1
  303. package/dist/providers/telemetry.js +19 -16
  304. package/dist/providers/telemetry.js.map +1 -1
  305. package/dist/providers/telemetry.mjs +18 -18
  306. package/dist/providers/telemetry.mjs.map +1 -1
  307. package/dist/providers/webhooks.js +28 -26
  308. package/dist/providers/webhooks.js.map +1 -1
  309. package/dist/providers/webhooks.mjs +27 -28
  310. package/dist/providers/webhooks.mjs.map +1 -1
  311. package/dist/registries/apis.js +23 -20
  312. package/dist/registries/apis.js.map +1 -1
  313. package/dist/registries/apis.mjs +22 -22
  314. package/dist/registries/apis.mjs.map +1 -1
  315. package/dist/registries/components.js +35 -37
  316. package/dist/registries/components.js.map +1 -1
  317. package/dist/registries/components.mjs +34 -39
  318. package/dist/registries/components.mjs.map +1 -1
  319. package/dist/registries/content-types.js +54 -59
  320. package/dist/registries/content-types.js.map +1 -1
  321. package/dist/registries/content-types.mjs +53 -61
  322. package/dist/registries/content-types.mjs.map +1 -1
  323. package/dist/registries/controllers.js +70 -71
  324. package/dist/registries/controllers.js.map +1 -1
  325. package/dist/registries/controllers.mjs +69 -73
  326. package/dist/registries/controllers.mjs.map +1 -1
  327. package/dist/registries/custom-fields.js +75 -65
  328. package/dist/registries/custom-fields.js.map +1 -1
  329. package/dist/registries/custom-fields.mjs +74 -67
  330. package/dist/registries/custom-fields.mjs.map +1 -1
  331. package/dist/registries/hooks.js +46 -49
  332. package/dist/registries/hooks.js.map +1 -1
  333. package/dist/registries/hooks.mjs +45 -51
  334. package/dist/registries/hooks.mjs.map +1 -1
  335. package/dist/registries/middlewares.js +49 -51
  336. package/dist/registries/middlewares.js.map +1 -1
  337. package/dist/registries/middlewares.mjs +48 -53
  338. package/dist/registries/middlewares.mjs.map +1 -1
  339. package/dist/registries/models.js +14 -13
  340. package/dist/registries/models.js.map +1 -1
  341. package/dist/registries/models.mjs +13 -14
  342. package/dist/registries/models.mjs.map +1 -1
  343. package/dist/registries/modules.js +39 -36
  344. package/dist/registries/modules.js.map +1 -1
  345. package/dist/registries/modules.mjs +38 -38
  346. package/dist/registries/modules.mjs.map +1 -1
  347. package/dist/registries/namespace.js +21 -20
  348. package/dist/registries/namespace.js.map +1 -1
  349. package/dist/registries/namespace.mjs +20 -23
  350. package/dist/registries/namespace.mjs.map +1 -1
  351. package/dist/registries/plugins.js +23 -20
  352. package/dist/registries/plugins.js.map +1 -1
  353. package/dist/registries/plugins.mjs +22 -22
  354. package/dist/registries/plugins.mjs.map +1 -1
  355. package/dist/registries/policies.js +103 -96
  356. package/dist/registries/policies.js.map +1 -1
  357. package/dist/registries/policies.mjs +102 -98
  358. package/dist/registries/policies.mjs.map +1 -1
  359. package/dist/registries/sanitizers.js +23 -22
  360. package/dist/registries/sanitizers.js.map +1 -1
  361. package/dist/registries/sanitizers.mjs +22 -22
  362. package/dist/registries/sanitizers.mjs.map +1 -1
  363. package/dist/registries/services.js +71 -71
  364. package/dist/registries/services.js.map +1 -1
  365. package/dist/registries/services.mjs +70 -73
  366. package/dist/registries/services.mjs.map +1 -1
  367. package/dist/registries/validators.js +23 -22
  368. package/dist/registries/validators.js.map +1 -1
  369. package/dist/registries/validators.mjs +22 -22
  370. package/dist/registries/validators.mjs.map +1 -1
  371. package/dist/services/auth/index.js +74 -74
  372. package/dist/services/auth/index.js.map +1 -1
  373. package/dist/services/auth/index.mjs +73 -74
  374. package/dist/services/auth/index.mjs.map +1 -1
  375. package/dist/services/config.js +47 -43
  376. package/dist/services/config.js.map +1 -1
  377. package/dist/services/config.mjs +46 -44
  378. package/dist/services/config.mjs.map +1 -1
  379. package/dist/services/content-api/index.js +80 -79
  380. package/dist/services/content-api/index.js.map +1 -1
  381. package/dist/services/content-api/index.mjs +79 -79
  382. package/dist/services/content-api/index.mjs.map +1 -1
  383. package/dist/services/content-api/permissions/engine.js +8 -5
  384. package/dist/services/content-api/permissions/engine.js.map +1 -1
  385. package/dist/services/content-api/permissions/engine.mjs +7 -5
  386. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  387. package/dist/services/content-api/permissions/index.js +101 -81
  388. package/dist/services/content-api/permissions/index.js.map +1 -1
  389. package/dist/services/content-api/permissions/index.mjs +100 -81
  390. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  391. package/dist/services/content-api/permissions/providers/action.js +17 -14
  392. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  393. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  394. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  395. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  396. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  397. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  398. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  399. package/dist/services/core-store.js +115 -95
  400. package/dist/services/core-store.js.map +1 -1
  401. package/dist/services/core-store.mjs +114 -97
  402. package/dist/services/core-store.mjs.map +1 -1
  403. package/dist/services/cron.js +74 -64
  404. package/dist/services/cron.js.map +1 -1
  405. package/dist/services/cron.mjs +73 -66
  406. package/dist/services/cron.mjs.map +1 -1
  407. package/dist/services/custom-fields.js +9 -7
  408. package/dist/services/custom-fields.js.map +1 -1
  409. package/dist/services/custom-fields.mjs +8 -9
  410. package/dist/services/custom-fields.mjs.map +1 -1
  411. package/dist/services/document-service/attributes/index.js +23 -18
  412. package/dist/services/document-service/attributes/index.js.map +1 -1
  413. package/dist/services/document-service/attributes/index.mjs +22 -19
  414. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  415. package/dist/services/document-service/attributes/transforms.js +16 -15
  416. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  417. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  418. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  419. package/dist/services/document-service/common.js +5 -4
  420. package/dist/services/document-service/common.js.map +1 -1
  421. package/dist/services/document-service/common.mjs +4 -5
  422. package/dist/services/document-service/common.mjs.map +1 -1
  423. package/dist/services/document-service/components.d.ts.map +1 -1
  424. package/dist/services/document-service/components.js +255 -257
  425. package/dist/services/document-service/components.js.map +1 -1
  426. package/dist/services/document-service/components.mjs +254 -262
  427. package/dist/services/document-service/components.mjs.map +1 -1
  428. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  429. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  430. package/dist/services/document-service/draft-and-publish.js +88 -48
  431. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  432. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  433. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  434. package/dist/services/document-service/entries.js +109 -91
  435. package/dist/services/document-service/entries.js.map +1 -1
  436. package/dist/services/document-service/entries.mjs +108 -92
  437. package/dist/services/document-service/entries.mjs.map +1 -1
  438. package/dist/services/document-service/events.d.ts +1 -1
  439. package/dist/services/document-service/events.d.ts.map +1 -1
  440. package/dist/services/document-service/events.js +52 -40
  441. package/dist/services/document-service/events.js.map +1 -1
  442. package/dist/services/document-service/events.mjs +51 -41
  443. package/dist/services/document-service/events.mjs.map +1 -1
  444. package/dist/services/document-service/index.js +53 -33
  445. package/dist/services/document-service/index.js.map +1 -1
  446. package/dist/services/document-service/index.mjs +52 -34
  447. package/dist/services/document-service/index.mjs.map +1 -1
  448. package/dist/services/document-service/internationalization.js +62 -46
  449. package/dist/services/document-service/internationalization.js.map +1 -1
  450. package/dist/services/document-service/internationalization.mjs +61 -50
  451. package/dist/services/document-service/internationalization.mjs.map +1 -1
  452. package/dist/services/document-service/middlewares/errors.js +23 -19
  453. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  454. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  455. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  456. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  457. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  458. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  459. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  460. package/dist/services/document-service/params.js +11 -5
  461. package/dist/services/document-service/params.js.map +1 -1
  462. package/dist/services/document-service/params.mjs +10 -6
  463. package/dist/services/document-service/params.mjs.map +1 -1
  464. package/dist/services/document-service/repository.d.ts.map +1 -1
  465. package/dist/services/document-service/repository.js +354 -319
  466. package/dist/services/document-service/repository.js.map +1 -1
  467. package/dist/services/document-service/repository.mjs +353 -320
  468. package/dist/services/document-service/repository.mjs.map +1 -1
  469. package/dist/services/document-service/transform/data.js +22 -12
  470. package/dist/services/document-service/transform/data.js.map +1 -1
  471. package/dist/services/document-service/transform/data.mjs +21 -13
  472. package/dist/services/document-service/transform/data.mjs.map +1 -1
  473. package/dist/services/document-service/transform/fields.js +26 -17
  474. package/dist/services/document-service/transform/fields.js.map +1 -1
  475. package/dist/services/document-service/transform/fields.mjs +25 -18
  476. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  477. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  478. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  479. package/dist/services/document-service/transform/id-map.js +115 -75
  480. package/dist/services/document-service/transform/id-map.js.map +1 -1
  481. package/dist/services/document-service/transform/id-map.mjs +114 -76
  482. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  483. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  484. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  485. package/dist/services/document-service/transform/id-transform.js +37 -29
  486. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  487. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  488. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  489. package/dist/services/document-service/transform/populate.js +23 -18
  490. package/dist/services/document-service/transform/populate.js.map +1 -1
  491. package/dist/services/document-service/transform/populate.mjs +22 -19
  492. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  493. package/dist/services/document-service/transform/query.js +11 -6
  494. package/dist/services/document-service/transform/query.js.map +1 -1
  495. package/dist/services/document-service/transform/query.mjs +10 -7
  496. package/dist/services/document-service/transform/query.mjs.map +1 -1
  497. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  498. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  499. package/dist/services/document-service/transform/relations/extract/data-ids.js +70 -54
  500. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  501. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +69 -55
  502. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  503. package/dist/services/document-service/transform/relations/transform/data-ids.js +96 -71
  504. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  505. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +95 -72
  506. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  507. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  508. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  509. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  510. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  511. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  512. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  513. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  514. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  515. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  516. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  517. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  518. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  519. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  520. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  521. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  522. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  523. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -70
  524. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  525. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -72
  526. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  527. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  528. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  529. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  530. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  531. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  532. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  533. package/dist/services/document-service/utils/populate.d.ts +1 -1
  534. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  535. package/dist/services/document-service/utils/populate.js +66 -42
  536. package/dist/services/document-service/utils/populate.js.map +1 -1
  537. package/dist/services/document-service/utils/populate.mjs +65 -43
  538. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  539. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  540. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  541. package/dist/services/document-service/utils/unidirectional-relations.js +110 -62
  542. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  543. package/dist/services/document-service/utils/unidirectional-relations.mjs +109 -64
  544. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  545. package/dist/services/entity-service/index.js +230 -161
  546. package/dist/services/entity-service/index.js.map +1 -1
  547. package/dist/services/entity-service/index.mjs +229 -160
  548. package/dist/services/entity-service/index.mjs.map +1 -1
  549. package/dist/services/entity-validator/blocks-validator.js +135 -103
  550. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  551. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  552. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  553. package/dist/services/entity-validator/index.d.ts +1 -1
  554. package/dist/services/entity-validator/index.d.ts.map +1 -1
  555. package/dist/services/entity-validator/index.js +362 -367
  556. package/dist/services/entity-validator/index.js.map +1 -1
  557. package/dist/services/entity-validator/index.mjs +358 -364
  558. package/dist/services/entity-validator/index.mjs.map +1 -1
  559. package/dist/services/entity-validator/validators.js +268 -210
  560. package/dist/services/entity-validator/validators.js.map +1 -1
  561. package/dist/services/entity-validator/validators.mjs +267 -216
  562. package/dist/services/entity-validator/validators.mjs.map +1 -1
  563. package/dist/services/errors.js +65 -65
  564. package/dist/services/errors.js.map +1 -1
  565. package/dist/services/errors.mjs +64 -66
  566. package/dist/services/errors.mjs.map +1 -1
  567. package/dist/services/event-hub.js +82 -69
  568. package/dist/services/event-hub.js.map +1 -1
  569. package/dist/services/event-hub.mjs +81 -71
  570. package/dist/services/event-hub.mjs.map +1 -1
  571. package/dist/services/features.js +19 -14
  572. package/dist/services/features.js.map +1 -1
  573. package/dist/services/features.mjs +18 -15
  574. package/dist/services/features.mjs.map +1 -1
  575. package/dist/services/fs.js +41 -40
  576. package/dist/services/fs.js.map +1 -1
  577. package/dist/services/fs.mjs +40 -39
  578. package/dist/services/fs.mjs.map +1 -1
  579. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  580. package/dist/services/metrics/admin-user-hash.js +13 -11
  581. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  582. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  583. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  584. package/dist/services/metrics/index.js +46 -39
  585. package/dist/services/metrics/index.js.map +1 -1
  586. package/dist/services/metrics/index.mjs +45 -41
  587. package/dist/services/metrics/index.mjs.map +1 -1
  588. package/dist/services/metrics/is-truthy.js +13 -6
  589. package/dist/services/metrics/is-truthy.js.map +1 -1
  590. package/dist/services/metrics/is-truthy.mjs +12 -6
  591. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  592. package/dist/services/metrics/middleware.d.ts.map +1 -1
  593. package/dist/services/metrics/middleware.js +37 -22
  594. package/dist/services/metrics/middleware.js.map +1 -1
  595. package/dist/services/metrics/middleware.mjs +36 -24
  596. package/dist/services/metrics/middleware.mjs.map +1 -1
  597. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  598. package/dist/services/metrics/rate-limiter.js +24 -19
  599. package/dist/services/metrics/rate-limiter.js.map +1 -1
  600. package/dist/services/metrics/rate-limiter.mjs +23 -21
  601. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  602. package/dist/services/metrics/sender.d.ts.map +1 -1
  603. package/dist/services/metrics/sender.js +78 -69
  604. package/dist/services/metrics/sender.js.map +1 -1
  605. package/dist/services/metrics/sender.mjs +77 -64
  606. package/dist/services/metrics/sender.mjs.map +1 -1
  607. package/dist/services/query-params.js +13 -10
  608. package/dist/services/query-params.js.map +1 -1
  609. package/dist/services/query-params.mjs +12 -12
  610. package/dist/services/query-params.mjs.map +1 -1
  611. package/dist/services/reloader.js +35 -32
  612. package/dist/services/reloader.js.map +1 -1
  613. package/dist/services/reloader.mjs +34 -33
  614. package/dist/services/reloader.mjs.map +1 -1
  615. package/dist/services/request-context.js +11 -8
  616. package/dist/services/request-context.js.map +1 -1
  617. package/dist/services/request-context.mjs +10 -10
  618. package/dist/services/request-context.mjs.map +1 -1
  619. package/dist/services/server/admin-api.js +11 -10
  620. package/dist/services/server/admin-api.js.map +1 -1
  621. package/dist/services/server/admin-api.mjs +10 -11
  622. package/dist/services/server/admin-api.mjs.map +1 -1
  623. package/dist/services/server/api.js +33 -27
  624. package/dist/services/server/api.js.map +1 -1
  625. package/dist/services/server/api.mjs +32 -26
  626. package/dist/services/server/api.mjs.map +1 -1
  627. package/dist/services/server/compose-endpoint.js +116 -105
  628. package/dist/services/server/compose-endpoint.js.map +1 -1
  629. package/dist/services/server/compose-endpoint.mjs +115 -105
  630. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  631. package/dist/services/server/content-api.js +11 -9
  632. package/dist/services/server/content-api.js.map +1 -1
  633. package/dist/services/server/content-api.mjs +10 -10
  634. package/dist/services/server/content-api.mjs.map +1 -1
  635. package/dist/services/server/http-server.js +48 -44
  636. package/dist/services/server/http-server.js.map +1 -1
  637. package/dist/services/server/http-server.mjs +47 -43
  638. package/dist/services/server/http-server.mjs.map +1 -1
  639. package/dist/services/server/index.js +85 -82
  640. package/dist/services/server/index.js.map +1 -1
  641. package/dist/services/server/index.mjs +84 -81
  642. package/dist/services/server/index.mjs.map +1 -1
  643. package/dist/services/server/koa.js +49 -47
  644. package/dist/services/server/koa.js.map +1 -1
  645. package/dist/services/server/koa.mjs +48 -44
  646. package/dist/services/server/koa.mjs.map +1 -1
  647. package/dist/services/server/middleware.js +86 -82
  648. package/dist/services/server/middleware.js.map +1 -1
  649. package/dist/services/server/middleware.mjs +85 -82
  650. package/dist/services/server/middleware.mjs.map +1 -1
  651. package/dist/services/server/policy.js +24 -17
  652. package/dist/services/server/policy.js.map +1 -1
  653. package/dist/services/server/policy.mjs +23 -18
  654. package/dist/services/server/policy.mjs.map +1 -1
  655. package/dist/services/server/register-middlewares.js +68 -61
  656. package/dist/services/server/register-middlewares.js.map +1 -1
  657. package/dist/services/server/register-middlewares.mjs +67 -63
  658. package/dist/services/server/register-middlewares.mjs.map +1 -1
  659. package/dist/services/server/register-routes.js +109 -66
  660. package/dist/services/server/register-routes.js.map +1 -1
  661. package/dist/services/server/register-routes.mjs +108 -66
  662. package/dist/services/server/register-routes.mjs.map +1 -1
  663. package/dist/services/server/routing.d.ts +10 -0
  664. package/dist/services/server/routing.d.ts.map +1 -1
  665. package/dist/services/server/routing.js +100 -81
  666. package/dist/services/server/routing.js.map +1 -1
  667. package/dist/services/server/routing.mjs +99 -81
  668. package/dist/services/server/routing.mjs.map +1 -1
  669. package/dist/services/utils/dynamic-zones.js +13 -14
  670. package/dist/services/utils/dynamic-zones.js.map +1 -1
  671. package/dist/services/utils/dynamic-zones.mjs +12 -16
  672. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  673. package/dist/services/webhook-runner.js +124 -122
  674. package/dist/services/webhook-runner.js.map +1 -1
  675. package/dist/services/webhook-runner.mjs +123 -121
  676. package/dist/services/webhook-runner.mjs.map +1 -1
  677. package/dist/services/webhook-store.js +132 -99
  678. package/dist/services/webhook-store.js.map +1 -1
  679. package/dist/services/webhook-store.mjs +131 -101
  680. package/dist/services/webhook-store.mjs.map +1 -1
  681. package/dist/services/worker-queue.js +44 -49
  682. package/dist/services/worker-queue.js.map +1 -1
  683. package/dist/services/worker-queue.mjs +43 -49
  684. package/dist/services/worker-queue.mjs.map +1 -1
  685. package/dist/utils/convert-custom-field-type.js +17 -20
  686. package/dist/utils/convert-custom-field-type.js.map +1 -1
  687. package/dist/utils/convert-custom-field-type.mjs +16 -21
  688. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  689. package/dist/utils/cron.js +64 -30
  690. package/dist/utils/cron.js.map +1 -1
  691. package/dist/utils/cron.mjs +63 -31
  692. package/dist/utils/cron.mjs.map +1 -1
  693. package/dist/utils/fetch.js +24 -18
  694. package/dist/utils/fetch.js.map +1 -1
  695. package/dist/utils/fetch.mjs +23 -19
  696. package/dist/utils/fetch.mjs.map +1 -1
  697. package/dist/utils/filepath-to-prop-path.js +20 -28
  698. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  699. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  700. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  701. package/dist/utils/is-initialized.js +21 -12
  702. package/dist/utils/is-initialized.js.map +1 -1
  703. package/dist/utils/is-initialized.mjs +20 -13
  704. package/dist/utils/is-initialized.mjs.map +1 -1
  705. package/dist/utils/lifecycles.js +6 -5
  706. package/dist/utils/lifecycles.js.map +1 -1
  707. package/dist/utils/lifecycles.mjs +5 -6
  708. package/dist/utils/lifecycles.mjs.map +1 -1
  709. package/dist/utils/load-config-file.js +40 -38
  710. package/dist/utils/load-config-file.js.map +1 -1
  711. package/dist/utils/load-config-file.mjs +39 -36
  712. package/dist/utils/load-config-file.mjs.map +1 -1
  713. package/dist/utils/load-files.js +40 -34
  714. package/dist/utils/load-files.js.map +1 -1
  715. package/dist/utils/load-files.mjs +39 -31
  716. package/dist/utils/load-files.mjs.map +1 -1
  717. package/dist/utils/open-browser.js +8 -8
  718. package/dist/utils/open-browser.js.map +1 -1
  719. package/dist/utils/open-browser.mjs +7 -7
  720. package/dist/utils/open-browser.mjs.map +1 -1
  721. package/dist/utils/resolve-working-dirs.js +23 -10
  722. package/dist/utils/resolve-working-dirs.js.map +1 -1
  723. package/dist/utils/resolve-working-dirs.mjs +22 -9
  724. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  725. package/dist/utils/signals.js +20 -14
  726. package/dist/utils/signals.js.map +1 -1
  727. package/dist/utils/signals.mjs +19 -15
  728. package/dist/utils/signals.mjs.map +1 -1
  729. package/dist/utils/startup-logger.js +107 -83
  730. package/dist/utils/startup-logger.js.map +1 -1
  731. package/dist/utils/startup-logger.mjs +106 -80
  732. package/dist/utils/startup-logger.mjs.map +1 -1
  733. package/dist/utils/transform-content-types-to-models.js +350 -261
  734. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  735. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  736. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  737. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  738. package/dist/utils/update-notifier/index.js +68 -73
  739. package/dist/utils/update-notifier/index.js.map +1 -1
  740. package/dist/utils/update-notifier/index.mjs +67 -67
  741. package/dist/utils/update-notifier/index.mjs.map +1 -1
  742. package/package.json +27 -27
@@ -1,48 +1,52 @@
1
- import { camelCase, isNil } from "lodash/fp";
2
- import Koa from "koa";
3
- import createError from "http-errors";
4
- import delegate from "delegates";
5
- import statuses from "statuses";
6
- import { formatHttpError } from "../errors.mjs";
7
- const addCustomMethods = (app) => {
8
- const delegator = delegate(app.context, "response");
9
- statuses.codes.filter((code) => code >= 400 && code < 600).forEach((code) => {
10
- const name = statuses(code);
11
- const camelCasedName = camelCase(name);
12
- app.response[camelCasedName] = function responseCode(message = name, details = {}) {
13
- const httpError = createError(code, message, { details });
14
- const { status, body } = formatHttpError(httpError);
15
- this.status = status;
16
- this.body = body;
1
+ import { camelCase, isNil } from 'lodash/fp';
2
+ import Koa from 'koa';
3
+ import createError from 'http-errors';
4
+ import delegate from 'delegates';
5
+ import statuses from 'statuses';
6
+ import { formatHttpError } from '../errors.mjs';
7
+
8
+ const addCustomMethods = (app)=>{
9
+ const delegator = delegate(app.context, 'response');
10
+ /* errors */ statuses.codes.filter((code)=>code >= 400 && code < 600).forEach((code)=>{
11
+ const name = statuses(code);
12
+ const camelCasedName = camelCase(name);
13
+ app.response[camelCasedName] = function responseCode(message = name, details = {}) {
14
+ const httpError = createError(code, message, {
15
+ details
16
+ });
17
+ const { status, body } = formatHttpError(httpError);
18
+ this.status = status;
19
+ this.body = body;
20
+ };
21
+ delegator.method(camelCasedName);
22
+ });
23
+ /* send, created, deleted */ app.response.send = function send(data, status = 200) {
24
+ this.status = status;
25
+ this.body = data;
17
26
  };
18
- delegator.method(camelCasedName);
19
- });
20
- app.response.send = function send(data, status = 200) {
21
- this.status = status;
22
- this.body = data;
23
- };
24
- app.response.created = function created(data) {
25
- this.status = 201;
26
- this.body = data;
27
- };
28
- app.response.deleted = function deleted(data) {
29
- if (isNil(data)) {
30
- this.status = 204;
31
- } else {
32
- this.status = 200;
33
- this.body = data;
34
- }
35
- };
36
- delegator.method("send").method("created").method("deleted");
37
- return app;
38
- };
39
- const createKoaApp = ({ proxy, keys }) => {
40
- const app = new Koa({ proxy });
41
- app.keys = keys;
42
- addCustomMethods(app);
43
- return app;
27
+ app.response.created = function created(data) {
28
+ this.status = 201;
29
+ this.body = data;
30
+ };
31
+ app.response.deleted = function deleted(data) {
32
+ if (isNil(data)) {
33
+ this.status = 204;
34
+ } else {
35
+ this.status = 200;
36
+ this.body = data;
37
+ }
38
+ };
39
+ delegator.method('send').method('created').method('deleted');
40
+ return app;
44
41
  };
45
- export {
46
- createKoaApp as default
42
+ const createKoaApp = ({ proxy, keys })=>{
43
+ const app = new Koa({
44
+ proxy
45
+ });
46
+ app.keys = keys;
47
+ addCustomMethods(app);
48
+ return app;
47
49
  };
50
+
51
+ export { createKoaApp as default };
48
52
  //# sourceMappingURL=koa.mjs.map
@@ -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\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
+ {"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":["addCustomMethods","app","delegator","delegate","context","statuses","codes","filter","code","forEach","name","camelCasedName","camelCase","response","responseCode","message","details","httpError","createError","status","body","formatHttpError","method","send","data","created","deleted","isNil","createKoaApp","proxy","keys","Koa"],"mappings":";;;;;;;AAiBA,MAAMA,mBAAmB,CAACC,GAAAA,GAAAA;AACxB,IAAA,MAAMC,SAAYC,GAAAA,QAAAA,CAASF,GAAIG,CAAAA,OAAO,EAAE,UAAA,CAAA;AAExC,iBACAC,QAAAA,CAASC,KAAK,CACXC,MAAM,CAAC,CAACC,IAASA,GAAAA,IAAAA,IAAQ,GAAOA,IAAAA,IAAAA,GAAO,GACvCC,CAAAA,CAAAA,OAAO,CAAC,CAACD,IAAAA,GAAAA;AACR,QAAA,MAAME,OAAOL,QAASG,CAAAA,IAAAA,CAAAA;AAEtB,QAAA,MAAMG,iBAAiBC,SAAUF,CAAAA,IAAAA,CAAAA;QACjCT,GAAIY,CAAAA,QAAQ,CAACF,cAAAA,CAAe,GAAG,SAASG,YAAaC,CAAAA,OAAAA,GAAUL,IAAI,EAAEM,OAAU,GAAA,EAAE,EAAA;YAC/E,MAAMC,SAAAA,GAAYC,WAAYV,CAAAA,IAAAA,EAAMO,OAAS,EAAA;AAAEC,gBAAAA;AAAQ,aAAA,CAAA;AACvD,YAAA,MAAM,EAAEG,MAAM,EAAEC,IAAI,EAAE,GAAGC,eAAgBJ,CAAAA,SAAAA,CAAAA;YACzC,IAAI,CAACE,MAAM,GAAGA,MAAAA;YACd,IAAI,CAACC,IAAI,GAAGA,IAAAA;AACd,SAAA;AACAlB,QAAAA,SAAAA,CAAUoB,MAAM,CAACX,cAAAA,CAAAA;AACnB,KAAA,CAAA;iCAGFV,GAAIY,CAAAA,QAAQ,CAACU,IAAI,GAAG,SAASA,IAAKC,CAAAA,IAAI,EAAEL,MAAAA,GAAS,GAAG,EAAA;QAClD,IAAI,CAACA,MAAM,GAAGA,MAAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,KAAA;AAEAvB,IAAAA,GAAAA,CAAIY,QAAQ,CAACY,OAAO,GAAG,SAASA,QAAQD,IAAI,EAAA;QAC1C,IAAI,CAACL,MAAM,GAAG,GAAA;QACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd,KAAA;AAEAvB,IAAAA,GAAAA,CAAIY,QAAQ,CAACa,OAAO,GAAG,SAASA,QAAQF,IAAI,EAAA;AAC1C,QAAA,IAAIG,MAAMH,IAAO,CAAA,EAAA;YACf,IAAI,CAACL,MAAM,GAAG,GAAA;SACT,MAAA;YACL,IAAI,CAACA,MAAM,GAAG,GAAA;YACd,IAAI,CAACC,IAAI,GAAGI,IAAAA;AACd;AACF,KAAA;AAEAtB,IAAAA,SAAAA,CAAUoB,MAAM,CAAC,MAAA,CAAA,CAAQA,MAAM,CAAC,SAAA,CAAA,CAAWA,MAAM,CAAC,SAAA,CAAA;IAElD,OAAOrB,GAAAA;AACT,CAAA;AAEA,MAAM2B,eAAe,CAAC,EAAEC,KAAK,EAAEC,IAAI,EAAsC,GAAA;IACvE,MAAM7B,GAAAA,GAAM,IAAI8B,GAAI,CAAA;AAAEF,QAAAA;AAAM,KAAA,CAAA;AAC5B5B,IAAAA,GAAAA,CAAI6B,IAAI,GAAGA,IAAAA;IAEX9B,gBAAiBC,CAAAA,GAAAA,CAAAA;IAEjB,OAAOA,GAAAA;AACT;;;;"}
@@ -1,92 +1,96 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const path = require("path");
4
- const fp = require("lodash/fp");
5
- const strapiUtils = require("@strapi/utils");
6
- const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
- const path__default = /* @__PURE__ */ _interopDefault(path);
8
- const instantiateMiddleware = (middlewareFactory, name, config, strapi) => {
9
- try {
10
- return middlewareFactory(config, { strapi });
11
- } catch (e) {
12
- if (e instanceof Error) {
13
- throw new Error(`Middleware "${name}": ${e.message}`);
1
+ 'use strict';
2
+
3
+ var path = require('path');
4
+ var fp = require('lodash/fp');
5
+ var strapiUtils = require('@strapi/utils');
6
+
7
+ const instantiateMiddleware = (middlewareFactory, name, config, strapi)=>{
8
+ try {
9
+ return middlewareFactory(config, {
10
+ strapi
11
+ });
12
+ } catch (e) {
13
+ if (e instanceof Error) {
14
+ throw new Error(`Middleware "${name}": ${e.message}`);
15
+ }
14
16
  }
15
- }
16
- };
17
- const resolveRouteMiddlewares = (route, strapi) => {
18
- const middlewaresConfig = route?.config?.middlewares ?? [];
19
- if (!fp.isArray(middlewaresConfig)) {
20
- throw new Error("Route middlewares config must be an array");
21
- }
22
- const middlewares = resolveMiddlewares(middlewaresConfig, strapi);
23
- return middlewares.map(({ handler }) => handler);
24
17
  };
25
- const dummyMiddleware = (_, next) => next();
26
- const resolveMiddlewares = (config, strapi) => {
27
- const middlewares = [];
28
- for (const item of config) {
29
- if (typeof item === "function") {
30
- middlewares.push({
31
- name: null,
32
- handler: item
33
- });
34
- continue;
18
+ const resolveRouteMiddlewares = (route, strapi)=>{
19
+ const middlewaresConfig = route?.config?.middlewares ?? [];
20
+ if (!fp.isArray(middlewaresConfig)) {
21
+ throw new Error('Route middlewares config must be an array');
35
22
  }
36
- if (typeof item === "string") {
37
- const middlewareFactory = strapi.middleware(item);
38
- if (!middlewareFactory) {
39
- throw new Error(`Middleware ${item} not found.`);
40
- }
41
- middlewares.push({
42
- name: item,
43
- handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware
44
- });
45
- continue;
46
- }
47
- if (typeof item === "object" && item !== null) {
48
- const { name, resolve, config: config2 = {} } = item;
49
- if (name) {
50
- const middlewareFactory = strapi.middleware(name);
51
- middlewares.push({
52
- name,
53
- handler: instantiateMiddleware(middlewareFactory, name, config2, strapi) ?? dummyMiddleware
54
- });
55
- continue;
56
- }
57
- if (resolve) {
58
- const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);
59
- middlewares.push({
60
- name: resolve,
61
- handler: instantiateMiddleware(resolvedMiddlewareFactory, resolve, config2, strapi) ?? dummyMiddleware
62
- });
63
- continue;
64
- }
65
- throw new Error("Invalid middleware configuration. Missing name or resolve properties.");
23
+ const middlewares = resolveMiddlewares(middlewaresConfig, strapi);
24
+ return middlewares.map(({ handler })=>handler);
25
+ };
26
+ const dummyMiddleware = (_, next)=>next();
27
+ /**
28
+ * Initialize every configured middlewares
29
+ */ const resolveMiddlewares = (config, strapi)=>{
30
+ const middlewares = [];
31
+ for (const item of config){
32
+ if (typeof item === 'function') {
33
+ middlewares.push({
34
+ name: null,
35
+ handler: item
36
+ });
37
+ continue;
38
+ }
39
+ if (typeof item === 'string') {
40
+ const middlewareFactory = strapi.middleware(item);
41
+ if (!middlewareFactory) {
42
+ throw new Error(`Middleware ${item} not found.`);
43
+ }
44
+ middlewares.push({
45
+ name: item,
46
+ handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware
47
+ });
48
+ continue;
49
+ }
50
+ if (typeof item === 'object' && item !== null) {
51
+ const { name, resolve, config = {} } = item;
52
+ if (name) {
53
+ const middlewareFactory = strapi.middleware(name);
54
+ middlewares.push({
55
+ name,
56
+ handler: instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware
57
+ });
58
+ continue;
59
+ }
60
+ if (resolve) {
61
+ const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);
62
+ middlewares.push({
63
+ name: resolve,
64
+ handler: instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ?? dummyMiddleware
65
+ });
66
+ continue;
67
+ }
68
+ throw new Error('Invalid middleware configuration. Missing name or resolve properties.');
69
+ }
70
+ throw new Error('Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.');
66
71
  }
67
- throw new Error(
68
- "Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}."
69
- );
70
- }
71
- return middlewares;
72
+ return middlewares;
72
73
  };
73
- const resolveCustomMiddleware = (resolve, strapi) => {
74
- let modulePath;
75
- try {
76
- modulePath = require.resolve(resolve);
77
- } catch (error) {
78
- if (error instanceof Error && "code" in error && error.code === "MODULE_NOT_FOUND") {
79
- modulePath = path__default.default.resolve(strapi.dirs.dist.root, resolve);
80
- } else {
81
- throw error;
74
+ /**
75
+ * Resolve middleware from package name or path
76
+ */ const resolveCustomMiddleware = (resolve, strapi)=>{
77
+ let modulePath;
78
+ try {
79
+ modulePath = require.resolve(resolve);
80
+ } catch (error) {
81
+ if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {
82
+ modulePath = path.resolve(strapi.dirs.dist.root, resolve);
83
+ } else {
84
+ throw error;
85
+ }
86
+ }
87
+ try {
88
+ return strapiUtils.importDefault(modulePath);
89
+ } catch (err) {
90
+ throw new Error(`Could not load middleware "${modulePath}".`);
82
91
  }
83
- }
84
- try {
85
- return strapiUtils.importDefault(modulePath);
86
- } catch (err) {
87
- throw new Error(`Could not load middleware "${modulePath}".`);
88
- }
89
92
  };
93
+
90
94
  exports.resolveMiddlewares = resolveMiddlewares;
91
95
  exports.resolveRouteMiddlewares = resolveRouteMiddlewares;
92
96
  //# sourceMappingURL=middleware.js.map
@@ -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 { 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
+ {"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":["instantiateMiddleware","middlewareFactory","name","config","strapi","e","Error","message","resolveRouteMiddlewares","route","middlewaresConfig","middlewares","isArray","resolveMiddlewares","map","handler","dummyMiddleware","_","next","item","push","middleware","resolve","resolvedMiddlewareFactory","resolveCustomMiddleware","modulePath","require","error","code","path","dirs","dist","root","importDefault","err"],"mappings":"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"}
@@ -1,90 +1,93 @@
1
- import path from "path";
2
- import { isArray } from "lodash/fp";
3
- import { importDefault } from "@strapi/utils";
4
- const instantiateMiddleware = (middlewareFactory, name, config, strapi) => {
5
- try {
6
- return middlewareFactory(config, { strapi });
7
- } catch (e) {
8
- if (e instanceof Error) {
9
- throw new Error(`Middleware "${name}": ${e.message}`);
1
+ import path from 'path';
2
+ import { isArray } from 'lodash/fp';
3
+ import { importDefault } from '@strapi/utils';
4
+
5
+ const instantiateMiddleware = (middlewareFactory, name, config, strapi)=>{
6
+ try {
7
+ return middlewareFactory(config, {
8
+ strapi
9
+ });
10
+ } catch (e) {
11
+ if (e instanceof Error) {
12
+ throw new Error(`Middleware "${name}": ${e.message}`);
13
+ }
10
14
  }
11
- }
12
- };
13
- const resolveRouteMiddlewares = (route, strapi) => {
14
- const middlewaresConfig = route?.config?.middlewares ?? [];
15
- if (!isArray(middlewaresConfig)) {
16
- throw new Error("Route middlewares config must be an array");
17
- }
18
- const middlewares = resolveMiddlewares(middlewaresConfig, strapi);
19
- return middlewares.map(({ handler }) => handler);
20
15
  };
21
- const dummyMiddleware = (_, next) => next();
22
- const resolveMiddlewares = (config, strapi) => {
23
- const middlewares = [];
24
- for (const item of config) {
25
- if (typeof item === "function") {
26
- middlewares.push({
27
- name: null,
28
- handler: item
29
- });
30
- continue;
31
- }
32
- if (typeof item === "string") {
33
- const middlewareFactory = strapi.middleware(item);
34
- if (!middlewareFactory) {
35
- throw new Error(`Middleware ${item} not found.`);
36
- }
37
- middlewares.push({
38
- name: item,
39
- handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware
40
- });
41
- continue;
42
- }
43
- if (typeof item === "object" && item !== null) {
44
- const { name, resolve, config: config2 = {} } = item;
45
- if (name) {
46
- const middlewareFactory = strapi.middleware(name);
47
- middlewares.push({
48
- name,
49
- handler: instantiateMiddleware(middlewareFactory, name, config2, strapi) ?? dummyMiddleware
50
- });
51
- continue;
52
- }
53
- if (resolve) {
54
- const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);
55
- middlewares.push({
56
- name: resolve,
57
- handler: instantiateMiddleware(resolvedMiddlewareFactory, resolve, config2, strapi) ?? dummyMiddleware
58
- });
59
- continue;
60
- }
61
- throw new Error("Invalid middleware configuration. Missing name or resolve properties.");
16
+ const resolveRouteMiddlewares = (route, strapi)=>{
17
+ const middlewaresConfig = route?.config?.middlewares ?? [];
18
+ if (!isArray(middlewaresConfig)) {
19
+ throw new Error('Route middlewares config must be an array');
62
20
  }
63
- throw new Error(
64
- "Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}."
65
- );
66
- }
67
- return middlewares;
21
+ const middlewares = resolveMiddlewares(middlewaresConfig, strapi);
22
+ return middlewares.map(({ handler })=>handler);
68
23
  };
69
- const resolveCustomMiddleware = (resolve, strapi) => {
70
- let modulePath;
71
- try {
72
- modulePath = require.resolve(resolve);
73
- } catch (error) {
74
- if (error instanceof Error && "code" in error && error.code === "MODULE_NOT_FOUND") {
75
- modulePath = path.resolve(strapi.dirs.dist.root, resolve);
76
- } else {
77
- throw error;
24
+ const dummyMiddleware = (_, next)=>next();
25
+ /**
26
+ * Initialize every configured middlewares
27
+ */ const resolveMiddlewares = (config, strapi)=>{
28
+ const middlewares = [];
29
+ for (const item of config){
30
+ if (typeof item === 'function') {
31
+ middlewares.push({
32
+ name: null,
33
+ handler: item
34
+ });
35
+ continue;
36
+ }
37
+ if (typeof item === 'string') {
38
+ const middlewareFactory = strapi.middleware(item);
39
+ if (!middlewareFactory) {
40
+ throw new Error(`Middleware ${item} not found.`);
41
+ }
42
+ middlewares.push({
43
+ name: item,
44
+ handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware
45
+ });
46
+ continue;
47
+ }
48
+ if (typeof item === 'object' && item !== null) {
49
+ const { name, resolve, config = {} } = item;
50
+ if (name) {
51
+ const middlewareFactory = strapi.middleware(name);
52
+ middlewares.push({
53
+ name,
54
+ handler: instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware
55
+ });
56
+ continue;
57
+ }
58
+ if (resolve) {
59
+ const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);
60
+ middlewares.push({
61
+ name: resolve,
62
+ handler: instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ?? dummyMiddleware
63
+ });
64
+ continue;
65
+ }
66
+ throw new Error('Invalid middleware configuration. Missing name or resolve properties.');
67
+ }
68
+ throw new Error('Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.');
78
69
  }
79
- }
80
- try {
81
- return importDefault(modulePath);
82
- } catch (err) {
83
- throw new Error(`Could not load middleware "${modulePath}".`);
84
- }
70
+ return middlewares;
85
71
  };
86
- export {
87
- resolveMiddlewares,
88
- resolveRouteMiddlewares
72
+ /**
73
+ * Resolve middleware from package name or path
74
+ */ const resolveCustomMiddleware = (resolve, strapi)=>{
75
+ let modulePath;
76
+ try {
77
+ modulePath = require.resolve(resolve);
78
+ } catch (error) {
79
+ if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {
80
+ modulePath = path.resolve(strapi.dirs.dist.root, resolve);
81
+ } else {
82
+ throw error;
83
+ }
84
+ }
85
+ try {
86
+ return importDefault(modulePath);
87
+ } catch (err) {
88
+ throw new Error(`Could not load middleware "${modulePath}".`);
89
+ }
89
90
  };
91
+
92
+ export { resolveMiddlewares, resolveRouteMiddlewares };
90
93
  //# sourceMappingURL=middleware.mjs.map
@@ -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 { 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
+ {"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":["instantiateMiddleware","middlewareFactory","name","config","strapi","e","Error","message","resolveRouteMiddlewares","route","middlewaresConfig","middlewares","isArray","resolveMiddlewares","map","handler","dummyMiddleware","_","next","item","push","middleware","resolve","resolvedMiddlewareFactory","resolveCustomMiddleware","modulePath","require","error","code","path","dirs","dist","root","importDefault","err"],"mappings":"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"}
@@ -1,20 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const strapiUtils = require("@strapi/utils");
4
- const createPolicicesMiddleware = (route, strapi) => {
5
- const policiesConfig = route?.config?.policies ?? [];
6
- const resolvedPolicies = strapi.get("policies").resolve(policiesConfig, route.info);
7
- const policiesMiddleware = async (ctx, next) => {
8
- const context = strapiUtils.policy.createPolicyContext("koa", ctx);
9
- for (const { handler, config } of resolvedPolicies) {
10
- const result = await handler(context, config, { strapi });
11
- if (![true, void 0].includes(result)) {
12
- throw new strapiUtils.errors.PolicyError();
13
- }
14
- }
15
- await next();
16
- };
17
- return policiesMiddleware;
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+
5
+ const createPolicicesMiddleware = (route, strapi)=>{
6
+ const policiesConfig = route?.config?.policies ?? [];
7
+ const resolvedPolicies = strapi.get('policies').resolve(policiesConfig, route.info);
8
+ const policiesMiddleware = async (ctx, next)=>{
9
+ const context = strapiUtils.policy.createPolicyContext('koa', ctx);
10
+ for (const { handler, config } of resolvedPolicies){
11
+ const result = await handler(context, config, {
12
+ strapi
13
+ });
14
+ if (![
15
+ true,
16
+ undefined
17
+ ].includes(result)) {
18
+ throw new strapiUtils.errors.PolicyError();
19
+ }
20
+ }
21
+ await next();
22
+ };
23
+ return policiesMiddleware;
18
24
  };
25
+
19
26
  exports.createPolicicesMiddleware = createPolicicesMiddleware;
20
27
  //# 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 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
+ {"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":["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,kBAAAA,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,mBAAOC,WAAW,EAAA;AAC9B;AACF;QAEA,MAAMT,IAAAA,EAAAA;AACR,KAAA;IAEA,OAAOF,kBAAAA;AACT;;;;"}