@strapi/core 0.0.0-experimental.f2351bcfa3965c60f063a492da51faa2c636eee8 → 0.0.0-experimental.f2956b41886e0ac6263280452126ead1b10a83ba

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 (722) 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 +1 -0
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +85 -73
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +84 -69
  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.js +64 -62
  50. package/dist/core-api/routes/index.js.map +1 -1
  51. package/dist/core-api/routes/index.mjs +62 -62
  52. package/dist/core-api/routes/index.mjs.map +1 -1
  53. package/dist/core-api/service/collection-type.js +73 -60
  54. package/dist/core-api/service/collection-type.js.map +1 -1
  55. package/dist/core-api/service/collection-type.mjs +72 -62
  56. package/dist/core-api/service/collection-type.mjs.map +1 -1
  57. package/dist/core-api/service/core-service.js +9 -8
  58. package/dist/core-api/service/core-service.js.map +1 -1
  59. package/dist/core-api/service/core-service.mjs +8 -9
  60. package/dist/core-api/service/core-service.mjs.map +1 -1
  61. package/dist/core-api/service/index.js +13 -13
  62. package/dist/core-api/service/index.js.map +1 -1
  63. package/dist/core-api/service/index.mjs +12 -14
  64. package/dist/core-api/service/index.mjs.map +1 -1
  65. package/dist/core-api/service/pagination.js +69 -43
  66. package/dist/core-api/service/pagination.js.map +1 -1
  67. package/dist/core-api/service/pagination.mjs +68 -47
  68. package/dist/core-api/service/pagination.mjs.map +1 -1
  69. package/dist/core-api/service/single-type.js +43 -39
  70. package/dist/core-api/service/single-type.js.map +1 -1
  71. package/dist/core-api/service/single-type.mjs +42 -41
  72. package/dist/core-api/service/single-type.mjs.map +1 -1
  73. package/dist/domain/content-type/index.d.ts.map +1 -1
  74. package/dist/domain/content-type/index.js +95 -115
  75. package/dist/domain/content-type/index.js.map +1 -1
  76. package/dist/domain/content-type/index.mjs +94 -115
  77. package/dist/domain/content-type/index.mjs.map +1 -1
  78. package/dist/domain/content-type/validator.js +84 -69
  79. package/dist/domain/content-type/validator.js.map +1 -1
  80. package/dist/domain/content-type/validator.mjs +83 -68
  81. package/dist/domain/content-type/validator.mjs.map +1 -1
  82. package/dist/domain/module/index.js +109 -100
  83. package/dist/domain/module/index.js.map +1 -1
  84. package/dist/domain/module/index.mjs +108 -99
  85. package/dist/domain/module/index.mjs.map +1 -1
  86. package/dist/domain/module/validation.js +25 -20
  87. package/dist/domain/module/validation.js.map +1 -1
  88. package/dist/domain/module/validation.mjs +24 -21
  89. package/dist/domain/module/validation.mjs.map +1 -1
  90. package/dist/ee/index.d.ts +1 -0
  91. package/dist/ee/index.d.ts.map +1 -1
  92. package/dist/ee/index.js +171 -132
  93. package/dist/ee/index.js.map +1 -1
  94. package/dist/ee/index.mjs +170 -134
  95. package/dist/ee/index.mjs.map +1 -1
  96. package/dist/ee/license.d.ts.map +1 -1
  97. package/dist/ee/license.js +100 -75
  98. package/dist/ee/license.js.map +1 -1
  99. package/dist/ee/license.mjs +99 -76
  100. package/dist/ee/license.mjs.map +1 -1
  101. package/dist/factories.js +72 -67
  102. package/dist/factories.js.map +1 -1
  103. package/dist/factories.mjs +71 -71
  104. package/dist/factories.mjs.map +1 -1
  105. package/dist/index.js +29 -26
  106. package/dist/index.js.map +1 -1
  107. package/dist/index.mjs +29 -29
  108. package/dist/index.mjs.map +1 -1
  109. package/dist/loaders/admin.d.ts.map +1 -1
  110. package/dist/loaders/admin.js +21 -20
  111. package/dist/loaders/admin.js.map +1 -1
  112. package/dist/loaders/admin.mjs +20 -20
  113. package/dist/loaders/admin.mjs.map +1 -1
  114. package/dist/loaders/apis.js +143 -120
  115. package/dist/loaders/apis.js.map +1 -1
  116. package/dist/loaders/apis.mjs +142 -119
  117. package/dist/loaders/apis.mjs.map +1 -1
  118. package/dist/loaders/components.js +33 -34
  119. package/dist/loaders/components.js.map +1 -1
  120. package/dist/loaders/components.mjs +32 -34
  121. package/dist/loaders/components.mjs.map +1 -1
  122. package/dist/loaders/index.js +22 -20
  123. package/dist/loaders/index.js.map +1 -1
  124. package/dist/loaders/index.mjs +21 -21
  125. package/dist/loaders/index.mjs.map +1 -1
  126. package/dist/loaders/middlewares.js +29 -25
  127. package/dist/loaders/middlewares.js.map +1 -1
  128. package/dist/loaders/middlewares.mjs +28 -25
  129. package/dist/loaders/middlewares.mjs.map +1 -1
  130. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  131. package/dist/loaders/plugins/get-enabled-plugins.js +125 -127
  132. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  133. package/dist/loaders/plugins/get-enabled-plugins.mjs +124 -104
  134. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  135. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  136. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  137. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  138. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  139. package/dist/loaders/plugins/index.d.ts.map +1 -1
  140. package/dist/loaders/plugins/index.js +141 -104
  141. package/dist/loaders/plugins/index.js.map +1 -1
  142. package/dist/loaders/plugins/index.mjs +121 -104
  143. package/dist/loaders/plugins/index.mjs.map +1 -1
  144. package/dist/loaders/policies.js +24 -20
  145. package/dist/loaders/policies.js.map +1 -1
  146. package/dist/loaders/policies.mjs +23 -20
  147. package/dist/loaders/policies.mjs.map +1 -1
  148. package/dist/loaders/sanitizers.js +10 -4
  149. package/dist/loaders/sanitizers.js.map +1 -1
  150. package/dist/loaders/sanitizers.mjs +9 -6
  151. package/dist/loaders/sanitizers.mjs.map +1 -1
  152. package/dist/loaders/src-index.js +35 -27
  153. package/dist/loaders/src-index.js.map +1 -1
  154. package/dist/loaders/src-index.mjs +34 -29
  155. package/dist/loaders/src-index.mjs.map +1 -1
  156. package/dist/loaders/validators.js +9 -4
  157. package/dist/loaders/validators.js.map +1 -1
  158. package/dist/loaders/validators.mjs +8 -6
  159. package/dist/loaders/validators.mjs.map +1 -1
  160. package/dist/middlewares/body.d.ts.map +1 -1
  161. package/dist/middlewares/body.js +58 -54
  162. package/dist/middlewares/body.js.map +1 -1
  163. package/dist/middlewares/body.mjs +57 -51
  164. package/dist/middlewares/body.mjs.map +1 -1
  165. package/dist/middlewares/compression.js +6 -6
  166. package/dist/middlewares/compression.js.map +1 -1
  167. package/dist/middlewares/compression.mjs +5 -5
  168. package/dist/middlewares/compression.mjs.map +1 -1
  169. package/dist/middlewares/cors.js +59 -48
  170. package/dist/middlewares/cors.js.map +1 -1
  171. package/dist/middlewares/cors.mjs +58 -47
  172. package/dist/middlewares/cors.mjs.map +1 -1
  173. package/dist/middlewares/errors.js +32 -30
  174. package/dist/middlewares/errors.js.map +1 -1
  175. package/dist/middlewares/errors.mjs +31 -31
  176. package/dist/middlewares/errors.mjs.map +1 -1
  177. package/dist/middlewares/favicon.js +27 -17
  178. package/dist/middlewares/favicon.js.map +1 -1
  179. package/dist/middlewares/favicon.mjs +26 -16
  180. package/dist/middlewares/favicon.mjs.map +1 -1
  181. package/dist/middlewares/index.js +32 -30
  182. package/dist/middlewares/index.js.map +1 -1
  183. package/dist/middlewares/index.mjs +31 -31
  184. package/dist/middlewares/index.mjs.map +1 -1
  185. package/dist/middlewares/ip.js +6 -6
  186. package/dist/middlewares/ip.js.map +1 -1
  187. package/dist/middlewares/ip.mjs +5 -5
  188. package/dist/middlewares/ip.mjs.map +1 -1
  189. package/dist/middlewares/logger.js +10 -9
  190. package/dist/middlewares/logger.js.map +1 -1
  191. package/dist/middlewares/logger.mjs +9 -10
  192. package/dist/middlewares/logger.mjs.map +1 -1
  193. package/dist/middlewares/powered-by.js +13 -9
  194. package/dist/middlewares/powered-by.js.map +1 -1
  195. package/dist/middlewares/powered-by.mjs +12 -10
  196. package/dist/middlewares/powered-by.mjs.map +1 -1
  197. package/dist/middlewares/public.js +33 -29
  198. package/dist/middlewares/public.js.map +1 -1
  199. package/dist/middlewares/public.mjs +32 -28
  200. package/dist/middlewares/public.mjs.map +1 -1
  201. package/dist/middlewares/query.js +35 -32
  202. package/dist/middlewares/query.js.map +1 -1
  203. package/dist/middlewares/query.mjs +34 -31
  204. package/dist/middlewares/query.mjs.map +1 -1
  205. package/dist/middlewares/response-time.js +10 -9
  206. package/dist/middlewares/response-time.js.map +1 -1
  207. package/dist/middlewares/response-time.mjs +9 -10
  208. package/dist/middlewares/response-time.mjs.map +1 -1
  209. package/dist/middlewares/responses.js +14 -12
  210. package/dist/middlewares/responses.js.map +1 -1
  211. package/dist/middlewares/responses.mjs +13 -13
  212. package/dist/middlewares/responses.mjs.map +1 -1
  213. package/dist/middlewares/security.js +109 -71
  214. package/dist/middlewares/security.js.map +1 -1
  215. package/dist/middlewares/security.mjs +108 -70
  216. package/dist/middlewares/security.mjs.map +1 -1
  217. package/dist/middlewares/session.js +26 -25
  218. package/dist/middlewares/session.js.map +1 -1
  219. package/dist/middlewares/session.mjs +25 -24
  220. package/dist/middlewares/session.mjs.map +1 -1
  221. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +14 -11
  222. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  223. package/dist/migrations/database/5.0.0-discard-drafts.js +153 -35
  224. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  225. package/dist/migrations/database/5.0.0-discard-drafts.mjs +152 -37
  226. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  227. package/dist/migrations/draft-publish.d.ts +2 -2
  228. package/dist/migrations/draft-publish.d.ts.map +1 -1
  229. package/dist/migrations/draft-publish.js +61 -34
  230. package/dist/migrations/draft-publish.js.map +1 -1
  231. package/dist/migrations/draft-publish.mjs +60 -36
  232. package/dist/migrations/draft-publish.mjs.map +1 -1
  233. package/dist/migrations/i18n.d.ts +5 -0
  234. package/dist/migrations/i18n.d.ts.map +1 -0
  235. package/dist/migrations/i18n.js +71 -0
  236. package/dist/migrations/i18n.js.map +1 -0
  237. package/dist/migrations/i18n.mjs +68 -0
  238. package/dist/migrations/i18n.mjs.map +1 -0
  239. package/dist/migrations/index.d.ts +5 -0
  240. package/dist/migrations/index.d.ts.map +1 -0
  241. package/dist/migrations/index.js +29 -0
  242. package/dist/migrations/index.js.map +1 -0
  243. package/dist/migrations/index.mjs +26 -0
  244. package/dist/migrations/index.mjs.map +1 -0
  245. package/dist/package.json.js +182 -0
  246. package/dist/package.json.js.map +1 -0
  247. package/dist/package.json.mjs +159 -0
  248. package/dist/package.json.mjs.map +1 -0
  249. package/dist/providers/admin.d.ts.map +1 -1
  250. package/dist/providers/admin.js +27 -17
  251. package/dist/providers/admin.js.map +1 -1
  252. package/dist/providers/admin.mjs +26 -19
  253. package/dist/providers/admin.mjs.map +1 -1
  254. package/dist/providers/coreStore.js +13 -8
  255. package/dist/providers/coreStore.js.map +1 -1
  256. package/dist/providers/coreStore.mjs +12 -10
  257. package/dist/providers/coreStore.mjs.map +1 -1
  258. package/dist/providers/cron.js +19 -16
  259. package/dist/providers/cron.js.map +1 -1
  260. package/dist/providers/cron.mjs +18 -18
  261. package/dist/providers/cron.mjs.map +1 -1
  262. package/dist/providers/index.js +18 -9
  263. package/dist/providers/index.js.map +1 -1
  264. package/dist/providers/index.mjs +17 -10
  265. package/dist/providers/index.mjs.map +1 -1
  266. package/dist/providers/provider.js +4 -3
  267. package/dist/providers/provider.js.map +1 -1
  268. package/dist/providers/provider.mjs +3 -4
  269. package/dist/providers/provider.mjs.map +1 -1
  270. package/dist/providers/registries.js +37 -32
  271. package/dist/providers/registries.js.map +1 -1
  272. package/dist/providers/registries.mjs +36 -34
  273. package/dist/providers/registries.mjs.map +1 -1
  274. package/dist/providers/telemetry.js +19 -16
  275. package/dist/providers/telemetry.js.map +1 -1
  276. package/dist/providers/telemetry.mjs +18 -18
  277. package/dist/providers/telemetry.mjs.map +1 -1
  278. package/dist/providers/webhooks.js +28 -26
  279. package/dist/providers/webhooks.js.map +1 -1
  280. package/dist/providers/webhooks.mjs +27 -28
  281. package/dist/providers/webhooks.mjs.map +1 -1
  282. package/dist/registries/apis.js +23 -20
  283. package/dist/registries/apis.js.map +1 -1
  284. package/dist/registries/apis.mjs +22 -22
  285. package/dist/registries/apis.mjs.map +1 -1
  286. package/dist/registries/components.js +35 -37
  287. package/dist/registries/components.js.map +1 -1
  288. package/dist/registries/components.mjs +34 -39
  289. package/dist/registries/components.mjs.map +1 -1
  290. package/dist/registries/content-types.js +54 -59
  291. package/dist/registries/content-types.js.map +1 -1
  292. package/dist/registries/content-types.mjs +53 -61
  293. package/dist/registries/content-types.mjs.map +1 -1
  294. package/dist/registries/controllers.js +70 -71
  295. package/dist/registries/controllers.js.map +1 -1
  296. package/dist/registries/controllers.mjs +69 -73
  297. package/dist/registries/controllers.mjs.map +1 -1
  298. package/dist/registries/custom-fields.js +75 -65
  299. package/dist/registries/custom-fields.js.map +1 -1
  300. package/dist/registries/custom-fields.mjs +74 -67
  301. package/dist/registries/custom-fields.mjs.map +1 -1
  302. package/dist/registries/hooks.js +46 -49
  303. package/dist/registries/hooks.js.map +1 -1
  304. package/dist/registries/hooks.mjs +45 -51
  305. package/dist/registries/hooks.mjs.map +1 -1
  306. package/dist/registries/middlewares.js +49 -51
  307. package/dist/registries/middlewares.js.map +1 -1
  308. package/dist/registries/middlewares.mjs +48 -53
  309. package/dist/registries/middlewares.mjs.map +1 -1
  310. package/dist/registries/models.js +14 -13
  311. package/dist/registries/models.js.map +1 -1
  312. package/dist/registries/models.mjs +13 -14
  313. package/dist/registries/models.mjs.map +1 -1
  314. package/dist/registries/modules.js +39 -36
  315. package/dist/registries/modules.js.map +1 -1
  316. package/dist/registries/modules.mjs +38 -38
  317. package/dist/registries/modules.mjs.map +1 -1
  318. package/dist/registries/namespace.js +21 -20
  319. package/dist/registries/namespace.js.map +1 -1
  320. package/dist/registries/namespace.mjs +20 -23
  321. package/dist/registries/namespace.mjs.map +1 -1
  322. package/dist/registries/plugins.js +23 -20
  323. package/dist/registries/plugins.js.map +1 -1
  324. package/dist/registries/plugins.mjs +22 -22
  325. package/dist/registries/plugins.mjs.map +1 -1
  326. package/dist/registries/policies.js +103 -96
  327. package/dist/registries/policies.js.map +1 -1
  328. package/dist/registries/policies.mjs +102 -98
  329. package/dist/registries/policies.mjs.map +1 -1
  330. package/dist/registries/sanitizers.js +23 -22
  331. package/dist/registries/sanitizers.js.map +1 -1
  332. package/dist/registries/sanitizers.mjs +22 -22
  333. package/dist/registries/sanitizers.mjs.map +1 -1
  334. package/dist/registries/services.js +71 -71
  335. package/dist/registries/services.js.map +1 -1
  336. package/dist/registries/services.mjs +70 -73
  337. package/dist/registries/services.mjs.map +1 -1
  338. package/dist/registries/validators.js +23 -22
  339. package/dist/registries/validators.js.map +1 -1
  340. package/dist/registries/validators.mjs +22 -22
  341. package/dist/registries/validators.mjs.map +1 -1
  342. package/dist/services/auth/index.js +74 -74
  343. package/dist/services/auth/index.js.map +1 -1
  344. package/dist/services/auth/index.mjs +73 -74
  345. package/dist/services/auth/index.mjs.map +1 -1
  346. package/dist/services/config.js +47 -43
  347. package/dist/services/config.js.map +1 -1
  348. package/dist/services/config.mjs +46 -44
  349. package/dist/services/config.mjs.map +1 -1
  350. package/dist/services/content-api/index.js +80 -79
  351. package/dist/services/content-api/index.js.map +1 -1
  352. package/dist/services/content-api/index.mjs +79 -79
  353. package/dist/services/content-api/index.mjs.map +1 -1
  354. package/dist/services/content-api/permissions/engine.js +8 -5
  355. package/dist/services/content-api/permissions/engine.js.map +1 -1
  356. package/dist/services/content-api/permissions/engine.mjs +7 -5
  357. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  358. package/dist/services/content-api/permissions/index.js +101 -81
  359. package/dist/services/content-api/permissions/index.js.map +1 -1
  360. package/dist/services/content-api/permissions/index.mjs +100 -81
  361. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  362. package/dist/services/content-api/permissions/providers/action.js +17 -14
  363. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  364. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  365. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  366. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  367. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  368. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  369. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  370. package/dist/services/core-store.js +115 -95
  371. package/dist/services/core-store.js.map +1 -1
  372. package/dist/services/core-store.mjs +114 -97
  373. package/dist/services/core-store.mjs.map +1 -1
  374. package/dist/services/cron.js +74 -60
  375. package/dist/services/cron.js.map +1 -1
  376. package/dist/services/cron.mjs +73 -62
  377. package/dist/services/cron.mjs.map +1 -1
  378. package/dist/services/custom-fields.js +9 -7
  379. package/dist/services/custom-fields.js.map +1 -1
  380. package/dist/services/custom-fields.mjs +8 -9
  381. package/dist/services/custom-fields.mjs.map +1 -1
  382. package/dist/services/document-service/attributes/index.js +23 -18
  383. package/dist/services/document-service/attributes/index.js.map +1 -1
  384. package/dist/services/document-service/attributes/index.mjs +22 -19
  385. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  386. package/dist/services/document-service/attributes/transforms.js +16 -15
  387. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  388. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  389. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  390. package/dist/services/document-service/common.d.ts +1 -1
  391. package/dist/services/document-service/common.d.ts.map +1 -1
  392. package/dist/services/document-service/common.js +5 -4
  393. package/dist/services/document-service/common.js.map +1 -1
  394. package/dist/services/document-service/common.mjs +4 -5
  395. package/dist/services/document-service/common.mjs.map +1 -1
  396. package/dist/services/document-service/components.d.ts.map +1 -1
  397. package/dist/services/document-service/components.js +255 -257
  398. package/dist/services/document-service/components.js.map +1 -1
  399. package/dist/services/document-service/components.mjs +254 -262
  400. package/dist/services/document-service/components.mjs.map +1 -1
  401. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  402. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  403. package/dist/services/document-service/draft-and-publish.js +88 -48
  404. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  405. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  406. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  407. package/dist/services/document-service/entries.d.ts +2 -2
  408. package/dist/services/document-service/entries.d.ts.map +1 -1
  409. package/dist/services/document-service/entries.js +109 -92
  410. package/dist/services/document-service/entries.js.map +1 -1
  411. package/dist/services/document-service/entries.mjs +108 -93
  412. package/dist/services/document-service/entries.mjs.map +1 -1
  413. package/dist/services/document-service/events.d.ts +1 -1
  414. package/dist/services/document-service/events.d.ts.map +1 -1
  415. package/dist/services/document-service/events.js +52 -40
  416. package/dist/services/document-service/events.js.map +1 -1
  417. package/dist/services/document-service/events.mjs +51 -41
  418. package/dist/services/document-service/events.mjs.map +1 -1
  419. package/dist/services/document-service/index.d.ts +2 -1
  420. package/dist/services/document-service/index.d.ts.map +1 -1
  421. package/dist/services/document-service/index.js +53 -32
  422. package/dist/services/document-service/index.js.map +1 -1
  423. package/dist/services/document-service/index.mjs +52 -33
  424. package/dist/services/document-service/index.mjs.map +1 -1
  425. package/dist/services/document-service/internationalization.js +62 -46
  426. package/dist/services/document-service/internationalization.js.map +1 -1
  427. package/dist/services/document-service/internationalization.mjs +61 -50
  428. package/dist/services/document-service/internationalization.mjs.map +1 -1
  429. package/dist/services/document-service/middlewares/errors.js +23 -19
  430. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  431. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  432. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  433. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  434. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  435. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  436. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  437. package/dist/services/document-service/params.js +11 -5
  438. package/dist/services/document-service/params.js.map +1 -1
  439. package/dist/services/document-service/params.mjs +10 -6
  440. package/dist/services/document-service/params.mjs.map +1 -1
  441. package/dist/services/document-service/repository.d.ts.map +1 -1
  442. package/dist/services/document-service/repository.js +354 -299
  443. package/dist/services/document-service/repository.js.map +1 -1
  444. package/dist/services/document-service/repository.mjs +353 -300
  445. package/dist/services/document-service/repository.mjs.map +1 -1
  446. package/dist/services/document-service/transform/data.js +22 -12
  447. package/dist/services/document-service/transform/data.js.map +1 -1
  448. package/dist/services/document-service/transform/data.mjs +21 -13
  449. package/dist/services/document-service/transform/data.mjs.map +1 -1
  450. package/dist/services/document-service/transform/fields.js +26 -17
  451. package/dist/services/document-service/transform/fields.js.map +1 -1
  452. package/dist/services/document-service/transform/fields.mjs +25 -18
  453. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  454. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  455. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  456. package/dist/services/document-service/transform/id-map.js +116 -69
  457. package/dist/services/document-service/transform/id-map.js.map +1 -1
  458. package/dist/services/document-service/transform/id-map.mjs +115 -70
  459. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  460. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  461. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  462. package/dist/services/document-service/transform/id-transform.js +37 -29
  463. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  464. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  465. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  466. package/dist/services/document-service/transform/populate.js +23 -18
  467. package/dist/services/document-service/transform/populate.js.map +1 -1
  468. package/dist/services/document-service/transform/populate.mjs +22 -19
  469. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  470. package/dist/services/document-service/transform/query.js +11 -6
  471. package/dist/services/document-service/transform/query.js.map +1 -1
  472. package/dist/services/document-service/transform/query.mjs +10 -7
  473. package/dist/services/document-service/transform/query.mjs.map +1 -1
  474. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  475. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  476. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  477. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  478. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  479. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  480. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  481. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  482. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  483. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  484. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  485. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  486. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  487. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  488. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  489. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  490. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  491. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  492. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  493. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  494. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  495. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  496. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  497. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  498. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  499. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  500. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  501. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  502. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  503. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  504. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  505. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  506. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  507. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  508. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  509. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  510. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  511. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  512. package/dist/services/document-service/utils/populate.d.ts +1 -1
  513. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  514. package/dist/services/document-service/utils/populate.js +67 -41
  515. package/dist/services/document-service/utils/populate.js.map +1 -1
  516. package/dist/services/document-service/utils/populate.mjs +66 -42
  517. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  518. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  519. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  520. package/dist/services/document-service/utils/unidirectional-relations.js +116 -0
  521. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  522. package/dist/services/document-service/utils/unidirectional-relations.mjs +113 -0
  523. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  524. package/dist/services/entity-service/index.js +230 -161
  525. package/dist/services/entity-service/index.js.map +1 -1
  526. package/dist/services/entity-service/index.mjs +229 -160
  527. package/dist/services/entity-service/index.mjs.map +1 -1
  528. package/dist/services/entity-validator/blocks-validator.js +135 -103
  529. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  530. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  531. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  532. package/dist/services/entity-validator/index.d.ts +1 -1
  533. package/dist/services/entity-validator/index.d.ts.map +1 -1
  534. package/dist/services/entity-validator/index.js +362 -363
  535. package/dist/services/entity-validator/index.js.map +1 -1
  536. package/dist/services/entity-validator/index.mjs +358 -360
  537. package/dist/services/entity-validator/index.mjs.map +1 -1
  538. package/dist/services/entity-validator/validators.js +268 -210
  539. package/dist/services/entity-validator/validators.js.map +1 -1
  540. package/dist/services/entity-validator/validators.mjs +267 -216
  541. package/dist/services/entity-validator/validators.mjs.map +1 -1
  542. package/dist/services/errors.js +65 -65
  543. package/dist/services/errors.js.map +1 -1
  544. package/dist/services/errors.mjs +64 -66
  545. package/dist/services/errors.mjs.map +1 -1
  546. package/dist/services/event-hub.js +82 -69
  547. package/dist/services/event-hub.js.map +1 -1
  548. package/dist/services/event-hub.mjs +81 -71
  549. package/dist/services/event-hub.mjs.map +1 -1
  550. package/dist/services/features.js +19 -14
  551. package/dist/services/features.js.map +1 -1
  552. package/dist/services/features.mjs +18 -15
  553. package/dist/services/features.mjs.map +1 -1
  554. package/dist/services/fs.js +41 -40
  555. package/dist/services/fs.js.map +1 -1
  556. package/dist/services/fs.mjs +40 -39
  557. package/dist/services/fs.mjs.map +1 -1
  558. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  559. package/dist/services/metrics/admin-user-hash.js +13 -11
  560. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  561. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  562. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  563. package/dist/services/metrics/index.js +46 -40
  564. package/dist/services/metrics/index.js.map +1 -1
  565. package/dist/services/metrics/index.mjs +45 -42
  566. package/dist/services/metrics/index.mjs.map +1 -1
  567. package/dist/services/metrics/is-truthy.js +13 -6
  568. package/dist/services/metrics/is-truthy.js.map +1 -1
  569. package/dist/services/metrics/is-truthy.mjs +12 -6
  570. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  571. package/dist/services/metrics/middleware.d.ts.map +1 -1
  572. package/dist/services/metrics/middleware.js +37 -22
  573. package/dist/services/metrics/middleware.js.map +1 -1
  574. package/dist/services/metrics/middleware.mjs +36 -24
  575. package/dist/services/metrics/middleware.mjs.map +1 -1
  576. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  577. package/dist/services/metrics/rate-limiter.js +24 -19
  578. package/dist/services/metrics/rate-limiter.js.map +1 -1
  579. package/dist/services/metrics/rate-limiter.mjs +23 -21
  580. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  581. package/dist/services/metrics/sender.d.ts.map +1 -1
  582. package/dist/services/metrics/sender.js +78 -69
  583. package/dist/services/metrics/sender.js.map +1 -1
  584. package/dist/services/metrics/sender.mjs +77 -64
  585. package/dist/services/metrics/sender.mjs.map +1 -1
  586. package/dist/services/query-params.js +13 -10
  587. package/dist/services/query-params.js.map +1 -1
  588. package/dist/services/query-params.mjs +12 -12
  589. package/dist/services/query-params.mjs.map +1 -1
  590. package/dist/services/reloader.js +35 -32
  591. package/dist/services/reloader.js.map +1 -1
  592. package/dist/services/reloader.mjs +34 -33
  593. package/dist/services/reloader.mjs.map +1 -1
  594. package/dist/services/request-context.js +11 -8
  595. package/dist/services/request-context.js.map +1 -1
  596. package/dist/services/request-context.mjs +10 -10
  597. package/dist/services/request-context.mjs.map +1 -1
  598. package/dist/services/server/admin-api.js +11 -10
  599. package/dist/services/server/admin-api.js.map +1 -1
  600. package/dist/services/server/admin-api.mjs +10 -11
  601. package/dist/services/server/admin-api.mjs.map +1 -1
  602. package/dist/services/server/api.js +33 -27
  603. package/dist/services/server/api.js.map +1 -1
  604. package/dist/services/server/api.mjs +32 -26
  605. package/dist/services/server/api.mjs.map +1 -1
  606. package/dist/services/server/compose-endpoint.js +116 -105
  607. package/dist/services/server/compose-endpoint.js.map +1 -1
  608. package/dist/services/server/compose-endpoint.mjs +115 -105
  609. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  610. package/dist/services/server/content-api.js +11 -9
  611. package/dist/services/server/content-api.js.map +1 -1
  612. package/dist/services/server/content-api.mjs +10 -10
  613. package/dist/services/server/content-api.mjs.map +1 -1
  614. package/dist/services/server/http-server.js +48 -44
  615. package/dist/services/server/http-server.js.map +1 -1
  616. package/dist/services/server/http-server.mjs +47 -43
  617. package/dist/services/server/http-server.mjs.map +1 -1
  618. package/dist/services/server/index.js +85 -82
  619. package/dist/services/server/index.js.map +1 -1
  620. package/dist/services/server/index.mjs +84 -81
  621. package/dist/services/server/index.mjs.map +1 -1
  622. package/dist/services/server/koa.js +49 -47
  623. package/dist/services/server/koa.js.map +1 -1
  624. package/dist/services/server/koa.mjs +48 -44
  625. package/dist/services/server/koa.mjs.map +1 -1
  626. package/dist/services/server/middleware.js +86 -82
  627. package/dist/services/server/middleware.js.map +1 -1
  628. package/dist/services/server/middleware.mjs +85 -82
  629. package/dist/services/server/middleware.mjs.map +1 -1
  630. package/dist/services/server/policy.js +24 -17
  631. package/dist/services/server/policy.js.map +1 -1
  632. package/dist/services/server/policy.mjs +23 -18
  633. package/dist/services/server/policy.mjs.map +1 -1
  634. package/dist/services/server/register-middlewares.js +68 -61
  635. package/dist/services/server/register-middlewares.js.map +1 -1
  636. package/dist/services/server/register-middlewares.mjs +67 -63
  637. package/dist/services/server/register-middlewares.mjs.map +1 -1
  638. package/dist/services/server/register-routes.js +90 -67
  639. package/dist/services/server/register-routes.js.map +1 -1
  640. package/dist/services/server/register-routes.mjs +89 -67
  641. package/dist/services/server/register-routes.mjs.map +1 -1
  642. package/dist/services/server/routing.js +94 -81
  643. package/dist/services/server/routing.js.map +1 -1
  644. package/dist/services/server/routing.mjs +93 -81
  645. package/dist/services/server/routing.mjs.map +1 -1
  646. package/dist/services/utils/dynamic-zones.js +13 -14
  647. package/dist/services/utils/dynamic-zones.js.map +1 -1
  648. package/dist/services/utils/dynamic-zones.mjs +12 -16
  649. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  650. package/dist/services/webhook-runner.js +124 -122
  651. package/dist/services/webhook-runner.js.map +1 -1
  652. package/dist/services/webhook-runner.mjs +123 -121
  653. package/dist/services/webhook-runner.mjs.map +1 -1
  654. package/dist/services/webhook-store.js +132 -99
  655. package/dist/services/webhook-store.js.map +1 -1
  656. package/dist/services/webhook-store.mjs +131 -101
  657. package/dist/services/webhook-store.mjs.map +1 -1
  658. package/dist/services/worker-queue.js +44 -49
  659. package/dist/services/worker-queue.js.map +1 -1
  660. package/dist/services/worker-queue.mjs +43 -49
  661. package/dist/services/worker-queue.mjs.map +1 -1
  662. package/dist/utils/convert-custom-field-type.js +17 -20
  663. package/dist/utils/convert-custom-field-type.js.map +1 -1
  664. package/dist/utils/convert-custom-field-type.mjs +16 -21
  665. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  666. package/dist/utils/cron.js +64 -30
  667. package/dist/utils/cron.js.map +1 -1
  668. package/dist/utils/cron.mjs +63 -31
  669. package/dist/utils/cron.mjs.map +1 -1
  670. package/dist/utils/fetch.js +24 -18
  671. package/dist/utils/fetch.js.map +1 -1
  672. package/dist/utils/fetch.mjs +23 -19
  673. package/dist/utils/fetch.mjs.map +1 -1
  674. package/dist/utils/filepath-to-prop-path.js +20 -28
  675. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  676. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  677. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  678. package/dist/utils/is-initialized.js +21 -12
  679. package/dist/utils/is-initialized.js.map +1 -1
  680. package/dist/utils/is-initialized.mjs +20 -13
  681. package/dist/utils/is-initialized.mjs.map +1 -1
  682. package/dist/utils/lifecycles.js +6 -5
  683. package/dist/utils/lifecycles.js.map +1 -1
  684. package/dist/utils/lifecycles.mjs +5 -6
  685. package/dist/utils/lifecycles.mjs.map +1 -1
  686. package/dist/utils/load-config-file.js +40 -38
  687. package/dist/utils/load-config-file.js.map +1 -1
  688. package/dist/utils/load-config-file.mjs +39 -36
  689. package/dist/utils/load-config-file.mjs.map +1 -1
  690. package/dist/utils/load-files.js +40 -35
  691. package/dist/utils/load-files.js.map +1 -1
  692. package/dist/utils/load-files.mjs +39 -32
  693. package/dist/utils/load-files.mjs.map +1 -1
  694. package/dist/utils/open-browser.js +8 -8
  695. package/dist/utils/open-browser.js.map +1 -1
  696. package/dist/utils/open-browser.mjs +7 -7
  697. package/dist/utils/open-browser.mjs.map +1 -1
  698. package/dist/utils/resolve-working-dirs.js +23 -10
  699. package/dist/utils/resolve-working-dirs.js.map +1 -1
  700. package/dist/utils/resolve-working-dirs.mjs +22 -9
  701. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  702. package/dist/utils/signals.js +20 -14
  703. package/dist/utils/signals.js.map +1 -1
  704. package/dist/utils/signals.mjs +19 -15
  705. package/dist/utils/signals.mjs.map +1 -1
  706. package/dist/utils/startup-logger.d.ts.map +1 -1
  707. package/dist/utils/startup-logger.js +107 -78
  708. package/dist/utils/startup-logger.js.map +1 -1
  709. package/dist/utils/startup-logger.mjs +106 -75
  710. package/dist/utils/startup-logger.mjs.map +1 -1
  711. package/dist/utils/transform-content-types-to-models.d.ts +353 -21
  712. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  713. package/dist/utils/transform-content-types-to-models.js +350 -261
  714. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  715. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  716. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  717. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  718. package/dist/utils/update-notifier/index.js +68 -73
  719. package/dist/utils/update-notifier/index.js.map +1 -1
  720. package/dist/utils/update-notifier/index.mjs +67 -67
  721. package/dist/utils/update-notifier/index.mjs.map +1 -1
  722. package/package.json +28 -28
