@strapi/core 0.0.0-next.6d1431fe2a53b80b47ad9f00187cd7bae9d5f46b → 0.0.0-next.6df41d57bcc9a1075bfdf986fe57760632bb78b9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (806) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +430 -403
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +429 -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.d.ts.map +1 -1
  38. package/dist/core-api/controller/index.js +64 -48
  39. package/dist/core-api/controller/index.js.map +1 -1
  40. package/dist/core-api/controller/index.mjs +63 -49
  41. package/dist/core-api/controller/index.mjs.map +1 -1
  42. package/dist/core-api/controller/single-type.js +41 -40
  43. package/dist/core-api/controller/single-type.js.map +1 -1
  44. package/dist/core-api/controller/single-type.mjs +40 -41
  45. package/dist/core-api/controller/single-type.mjs.map +1 -1
  46. package/dist/core-api/controller/transform.d.ts +3 -2
  47. package/dist/core-api/controller/transform.d.ts.map +1 -1
  48. package/dist/core-api/controller/transform.js +83 -64
  49. package/dist/core-api/controller/transform.js.map +1 -1
  50. package/dist/core-api/controller/transform.mjs +82 -65
  51. package/dist/core-api/controller/transform.mjs.map +1 -1
  52. package/dist/core-api/routes/index.d.ts +4 -22
  53. package/dist/core-api/routes/index.d.ts.map +1 -1
  54. package/dist/core-api/routes/index.js +205 -61
  55. package/dist/core-api/routes/index.js.map +1 -1
  56. package/dist/core-api/routes/index.mjs +185 -62
  57. package/dist/core-api/routes/index.mjs.map +1 -1
  58. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  59. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  60. package/dist/core-api/routes/validation/attributes.js +560 -0
  61. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  62. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  63. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  64. package/dist/core-api/routes/validation/common.d.ts +105 -0
  65. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  66. package/dist/core-api/routes/validation/common.js +116 -0
  67. package/dist/core-api/routes/validation/common.js.map +1 -0
  68. package/dist/core-api/routes/validation/common.mjs +95 -0
  69. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  70. package/dist/core-api/routes/validation/component.d.ts +34 -0
  71. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  72. package/dist/core-api/routes/validation/component.js +45 -0
  73. package/dist/core-api/routes/validation/component.js.map +1 -0
  74. package/dist/core-api/routes/validation/component.mjs +43 -0
  75. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  76. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  77. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  78. package/dist/core-api/routes/validation/constants.js +18 -0
  79. package/dist/core-api/routes/validation/constants.js.map +1 -0
  80. package/dist/core-api/routes/validation/constants.mjs +16 -0
  81. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  82. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  83. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  84. package/dist/core-api/routes/validation/content-type.js +201 -0
  85. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  86. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  87. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  88. package/dist/core-api/routes/validation/index.d.ts +5 -0
  89. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  90. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  91. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  92. package/dist/core-api/routes/validation/mappers.js +273 -0
  93. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  94. package/dist/core-api/routes/validation/mappers.mjs +249 -0
  95. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  96. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  97. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  98. package/dist/core-api/routes/validation/utils.js +128 -0
  99. package/dist/core-api/routes/validation/utils.js.map +1 -0
  100. package/dist/core-api/routes/validation/utils.mjs +106 -0
  101. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  102. package/dist/core-api/service/collection-type.js +73 -60
  103. package/dist/core-api/service/collection-type.js.map +1 -1
  104. package/dist/core-api/service/collection-type.mjs +72 -62
  105. package/dist/core-api/service/collection-type.mjs.map +1 -1
  106. package/dist/core-api/service/core-service.js +9 -8
  107. package/dist/core-api/service/core-service.js.map +1 -1
  108. package/dist/core-api/service/core-service.mjs +8 -9
  109. package/dist/core-api/service/core-service.mjs.map +1 -1
  110. package/dist/core-api/service/index.js +13 -13
  111. package/dist/core-api/service/index.js.map +1 -1
  112. package/dist/core-api/service/index.mjs +12 -14
  113. package/dist/core-api/service/index.mjs.map +1 -1
  114. package/dist/core-api/service/pagination.js +69 -43
  115. package/dist/core-api/service/pagination.js.map +1 -1
  116. package/dist/core-api/service/pagination.mjs +68 -47
  117. package/dist/core-api/service/pagination.mjs.map +1 -1
  118. package/dist/core-api/service/single-type.js +43 -39
  119. package/dist/core-api/service/single-type.js.map +1 -1
  120. package/dist/core-api/service/single-type.mjs +42 -41
  121. package/dist/core-api/service/single-type.mjs.map +1 -1
  122. package/dist/domain/content-type/index.d.ts.map +1 -1
  123. package/dist/domain/content-type/index.js +110 -99
  124. package/dist/domain/content-type/index.js.map +1 -1
  125. package/dist/domain/content-type/index.mjs +109 -99
  126. package/dist/domain/content-type/index.mjs.map +1 -1
  127. package/dist/domain/content-type/validator.js +84 -69
  128. package/dist/domain/content-type/validator.js.map +1 -1
  129. package/dist/domain/content-type/validator.mjs +83 -68
  130. package/dist/domain/content-type/validator.mjs.map +1 -1
  131. package/dist/domain/module/index.d.ts.map +1 -1
  132. package/dist/domain/module/index.js +112 -100
  133. package/dist/domain/module/index.js.map +1 -1
  134. package/dist/domain/module/index.mjs +111 -99
  135. package/dist/domain/module/index.mjs.map +1 -1
  136. package/dist/domain/module/validation.js +25 -20
  137. package/dist/domain/module/validation.js.map +1 -1
  138. package/dist/domain/module/validation.mjs +24 -21
  139. package/dist/domain/module/validation.mjs.map +1 -1
  140. package/dist/ee/index.d.ts +7 -0
  141. package/dist/ee/index.d.ts.map +1 -1
  142. package/dist/ee/index.js +197 -137
  143. package/dist/ee/index.js.map +1 -1
  144. package/dist/ee/index.mjs +196 -139
  145. package/dist/ee/index.mjs.map +1 -1
  146. package/dist/ee/license.d.ts +3 -1
  147. package/dist/ee/license.d.ts.map +1 -1
  148. package/dist/ee/license.js +105 -75
  149. package/dist/ee/license.js.map +1 -1
  150. package/dist/ee/license.mjs +103 -76
  151. package/dist/ee/license.mjs.map +1 -1
  152. package/dist/factories.d.ts +3 -1
  153. package/dist/factories.d.ts.map +1 -1
  154. package/dist/factories.js +80 -67
  155. package/dist/factories.js.map +1 -1
  156. package/dist/factories.mjs +77 -70
  157. package/dist/factories.mjs.map +1 -1
  158. package/dist/index.js +29 -26
  159. package/dist/index.js.map +1 -1
  160. package/dist/index.mjs +29 -29
  161. package/dist/index.mjs.map +1 -1
  162. package/dist/loaders/admin.d.ts.map +1 -1
  163. package/dist/loaders/admin.js +21 -20
  164. package/dist/loaders/admin.js.map +1 -1
  165. package/dist/loaders/admin.mjs +20 -20
  166. package/dist/loaders/admin.mjs.map +1 -1
  167. package/dist/loaders/apis.js +143 -120
  168. package/dist/loaders/apis.js.map +1 -1
  169. package/dist/loaders/apis.mjs +142 -119
  170. package/dist/loaders/apis.mjs.map +1 -1
  171. package/dist/loaders/components.js +33 -34
  172. package/dist/loaders/components.js.map +1 -1
  173. package/dist/loaders/components.mjs +32 -34
  174. package/dist/loaders/components.mjs.map +1 -1
  175. package/dist/loaders/index.js +22 -20
  176. package/dist/loaders/index.js.map +1 -1
  177. package/dist/loaders/index.mjs +21 -21
  178. package/dist/loaders/index.mjs.map +1 -1
  179. package/dist/loaders/middlewares.js +29 -25
  180. package/dist/loaders/middlewares.js.map +1 -1
  181. package/dist/loaders/middlewares.mjs +28 -25
  182. package/dist/loaders/middlewares.mjs.map +1 -1
  183. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  184. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  185. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  186. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  187. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  188. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  189. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  190. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  191. package/dist/loaders/plugins/index.js +132 -122
  192. package/dist/loaders/plugins/index.js.map +1 -1
  193. package/dist/loaders/plugins/index.mjs +121 -112
  194. package/dist/loaders/plugins/index.mjs.map +1 -1
  195. package/dist/loaders/policies.js +24 -20
  196. package/dist/loaders/policies.js.map +1 -1
  197. package/dist/loaders/policies.mjs +23 -20
  198. package/dist/loaders/policies.mjs.map +1 -1
  199. package/dist/loaders/sanitizers.js +10 -4
  200. package/dist/loaders/sanitizers.js.map +1 -1
  201. package/dist/loaders/sanitizers.mjs +9 -6
  202. package/dist/loaders/sanitizers.mjs.map +1 -1
  203. package/dist/loaders/src-index.js +35 -27
  204. package/dist/loaders/src-index.js.map +1 -1
  205. package/dist/loaders/src-index.mjs +34 -29
  206. package/dist/loaders/src-index.mjs.map +1 -1
  207. package/dist/loaders/validators.js +9 -4
  208. package/dist/loaders/validators.js.map +1 -1
  209. package/dist/loaders/validators.mjs +8 -6
  210. package/dist/loaders/validators.mjs.map +1 -1
  211. package/dist/middlewares/body.d.ts.map +1 -1
  212. package/dist/middlewares/body.js +58 -54
  213. package/dist/middlewares/body.js.map +1 -1
  214. package/dist/middlewares/body.mjs +57 -51
  215. package/dist/middlewares/body.mjs.map +1 -1
  216. package/dist/middlewares/compression.js +6 -6
  217. package/dist/middlewares/compression.js.map +1 -1
  218. package/dist/middlewares/compression.mjs +5 -5
  219. package/dist/middlewares/compression.mjs.map +1 -1
  220. package/dist/middlewares/cors.d.ts +9 -1
  221. package/dist/middlewares/cors.d.ts.map +1 -1
  222. package/dist/middlewares/cors.js +81 -48
  223. package/dist/middlewares/cors.js.map +1 -1
  224. package/dist/middlewares/cors.mjs +78 -46
  225. package/dist/middlewares/cors.mjs.map +1 -1
  226. package/dist/middlewares/errors.js +32 -30
  227. package/dist/middlewares/errors.js.map +1 -1
  228. package/dist/middlewares/errors.mjs +31 -31
  229. package/dist/middlewares/errors.mjs.map +1 -1
  230. package/dist/middlewares/favicon.js +27 -17
  231. package/dist/middlewares/favicon.js.map +1 -1
  232. package/dist/middlewares/favicon.mjs +26 -16
  233. package/dist/middlewares/favicon.mjs.map +1 -1
  234. package/dist/middlewares/index.js +32 -30
  235. package/dist/middlewares/index.js.map +1 -1
  236. package/dist/middlewares/index.mjs +31 -31
  237. package/dist/middlewares/index.mjs.map +1 -1
  238. package/dist/middlewares/ip.js +6 -6
  239. package/dist/middlewares/ip.js.map +1 -1
  240. package/dist/middlewares/ip.mjs +5 -5
  241. package/dist/middlewares/ip.mjs.map +1 -1
  242. package/dist/middlewares/logger.js +10 -9
  243. package/dist/middlewares/logger.js.map +1 -1
  244. package/dist/middlewares/logger.mjs +9 -10
  245. package/dist/middlewares/logger.mjs.map +1 -1
  246. package/dist/middlewares/powered-by.js +13 -9
  247. package/dist/middlewares/powered-by.js.map +1 -1
  248. package/dist/middlewares/powered-by.mjs +12 -10
  249. package/dist/middlewares/powered-by.mjs.map +1 -1
  250. package/dist/middlewares/public.js +33 -29
  251. package/dist/middlewares/public.js.map +1 -1
  252. package/dist/middlewares/public.mjs +32 -28
  253. package/dist/middlewares/public.mjs.map +1 -1
  254. package/dist/middlewares/query.js +35 -32
  255. package/dist/middlewares/query.js.map +1 -1
  256. package/dist/middlewares/query.mjs +34 -31
  257. package/dist/middlewares/query.mjs.map +1 -1
  258. package/dist/middlewares/response-time.js +10 -9
  259. package/dist/middlewares/response-time.js.map +1 -1
  260. package/dist/middlewares/response-time.mjs +9 -10
  261. package/dist/middlewares/response-time.mjs.map +1 -1
  262. package/dist/middlewares/responses.js +14 -12
  263. package/dist/middlewares/responses.js.map +1 -1
  264. package/dist/middlewares/responses.mjs +13 -13
  265. package/dist/middlewares/responses.mjs.map +1 -1
  266. package/dist/middlewares/security.js +109 -71
  267. package/dist/middlewares/security.js.map +1 -1
  268. package/dist/middlewares/security.mjs +108 -70
  269. package/dist/middlewares/security.mjs.map +1 -1
  270. package/dist/middlewares/session.js +26 -25
  271. package/dist/middlewares/session.js.map +1 -1
  272. package/dist/middlewares/session.mjs +25 -24
  273. package/dist/middlewares/session.mjs.map +1 -1
  274. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  275. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  276. package/dist/migrations/database/5.0.0-discard-drafts.js +152 -90
  277. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  278. package/dist/migrations/database/5.0.0-discard-drafts.mjs +151 -92
  279. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  280. package/dist/migrations/draft-publish.d.ts +1 -1
  281. package/dist/migrations/draft-publish.d.ts.map +1 -1
  282. package/dist/migrations/draft-publish.js +61 -34
  283. package/dist/migrations/draft-publish.js.map +1 -1
  284. package/dist/migrations/draft-publish.mjs +60 -36
  285. package/dist/migrations/draft-publish.mjs.map +1 -1
  286. package/dist/migrations/first-published-at.d.ts +4 -0
  287. package/dist/migrations/first-published-at.d.ts.map +1 -0
  288. package/dist/migrations/first-published-at.js +51 -0
  289. package/dist/migrations/first-published-at.js.map +1 -0
  290. package/dist/migrations/first-published-at.mjs +49 -0
  291. package/dist/migrations/first-published-at.mjs.map +1 -0
  292. package/dist/migrations/i18n.js +62 -45
  293. package/dist/migrations/i18n.js.map +1 -1
  294. package/dist/migrations/i18n.mjs +61 -47
  295. package/dist/migrations/i18n.mjs.map +1 -1
  296. package/dist/migrations/index.d.ts.map +1 -1
  297. package/dist/migrations/index.js +29 -10
  298. package/dist/migrations/index.js.map +1 -1
  299. package/dist/migrations/index.mjs +28 -12
  300. package/dist/migrations/index.mjs.map +1 -1
  301. package/dist/package.json.js +186 -0
  302. package/dist/package.json.js.map +1 -0
  303. package/dist/package.json.mjs +163 -0
  304. package/dist/package.json.mjs.map +1 -0
  305. package/dist/providers/admin.js +27 -17
  306. package/dist/providers/admin.js.map +1 -1
  307. package/dist/providers/admin.mjs +26 -19
  308. package/dist/providers/admin.mjs.map +1 -1
  309. package/dist/providers/coreStore.js +13 -8
  310. package/dist/providers/coreStore.js.map +1 -1
  311. package/dist/providers/coreStore.mjs +12 -10
  312. package/dist/providers/coreStore.mjs.map +1 -1
  313. package/dist/providers/cron.js +19 -16
  314. package/dist/providers/cron.js.map +1 -1
  315. package/dist/providers/cron.mjs +18 -18
  316. package/dist/providers/cron.mjs.map +1 -1
  317. package/dist/providers/index.js +18 -9
  318. package/dist/providers/index.js.map +1 -1
  319. package/dist/providers/index.mjs +17 -10
  320. package/dist/providers/index.mjs.map +1 -1
  321. package/dist/providers/provider.js +4 -3
  322. package/dist/providers/provider.js.map +1 -1
  323. package/dist/providers/provider.mjs +3 -4
  324. package/dist/providers/provider.mjs.map +1 -1
  325. package/dist/providers/registries.js +37 -32
  326. package/dist/providers/registries.js.map +1 -1
  327. package/dist/providers/registries.mjs +36 -34
  328. package/dist/providers/registries.mjs.map +1 -1
  329. package/dist/providers/telemetry.js +19 -16
  330. package/dist/providers/telemetry.js.map +1 -1
  331. package/dist/providers/telemetry.mjs +18 -18
  332. package/dist/providers/telemetry.mjs.map +1 -1
  333. package/dist/providers/webhooks.js +28 -26
  334. package/dist/providers/webhooks.js.map +1 -1
  335. package/dist/providers/webhooks.mjs +27 -28
  336. package/dist/providers/webhooks.mjs.map +1 -1
  337. package/dist/registries/apis.js +23 -20
  338. package/dist/registries/apis.js.map +1 -1
  339. package/dist/registries/apis.mjs +22 -22
  340. package/dist/registries/apis.mjs.map +1 -1
  341. package/dist/registries/components.js +35 -37
  342. package/dist/registries/components.js.map +1 -1
  343. package/dist/registries/components.mjs +34 -39
  344. package/dist/registries/components.mjs.map +1 -1
  345. package/dist/registries/content-types.js +54 -59
  346. package/dist/registries/content-types.js.map +1 -1
  347. package/dist/registries/content-types.mjs +53 -61
  348. package/dist/registries/content-types.mjs.map +1 -1
  349. package/dist/registries/controllers.js +70 -71
  350. package/dist/registries/controllers.js.map +1 -1
  351. package/dist/registries/controllers.mjs +69 -73
  352. package/dist/registries/controllers.mjs.map +1 -1
  353. package/dist/registries/custom-fields.js +75 -65
  354. package/dist/registries/custom-fields.js.map +1 -1
  355. package/dist/registries/custom-fields.mjs +74 -67
  356. package/dist/registries/custom-fields.mjs.map +1 -1
  357. package/dist/registries/hooks.js +46 -49
  358. package/dist/registries/hooks.js.map +1 -1
  359. package/dist/registries/hooks.mjs +45 -51
  360. package/dist/registries/hooks.mjs.map +1 -1
  361. package/dist/registries/middlewares.js +49 -51
  362. package/dist/registries/middlewares.js.map +1 -1
  363. package/dist/registries/middlewares.mjs +48 -53
  364. package/dist/registries/middlewares.mjs.map +1 -1
  365. package/dist/registries/models.js +14 -13
  366. package/dist/registries/models.js.map +1 -1
  367. package/dist/registries/models.mjs +13 -14
  368. package/dist/registries/models.mjs.map +1 -1
  369. package/dist/registries/modules.js +39 -36
  370. package/dist/registries/modules.js.map +1 -1
  371. package/dist/registries/modules.mjs +38 -38
  372. package/dist/registries/modules.mjs.map +1 -1
  373. package/dist/registries/namespace.js +21 -20
  374. package/dist/registries/namespace.js.map +1 -1
  375. package/dist/registries/namespace.mjs +20 -23
  376. package/dist/registries/namespace.mjs.map +1 -1
  377. package/dist/registries/plugins.js +23 -20
  378. package/dist/registries/plugins.js.map +1 -1
  379. package/dist/registries/plugins.mjs +22 -22
  380. package/dist/registries/plugins.mjs.map +1 -1
  381. package/dist/registries/policies.js +103 -96
  382. package/dist/registries/policies.js.map +1 -1
  383. package/dist/registries/policies.mjs +102 -98
  384. package/dist/registries/policies.mjs.map +1 -1
  385. package/dist/registries/sanitizers.js +23 -22
  386. package/dist/registries/sanitizers.js.map +1 -1
  387. package/dist/registries/sanitizers.mjs +22 -22
  388. package/dist/registries/sanitizers.mjs.map +1 -1
  389. package/dist/registries/services.js +71 -71
  390. package/dist/registries/services.js.map +1 -1
  391. package/dist/registries/services.mjs +70 -73
  392. package/dist/registries/services.mjs.map +1 -1
  393. package/dist/registries/validators.js +23 -22
  394. package/dist/registries/validators.js.map +1 -1
  395. package/dist/registries/validators.mjs +22 -22
  396. package/dist/registries/validators.mjs.map +1 -1
  397. package/dist/services/auth/index.js +74 -74
  398. package/dist/services/auth/index.js.map +1 -1
  399. package/dist/services/auth/index.mjs +73 -74
  400. package/dist/services/auth/index.mjs.map +1 -1
  401. package/dist/services/config.js +47 -43
  402. package/dist/services/config.js.map +1 -1
  403. package/dist/services/config.mjs +46 -44
  404. package/dist/services/config.mjs.map +1 -1
  405. package/dist/services/content-api/index.d.ts +1 -1
  406. package/dist/services/content-api/index.d.ts.map +1 -1
  407. package/dist/services/content-api/index.js +80 -79
  408. package/dist/services/content-api/index.js.map +1 -1
  409. package/dist/services/content-api/index.mjs +79 -79
  410. package/dist/services/content-api/index.mjs.map +1 -1
  411. package/dist/services/content-api/permissions/engine.js +8 -5
  412. package/dist/services/content-api/permissions/engine.js.map +1 -1
  413. package/dist/services/content-api/permissions/engine.mjs +7 -5
  414. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  415. package/dist/services/content-api/permissions/index.js +101 -81
  416. package/dist/services/content-api/permissions/index.js.map +1 -1
  417. package/dist/services/content-api/permissions/index.mjs +100 -81
  418. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  419. package/dist/services/content-api/permissions/providers/action.js +17 -14
  420. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  421. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  422. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  423. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  424. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  425. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  426. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  427. package/dist/services/content-source-maps.d.ts +13 -0
  428. package/dist/services/content-source-maps.d.ts.map +1 -0
  429. package/dist/services/content-source-maps.js +108 -0
  430. package/dist/services/content-source-maps.js.map +1 -0
  431. package/dist/services/content-source-maps.mjs +106 -0
  432. package/dist/services/content-source-maps.mjs.map +1 -0
  433. package/dist/services/core-store.d.ts +2 -2
  434. package/dist/services/core-store.d.ts.map +1 -1
  435. package/dist/services/core-store.js +115 -95
  436. package/dist/services/core-store.js.map +1 -1
  437. package/dist/services/core-store.mjs +114 -97
  438. package/dist/services/core-store.mjs.map +1 -1
  439. package/dist/services/cron.js +74 -65
  440. package/dist/services/cron.js.map +1 -1
  441. package/dist/services/cron.mjs +73 -67
  442. package/dist/services/cron.mjs.map +1 -1
  443. package/dist/services/custom-fields.js +9 -7
  444. package/dist/services/custom-fields.js.map +1 -1
  445. package/dist/services/custom-fields.mjs +8 -9
  446. package/dist/services/custom-fields.mjs.map +1 -1
  447. package/dist/services/document-service/attributes/index.js +23 -18
  448. package/dist/services/document-service/attributes/index.js.map +1 -1
  449. package/dist/services/document-service/attributes/index.mjs +22 -19
  450. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  451. package/dist/services/document-service/attributes/transforms.js +16 -15
  452. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  453. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  454. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  455. package/dist/services/document-service/common.js +5 -4
  456. package/dist/services/document-service/common.js.map +1 -1
  457. package/dist/services/document-service/common.mjs +4 -5
  458. package/dist/services/document-service/common.mjs.map +1 -1
  459. package/dist/services/document-service/components.d.ts +6 -1
  460. package/dist/services/document-service/components.d.ts.map +1 -1
  461. package/dist/services/document-service/components.js +351 -256
  462. package/dist/services/document-service/components.js.map +1 -1
  463. package/dist/services/document-service/components.mjs +349 -261
  464. package/dist/services/document-service/components.mjs.map +1 -1
  465. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  466. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  467. package/dist/services/document-service/draft-and-publish.js +88 -48
  468. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  469. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  470. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  471. package/dist/services/document-service/entries.d.ts.map +1 -1
  472. package/dist/services/document-service/entries.js +151 -91
  473. package/dist/services/document-service/entries.js.map +1 -1
  474. package/dist/services/document-service/entries.mjs +150 -92
  475. package/dist/services/document-service/entries.mjs.map +1 -1
  476. package/dist/services/document-service/events.d.ts +1 -1
  477. package/dist/services/document-service/events.d.ts.map +1 -1
  478. package/dist/services/document-service/events.js +52 -40
  479. package/dist/services/document-service/events.js.map +1 -1
  480. package/dist/services/document-service/events.mjs +51 -41
  481. package/dist/services/document-service/events.mjs.map +1 -1
  482. package/dist/services/document-service/first-published-at.d.ts +7 -0
  483. package/dist/services/document-service/first-published-at.d.ts.map +1 -0
  484. package/dist/services/document-service/first-published-at.js +31 -0
  485. package/dist/services/document-service/first-published-at.js.map +1 -0
  486. package/dist/services/document-service/first-published-at.mjs +28 -0
  487. package/dist/services/document-service/first-published-at.mjs.map +1 -0
  488. package/dist/services/document-service/index.js +53 -33
  489. package/dist/services/document-service/index.js.map +1 -1
  490. package/dist/services/document-service/index.mjs +52 -34
  491. package/dist/services/document-service/index.mjs.map +1 -1
  492. package/dist/services/document-service/internationalization.d.ts +6 -1
  493. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  494. package/dist/services/document-service/internationalization.js +94 -46
  495. package/dist/services/document-service/internationalization.js.map +1 -1
  496. package/dist/services/document-service/internationalization.mjs +92 -50
  497. package/dist/services/document-service/internationalization.mjs.map +1 -1
  498. package/dist/services/document-service/middlewares/errors.js +23 -19
  499. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  500. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  501. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  502. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  503. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  504. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  505. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  506. package/dist/services/document-service/params.js +11 -5
  507. package/dist/services/document-service/params.js.map +1 -1
  508. package/dist/services/document-service/params.mjs +10 -6
  509. package/dist/services/document-service/params.mjs.map +1 -1
  510. package/dist/services/document-service/repository.d.ts.map +1 -1
  511. package/dist/services/document-service/repository.js +362 -319
  512. package/dist/services/document-service/repository.js.map +1 -1
  513. package/dist/services/document-service/repository.mjs +361 -320
  514. package/dist/services/document-service/repository.mjs.map +1 -1
  515. package/dist/services/document-service/transform/data.js +22 -12
  516. package/dist/services/document-service/transform/data.js.map +1 -1
  517. package/dist/services/document-service/transform/data.mjs +21 -13
  518. package/dist/services/document-service/transform/data.mjs.map +1 -1
  519. package/dist/services/document-service/transform/fields.js +26 -17
  520. package/dist/services/document-service/transform/fields.js.map +1 -1
  521. package/dist/services/document-service/transform/fields.mjs +25 -18
  522. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  523. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  524. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  525. package/dist/services/document-service/transform/id-map.js +115 -77
  526. package/dist/services/document-service/transform/id-map.js.map +1 -1
  527. package/dist/services/document-service/transform/id-map.mjs +114 -78
  528. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  529. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  530. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  531. package/dist/services/document-service/transform/id-transform.js +37 -29
  532. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  533. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  534. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  535. package/dist/services/document-service/transform/populate.js +23 -18
  536. package/dist/services/document-service/transform/populate.js.map +1 -1
  537. package/dist/services/document-service/transform/populate.mjs +22 -19
  538. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  539. package/dist/services/document-service/transform/query.js +11 -6
  540. package/dist/services/document-service/transform/query.js.map +1 -1
  541. package/dist/services/document-service/transform/query.mjs +10 -7
  542. package/dist/services/document-service/transform/query.mjs.map +1 -1
  543. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  544. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  545. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  546. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  547. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  548. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  549. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  550. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  551. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  552. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  553. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  554. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  555. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  556. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  557. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  558. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  559. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  560. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  561. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  562. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  563. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  564. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  565. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  566. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  567. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  568. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  569. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  570. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  571. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  572. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  573. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  574. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  575. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  576. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  577. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  578. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  579. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  580. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  581. package/dist/services/document-service/utils/populate.d.ts +1 -1
  582. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  583. package/dist/services/document-service/utils/populate.js +66 -42
  584. package/dist/services/document-service/utils/populate.js.map +1 -1
  585. package/dist/services/document-service/utils/populate.mjs +65 -43
  586. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  587. package/dist/services/document-service/utils/unidirectional-relations.d.ts +19 -2
  588. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  589. package/dist/services/document-service/utils/unidirectional-relations.js +124 -62
  590. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  591. package/dist/services/document-service/utils/unidirectional-relations.mjs +123 -64
  592. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  593. package/dist/services/entity-service/index.js +230 -161
  594. package/dist/services/entity-service/index.js.map +1 -1
  595. package/dist/services/entity-service/index.mjs +229 -160
  596. package/dist/services/entity-service/index.mjs.map +1 -1
  597. package/dist/services/entity-validator/blocks-validator.js +135 -103
  598. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  599. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  600. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  601. package/dist/services/entity-validator/index.d.ts +1 -1
  602. package/dist/services/entity-validator/index.d.ts.map +1 -1
  603. package/dist/services/entity-validator/index.js +370 -366
  604. package/dist/services/entity-validator/index.js.map +1 -1
  605. package/dist/services/entity-validator/index.mjs +366 -363
  606. package/dist/services/entity-validator/index.mjs.map +1 -1
  607. package/dist/services/entity-validator/validators.d.ts +1 -0
  608. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  609. package/dist/services/entity-validator/validators.js +270 -209
  610. package/dist/services/entity-validator/validators.js.map +1 -1
  611. package/dist/services/entity-validator/validators.mjs +269 -215
  612. package/dist/services/entity-validator/validators.mjs.map +1 -1
  613. package/dist/services/errors.js +65 -65
  614. package/dist/services/errors.js.map +1 -1
  615. package/dist/services/errors.mjs +64 -66
  616. package/dist/services/errors.mjs.map +1 -1
  617. package/dist/services/event-hub.js +82 -69
  618. package/dist/services/event-hub.js.map +1 -1
  619. package/dist/services/event-hub.mjs +81 -71
  620. package/dist/services/event-hub.mjs.map +1 -1
  621. package/dist/services/features.js +19 -14
  622. package/dist/services/features.js.map +1 -1
  623. package/dist/services/features.mjs +18 -15
  624. package/dist/services/features.mjs.map +1 -1
  625. package/dist/services/fs.js +41 -40
  626. package/dist/services/fs.js.map +1 -1
  627. package/dist/services/fs.mjs +40 -39
  628. package/dist/services/fs.mjs.map +1 -1
  629. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  630. package/dist/services/metrics/admin-user-hash.js +13 -11
  631. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  632. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  633. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  634. package/dist/services/metrics/index.d.ts +1 -1
  635. package/dist/services/metrics/index.d.ts.map +1 -1
  636. package/dist/services/metrics/index.js +48 -40
  637. package/dist/services/metrics/index.js.map +1 -1
  638. package/dist/services/metrics/index.mjs +47 -42
  639. package/dist/services/metrics/index.mjs.map +1 -1
  640. package/dist/services/metrics/is-truthy.js +13 -6
  641. package/dist/services/metrics/is-truthy.js.map +1 -1
  642. package/dist/services/metrics/is-truthy.mjs +12 -6
  643. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  644. package/dist/services/metrics/middleware.d.ts +2 -1
  645. package/dist/services/metrics/middleware.d.ts.map +1 -1
  646. package/dist/services/metrics/middleware.js +37 -22
  647. package/dist/services/metrics/middleware.js.map +1 -1
  648. package/dist/services/metrics/middleware.mjs +36 -24
  649. package/dist/services/metrics/middleware.mjs.map +1 -1
  650. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  651. package/dist/services/metrics/rate-limiter.js +24 -19
  652. package/dist/services/metrics/rate-limiter.js.map +1 -1
  653. package/dist/services/metrics/rate-limiter.mjs +23 -21
  654. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  655. package/dist/services/metrics/sender.d.ts.map +1 -1
  656. package/dist/services/metrics/sender.js +78 -69
  657. package/dist/services/metrics/sender.js.map +1 -1
  658. package/dist/services/metrics/sender.mjs +77 -64
  659. package/dist/services/metrics/sender.mjs.map +1 -1
  660. package/dist/services/query-params.js +13 -10
  661. package/dist/services/query-params.js.map +1 -1
  662. package/dist/services/query-params.mjs +12 -12
  663. package/dist/services/query-params.mjs.map +1 -1
  664. package/dist/services/reloader.js +35 -32
  665. package/dist/services/reloader.js.map +1 -1
  666. package/dist/services/reloader.mjs +34 -33
  667. package/dist/services/reloader.mjs.map +1 -1
  668. package/dist/services/request-context.js +11 -8
  669. package/dist/services/request-context.js.map +1 -1
  670. package/dist/services/request-context.mjs +10 -10
  671. package/dist/services/request-context.mjs.map +1 -1
  672. package/dist/services/server/admin-api.js +11 -10
  673. package/dist/services/server/admin-api.js.map +1 -1
  674. package/dist/services/server/admin-api.mjs +10 -11
  675. package/dist/services/server/admin-api.mjs.map +1 -1
  676. package/dist/services/server/api.js +33 -27
  677. package/dist/services/server/api.js.map +1 -1
  678. package/dist/services/server/api.mjs +32 -26
  679. package/dist/services/server/api.mjs.map +1 -1
  680. package/dist/services/server/compose-endpoint.js +116 -105
  681. package/dist/services/server/compose-endpoint.js.map +1 -1
  682. package/dist/services/server/compose-endpoint.mjs +115 -105
  683. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  684. package/dist/services/server/content-api.js +11 -9
  685. package/dist/services/server/content-api.js.map +1 -1
  686. package/dist/services/server/content-api.mjs +10 -10
  687. package/dist/services/server/content-api.mjs.map +1 -1
  688. package/dist/services/server/http-server.js +48 -44
  689. package/dist/services/server/http-server.js.map +1 -1
  690. package/dist/services/server/http-server.mjs +47 -43
  691. package/dist/services/server/http-server.mjs.map +1 -1
  692. package/dist/services/server/index.js +85 -82
  693. package/dist/services/server/index.js.map +1 -1
  694. package/dist/services/server/index.mjs +84 -81
  695. package/dist/services/server/index.mjs.map +1 -1
  696. package/dist/services/server/koa.js +49 -47
  697. package/dist/services/server/koa.js.map +1 -1
  698. package/dist/services/server/koa.mjs +48 -44
  699. package/dist/services/server/koa.mjs.map +1 -1
  700. package/dist/services/server/middleware.js +86 -82
  701. package/dist/services/server/middleware.js.map +1 -1
  702. package/dist/services/server/middleware.mjs +85 -82
  703. package/dist/services/server/middleware.mjs.map +1 -1
  704. package/dist/services/server/policy.js +24 -17
  705. package/dist/services/server/policy.js.map +1 -1
  706. package/dist/services/server/policy.mjs +23 -18
  707. package/dist/services/server/policy.mjs.map +1 -1
  708. package/dist/services/server/register-middlewares.js +68 -61
  709. package/dist/services/server/register-middlewares.js.map +1 -1
  710. package/dist/services/server/register-middlewares.mjs +67 -63
  711. package/dist/services/server/register-middlewares.mjs.map +1 -1
  712. package/dist/services/server/register-routes.js +109 -66
  713. package/dist/services/server/register-routes.js.map +1 -1
  714. package/dist/services/server/register-routes.mjs +108 -66
  715. package/dist/services/server/register-routes.mjs.map +1 -1
  716. package/dist/services/server/routing.d.ts +10 -0
  717. package/dist/services/server/routing.d.ts.map +1 -1
  718. package/dist/services/server/routing.js +100 -81
  719. package/dist/services/server/routing.js.map +1 -1
  720. package/dist/services/server/routing.mjs +99 -81
  721. package/dist/services/server/routing.mjs.map +1 -1
  722. package/dist/services/utils/conditional-fields.d.ts +3 -0
  723. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  724. package/dist/services/utils/conditional-fields.js +22 -0
  725. package/dist/services/utils/conditional-fields.js.map +1 -0
  726. package/dist/services/utils/conditional-fields.mjs +20 -0
  727. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  728. package/dist/services/utils/dynamic-zones.js +13 -14
  729. package/dist/services/utils/dynamic-zones.js.map +1 -1
  730. package/dist/services/utils/dynamic-zones.mjs +12 -16
  731. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  732. package/dist/services/webhook-runner.js +124 -122
  733. package/dist/services/webhook-runner.js.map +1 -1
  734. package/dist/services/webhook-runner.mjs +123 -121
  735. package/dist/services/webhook-runner.mjs.map +1 -1
  736. package/dist/services/webhook-store.js +132 -99
  737. package/dist/services/webhook-store.js.map +1 -1
  738. package/dist/services/webhook-store.mjs +131 -101
  739. package/dist/services/webhook-store.mjs.map +1 -1
  740. package/dist/services/worker-queue.js +44 -49
  741. package/dist/services/worker-queue.js.map +1 -1
  742. package/dist/services/worker-queue.mjs +43 -49
  743. package/dist/services/worker-queue.mjs.map +1 -1
  744. package/dist/utils/convert-custom-field-type.js +17 -20
  745. package/dist/utils/convert-custom-field-type.js.map +1 -1
  746. package/dist/utils/convert-custom-field-type.mjs +16 -21
  747. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  748. package/dist/utils/cron.js +64 -30
  749. package/dist/utils/cron.js.map +1 -1
  750. package/dist/utils/cron.mjs +63 -31
  751. package/dist/utils/cron.mjs.map +1 -1
  752. package/dist/utils/fetch.d.ts +5 -1
  753. package/dist/utils/fetch.d.ts.map +1 -1
  754. package/dist/utils/fetch.js +28 -18
  755. package/dist/utils/fetch.js.map +1 -1
  756. package/dist/utils/fetch.mjs +27 -19
  757. package/dist/utils/fetch.mjs.map +1 -1
  758. package/dist/utils/filepath-to-prop-path.js +20 -28
  759. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  760. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  761. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  762. package/dist/utils/is-initialized.js +21 -12
  763. package/dist/utils/is-initialized.js.map +1 -1
  764. package/dist/utils/is-initialized.mjs +20 -13
  765. package/dist/utils/is-initialized.mjs.map +1 -1
  766. package/dist/utils/lifecycles.js +6 -5
  767. package/dist/utils/lifecycles.js.map +1 -1
  768. package/dist/utils/lifecycles.mjs +5 -6
  769. package/dist/utils/lifecycles.mjs.map +1 -1
  770. package/dist/utils/load-config-file.js +40 -38
  771. package/dist/utils/load-config-file.js.map +1 -1
  772. package/dist/utils/load-config-file.mjs +39 -36
  773. package/dist/utils/load-config-file.mjs.map +1 -1
  774. package/dist/utils/load-files.js +40 -35
  775. package/dist/utils/load-files.js.map +1 -1
  776. package/dist/utils/load-files.mjs +39 -32
  777. package/dist/utils/load-files.mjs.map +1 -1
  778. package/dist/utils/open-browser.js +8 -8
  779. package/dist/utils/open-browser.js.map +1 -1
  780. package/dist/utils/open-browser.mjs +7 -7
  781. package/dist/utils/open-browser.mjs.map +1 -1
  782. package/dist/utils/resolve-working-dirs.js +23 -10
  783. package/dist/utils/resolve-working-dirs.js.map +1 -1
  784. package/dist/utils/resolve-working-dirs.mjs +22 -9
  785. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  786. package/dist/utils/signals.js +20 -14
  787. package/dist/utils/signals.js.map +1 -1
  788. package/dist/utils/signals.mjs +19 -15
  789. package/dist/utils/signals.mjs.map +1 -1
  790. package/dist/utils/startup-logger.d.ts.map +1 -1
  791. package/dist/utils/startup-logger.js +107 -78
  792. package/dist/utils/startup-logger.js.map +1 -1
  793. package/dist/utils/startup-logger.mjs +106 -75
  794. package/dist/utils/startup-logger.mjs.map +1 -1
  795. package/dist/utils/transform-content-types-to-models.d.ts +197 -0
  796. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  797. package/dist/utils/transform-content-types-to-models.js +350 -261
  798. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  799. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  800. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  801. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  802. package/dist/utils/update-notifier/index.js +68 -73
  803. package/dist/utils/update-notifier/index.js.map +1 -1
  804. package/dist/utils/update-notifier/index.mjs +67 -67
  805. package/dist/utils/update-notifier/index.mjs.map +1 -1
  806. package/package.json +30 -27
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-runner.mjs","sources":["../../src/services/webhook-runner.ts"],"sourcesContent":["/**\n * The event hub is Strapi's event control center.\n */\n\nimport createdDebugger from 'debug';\nimport _ from 'lodash';\nimport type { Logger } from '@strapi/logger';\n\nimport type { Modules } from '@strapi/types';\nimport WorkerQueue from './worker-queue';\nimport type { EventHub } from './event-hub';\nimport type { Fetch } from '../utils/fetch';\n\ntype Webhook = Modules.WebhookStore.Webhook;\n\ninterface Config {\n defaultHeaders: Record<string, string>;\n}\n\ninterface ConstructorParameters {\n eventHub: EventHub;\n logger: Logger;\n configuration?: Record<string, unknown>;\n fetch: Fetch;\n}\n\ninterface Event {\n event: string;\n info: Record<string, unknown>;\n}\n\ntype Listener = (info: Record<string, unknown>) => Promise<void>;\n\nconst debug = createdDebugger('strapi:webhook');\n\nconst defaultConfiguration: Config = {\n defaultHeaders: {},\n};\n\nclass WebhookRunner {\n private eventHub: EventHub;\n\n private logger: Logger;\n\n private config: Config;\n\n private webhooksMap: Map<string, Webhook[]> = new Map();\n\n private listeners: Map<string, Listener> = new Map();\n\n private queue: WorkerQueue<Event, void>;\n\n private fetch: Fetch;\n\n constructor({ eventHub, logger, configuration = {}, fetch }: ConstructorParameters) {\n debug('Initialized webhook runner');\n this.eventHub = eventHub;\n this.logger = logger;\n this.fetch = fetch;\n\n if (typeof configuration !== 'object') {\n throw new Error(\n 'Invalid configuration provided to the webhookRunner.\\nCheck your server.json -> webhooks configuration'\n );\n }\n\n this.config = _.merge(defaultConfiguration, configuration);\n\n this.queue = new WorkerQueue({ logger, concurrency: 5 });\n\n this.queue.subscribe(this.executeListener.bind(this));\n }\n\n deleteListener(event: string) {\n debug(`Deleting listener for event '${event}'`);\n\n const fn = this.listeners.get(event);\n\n if (fn !== undefined) {\n this.eventHub.off(event, fn);\n this.listeners.delete(event);\n }\n }\n\n createListener(event: string) {\n debug(`Creating listener for event '${event}'`);\n if (this.listeners.has(event)) {\n this.logger.error(\n `The webhook runner is already listening for the event '${event}'. Did you mean to call .register() ?`\n );\n }\n\n const listen = async (info: Event['info']) => {\n this.queue.enqueue({ event, info });\n };\n\n this.listeners.set(event, listen);\n this.eventHub.on(event, listen);\n }\n\n async executeListener({ event, info }: Event) {\n debug(`Executing webhook for event '${event}'`);\n const webhooks = this.webhooksMap.get(event) || [];\n const activeWebhooks = webhooks.filter((webhook) => webhook.isEnabled === true);\n\n for (const webhook of activeWebhooks) {\n await this.run(webhook, event, info).catch((error: unknown) => {\n this.logger.error('Error running webhook');\n this.logger.error(error);\n });\n }\n }\n\n run(webhook: Webhook, event: string, info = {}) {\n const { url, headers } = webhook;\n\n return this.fetch(url, {\n method: 'post',\n body: JSON.stringify({\n event,\n createdAt: new Date(),\n ...info,\n }),\n headers: {\n ...this.config.defaultHeaders,\n ...headers,\n 'X-Strapi-Event': event,\n 'Content-Type': 'application/json',\n },\n signal: AbortSignal.timeout(10000),\n })\n .then(async (res) => {\n if (res.ok) {\n return {\n statusCode: res.status,\n };\n }\n\n return {\n statusCode: res.status,\n message: await res.text(),\n };\n })\n .catch((err) => {\n return {\n statusCode: 500,\n message: err.message,\n };\n });\n }\n\n add(webhook: Webhook) {\n debug(`Registering webhook '${webhook.id}'`);\n const { events } = webhook;\n\n events.forEach((event) => {\n if (this.webhooksMap.has(event)) {\n this.webhooksMap.get(event)?.push(webhook);\n } else {\n this.webhooksMap.set(event, [webhook]);\n this.createListener(event);\n }\n });\n }\n\n update(webhook: Webhook) {\n debug(`Refreshing webhook '${webhook.id}'`);\n this.remove(webhook);\n this.add(webhook);\n }\n\n remove(webhook: Webhook) {\n debug(`Unregistering webhook '${webhook.id}'`);\n\n this.webhooksMap.forEach((webhooks, event) => {\n const filteredWebhooks = webhooks.filter((value) => value.id !== webhook.id);\n\n // Cleanup hanging listeners\n if (filteredWebhooks.length === 0) {\n this.webhooksMap.delete(event);\n this.deleteListener(event);\n } else {\n this.webhooksMap.set(event, filteredWebhooks);\n }\n });\n }\n}\n\n/**\n * Expose a factory function instead of the class\n */\nexport default function createWebhookRunner(opts: ConstructorParameters): WebhookRunner {\n return new WebhookRunner(opts);\n}\n\nexport type { WebhookRunner };\n"],"names":["createdDebugger"],"mappings":"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"}
1
+ {"version":3,"file":"webhook-runner.mjs","sources":["../../src/services/webhook-runner.ts"],"sourcesContent":["/**\n * The event hub is Strapi's event control center.\n */\n\nimport createdDebugger from 'debug';\nimport _ from 'lodash';\nimport type { Logger } from '@strapi/logger';\n\nimport type { Modules } from '@strapi/types';\nimport WorkerQueue from './worker-queue';\nimport type { EventHub } from './event-hub';\nimport type { Fetch } from '../utils/fetch';\n\ntype Webhook = Modules.WebhookStore.Webhook;\n\ninterface Config {\n defaultHeaders: Record<string, string>;\n}\n\ninterface ConstructorParameters {\n eventHub: EventHub;\n logger: Logger;\n configuration?: Record<string, unknown>;\n fetch: Fetch;\n}\n\ninterface Event {\n event: string;\n info: Record<string, unknown>;\n}\n\ntype Listener = (info: Record<string, unknown>) => Promise<void>;\n\nconst debug = createdDebugger('strapi:webhook');\n\nconst defaultConfiguration: Config = {\n defaultHeaders: {},\n};\n\nclass WebhookRunner {\n private eventHub: EventHub;\n\n private logger: Logger;\n\n private config: Config;\n\n private webhooksMap: Map<string, Webhook[]> = new Map();\n\n private listeners: Map<string, Listener> = new Map();\n\n private queue: WorkerQueue<Event, void>;\n\n private fetch: Fetch;\n\n constructor({ eventHub, logger, configuration = {}, fetch }: ConstructorParameters) {\n debug('Initialized webhook runner');\n this.eventHub = eventHub;\n this.logger = logger;\n this.fetch = fetch;\n\n if (typeof configuration !== 'object') {\n throw new Error(\n 'Invalid configuration provided to the webhookRunner.\\nCheck your server.json -> webhooks configuration'\n );\n }\n\n this.config = _.merge(defaultConfiguration, configuration);\n\n this.queue = new WorkerQueue({ logger, concurrency: 5 });\n\n this.queue.subscribe(this.executeListener.bind(this));\n }\n\n deleteListener(event: string) {\n debug(`Deleting listener for event '${event}'`);\n\n const fn = this.listeners.get(event);\n\n if (fn !== undefined) {\n this.eventHub.off(event, fn);\n this.listeners.delete(event);\n }\n }\n\n createListener(event: string) {\n debug(`Creating listener for event '${event}'`);\n if (this.listeners.has(event)) {\n this.logger.error(\n `The webhook runner is already listening for the event '${event}'. Did you mean to call .register() ?`\n );\n }\n\n const listen = async (info: Event['info']) => {\n this.queue.enqueue({ event, info });\n };\n\n this.listeners.set(event, listen);\n this.eventHub.on(event, listen);\n }\n\n async executeListener({ event, info }: Event) {\n debug(`Executing webhook for event '${event}'`);\n const webhooks = this.webhooksMap.get(event) || [];\n const activeWebhooks = webhooks.filter((webhook) => webhook.isEnabled === true);\n\n for (const webhook of activeWebhooks) {\n await this.run(webhook, event, info).catch((error: unknown) => {\n this.logger.error('Error running webhook');\n this.logger.error(error);\n });\n }\n }\n\n run(webhook: Webhook, event: string, info = {}) {\n const { url, headers } = webhook;\n\n return this.fetch(url, {\n method: 'post',\n body: JSON.stringify({\n event,\n createdAt: new Date(),\n ...info,\n }),\n headers: {\n ...this.config.defaultHeaders,\n ...headers,\n 'X-Strapi-Event': event,\n 'Content-Type': 'application/json',\n },\n signal: AbortSignal.timeout(10000),\n })\n .then(async (res) => {\n if (res.ok) {\n return {\n statusCode: res.status,\n };\n }\n\n return {\n statusCode: res.status,\n message: await res.text(),\n };\n })\n .catch((err) => {\n return {\n statusCode: 500,\n message: err.message,\n };\n });\n }\n\n add(webhook: Webhook) {\n debug(`Registering webhook '${webhook.id}'`);\n const { events } = webhook;\n\n events.forEach((event) => {\n if (this.webhooksMap.has(event)) {\n this.webhooksMap.get(event)?.push(webhook);\n } else {\n this.webhooksMap.set(event, [webhook]);\n this.createListener(event);\n }\n });\n }\n\n update(webhook: Webhook) {\n debug(`Refreshing webhook '${webhook.id}'`);\n this.remove(webhook);\n this.add(webhook);\n }\n\n remove(webhook: Webhook) {\n debug(`Unregistering webhook '${webhook.id}'`);\n\n this.webhooksMap.forEach((webhooks, event) => {\n const filteredWebhooks = webhooks.filter((value) => value.id !== webhook.id);\n\n // Cleanup hanging listeners\n if (filteredWebhooks.length === 0) {\n this.webhooksMap.delete(event);\n this.deleteListener(event);\n } else {\n this.webhooksMap.set(event, filteredWebhooks);\n }\n });\n }\n}\n\n/**\n * Expose a factory function instead of the class\n */\nexport default function createWebhookRunner(opts: ConstructorParameters): WebhookRunner {\n return new WebhookRunner(opts);\n}\n\nexport type { WebhookRunner };\n"],"names":["debug","createdDebugger","defaultConfiguration","defaultHeaders","WebhookRunner","deleteListener","event","fn","listeners","get","undefined","eventHub","off","delete","createListener","has","logger","error","listen","info","queue","enqueue","set","on","executeListener","webhooks","webhooksMap","activeWebhooks","filter","webhook","isEnabled","run","catch","url","headers","fetch","method","body","JSON","stringify","createdAt","Date","config","signal","AbortSignal","timeout","then","res","ok","statusCode","status","message","text","err","add","id","events","forEach","push","update","remove","filteredWebhooks","value","length","constructor","configuration","Map","Error","_","merge","WorkerQueue","concurrency","subscribe","bind","createWebhookRunner","opts"],"mappings":"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"}
@@ -1,110 +1,143 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const strapiUtils = require("@strapi/utils");
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+
4
5
  const { ValidationError } = strapiUtils.errors;
5
6
  const webhookModel = {
6
- uid: "strapi::webhook",
7
- singularName: "strapi_webhooks",
8
- tableName: "strapi_webhooks",
9
- attributes: {
10
- id: {
11
- type: "increments"
12
- },
13
- name: {
14
- type: "string"
15
- },
16
- url: {
17
- type: "text"
18
- },
19
- headers: {
20
- type: "json"
21
- },
22
- events: {
23
- type: "json"
24
- },
25
- enabled: {
26
- type: "boolean"
7
+ uid: 'strapi::webhook',
8
+ singularName: 'strapi_webhooks',
9
+ tableName: 'strapi_webhooks',
10
+ attributes: {
11
+ id: {
12
+ type: 'increments'
13
+ },
14
+ name: {
15
+ type: 'string'
16
+ },
17
+ url: {
18
+ type: 'text'
19
+ },
20
+ headers: {
21
+ type: 'json'
22
+ },
23
+ events: {
24
+ type: 'json'
25
+ },
26
+ enabled: {
27
+ type: 'boolean'
28
+ }
27
29
  }
28
- }
29
30
  };
30
- const toDBObject = (data) => {
31
- return {
32
- name: data.name,
33
- url: data.url,
34
- headers: data.headers,
35
- events: data.events,
36
- enabled: data.isEnabled
37
- };
31
+ const toDBObject = (data)=>{
32
+ return {
33
+ name: data.name,
34
+ url: data.url,
35
+ headers: data.headers,
36
+ events: data.events,
37
+ enabled: data.isEnabled
38
+ };
38
39
  };
39
- const fromDBObject = (row) => {
40
- return {
41
- id: typeof row.id === "number" ? row.id.toString() : row.id,
42
- name: row.name,
43
- url: row.url,
44
- headers: row.headers,
45
- events: row.events,
46
- isEnabled: row.enabled
47
- };
40
+ const fromDBObject = (row)=>{
41
+ return {
42
+ id: typeof row.id === 'number' ? row.id.toString() : row.id,
43
+ name: row.name,
44
+ url: row.url,
45
+ headers: row.headers,
46
+ events: row.events,
47
+ isEnabled: row.enabled
48
+ };
48
49
  };
49
- const webhookEventValidator = async (allowedEvents, events) => {
50
- const allowedValues = Array.from(allowedEvents.values());
51
- events.forEach((event) => {
52
- if (allowedValues.includes(event)) {
53
- return;
54
- }
55
- throw new ValidationError(`Webhook event ${event} is not supported`);
56
- });
50
+ const webhookEventValidator = async (allowedEvents, events)=>{
51
+ const allowedValues = Array.from(allowedEvents.values());
52
+ events.forEach((event)=>{
53
+ if (allowedValues.includes(event)) {
54
+ return;
55
+ }
56
+ throw new ValidationError(`Webhook event ${event} is not supported`);
57
+ });
57
58
  };
58
- const createWebhookStore = ({ db }) => {
59
- return {
60
- allowedEvents: /* @__PURE__ */ new Map([
61
- ["ENTRY_CREATE", "entry.create"],
62
- ["ENTRY_UPDATE", "entry.update"],
63
- ["ENTRY_DELETE", "entry.delete"],
64
- ["ENTRY_PUBLISH", "entry.publish"],
65
- ["ENTRY_UNPUBLISH", "entry.unpublish"],
66
- ["ENTRY_DRAFT_DISCARD", "entry.draft-discard"]
67
- ]),
68
- addAllowedEvent(key, value) {
69
- this.allowedEvents.set(key, value);
70
- },
71
- removeAllowedEvent(key) {
72
- this.allowedEvents.delete(key);
73
- },
74
- listAllowedEvents() {
75
- return Array.from(this.allowedEvents.keys());
76
- },
77
- getAllowedEvent(key) {
78
- return this.allowedEvents.get(key);
79
- },
80
- async findWebhooks() {
81
- const results = await db.query("strapi::webhook").findMany();
82
- return results.map(fromDBObject);
83
- },
84
- async findWebhook(id) {
85
- const result = await db.query("strapi::webhook").findOne({ where: { id } });
86
- return result ? fromDBObject(result) : null;
87
- },
88
- async createWebhook(data) {
89
- await webhookEventValidator(this.allowedEvents, data.events);
90
- return db.query("strapi::webhook").create({
91
- data: toDBObject({ ...data, isEnabled: true })
92
- }).then(fromDBObject);
93
- },
94
- async updateWebhook(id, data) {
95
- await webhookEventValidator(this.allowedEvents, data.events);
96
- const webhook = await db.query("strapi::webhook").update({
97
- where: { id },
98
- data: toDBObject(data)
99
- });
100
- return webhook ? fromDBObject(webhook) : null;
101
- },
102
- async deleteWebhook(id) {
103
- const webhook = await db.query("strapi::webhook").delete({ where: { id } });
104
- return webhook ? fromDBObject(webhook) : null;
105
- }
106
- };
59
+ const createWebhookStore = ({ db })=>{
60
+ return {
61
+ allowedEvents: new Map([
62
+ [
63
+ 'ENTRY_CREATE',
64
+ 'entry.create'
65
+ ],
66
+ [
67
+ 'ENTRY_UPDATE',
68
+ 'entry.update'
69
+ ],
70
+ [
71
+ 'ENTRY_DELETE',
72
+ 'entry.delete'
73
+ ],
74
+ [
75
+ 'ENTRY_PUBLISH',
76
+ 'entry.publish'
77
+ ],
78
+ [
79
+ 'ENTRY_UNPUBLISH',
80
+ 'entry.unpublish'
81
+ ],
82
+ [
83
+ 'ENTRY_DRAFT_DISCARD',
84
+ 'entry.draft-discard'
85
+ ]
86
+ ]),
87
+ addAllowedEvent (key, value) {
88
+ this.allowedEvents.set(key, value);
89
+ },
90
+ removeAllowedEvent (key) {
91
+ this.allowedEvents.delete(key);
92
+ },
93
+ listAllowedEvents () {
94
+ return Array.from(this.allowedEvents.keys());
95
+ },
96
+ getAllowedEvent (key) {
97
+ return this.allowedEvents.get(key);
98
+ },
99
+ async findWebhooks () {
100
+ const results = await db.query('strapi::webhook').findMany();
101
+ return results.map(fromDBObject);
102
+ },
103
+ async findWebhook (id) {
104
+ const result = await db.query('strapi::webhook').findOne({
105
+ where: {
106
+ id
107
+ }
108
+ });
109
+ return result ? fromDBObject(result) : null;
110
+ },
111
+ async createWebhook (data) {
112
+ await webhookEventValidator(this.allowedEvents, data.events);
113
+ return db.query('strapi::webhook').create({
114
+ data: toDBObject({
115
+ ...data,
116
+ isEnabled: true
117
+ })
118
+ }).then(fromDBObject);
119
+ },
120
+ async updateWebhook (id, data) {
121
+ await webhookEventValidator(this.allowedEvents, data.events);
122
+ const webhook = await db.query('strapi::webhook').update({
123
+ where: {
124
+ id
125
+ },
126
+ data: toDBObject(data)
127
+ });
128
+ return webhook ? fromDBObject(webhook) : null;
129
+ },
130
+ async deleteWebhook (id) {
131
+ const webhook = await db.query('strapi::webhook').delete({
132
+ where: {
133
+ id
134
+ }
135
+ });
136
+ return webhook ? fromDBObject(webhook) : null;
137
+ }
138
+ };
107
139
  };
140
+
108
141
  exports.createWebhookStore = createWebhookStore;
109
142
  exports.webhookModel = webhookModel;
110
143
  //# sourceMappingURL=webhook-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webhook-store.js","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\nimport type { Modules } from '@strapi/types';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ntype Webhook = Modules.WebhookStore.Webhook;\ntype DBOutput = Omit<Webhook, 'id' | 'isEnabled'> & { id: string | number; enabled: boolean };\ntype DBInput = Omit<DBOutput, 'id'>;\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: typeof row.id === 'number' ? row.id.toString() : row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n return {\n allowedEvents: new Map([\n ['ENTRY_CREATE', 'entry.create'],\n ['ENTRY_UPDATE', 'entry.update'],\n ['ENTRY_DELETE', 'entry.delete'],\n ['ENTRY_PUBLISH', 'entry.publish'],\n ['ENTRY_UNPUBLISH', 'entry.unpublish'],\n ['ENTRY_DRAFT_DISCARD', 'entry.draft-discard'],\n ]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await db.query('strapi::webhook').findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await db.query('strapi::webhook').findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return db\n .query('strapi::webhook')\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await db.query('strapi::webhook').update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await db.query('strapi::webhook').delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":["errors"],"mappings":"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"}
1
+ {"version":3,"file":"webhook-store.js","sources":["../../src/services/webhook-store.ts"],"sourcesContent":["/**\n * Webhook store is the implementation of webhook storage over the core_store\n */\n\nimport { errors } from '@strapi/utils';\nimport type { Model, Database } from '@strapi/database';\nimport type { Modules } from '@strapi/types';\n\nconst { ValidationError } = errors;\n\nconst webhookModel: Model = {\n uid: 'strapi::webhook',\n singularName: 'strapi_webhooks',\n tableName: 'strapi_webhooks',\n attributes: {\n id: {\n type: 'increments',\n },\n name: {\n type: 'string',\n },\n url: {\n type: 'text',\n },\n headers: {\n type: 'json',\n },\n events: {\n type: 'json',\n },\n enabled: {\n type: 'boolean',\n },\n },\n};\n\ntype Webhook = Modules.WebhookStore.Webhook;\ntype DBOutput = Omit<Webhook, 'id' | 'isEnabled'> & { id: string | number; enabled: boolean };\ntype DBInput = Omit<DBOutput, 'id'>;\n\nconst toDBObject = (data: Webhook): DBInput => {\n return {\n name: data.name,\n url: data.url,\n headers: data.headers,\n events: data.events,\n enabled: data.isEnabled,\n };\n};\n\nconst fromDBObject = (row: DBOutput): Webhook => {\n return {\n id: typeof row.id === 'number' ? row.id.toString() : row.id,\n name: row.name,\n url: row.url,\n headers: row.headers,\n events: row.events,\n isEnabled: row.enabled,\n };\n};\n\nconst webhookEventValidator = async (allowedEvents: Map<string, string>, events: string[]) => {\n const allowedValues = Array.from(allowedEvents.values());\n\n events.forEach((event) => {\n if (allowedValues.includes(event)) {\n return;\n }\n\n throw new ValidationError(`Webhook event ${event} is not supported`);\n });\n};\n\nexport interface WebhookStore {\n allowedEvents: Map<string, string>;\n addAllowedEvent(key: string, value: string): void;\n removeAllowedEvent(key: string): void;\n listAllowedEvents(): string[];\n getAllowedEvent(key: string): string | undefined;\n findWebhooks(): Promise<Webhook[]>;\n findWebhook(id: string): Promise<Webhook | null>;\n createWebhook(data: Webhook): Promise<Webhook>;\n updateWebhook(id: string, data: Webhook): Promise<Webhook | null>;\n deleteWebhook(id: string): Promise<Webhook | null>;\n}\n\nconst createWebhookStore = ({ db }: { db: Database }): WebhookStore => {\n return {\n allowedEvents: new Map([\n ['ENTRY_CREATE', 'entry.create'],\n ['ENTRY_UPDATE', 'entry.update'],\n ['ENTRY_DELETE', 'entry.delete'],\n ['ENTRY_PUBLISH', 'entry.publish'],\n ['ENTRY_UNPUBLISH', 'entry.unpublish'],\n ['ENTRY_DRAFT_DISCARD', 'entry.draft-discard'],\n ]),\n addAllowedEvent(key, value) {\n this.allowedEvents.set(key, value);\n },\n removeAllowedEvent(key) {\n this.allowedEvents.delete(key);\n },\n listAllowedEvents() {\n return Array.from(this.allowedEvents.keys());\n },\n getAllowedEvent(key) {\n return this.allowedEvents.get(key);\n },\n async findWebhooks() {\n const results = await db.query('strapi::webhook').findMany();\n\n return results.map(fromDBObject);\n },\n async findWebhook(id) {\n const result = await db.query('strapi::webhook').findOne({ where: { id } });\n return result ? fromDBObject(result) : null;\n },\n async createWebhook(data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n return db\n .query('strapi::webhook')\n .create({\n data: toDBObject({ ...data, isEnabled: true }),\n })\n .then(fromDBObject);\n },\n async updateWebhook(id, data) {\n await webhookEventValidator(this.allowedEvents, data.events);\n\n const webhook = await db.query('strapi::webhook').update({\n where: { id },\n data: toDBObject(data),\n });\n\n return webhook ? fromDBObject(webhook) : null;\n },\n async deleteWebhook(id) {\n const webhook = await db.query('strapi::webhook').delete({ where: { id } });\n return webhook ? fromDBObject(webhook) : null;\n },\n };\n};\n\nexport { webhookModel, createWebhookStore };\n"],"names":["ValidationError","errors","webhookModel","uid","singularName","tableName","attributes","id","type","name","url","headers","events","enabled","toDBObject","data","isEnabled","fromDBObject","row","toString","webhookEventValidator","allowedEvents","allowedValues","Array","from","values","forEach","event","includes","createWebhookStore","db","Map","addAllowedEvent","key","value","set","removeAllowedEvent","delete","listAllowedEvents","keys","getAllowedEvent","get","findWebhooks","results","query","findMany","map","findWebhook","result","findOne","where","createWebhook","create","then","updateWebhook","webhook","update","deleteWebhook"],"mappings":";;;;AAQA,MAAM,EAAEA,eAAe,EAAE,GAAGC,kBAAAA;AAE5B,MAAMC,YAAsB,GAAA;IAC1BC,GAAK,EAAA,iBAAA;IACLC,YAAc,EAAA,iBAAA;IACdC,SAAW,EAAA,iBAAA;IACXC,UAAY,EAAA;QACVC,EAAI,EAAA;YACFC,IAAM,EAAA;AACR,SAAA;QACAC,IAAM,EAAA;YACJD,IAAM,EAAA;AACR,SAAA;QACAE,GAAK,EAAA;YACHF,IAAM,EAAA;AACR,SAAA;QACAG,OAAS,EAAA;YACPH,IAAM,EAAA;AACR,SAAA;QACAI,MAAQ,EAAA;YACNJ,IAAM,EAAA;AACR,SAAA;QACAK,OAAS,EAAA;YACPL,IAAM,EAAA;AACR;AACF;AACF;AAMA,MAAMM,aAAa,CAACC,IAAAA,GAAAA;IAClB,OAAO;AACLN,QAAAA,IAAAA,EAAMM,KAAKN,IAAI;AACfC,QAAAA,GAAAA,EAAKK,KAAKL,GAAG;AACbC,QAAAA,OAAAA,EAASI,KAAKJ,OAAO;AACrBC,QAAAA,MAAAA,EAAQG,KAAKH,MAAM;AACnBC,QAAAA,OAAAA,EAASE,KAAKC;AAChB,KAAA;AACF,CAAA;AAEA,MAAMC,eAAe,CAACC,GAAAA,GAAAA;IACpB,OAAO;QACLX,EAAI,EAAA,OAAOW,GAAIX,CAAAA,EAAE,KAAK,QAAA,GAAWW,GAAIX,CAAAA,EAAE,CAACY,QAAQ,EAAKD,GAAAA,GAAAA,CAAIX,EAAE;AAC3DE,QAAAA,IAAAA,EAAMS,IAAIT,IAAI;AACdC,QAAAA,GAAAA,EAAKQ,IAAIR,GAAG;AACZC,QAAAA,OAAAA,EAASO,IAAIP,OAAO;AACpBC,QAAAA,MAAAA,EAAQM,IAAIN,MAAM;AAClBI,QAAAA,SAAAA,EAAWE,IAAIL;AACjB,KAAA;AACF,CAAA;AAEA,MAAMO,qBAAAA,GAAwB,OAAOC,aAAoCT,EAAAA,MAAAA,GAAAA;AACvE,IAAA,MAAMU,aAAgBC,GAAAA,KAAAA,CAAMC,IAAI,CAACH,cAAcI,MAAM,EAAA,CAAA;IAErDb,MAAOc,CAAAA,OAAO,CAAC,CAACC,KAAAA,GAAAA;QACd,IAAIL,aAAAA,CAAcM,QAAQ,CAACD,KAAQ,CAAA,EAAA;AACjC,YAAA;AACF;AAEA,QAAA,MAAM,IAAI3B,eAAgB,CAAA,CAAC,cAAc,EAAE2B,KAAAA,CAAM,iBAAiB,CAAC,CAAA;AACrE,KAAA,CAAA;AACF,CAAA;AAeA,MAAME,kBAAqB,GAAA,CAAC,EAAEC,EAAE,EAAoB,GAAA;IAClD,OAAO;AACLT,QAAAA,aAAAA,EAAe,IAAIU,GAAI,CAAA;AACrB,YAAA;AAAC,gBAAA,cAAA;AAAgB,gBAAA;AAAe,aAAA;AAChC,YAAA;AAAC,gBAAA,cAAA;AAAgB,gBAAA;AAAe,aAAA;AAChC,YAAA;AAAC,gBAAA,cAAA;AAAgB,gBAAA;AAAe,aAAA;AAChC,YAAA;AAAC,gBAAA,eAAA;AAAiB,gBAAA;AAAgB,aAAA;AAClC,YAAA;AAAC,gBAAA,iBAAA;AAAmB,gBAAA;AAAkB,aAAA;AACtC,YAAA;AAAC,gBAAA,qBAAA;AAAuB,gBAAA;AAAsB;AAC/C,SAAA,CAAA;QACDC,eAAgBC,CAAAA,CAAAA,GAAG,EAAEC,KAAK,EAAA;AACxB,YAAA,IAAI,CAACb,aAAa,CAACc,GAAG,CAACF,GAAKC,EAAAA,KAAAA,CAAAA;AAC9B,SAAA;AACAE,QAAAA,kBAAAA,CAAAA,CAAmBH,GAAG,EAAA;AACpB,YAAA,IAAI,CAACZ,aAAa,CAACgB,MAAM,CAACJ,GAAAA,CAAAA;AAC5B,SAAA;AACAK,QAAAA,iBAAAA,CAAAA,GAAAA;AACE,YAAA,OAAOf,MAAMC,IAAI,CAAC,IAAI,CAACH,aAAa,CAACkB,IAAI,EAAA,CAAA;AAC3C,SAAA;AACAC,QAAAA,eAAAA,CAAAA,CAAgBP,GAAG,EAAA;AACjB,YAAA,OAAO,IAAI,CAACZ,aAAa,CAACoB,GAAG,CAACR,GAAAA,CAAAA;AAChC,SAAA;QACA,MAAMS,YAAAA,CAAAA,GAAAA;AACJ,YAAA,MAAMC,UAAU,MAAMb,EAAAA,CAAGc,KAAK,CAAC,mBAAmBC,QAAQ,EAAA;YAE1D,OAAOF,OAAAA,CAAQG,GAAG,CAAC7B,YAAAA,CAAAA;AACrB,SAAA;AACA,QAAA,MAAM8B,aAAYxC,EAAE,EAAA;AAClB,YAAA,MAAMyC,SAAS,MAAMlB,EAAAA,CAAGc,KAAK,CAAC,iBAAA,CAAA,CAAmBK,OAAO,CAAC;gBAAEC,KAAO,EAAA;AAAE3C,oBAAAA;AAAG;AAAE,aAAA,CAAA;YACzE,OAAOyC,MAAAA,GAAS/B,aAAa+B,MAAU,CAAA,GAAA,IAAA;AACzC,SAAA;AACA,QAAA,MAAMG,eAAcpC,IAAI,EAAA;AACtB,YAAA,MAAMK,sBAAsB,IAAI,CAACC,aAAa,EAAEN,KAAKH,MAAM,CAAA;AAE3D,YAAA,OAAOkB,EACJc,CAAAA,KAAK,CAAC,iBAAA,CAAA,CACNQ,MAAM,CAAC;AACNrC,gBAAAA,IAAAA,EAAMD,UAAW,CAAA;AAAE,oBAAA,GAAGC,IAAI;oBAAEC,SAAW,EAAA;AAAK,iBAAA;AAC9C,aAAA,CAAA,CACCqC,IAAI,CAACpC,YAAAA,CAAAA;AACV,SAAA;QACA,MAAMqC,aAAAA,CAAAA,CAAc/C,EAAE,EAAEQ,IAAI,EAAA;AAC1B,YAAA,MAAMK,sBAAsB,IAAI,CAACC,aAAa,EAAEN,KAAKH,MAAM,CAAA;AAE3D,YAAA,MAAM2C,UAAU,MAAMzB,EAAAA,CAAGc,KAAK,CAAC,iBAAA,CAAA,CAAmBY,MAAM,CAAC;gBACvDN,KAAO,EAAA;AAAE3C,oBAAAA;AAAG,iBAAA;AACZQ,gBAAAA,IAAAA,EAAMD,UAAWC,CAAAA,IAAAA;AACnB,aAAA,CAAA;YAEA,OAAOwC,OAAAA,GAAUtC,aAAasC,OAAW,CAAA,GAAA,IAAA;AAC3C,SAAA;AACA,QAAA,MAAME,eAAclD,EAAE,EAAA;AACpB,YAAA,MAAMgD,UAAU,MAAMzB,EAAAA,CAAGc,KAAK,CAAC,iBAAA,CAAA,CAAmBP,MAAM,CAAC;gBAAEa,KAAO,EAAA;AAAE3C,oBAAAA;AAAG;AAAE,aAAA,CAAA;YACzE,OAAOgD,OAAAA,GAAUtC,aAAasC,OAAW,CAAA,GAAA,IAAA;AAC3C;AACF,KAAA;AACF;;;;;"}
@@ -1,110 +1,140 @@
1
- import { errors } from "@strapi/utils";
1
+ import { errors } from '@strapi/utils';
2
+
2
3
  const { ValidationError } = errors;
3
4
  const webhookModel = {
4
- uid: "strapi::webhook",
5
- singularName: "strapi_webhooks",
6
- tableName: "strapi_webhooks",
7
- attributes: {
8
- id: {
9
- type: "increments"
10
- },
11
- name: {
12
- type: "string"
13
- },
14
- url: {
15
- type: "text"
16
- },
17
- headers: {
18
- type: "json"
19
- },
20
- events: {
21
- type: "json"
22
- },
23
- enabled: {
24
- type: "boolean"
5
+ uid: 'strapi::webhook',
6
+ singularName: 'strapi_webhooks',
7
+ tableName: 'strapi_webhooks',
8
+ attributes: {
9
+ id: {
10
+ type: 'increments'
11
+ },
12
+ name: {
13
+ type: 'string'
14
+ },
15
+ url: {
16
+ type: 'text'
17
+ },
18
+ headers: {
19
+ type: 'json'
20
+ },
21
+ events: {
22
+ type: 'json'
23
+ },
24
+ enabled: {
25
+ type: 'boolean'
26
+ }
25
27
  }
26
- }
27
28
  };
28
- const toDBObject = (data) => {
29
- return {
30
- name: data.name,
31
- url: data.url,
32
- headers: data.headers,
33
- events: data.events,
34
- enabled: data.isEnabled
35
- };
29
+ const toDBObject = (data)=>{
30
+ return {
31
+ name: data.name,
32
+ url: data.url,
33
+ headers: data.headers,
34
+ events: data.events,
35
+ enabled: data.isEnabled
36
+ };
36
37
  };
37
- const fromDBObject = (row) => {
38
- return {
39
- id: typeof row.id === "number" ? row.id.toString() : row.id,
40
- name: row.name,
41
- url: row.url,
42
- headers: row.headers,
43
- events: row.events,
44
- isEnabled: row.enabled
45
- };
38
+ const fromDBObject = (row)=>{
39
+ return {
40
+ id: typeof row.id === 'number' ? row.id.toString() : row.id,
41
+ name: row.name,
42
+ url: row.url,
43
+ headers: row.headers,
44
+ events: row.events,
45
+ isEnabled: row.enabled
46
+ };
46
47
  };
47
- const webhookEventValidator = async (allowedEvents, events) => {
48
- const allowedValues = Array.from(allowedEvents.values());
49
- events.forEach((event) => {
50
- if (allowedValues.includes(event)) {
51
- return;
52
- }
53
- throw new ValidationError(`Webhook event ${event} is not supported`);
54
- });
55
- };
56
- const createWebhookStore = ({ db }) => {
57
- return {
58
- allowedEvents: /* @__PURE__ */ new Map([
59
- ["ENTRY_CREATE", "entry.create"],
60
- ["ENTRY_UPDATE", "entry.update"],
61
- ["ENTRY_DELETE", "entry.delete"],
62
- ["ENTRY_PUBLISH", "entry.publish"],
63
- ["ENTRY_UNPUBLISH", "entry.unpublish"],
64
- ["ENTRY_DRAFT_DISCARD", "entry.draft-discard"]
65
- ]),
66
- addAllowedEvent(key, value) {
67
- this.allowedEvents.set(key, value);
68
- },
69
- removeAllowedEvent(key) {
70
- this.allowedEvents.delete(key);
71
- },
72
- listAllowedEvents() {
73
- return Array.from(this.allowedEvents.keys());
74
- },
75
- getAllowedEvent(key) {
76
- return this.allowedEvents.get(key);
77
- },
78
- async findWebhooks() {
79
- const results = await db.query("strapi::webhook").findMany();
80
- return results.map(fromDBObject);
81
- },
82
- async findWebhook(id) {
83
- const result = await db.query("strapi::webhook").findOne({ where: { id } });
84
- return result ? fromDBObject(result) : null;
85
- },
86
- async createWebhook(data) {
87
- await webhookEventValidator(this.allowedEvents, data.events);
88
- return db.query("strapi::webhook").create({
89
- data: toDBObject({ ...data, isEnabled: true })
90
- }).then(fromDBObject);
91
- },
92
- async updateWebhook(id, data) {
93
- await webhookEventValidator(this.allowedEvents, data.events);
94
- const webhook = await db.query("strapi::webhook").update({
95
- where: { id },
96
- data: toDBObject(data)
97
- });
98
- return webhook ? fromDBObject(webhook) : null;
99
- },
100
- async deleteWebhook(id) {
101
- const webhook = await db.query("strapi::webhook").delete({ where: { id } });
102
- return webhook ? fromDBObject(webhook) : null;
103
- }
104
- };
48
+ const webhookEventValidator = async (allowedEvents, events)=>{
49
+ const allowedValues = Array.from(allowedEvents.values());
50
+ events.forEach((event)=>{
51
+ if (allowedValues.includes(event)) {
52
+ return;
53
+ }
54
+ throw new ValidationError(`Webhook event ${event} is not supported`);
55
+ });
105
56
  };
106
- export {
107
- createWebhookStore,
108
- webhookModel
57
+ const createWebhookStore = ({ db })=>{
58
+ return {
59
+ allowedEvents: new Map([
60
+ [
61
+ 'ENTRY_CREATE',
62
+ 'entry.create'
63
+ ],
64
+ [
65
+ 'ENTRY_UPDATE',
66
+ 'entry.update'
67
+ ],
68
+ [
69
+ 'ENTRY_DELETE',
70
+ 'entry.delete'
71
+ ],
72
+ [
73
+ 'ENTRY_PUBLISH',
74
+ 'entry.publish'
75
+ ],
76
+ [
77
+ 'ENTRY_UNPUBLISH',
78
+ 'entry.unpublish'
79
+ ],
80
+ [
81
+ 'ENTRY_DRAFT_DISCARD',
82
+ 'entry.draft-discard'
83
+ ]
84
+ ]),
85
+ addAllowedEvent (key, value) {
86
+ this.allowedEvents.set(key, value);
87
+ },
88
+ removeAllowedEvent (key) {
89
+ this.allowedEvents.delete(key);
90
+ },
91
+ listAllowedEvents () {
92
+ return Array.from(this.allowedEvents.keys());
93
+ },
94
+ getAllowedEvent (key) {
95
+ return this.allowedEvents.get(key);
96
+ },
97
+ async findWebhooks () {
98
+ const results = await db.query('strapi::webhook').findMany();
99
+ return results.map(fromDBObject);
100
+ },
101
+ async findWebhook (id) {
102
+ const result = await db.query('strapi::webhook').findOne({
103
+ where: {
104
+ id
105
+ }
106
+ });
107
+ return result ? fromDBObject(result) : null;
108
+ },
109
+ async createWebhook (data) {
110
+ await webhookEventValidator(this.allowedEvents, data.events);
111
+ return db.query('strapi::webhook').create({
112
+ data: toDBObject({
113
+ ...data,
114
+ isEnabled: true
115
+ })
116
+ }).then(fromDBObject);
117
+ },
118
+ async updateWebhook (id, data) {
119
+ await webhookEventValidator(this.allowedEvents, data.events);
120
+ const webhook = await db.query('strapi::webhook').update({
121
+ where: {
122
+ id
123
+ },
124
+ data: toDBObject(data)
125
+ });
126
+ return webhook ? fromDBObject(webhook) : null;
127
+ },
128
+ async deleteWebhook (id) {
129
+ const webhook = await db.query('strapi::webhook').delete({
130
+ where: {
131
+ id
132
+ }
133
+ });
134
+ return webhook ? fromDBObject(webhook) : null;
135
+ }
136
+ };
109
137
  };
138
+
139
+ export { createWebhookStore, webhookModel };
110
140
  //# sourceMappingURL=webhook-store.mjs.map