@@ -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,KAAK,IAAI,gBAAgB,SAAS;AAClD,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IAAA;AAEd,cAAU,OAAO,cAAc;AAAA,EAAA,CAChC;AAGH,MAAI,SAAS,OAAO,SAAS,KAAK,MAAM,SAAS,KAAK;AACpD,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AAC5C,SAAK,SAAS;AACd,SAAK,OAAO;AAAA,EAAA;AAGd,MAAI,SAAS,UAAU,SAAS,QAAQ,MAAM;AACxC,QAAA,MAAM,IAAI,GAAG;AACf,WAAK,SAAS;AAAA,IAAA,OACT;AACL,WAAK,SAAS;AACd,WAAK,OAAO;AAAA,IACd;AAAA,EAAA;AAGF,YAAU,OAAO,MAAM,EAAE,OAAO,SAAS,EAAE,OAAO,SAAS;AAEpD,SAAA;AACT;AAEA,MAAM,eAAe,CAAC,EAAE,OAAO,WAA+C;AAC5E,QAAM,MAAM,IAAI,IAAI,EAAE,MAAO,CAAA;AAC7B,MAAI,OAAO;AAEX,mBAAiB,GAAG;AAEb,SAAA;AACT;"}
1
+ {"version":3,"file":"koa.mjs","sources":["../../../src/services/server/koa.ts"],"sourcesContent":["import { isNil, camelCase } from 'lodash/fp';\nimport Koa from 'koa';\nimport createError from 'http-errors';\nimport delegate from 'delegates';\nimport statuses from 'statuses';\nimport { formatHttpError } from '../errors';\n\ndeclare module 'koa' {\n interface BaseResponse {\n send: (data: any, status?: number) => void;\n created: (data: any) => void;\n deleted: (data: any) => void;\n _explicitStatus: boolean;\n [key: string]: (message: string, details?: unknown) => void;\n }\n}\n\nconst addCustomMethods = (app: Koa) => {\n const delegator = delegate(app.context, 'response');\n\n /* errors */\n statuses.codes\n .filter((code) => code >= 400 && code < 600)\n .forEach((code) => {\n const name = statuses(code);\n\n const camelCasedName = camelCase(name);\n app.response[camelCasedName] = function responseCode(message = name, details = {}) {\n const httpError = createError(code, message, { details });\n const { status, body } = formatHttpError(httpError);\n this.status = status;\n this.body = body;\n };\n delegator.method(camelCasedName);\n });\n\n /* send, created, deleted */\n app.response.send = function send(data, status = 200) {\n this.status = status;\n this.body = data;\n };\n\n app.response.created = function created(data) {\n this.status = 201;\n this.body = data;\n };\n\n app.response.deleted = function deleted(data) {\n if (isNil(data)) {\n this.status = 204;\n } else {\n this.status = 200;\n this.body = data;\n }\n };\n\n delegator.method('send').method('created').method('deleted');\n\n return app;\n};\n\nconst createKoaApp = ({ proxy, keys }: { proxy: boolean; keys: string[] }) => {\n const app = new Koa({ proxy });\n app.keys = keys;\n\n addCustomMethods(app);\n\n return app;\n};\n\nexport default createKoaApp;\n"],"names":["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,OAAQ,CAAA;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IACtD;AAAA,EACF;AACF;AAEM,MAAA,0BAA0B,CAAC,OAAmB,WAAwB;AAC1E,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAA;AAEpD,MAAA,CAACA,GAAAA,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEM,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,cAAc,OAAO;AACjD;AAEA,MAAM,kBAA0C,CAAC,GAAG,SAAS,KAAK;AAK5D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAA;AAEN,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IACF;AAEI,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MACjD;AAEA,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAC,UAAS,CAAA,EAAO,IAAA;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MACF;AAEA,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MACF;AAEM,YAAA,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAEA,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEO,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,WAAwB;AACpE,MAAA;AAEA,MAAA;AACW,iBAAA,QAAQ,QAAQ,OAAO;AAAA,WAC7B,OAAO;AACd,QAAI,iBAAiB,SAAS,UAAU,SAAS,MAAM,SAAS,oBAAoB;AAClF,mBAAaC,cAAAA,QAAK,QAAQ,OAAO,KAAK,KAAK,MAAM,OAAO;AAAA,IAAA,OACnD;AACC,YAAA;AAAA,IACR;AAAA,EACF;AAEI,MAAA;AACF,WAAOC,YAAAA,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAC9D;AACF;;;"}
1
+ {"version":3,"file":"middleware.js","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["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":";;;;;;AAKA,MAAMA,qBAAwB,GAAA,CAC5BC,iBACAC,EAAAA,IAAAA,EACAC,MACAC,EAAAA,MAAAA,GAAAA;IAEA,IAAI;AACF,QAAA,OAAOH,kBAAkBE,MAAQ,EAAA;AAAEC,YAAAA;AAAO,SAAA,CAAA;AAC5C,KAAA,CAAE,OAAOC,CAAG,EAAA;AACV,QAAA,IAAIA,aAAaC,KAAO,EAAA;YACtB,MAAM,IAAIA,KAAM,CAAA,CAAC,YAAY,EAAEJ,IAAK,CAAA,GAAG,EAAEG,CAAAA,CAAEE,OAAO,CAAC,CAAC,CAAA;AACtD;AACF;AACF,CAAA;AAEMC,MAAAA,uBAAAA,GAA0B,CAACC,KAAmBL,EAAAA,MAAAA,GAAAA;AAClD,IAAA,MAAMM,iBAAoBD,GAAAA,KAAAA,EAAON,MAAQQ,EAAAA,WAAAA,IAAe,EAAE;IAE1D,IAAI,CAACC,WAAQF,iBAAoB,CAAA,EAAA;AAC/B,QAAA,MAAM,IAAIJ,KAAM,CAAA,2CAAA,CAAA;AAClB;IAEA,MAAMK,WAAAA,GAAcE,mBAAmBH,iBAAmBN,EAAAA,MAAAA,CAAAA;AAE1D,IAAA,OAAOO,YAAYG,GAAG,CAAC,CAAC,EAAEC,OAAO,EAAE,GAAKA,OAAAA,CAAAA;AAC1C;AAEA,MAAMC,eAAAA,GAA0C,CAACC,CAAAA,EAAGC,IAASA,GAAAA,IAAAA,EAAAA;AAE7D;;IAGA,MAAML,kBAAqB,GAAA,CACzBV,MACAC,EAAAA,MAAAA,GAAAA;AAEA,IAAA,MAAMO,cAGA,EAAE;IAER,KAAK,MAAMQ,QAAQhB,MAAQ,CAAA;QACzB,IAAI,OAAOgB,SAAS,UAAY,EAAA;AAC9BR,YAAAA,WAAAA,CAAYS,IAAI,CAAC;gBACflB,IAAM,EAAA,IAAA;gBACNa,OAASI,EAAAA;AACX,aAAA,CAAA;AAEA,YAAA;AACF;QAEA,IAAI,OAAOA,SAAS,QAAU,EAAA;YAC5B,MAAMlB,iBAAAA,GAAoBG,MAAOiB,CAAAA,UAAU,CAACF,IAAAA,CAAAA;AAE5C,YAAA,IAAI,CAAClB,iBAAmB,EAAA;AACtB,gBAAA,MAAM,IAAIK,KAAM,CAAA,CAAC,WAAW,EAAEa,IAAAA,CAAK,WAAW,CAAC,CAAA;AACjD;AAEAR,YAAAA,WAAAA,CAAYS,IAAI,CAAC;gBACflB,IAAMiB,EAAAA,IAAAA;AACNJ,gBAAAA,OAAAA,EAASf,qBAAsBC,CAAAA,iBAAAA,EAAmBkB,IAAM,EAAA,IAAIf,MAAWY,CAAAA,IAAAA;AACzE,aAAA,CAAA;AAEA,YAAA;AACF;AAEA,QAAA,IAAI,OAAOG,IAAAA,KAAS,QAAYA,IAAAA,IAAAA,KAAS,IAAM,EAAA;YAC7C,MAAM,EAAEjB,IAAI,EAAEoB,OAAO,EAAEnB,MAAS,GAAA,EAAE,EAAE,GAAGgB,IAAAA;AAEvC,YAAA,IAAIjB,IAAM,EAAA;gBACR,MAAMD,iBAAAA,GAAoBG,MAAOiB,CAAAA,UAAU,CAACnB,IAAAA,CAAAA;AAC5CS,gBAAAA,WAAAA,CAAYS,IAAI,CAAC;AACflB,oBAAAA,IAAAA;AACAa,oBAAAA,OAAAA,EACEf,qBAAsBC,CAAAA,iBAAAA,EAAmBC,IAAMC,EAAAA,MAAAA,EAAQC,MAAWY,CAAAA,IAAAA;AACtE,iBAAA,CAAA;AAEA,gBAAA;AACF;AAEA,YAAA,IAAIM,OAAS,EAAA;gBACX,MAAMC,yBAAAA,GAA4BC,wBAAwBF,OAASlB,EAAAA,MAAAA,CAAAA;AACnEO,gBAAAA,WAAAA,CAAYS,IAAI,CAAC;oBACflB,IAAMoB,EAAAA,OAAAA;AACNP,oBAAAA,OAAAA,EACEf,qBAAsBuB,CAAAA,yBAAAA,EAA2BD,OAASnB,EAAAA,MAAAA,EAAQC,MAClEY,CAAAA,IAAAA;AACJ,iBAAA,CAAA;AAEA,gBAAA;AACF;AAEA,YAAA,MAAM,IAAIV,KAAM,CAAA,uEAAA,CAAA;AAClB;AAEA,QAAA,MAAM,IAAIA,KACR,CAAA,wGAAA,CAAA;AAEJ;IAEA,OAAOK,WAAAA;AACT;AAEA;;IAGA,MAAMa,uBAA0B,GAAA,CAACF,OAAiBlB,EAAAA,MAAAA,GAAAA;IAChD,IAAIqB,UAAAA;IAEJ,IAAI;QACFA,UAAaC,GAAAA,OAAAA,CAAQJ,OAAO,CAACA,OAAAA,CAAAA;AAC/B,KAAA,CAAE,OAAOK,KAAO,EAAA;AACd,QAAA,IAAIA,iBAAiBrB,KAAS,IAAA,MAAA,IAAUqB,SAASA,KAAMC,CAAAA,IAAI,KAAK,kBAAoB,EAAA;YAClFH,UAAaI,GAAAA,IAAAA,CAAKP,OAAO,CAAClB,MAAAA,CAAO0B,IAAI,CAACC,IAAI,CAACC,IAAI,EAAEV,OAAAA,CAAAA;SAC5C,MAAA;YACL,MAAMK,KAAAA;AACR;AACF;IAEA,IAAI;AACF,QAAA,OAAOM,yBAAcR,CAAAA,UAAAA,CAAAA;AACvB,KAAA,CAAE,OAAOS,GAAK,EAAA;AACZ,QAAA,MAAM,IAAI5B,KAAM,CAAA,CAAC,2BAA2B,EAAEmB,UAAAA,CAAW,EAAE,CAAC,CAAA;AAC9D;AACF,CAAA;;;;;"}
@@ -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,OAAQ,CAAA;AAAA,WACpC,GAAG;AACV,QAAI,aAAa,OAAO;AACtB,YAAM,IAAI,MAAM,eAAe,IAAI,MAAM,EAAE,OAAO,EAAE;AAAA,IACtD;AAAA,EACF;AACF;AAEM,MAAA,0BAA0B,CAAC,OAAmB,WAAwB;AAC1E,QAAM,oBAAoB,OAAO,QAAQ,eAAe,CAAA;AAEpD,MAAA,CAAC,QAAQ,iBAAiB,GAAG;AACzB,UAAA,IAAI,MAAM,2CAA2C;AAAA,EAC7D;AAEM,QAAA,cAAc,mBAAmB,mBAAmB,MAAM;AAEhE,SAAO,YAAY,IAAI,CAAC,EAAE,cAAc,OAAO;AACjD;AAEA,MAAM,kBAA0C,CAAC,GAAG,SAAS,KAAK;AAK5D,MAAA,qBAAqB,CACzB,QACA,WACG;AACH,QAAM,cAGA,CAAA;AAEN,aAAW,QAAQ,QAAQ;AACrB,QAAA,OAAO,SAAS,YAAY;AAC9B,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS;AAAA,MAAA,CACV;AAED;AAAA,IACF;AAEI,QAAA,OAAO,SAAS,UAAU;AACtB,YAAA,oBAAoB,OAAO,WAAW,IAAI;AAEhD,UAAI,CAAC,mBAAmB;AACtB,cAAM,IAAI,MAAM,cAAc,IAAI,aAAa;AAAA,MACjD;AAEA,kBAAY,KAAK;AAAA,QACf,MAAM;AAAA,QACN,SAAS,sBAAsB,mBAAmB,MAAM,CAAC,GAAG,MAAM,KAAK;AAAA,MAAA,CACxE;AAED;AAAA,IACF;AAEA,QAAI,OAAO,SAAS,YAAY,SAAS,MAAM;AAC7C,YAAM,EAAE,MAAM,SAAS,QAAAA,UAAS,CAAA,EAAO,IAAA;AAEvC,UAAI,MAAM;AACF,cAAA,oBAAoB,OAAO,WAAW,IAAI;AAChD,oBAAY,KAAK;AAAA,UACf;AAAA,UACA,SACE,sBAAsB,mBAAmB,MAAMA,SAAQ,MAAM,KAAK;AAAA,QAAA,CACrE;AAED;AAAA,MACF;AAEA,UAAI,SAAS;AACL,cAAA,4BAA4B,wBAAwB,SAAS,MAAM;AACzE,oBAAY,KAAK;AAAA,UACf,MAAM;AAAA,UACN,SACE,sBAAsB,2BAA2B,SAASA,SAAQ,MAAM,KACxE;AAAA,QAAA,CACH;AAED;AAAA,MACF;AAEM,YAAA,IAAI,MAAM,uEAAuE;AAAA,IACzF;AAEA,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAAA,EAEJ;AAEO,SAAA;AACT;AAKA,MAAM,0BAA0B,CAAC,SAAiB,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,IACR;AAAA,EACF;AAEI,MAAA;AACF,WAAO,cAAc,UAAU;AAAA,WACxB,KAAK;AACZ,UAAM,IAAI,MAAM,8BAA8B,UAAU,IAAI;AAAA,EAC9D;AACF;"}
1
+ {"version":3,"file":"middleware.mjs","sources":["../../../src/services/server/middleware.ts"],"sourcesContent":["import path from 'path';\nimport { isArray } from 'lodash/fp';\nimport { importDefault } from '@strapi/utils';\nimport type { Core } from '@strapi/types';\n\nconst instantiateMiddleware = (\n middlewareFactory: Core.MiddlewareFactory,\n name: string,\n config: unknown,\n strapi: Core.Strapi\n) => {\n try {\n return middlewareFactory(config, { strapi });\n } catch (e) {\n if (e instanceof Error) {\n throw new Error(`Middleware \"${name}\": ${e.message}`);\n }\n }\n};\n\nconst resolveRouteMiddlewares = (route: Core.Route, strapi: Core.Strapi) => {\n const middlewaresConfig = route?.config?.middlewares ?? [];\n\n if (!isArray(middlewaresConfig)) {\n throw new Error('Route middlewares config must be an array');\n }\n\n const middlewares = resolveMiddlewares(middlewaresConfig, strapi);\n\n return middlewares.map(({ handler }) => handler);\n};\n\nconst dummyMiddleware: Core.MiddlewareHandler = (_, next) => next();\n\n/**\n * Initialize every configured middlewares\n */\nconst resolveMiddlewares = (\n config: Array<Core.MiddlewareName | Core.MiddlewareConfig | Core.MiddlewareHandler>,\n strapi: Core.Strapi\n) => {\n const middlewares: {\n name: string | null;\n handler: Core.MiddlewareHandler;\n }[] = [];\n\n for (const item of config) {\n if (typeof item === 'function') {\n middlewares.push({\n name: null,\n handler: item,\n });\n\n continue;\n }\n\n if (typeof item === 'string') {\n const middlewareFactory = strapi.middleware(item);\n\n if (!middlewareFactory) {\n throw new Error(`Middleware ${item} not found.`);\n }\n\n middlewares.push({\n name: item,\n handler: instantiateMiddleware(middlewareFactory, item, {}, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (typeof item === 'object' && item !== null) {\n const { name, resolve, config = {} } = item;\n\n if (name) {\n const middlewareFactory = strapi.middleware(name);\n middlewares.push({\n name,\n handler:\n instantiateMiddleware(middlewareFactory, name, config, strapi) ?? dummyMiddleware,\n });\n\n continue;\n }\n\n if (resolve) {\n const resolvedMiddlewareFactory = resolveCustomMiddleware(resolve, strapi);\n middlewares.push({\n name: resolve,\n handler:\n instantiateMiddleware(resolvedMiddlewareFactory, resolve, config, strapi) ??\n dummyMiddleware,\n });\n\n continue;\n }\n\n throw new Error('Invalid middleware configuration. Missing name or resolve properties.');\n }\n\n throw new Error(\n 'Middleware config must either be a string or an object {name?: string, resolve?: string, config: any}.'\n );\n }\n\n return middlewares;\n};\n\n/**\n * Resolve middleware from package name or path\n */\nconst resolveCustomMiddleware = (resolve: string, strapi: Core.Strapi) => {\n let modulePath;\n\n try {\n modulePath = require.resolve(resolve);\n } catch (error) {\n if (error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND') {\n modulePath = path.resolve(strapi.dirs.dist.root, resolve);\n } else {\n throw error;\n }\n }\n\n try {\n return importDefault(modulePath);\n } catch (err) {\n throw new Error(`Could not load middleware \"${modulePath}\".`);\n }\n};\n\nexport { resolveRouteMiddlewares, resolveMiddlewares };\n"],"names":["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":";;;;AAKA,MAAMA,qBAAwB,GAAA,CAC5BC,iBACAC,EAAAA,IAAAA,EACAC,MACAC,EAAAA,MAAAA,GAAAA;IAEA,IAAI;AACF,QAAA,OAAOH,kBAAkBE,MAAQ,EAAA;AAAEC,YAAAA;AAAO,SAAA,CAAA;AAC5C,KAAA,CAAE,OAAOC,CAAG,EAAA;AACV,QAAA,IAAIA,aAAaC,KAAO,EAAA;YACtB,MAAM,IAAIA,KAAM,CAAA,CAAC,YAAY,EAAEJ,IAAK,CAAA,GAAG,EAAEG,CAAAA,CAAEE,OAAO,CAAC,CAAC,CAAA;AACtD;AACF;AACF,CAAA;AAEMC,MAAAA,uBAAAA,GAA0B,CAACC,KAAmBL,EAAAA,MAAAA,GAAAA;AAClD,IAAA,MAAMM,iBAAoBD,GAAAA,KAAAA,EAAON,MAAQQ,EAAAA,WAAAA,IAAe,EAAE;IAE1D,IAAI,CAACC,QAAQF,iBAAoB,CAAA,EAAA;AAC/B,QAAA,MAAM,IAAIJ,KAAM,CAAA,2CAAA,CAAA;AAClB;IAEA,MAAMK,WAAAA,GAAcE,mBAAmBH,iBAAmBN,EAAAA,MAAAA,CAAAA;AAE1D,IAAA,OAAOO,YAAYG,GAAG,CAAC,CAAC,EAAEC,OAAO,EAAE,GAAKA,OAAAA,CAAAA;AAC1C;AAEA,MAAMC,eAAAA,GAA0C,CAACC,CAAAA,EAAGC,IAASA,GAAAA,IAAAA,EAAAA;AAE7D;;IAGA,MAAML,kBAAqB,GAAA,CACzBV,MACAC,EAAAA,MAAAA,GAAAA;AAEA,IAAA,MAAMO,cAGA,EAAE;IAER,KAAK,MAAMQ,QAAQhB,MAAQ,CAAA;QACzB,IAAI,OAAOgB,SAAS,UAAY,EAAA;AAC9BR,YAAAA,WAAAA,CAAYS,IAAI,CAAC;gBACflB,IAAM,EAAA,IAAA;gBACNa,OAASI,EAAAA;AACX,aAAA,CAAA;AAEA,YAAA;AACF;QAEA,IAAI,OAAOA,SAAS,QAAU,EAAA;YAC5B,MAAMlB,iBAAAA,GAAoBG,MAAOiB,CAAAA,UAAU,CAACF,IAAAA,CAAAA;AAE5C,YAAA,IAAI,CAAClB,iBAAmB,EAAA;AACtB,gBAAA,MAAM,IAAIK,KAAM,CAAA,CAAC,WAAW,EAAEa,IAAAA,CAAK,WAAW,CAAC,CAAA;AACjD;AAEAR,YAAAA,WAAAA,CAAYS,IAAI,CAAC;gBACflB,IAAMiB,EAAAA,IAAAA;AACNJ,gBAAAA,OAAAA,EAASf,qBAAsBC,CAAAA,iBAAAA,EAAmBkB,IAAM,EAAA,IAAIf,MAAWY,CAAAA,IAAAA;AACzE,aAAA,CAAA;AAEA,YAAA;AACF;AAEA,QAAA,IAAI,OAAOG,IAAAA,KAAS,QAAYA,IAAAA,IAAAA,KAAS,IAAM,EAAA;YAC7C,MAAM,EAAEjB,IAAI,EAAEoB,OAAO,EAAEnB,MAAS,GAAA,EAAE,EAAE,GAAGgB,IAAAA;AAEvC,YAAA,IAAIjB,IAAM,EAAA;gBACR,MAAMD,iBAAAA,GAAoBG,MAAOiB,CAAAA,UAAU,CAACnB,IAAAA,CAAAA;AAC5CS,gBAAAA,WAAAA,CAAYS,IAAI,CAAC;AACflB,oBAAAA,IAAAA;AACAa,oBAAAA,OAAAA,EACEf,qBAAsBC,CAAAA,iBAAAA,EAAmBC,IAAMC,EAAAA,MAAAA,EAAQC,MAAWY,CAAAA,IAAAA;AACtE,iBAAA,CAAA;AAEA,gBAAA;AACF;AAEA,YAAA,IAAIM,OAAS,EAAA;gBACX,MAAMC,yBAAAA,GAA4BC,wBAAwBF,OAASlB,EAAAA,MAAAA,CAAAA;AACnEO,gBAAAA,WAAAA,CAAYS,IAAI,CAAC;oBACflB,IAAMoB,EAAAA,OAAAA;AACNP,oBAAAA,OAAAA,EACEf,qBAAsBuB,CAAAA,yBAAAA,EAA2BD,OAASnB,EAAAA,MAAAA,EAAQC,MAClEY,CAAAA,IAAAA;AACJ,iBAAA,CAAA;AAEA,gBAAA;AACF;AAEA,YAAA,MAAM,IAAIV,KAAM,CAAA,uEAAA,CAAA;AAClB;AAEA,QAAA,MAAM,IAAIA,KACR,CAAA,wGAAA,CAAA;AAEJ;IAEA,OAAOK,WAAAA;AACT;AAEA;;IAGA,MAAMa,uBAA0B,GAAA,CAACF,OAAiBlB,EAAAA,MAAAA,GAAAA;IAChD,IAAIqB,UAAAA;IAEJ,IAAI;QACFA,UAAaC,GAAAA,OAAAA,CAAQJ,OAAO,CAACA,OAAAA,CAAAA;AAC/B,KAAA,CAAE,OAAOK,KAAO,EAAA;AACd,QAAA,IAAIA,iBAAiBrB,KAAS,IAAA,MAAA,IAAUqB,SAASA,KAAMC,CAAAA,IAAI,KAAK,kBAAoB,EAAA;YAClFH,UAAaI,GAAAA,IAAAA,CAAKP,OAAO,CAAClB,MAAAA,CAAO0B,IAAI,CAACC,IAAI,CAACC,IAAI,EAAEV,OAAAA,CAAAA;SAC5C,MAAA;YACL,MAAMK,KAAAA;AACR;AACF;IAEA,IAAI;AACF,QAAA,OAAOM,aAAcR,CAAAA,UAAAA,CAAAA;AACvB,KAAA,CAAE,OAAOS,GAAK,EAAA;AACZ,QAAA,MAAM,IAAI5B,KAAM,CAAA,CAAC,2BAA2B,EAAEmB,UAAAA,CAAW,EAAE,CAAC,CAAA;AAC9D;AACF,CAAA;;;;"}
@@ -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,CAAA;AAC5C,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,YAAAA,OAAO;MACnB;AAAA,IACF;AAEA,UAAM,KAAK;AAAA,EAAA;AAGN,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;;;;"}