@strapi/core 0.0.0-experimental.90ca9123352ed07e0a9cedaf4bcad1475e74137f → 0.0.0-experimental.9243d2d1af29ab9842c7037bef47fdf1bc6efd8b

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 (1123) hide show
  1. package/LICENSE +18 -3
  2. package/dist/Strapi.d.ts +52 -59
  3. package/dist/Strapi.d.ts.map +1 -1
  4. package/dist/Strapi.js +438 -428
  5. package/dist/Strapi.js.map +1 -1
  6. package/dist/Strapi.mjs +429 -439
  7. package/dist/Strapi.mjs.map +1 -1
  8. package/dist/compile.js +23 -14
  9. package/dist/compile.js.map +1 -1
  10. package/dist/compile.mjs +22 -14
  11. package/dist/compile.mjs.map +1 -1
  12. package/dist/configuration/config-loader.d.ts.map +1 -1
  13. package/dist/configuration/config-loader.js +110 -93
  14. package/dist/configuration/config-loader.js.map +1 -1
  15. package/dist/configuration/config-loader.mjs +109 -92
  16. package/dist/configuration/config-loader.mjs.map +1 -1
  17. package/dist/configuration/get-dirs.d.ts +10 -0
  18. package/dist/configuration/get-dirs.d.ts.map +1 -0
  19. package/dist/configuration/get-dirs.js +33 -0
  20. package/dist/configuration/get-dirs.js.map +1 -0
  21. package/dist/configuration/get-dirs.mjs +31 -0
  22. package/dist/configuration/get-dirs.mjs.map +1 -0
  23. package/dist/configuration/index.d.ts +5 -7
  24. package/dist/configuration/index.d.ts.map +1 -1
  25. package/dist/configuration/index.js +86 -72
  26. package/dist/configuration/index.js.map +1 -1
  27. package/dist/configuration/index.mjs +84 -68
  28. package/dist/configuration/index.mjs.map +1 -1
  29. package/dist/configuration/urls.d.ts +8 -0
  30. package/dist/configuration/urls.d.ts.map +1 -0
  31. package/dist/configuration/urls.js +81 -0
  32. package/dist/configuration/urls.js.map +1 -0
  33. package/dist/configuration/urls.mjs +77 -0
  34. package/dist/configuration/urls.mjs.map +1 -0
  35. package/dist/container.d.ts +2 -2
  36. package/dist/container.d.ts.map +1 -1
  37. package/dist/container.js +27 -23
  38. package/dist/container.js.map +1 -1
  39. package/dist/container.mjs +26 -24
  40. package/dist/container.mjs.map +1 -1
  41. package/dist/core-api/controller/collection-type.d.ts +3 -3
  42. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  43. package/dist/core-api/controller/collection-type.js +77 -73
  44. package/dist/core-api/controller/collection-type.js.map +1 -1
  45. package/dist/core-api/controller/collection-type.mjs +76 -74
  46. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  47. package/dist/core-api/controller/index.d.ts +3 -3
  48. package/dist/core-api/controller/index.d.ts.map +1 -1
  49. package/dist/core-api/controller/index.js +63 -43
  50. package/dist/core-api/controller/index.js.map +1 -1
  51. package/dist/core-api/controller/index.mjs +62 -44
  52. package/dist/core-api/controller/index.mjs.map +1 -1
  53. package/dist/core-api/controller/single-type.d.ts +3 -3
  54. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  55. package/dist/core-api/controller/single-type.js +41 -39
  56. package/dist/core-api/controller/single-type.js.map +1 -1
  57. package/dist/core-api/controller/single-type.mjs +40 -40
  58. package/dist/core-api/controller/single-type.mjs.map +1 -1
  59. package/dist/core-api/controller/transform.d.ts +10 -9
  60. package/dist/core-api/controller/transform.d.ts.map +1 -1
  61. package/dist/core-api/controller/transform.js +73 -58
  62. package/dist/core-api/controller/transform.js.map +1 -1
  63. package/dist/core-api/controller/transform.mjs +72 -59
  64. package/dist/core-api/controller/transform.mjs.map +1 -1
  65. package/dist/core-api/routes/index.d.ts +4 -22
  66. package/dist/core-api/routes/index.d.ts.map +1 -1
  67. package/dist/core-api/routes/index.js +205 -61
  68. package/dist/core-api/routes/index.js.map +1 -1
  69. package/dist/core-api/routes/index.mjs +185 -62
  70. package/dist/core-api/routes/index.mjs.map +1 -1
  71. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  72. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  73. package/dist/core-api/routes/validation/attributes.js +560 -0
  74. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  75. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  76. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  77. package/dist/core-api/routes/validation/common.d.ts +105 -0
  78. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  79. package/dist/core-api/routes/validation/common.js +116 -0
  80. package/dist/core-api/routes/validation/common.js.map +1 -0
  81. package/dist/core-api/routes/validation/common.mjs +95 -0
  82. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  83. package/dist/core-api/routes/validation/component.d.ts +34 -0
  84. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  85. package/dist/core-api/routes/validation/component.js +45 -0
  86. package/dist/core-api/routes/validation/component.js.map +1 -0
  87. package/dist/core-api/routes/validation/component.mjs +43 -0
  88. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  89. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  90. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  91. package/dist/core-api/routes/validation/constants.js +18 -0
  92. package/dist/core-api/routes/validation/constants.js.map +1 -0
  93. package/dist/core-api/routes/validation/constants.mjs +16 -0
  94. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  95. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  96. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  97. package/dist/core-api/routes/validation/content-type.js +201 -0
  98. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  99. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  100. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  101. package/dist/core-api/routes/validation/index.d.ts +5 -0
  102. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  103. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  104. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  105. package/dist/core-api/routes/validation/mappers.js +238 -0
  106. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  107. package/dist/core-api/routes/validation/mappers.mjs +214 -0
  108. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  109. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  110. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  111. package/dist/core-api/routes/validation/utils.js +128 -0
  112. package/dist/core-api/routes/validation/utils.js.map +1 -0
  113. package/dist/core-api/routes/validation/utils.mjs +106 -0
  114. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  115. package/dist/core-api/service/collection-type.d.ts +11 -17
  116. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  117. package/dist/core-api/service/collection-type.js +73 -49
  118. package/dist/core-api/service/collection-type.js.map +1 -1
  119. package/dist/core-api/service/collection-type.mjs +72 -51
  120. package/dist/core-api/service/collection-type.mjs.map +1 -1
  121. package/dist/core-api/service/core-service.js +9 -8
  122. package/dist/core-api/service/core-service.js.map +1 -1
  123. package/dist/core-api/service/core-service.mjs +8 -9
  124. package/dist/core-api/service/core-service.mjs.map +1 -1
  125. package/dist/core-api/service/index.d.ts +3 -3
  126. package/dist/core-api/service/index.d.ts.map +1 -1
  127. package/dist/core-api/service/index.js +13 -13
  128. package/dist/core-api/service/index.js.map +1 -1
  129. package/dist/core-api/service/index.mjs +12 -14
  130. package/dist/core-api/service/index.mjs.map +1 -1
  131. package/dist/core-api/service/pagination.d.ts +4 -11
  132. package/dist/core-api/service/pagination.d.ts.map +1 -1
  133. package/dist/core-api/service/pagination.js +68 -68
  134. package/dist/core-api/service/pagination.js.map +1 -1
  135. package/dist/core-api/service/pagination.mjs +66 -71
  136. package/dist/core-api/service/pagination.mjs.map +1 -1
  137. package/dist/core-api/service/single-type.d.ts +7 -6
  138. package/dist/core-api/service/single-type.d.ts.map +1 -1
  139. package/dist/core-api/service/single-type.js +44 -22
  140. package/dist/core-api/service/single-type.js.map +1 -1
  141. package/dist/core-api/service/single-type.mjs +43 -24
  142. package/dist/core-api/service/single-type.mjs.map +1 -1
  143. package/dist/domain/content-type/index.d.ts +1 -1
  144. package/dist/domain/content-type/index.d.ts.map +1 -1
  145. package/dist/domain/content-type/index.js +110 -96
  146. package/dist/domain/content-type/index.js.map +1 -1
  147. package/dist/domain/content-type/index.mjs +109 -96
  148. package/dist/domain/content-type/index.mjs.map +1 -1
  149. package/dist/domain/content-type/validator.d.ts.map +1 -1
  150. package/dist/domain/content-type/validator.js +84 -69
  151. package/dist/domain/content-type/validator.js.map +1 -1
  152. package/dist/domain/content-type/validator.mjs +83 -68
  153. package/dist/domain/content-type/validator.mjs.map +1 -1
  154. package/dist/domain/module/index.d.ts +24 -23
  155. package/dist/domain/module/index.d.ts.map +1 -1
  156. package/dist/domain/module/index.js +112 -100
  157. package/dist/domain/module/index.js.map +1 -1
  158. package/dist/domain/module/index.mjs +111 -99
  159. package/dist/domain/module/index.mjs.map +1 -1
  160. package/dist/domain/module/validation.js +25 -20
  161. package/dist/domain/module/validation.js.map +1 -1
  162. package/dist/domain/module/validation.mjs +24 -21
  163. package/dist/domain/module/validation.mjs.map +1 -1
  164. package/dist/ee/index.d.ts +11 -2
  165. package/dist/ee/index.d.ts.map +1 -1
  166. package/dist/ee/index.js +197 -132
  167. package/dist/ee/index.js.map +1 -1
  168. package/dist/ee/index.mjs +196 -134
  169. package/dist/ee/index.mjs.map +1 -1
  170. package/dist/ee/license.d.ts +5 -3
  171. package/dist/ee/license.d.ts.map +1 -1
  172. package/dist/ee/license.js +105 -74
  173. package/dist/ee/license.js.map +1 -1
  174. package/dist/ee/license.mjs +103 -75
  175. package/dist/ee/license.mjs.map +1 -1
  176. package/dist/factories.d.ts +13 -11
  177. package/dist/factories.d.ts.map +1 -1
  178. package/dist/factories.js +80 -63
  179. package/dist/factories.js.map +1 -1
  180. package/dist/factories.mjs +77 -66
  181. package/dist/factories.mjs.map +1 -1
  182. package/dist/index.d.ts +18 -2
  183. package/dist/index.d.ts.map +1 -1
  184. package/dist/index.js +32 -5
  185. package/dist/index.js.map +1 -1
  186. package/dist/index.mjs +29 -5
  187. package/dist/index.mjs.map +1 -1
  188. package/dist/loaders/admin.d.ts +2 -2
  189. package/dist/loaders/admin.d.ts.map +1 -1
  190. package/dist/loaders/admin.js +21 -21
  191. package/dist/loaders/admin.js.map +1 -1
  192. package/dist/loaders/admin.mjs +20 -21
  193. package/dist/loaders/admin.mjs.map +1 -1
  194. package/dist/loaders/apis.d.ts +2 -2
  195. package/dist/loaders/apis.d.ts.map +1 -1
  196. package/dist/loaders/apis.js +143 -120
  197. package/dist/loaders/apis.js.map +1 -1
  198. package/dist/loaders/apis.mjs +142 -119
  199. package/dist/loaders/apis.mjs.map +1 -1
  200. package/dist/loaders/components.d.ts +2 -2
  201. package/dist/loaders/components.d.ts.map +1 -1
  202. package/dist/loaders/components.js +33 -34
  203. package/dist/loaders/components.js.map +1 -1
  204. package/dist/loaders/components.mjs +32 -34
  205. package/dist/loaders/components.mjs.map +1 -1
  206. package/dist/loaders/index.d.ts +2 -2
  207. package/dist/loaders/index.d.ts.map +1 -1
  208. package/dist/loaders/index.js +22 -22
  209. package/dist/loaders/index.js.map +1 -1
  210. package/dist/loaders/index.mjs +21 -23
  211. package/dist/loaders/index.mjs.map +1 -1
  212. package/dist/loaders/middlewares.d.ts +2 -2
  213. package/dist/loaders/middlewares.d.ts.map +1 -1
  214. package/dist/loaders/middlewares.js +29 -25
  215. package/dist/loaders/middlewares.js.map +1 -1
  216. package/dist/loaders/middlewares.mjs +28 -25
  217. package/dist/loaders/middlewares.mjs.map +1 -1
  218. package/dist/loaders/plugins/get-enabled-plugins.d.ts +2 -2
  219. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  220. package/dist/loaders/plugins/get-enabled-plugins.js +125 -100
  221. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  222. package/dist/loaders/plugins/get-enabled-plugins.mjs +124 -99
  223. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  224. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  225. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  226. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  227. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  228. package/dist/loaders/plugins/index.d.ts +2 -2
  229. package/dist/loaders/plugins/index.d.ts.map +1 -1
  230. package/dist/loaders/plugins/index.js +141 -104
  231. package/dist/loaders/plugins/index.js.map +1 -1
  232. package/dist/loaders/plugins/index.mjs +121 -104
  233. package/dist/loaders/plugins/index.mjs.map +1 -1
  234. package/dist/loaders/policies.d.ts +2 -2
  235. package/dist/loaders/policies.d.ts.map +1 -1
  236. package/dist/loaders/policies.js +24 -20
  237. package/dist/loaders/policies.js.map +1 -1
  238. package/dist/loaders/policies.mjs +23 -20
  239. package/dist/loaders/policies.mjs.map +1 -1
  240. package/dist/loaders/sanitizers.d.ts +2 -2
  241. package/dist/loaders/sanitizers.d.ts.map +1 -1
  242. package/dist/loaders/sanitizers.js +10 -4
  243. package/dist/loaders/sanitizers.js.map +1 -1
  244. package/dist/loaders/sanitizers.mjs +9 -6
  245. package/dist/loaders/sanitizers.mjs.map +1 -1
  246. package/dist/loaders/src-index.d.ts +2 -2
  247. package/dist/loaders/src-index.d.ts.map +1 -1
  248. package/dist/loaders/src-index.js +35 -27
  249. package/dist/loaders/src-index.js.map +1 -1
  250. package/dist/loaders/src-index.mjs +34 -29
  251. package/dist/loaders/src-index.mjs.map +1 -1
  252. package/dist/loaders/validators.d.ts +2 -2
  253. package/dist/loaders/validators.d.ts.map +1 -1
  254. package/dist/loaders/validators.js +9 -4
  255. package/dist/loaders/validators.js.map +1 -1
  256. package/dist/loaders/validators.mjs +8 -6
  257. package/dist/loaders/validators.mjs.map +1 -1
  258. package/dist/middlewares/body.d.ts +4 -4
  259. package/dist/middlewares/body.d.ts.map +1 -1
  260. package/dist/middlewares/body.js +58 -54
  261. package/dist/middlewares/body.js.map +1 -1
  262. package/dist/middlewares/body.mjs +57 -51
  263. package/dist/middlewares/body.mjs.map +1 -1
  264. package/dist/middlewares/compression.d.ts +2 -2
  265. package/dist/middlewares/compression.d.ts.map +1 -1
  266. package/dist/middlewares/compression.js +6 -6
  267. package/dist/middlewares/compression.js.map +1 -1
  268. package/dist/middlewares/compression.mjs +5 -5
  269. package/dist/middlewares/compression.mjs.map +1 -1
  270. package/dist/middlewares/cors.d.ts +11 -3
  271. package/dist/middlewares/cors.d.ts.map +1 -1
  272. package/dist/middlewares/cors.js +81 -46
  273. package/dist/middlewares/cors.js.map +1 -1
  274. package/dist/middlewares/cors.mjs +78 -44
  275. package/dist/middlewares/cors.mjs.map +1 -1
  276. package/dist/middlewares/errors.d.ts +2 -2
  277. package/dist/middlewares/errors.d.ts.map +1 -1
  278. package/dist/middlewares/errors.js +32 -30
  279. package/dist/middlewares/errors.js.map +1 -1
  280. package/dist/middlewares/errors.mjs +31 -31
  281. package/dist/middlewares/errors.mjs.map +1 -1
  282. package/dist/middlewares/favicon.d.ts +2 -2
  283. package/dist/middlewares/favicon.d.ts.map +1 -1
  284. package/dist/middlewares/favicon.js +27 -17
  285. package/dist/middlewares/favicon.js.map +1 -1
  286. package/dist/middlewares/favicon.mjs +26 -16
  287. package/dist/middlewares/favicon.mjs.map +1 -1
  288. package/dist/middlewares/index.d.ts +2 -2
  289. package/dist/middlewares/index.d.ts.map +1 -1
  290. package/dist/middlewares/index.js +32 -30
  291. package/dist/middlewares/index.js.map +1 -1
  292. package/dist/middlewares/index.mjs +31 -31
  293. package/dist/middlewares/index.mjs.map +1 -1
  294. package/dist/middlewares/ip.d.ts +2 -2
  295. package/dist/middlewares/ip.d.ts.map +1 -1
  296. package/dist/middlewares/ip.js +6 -6
  297. package/dist/middlewares/ip.js.map +1 -1
  298. package/dist/middlewares/ip.mjs +5 -5
  299. package/dist/middlewares/ip.mjs.map +1 -1
  300. package/dist/middlewares/logger.d.ts +2 -2
  301. package/dist/middlewares/logger.d.ts.map +1 -1
  302. package/dist/middlewares/logger.js +10 -9
  303. package/dist/middlewares/logger.js.map +1 -1
  304. package/dist/middlewares/logger.mjs +9 -10
  305. package/dist/middlewares/logger.mjs.map +1 -1
  306. package/dist/middlewares/powered-by.d.ts +2 -2
  307. package/dist/middlewares/powered-by.d.ts.map +1 -1
  308. package/dist/middlewares/powered-by.js +13 -9
  309. package/dist/middlewares/powered-by.js.map +1 -1
  310. package/dist/middlewares/powered-by.mjs +12 -10
  311. package/dist/middlewares/powered-by.mjs.map +1 -1
  312. package/dist/middlewares/public.d.ts +2 -2
  313. package/dist/middlewares/public.d.ts.map +1 -1
  314. package/dist/middlewares/public.js +33 -29
  315. package/dist/middlewares/public.js.map +1 -1
  316. package/dist/middlewares/public.mjs +32 -28
  317. package/dist/middlewares/public.mjs.map +1 -1
  318. package/dist/middlewares/query.d.ts +2 -2
  319. package/dist/middlewares/query.d.ts.map +1 -1
  320. package/dist/middlewares/query.js +35 -32
  321. package/dist/middlewares/query.js.map +1 -1
  322. package/dist/middlewares/query.mjs +34 -31
  323. package/dist/middlewares/query.mjs.map +1 -1
  324. package/dist/middlewares/response-time.d.ts +2 -2
  325. package/dist/middlewares/response-time.d.ts.map +1 -1
  326. package/dist/middlewares/response-time.js +10 -9
  327. package/dist/middlewares/response-time.js.map +1 -1
  328. package/dist/middlewares/response-time.mjs +9 -10
  329. package/dist/middlewares/response-time.mjs.map +1 -1
  330. package/dist/middlewares/responses.d.ts +3 -3
  331. package/dist/middlewares/responses.d.ts.map +1 -1
  332. package/dist/middlewares/responses.js +14 -12
  333. package/dist/middlewares/responses.js.map +1 -1
  334. package/dist/middlewares/responses.mjs +13 -13
  335. package/dist/middlewares/responses.mjs.map +1 -1
  336. package/dist/middlewares/security.d.ts +2 -2
  337. package/dist/middlewares/security.d.ts.map +1 -1
  338. package/dist/middlewares/security.js +110 -65
  339. package/dist/middlewares/security.js.map +1 -1
  340. package/dist/middlewares/security.mjs +108 -63
  341. package/dist/middlewares/security.mjs.map +1 -1
  342. package/dist/middlewares/session.d.ts +2 -2
  343. package/dist/middlewares/session.d.ts.map +1 -1
  344. package/dist/middlewares/session.js +26 -25
  345. package/dist/middlewares/session.js.map +1 -1
  346. package/dist/middlewares/session.mjs +25 -24
  347. package/dist/middlewares/session.mjs.map +1 -1
  348. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +33 -0
  349. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  350. package/dist/migrations/database/5.0.0-discard-drafts.js +168 -0
  351. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  352. package/dist/migrations/database/5.0.0-discard-drafts.mjs +165 -0
  353. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  354. package/dist/migrations/draft-publish.d.ts +17 -0
  355. package/dist/migrations/draft-publish.d.ts.map +1 -0
  356. package/dist/migrations/draft-publish.js +69 -0
  357. package/dist/migrations/draft-publish.js.map +1 -0
  358. package/dist/migrations/draft-publish.mjs +66 -0
  359. package/dist/migrations/draft-publish.mjs.map +1 -0
  360. package/dist/migrations/first-published-at.d.ts +4 -0
  361. package/dist/migrations/first-published-at.d.ts.map +1 -0
  362. package/dist/migrations/first-published-at.js +51 -0
  363. package/dist/migrations/first-published-at.js.map +1 -0
  364. package/dist/migrations/first-published-at.mjs +49 -0
  365. package/dist/migrations/first-published-at.mjs.map +1 -0
  366. package/dist/migrations/i18n.d.ts +5 -0
  367. package/dist/migrations/i18n.d.ts.map +1 -0
  368. package/dist/migrations/i18n.js +71 -0
  369. package/dist/migrations/i18n.js.map +1 -0
  370. package/dist/migrations/i18n.mjs +68 -0
  371. package/dist/migrations/i18n.mjs.map +1 -0
  372. package/dist/migrations/index.d.ts +5 -0
  373. package/dist/migrations/index.d.ts.map +1 -0
  374. package/dist/migrations/index.js +34 -0
  375. package/dist/migrations/index.js.map +1 -0
  376. package/dist/migrations/index.mjs +31 -0
  377. package/dist/migrations/index.mjs.map +1 -0
  378. package/dist/package.json.js +185 -0
  379. package/dist/package.json.js.map +1 -0
  380. package/dist/package.json.mjs +162 -0
  381. package/dist/package.json.mjs.map +1 -0
  382. package/dist/providers/admin.d.ts +3 -0
  383. package/dist/providers/admin.d.ts.map +1 -0
  384. package/dist/providers/admin.js +30 -0
  385. package/dist/providers/admin.js.map +1 -0
  386. package/dist/providers/admin.mjs +28 -0
  387. package/dist/providers/admin.mjs.map +1 -0
  388. package/dist/providers/coreStore.d.ts +3 -0
  389. package/dist/providers/coreStore.d.ts.map +1 -0
  390. package/dist/providers/coreStore.js +16 -0
  391. package/dist/providers/coreStore.js.map +1 -0
  392. package/dist/providers/coreStore.mjs +14 -0
  393. package/dist/providers/coreStore.mjs.map +1 -0
  394. package/dist/providers/cron.d.ts +3 -0
  395. package/dist/providers/cron.d.ts.map +1 -0
  396. package/dist/providers/cron.js +23 -0
  397. package/dist/providers/cron.js.map +1 -0
  398. package/dist/providers/cron.mjs +21 -0
  399. package/dist/providers/cron.mjs.map +1 -0
  400. package/dist/providers/index.d.ts +3 -0
  401. package/dist/providers/index.d.ts.map +1 -0
  402. package/dist/providers/index.js +20 -0
  403. package/dist/providers/index.js.map +1 -0
  404. package/dist/providers/index.mjs +18 -0
  405. package/dist/providers/index.mjs.map +1 -0
  406. package/dist/providers/provider.d.ts +9 -0
  407. package/dist/providers/provider.d.ts.map +1 -0
  408. package/dist/providers/provider.js +6 -0
  409. package/dist/providers/provider.js.map +1 -0
  410. package/dist/providers/provider.mjs +4 -0
  411. package/dist/providers/provider.mjs.map +1 -0
  412. package/dist/providers/registries.d.ts +3 -0
  413. package/dist/providers/registries.d.ts.map +1 -0
  414. package/dist/providers/registries.js +40 -0
  415. package/dist/providers/registries.js.map +1 -0
  416. package/dist/providers/registries.mjs +38 -0
  417. package/dist/providers/registries.mjs.map +1 -0
  418. package/dist/providers/telemetry.d.ts +3 -0
  419. package/dist/providers/telemetry.d.ts.map +1 -0
  420. package/dist/providers/telemetry.js +22 -0
  421. package/dist/providers/telemetry.js.map +1 -0
  422. package/dist/providers/telemetry.mjs +20 -0
  423. package/dist/providers/telemetry.mjs.map +1 -0
  424. package/dist/providers/webhooks.d.ts +3 -0
  425. package/dist/providers/webhooks.d.ts.map +1 -0
  426. package/dist/providers/webhooks.js +32 -0
  427. package/dist/providers/webhooks.js.map +1 -0
  428. package/dist/providers/webhooks.mjs +30 -0
  429. package/dist/providers/webhooks.mjs.map +1 -0
  430. package/dist/registries/apis.d.ts +2 -2
  431. package/dist/registries/apis.d.ts.map +1 -1
  432. package/dist/registries/apis.js +23 -20
  433. package/dist/registries/apis.js.map +1 -1
  434. package/dist/registries/apis.mjs +22 -22
  435. package/dist/registries/apis.mjs.map +1 -1
  436. package/dist/registries/components.d.ts +6 -6
  437. package/dist/registries/components.d.ts.map +1 -1
  438. package/dist/registries/components.js +35 -37
  439. package/dist/registries/components.js.map +1 -1
  440. package/dist/registries/components.mjs +34 -39
  441. package/dist/registries/components.mjs.map +1 -1
  442. package/dist/registries/content-types.d.ts +5 -5
  443. package/dist/registries/content-types.d.ts.map +1 -1
  444. package/dist/registries/content-types.js +54 -59
  445. package/dist/registries/content-types.js.map +1 -1
  446. package/dist/registries/content-types.mjs +53 -61
  447. package/dist/registries/content-types.mjs.map +1 -1
  448. package/dist/registries/controllers.d.ts +10 -10
  449. package/dist/registries/controllers.d.ts.map +1 -1
  450. package/dist/registries/controllers.js +70 -71
  451. package/dist/registries/controllers.js.map +1 -1
  452. package/dist/registries/controllers.mjs +69 -73
  453. package/dist/registries/controllers.mjs.map +1 -1
  454. package/dist/registries/custom-fields.d.ts +3 -3
  455. package/dist/registries/custom-fields.d.ts.map +1 -1
  456. package/dist/registries/custom-fields.js +75 -65
  457. package/dist/registries/custom-fields.js.map +1 -1
  458. package/dist/registries/custom-fields.mjs +74 -67
  459. package/dist/registries/custom-fields.mjs.map +1 -1
  460. package/dist/registries/hooks.js +46 -49
  461. package/dist/registries/hooks.js.map +1 -1
  462. package/dist/registries/hooks.mjs +45 -51
  463. package/dist/registries/hooks.mjs.map +1 -1
  464. package/dist/registries/index.d.ts +0 -1
  465. package/dist/registries/index.d.ts.map +1 -1
  466. package/dist/registries/middlewares.d.ts +6 -6
  467. package/dist/registries/middlewares.d.ts.map +1 -1
  468. package/dist/registries/middlewares.js +49 -51
  469. package/dist/registries/middlewares.js.map +1 -1
  470. package/dist/registries/middlewares.mjs +48 -53
  471. package/dist/registries/middlewares.mjs.map +1 -1
  472. package/dist/registries/models.js +14 -13
  473. package/dist/registries/models.js.map +1 -1
  474. package/dist/registries/models.mjs +13 -14
  475. package/dist/registries/models.mjs.map +1 -1
  476. package/dist/registries/modules.d.ts +2 -2
  477. package/dist/registries/modules.d.ts.map +1 -1
  478. package/dist/registries/modules.js +39 -36
  479. package/dist/registries/modules.js.map +1 -1
  480. package/dist/registries/modules.mjs +38 -38
  481. package/dist/registries/modules.mjs.map +1 -1
  482. package/dist/registries/namespace.js +21 -20
  483. package/dist/registries/namespace.js.map +1 -1
  484. package/dist/registries/namespace.mjs +20 -23
  485. package/dist/registries/namespace.mjs.map +1 -1
  486. package/dist/registries/plugins.d.ts +5 -5
  487. package/dist/registries/plugins.d.ts.map +1 -1
  488. package/dist/registries/plugins.js +23 -20
  489. package/dist/registries/plugins.js.map +1 -1
  490. package/dist/registries/plugins.mjs +22 -22
  491. package/dist/registries/plugins.mjs.map +1 -1
  492. package/dist/registries/policies.d.ts +22 -10
  493. package/dist/registries/policies.d.ts.map +1 -1
  494. package/dist/registries/policies.js +107 -54
  495. package/dist/registries/policies.js.map +1 -1
  496. package/dist/registries/policies.mjs +106 -56
  497. package/dist/registries/policies.mjs.map +1 -1
  498. package/dist/registries/sanitizers.js +23 -22
  499. package/dist/registries/sanitizers.js.map +1 -1
  500. package/dist/registries/sanitizers.mjs +22 -22
  501. package/dist/registries/sanitizers.mjs.map +1 -1
  502. package/dist/registries/services.d.ts +8 -8
  503. package/dist/registries/services.d.ts.map +1 -1
  504. package/dist/registries/services.js +71 -71
  505. package/dist/registries/services.js.map +1 -1
  506. package/dist/registries/services.mjs +70 -73
  507. package/dist/registries/services.mjs.map +1 -1
  508. package/dist/registries/validators.js +23 -22
  509. package/dist/registries/validators.js.map +1 -1
  510. package/dist/registries/validators.mjs +22 -22
  511. package/dist/registries/validators.mjs.map +1 -1
  512. package/dist/services/auth/index.d.ts +4 -4
  513. package/dist/services/auth/index.d.ts.map +1 -1
  514. package/dist/services/auth/index.js +74 -74
  515. package/dist/services/auth/index.js.map +1 -1
  516. package/dist/services/auth/index.mjs +73 -74
  517. package/dist/services/auth/index.mjs.map +1 -1
  518. package/dist/services/config.d.ts +3 -0
  519. package/dist/services/config.d.ts.map +1 -0
  520. package/dist/services/config.js +51 -0
  521. package/dist/services/config.js.map +1 -0
  522. package/dist/services/config.mjs +49 -0
  523. package/dist/services/config.mjs.map +1 -0
  524. package/dist/services/content-api/index.d.ts +31 -15
  525. package/dist/services/content-api/index.d.ts.map +1 -1
  526. package/dist/services/content-api/index.js +80 -53
  527. package/dist/services/content-api/index.js.map +1 -1
  528. package/dist/services/content-api/index.mjs +79 -53
  529. package/dist/services/content-api/index.mjs.map +1 -1
  530. package/dist/services/content-api/permissions/engine.js +8 -5
  531. package/dist/services/content-api/permissions/engine.js.map +1 -1
  532. package/dist/services/content-api/permissions/engine.mjs +7 -5
  533. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  534. package/dist/services/content-api/permissions/index.d.ts +13 -15
  535. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  536. package/dist/services/content-api/permissions/index.js +101 -81
  537. package/dist/services/content-api/permissions/index.js.map +1 -1
  538. package/dist/services/content-api/permissions/index.mjs +100 -81
  539. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  540. package/dist/services/content-api/permissions/providers/action.d.ts +5 -6
  541. package/dist/services/content-api/permissions/providers/action.d.ts.map +1 -1
  542. package/dist/services/content-api/permissions/providers/action.js +17 -14
  543. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  544. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  545. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  546. package/dist/services/content-api/permissions/providers/condition.d.ts +5 -6
  547. package/dist/services/content-api/permissions/providers/condition.d.ts.map +1 -1
  548. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  549. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  550. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  551. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  552. package/dist/services/core-store.d.ts +2 -2
  553. package/dist/services/core-store.d.ts.map +1 -1
  554. package/dist/services/core-store.js +115 -95
  555. package/dist/services/core-store.js.map +1 -1
  556. package/dist/services/core-store.mjs +114 -97
  557. package/dist/services/core-store.mjs.map +1 -1
  558. package/dist/services/cron.d.ts +5 -5
  559. package/dist/services/cron.d.ts.map +1 -1
  560. package/dist/services/cron.js +74 -60
  561. package/dist/services/cron.js.map +1 -1
  562. package/dist/services/cron.mjs +73 -62
  563. package/dist/services/cron.mjs.map +1 -1
  564. package/dist/services/custom-fields.d.ts +2 -2
  565. package/dist/services/custom-fields.d.ts.map +1 -1
  566. package/dist/services/custom-fields.js +9 -7
  567. package/dist/services/custom-fields.js.map +1 -1
  568. package/dist/services/custom-fields.mjs +8 -9
  569. package/dist/services/custom-fields.mjs.map +1 -1
  570. package/dist/services/document-service/attributes/index.d.ts +6 -0
  571. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  572. package/dist/services/document-service/attributes/index.js +27 -0
  573. package/dist/services/document-service/attributes/index.js.map +1 -0
  574. package/dist/services/document-service/attributes/index.mjs +25 -0
  575. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  576. package/dist/services/document-service/attributes/transforms.d.ts +10 -0
  577. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  578. package/dist/services/document-service/attributes/transforms.js +21 -0
  579. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  580. package/dist/services/document-service/attributes/transforms.mjs +19 -0
  581. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  582. package/dist/services/document-service/common.d.ts +2 -2
  583. package/dist/services/document-service/common.d.ts.map +1 -1
  584. package/dist/services/document-service/common.js +5 -4
  585. package/dist/services/document-service/common.js.map +1 -1
  586. package/dist/services/document-service/common.mjs +4 -5
  587. package/dist/services/document-service/common.mjs.map +1 -1
  588. package/dist/services/document-service/components.d.ts +25 -1
  589. package/dist/services/document-service/components.d.ts.map +1 -1
  590. package/dist/services/document-service/components.js +286 -0
  591. package/dist/services/document-service/components.js.map +1 -0
  592. package/dist/services/document-service/components.mjs +278 -0
  593. package/dist/services/document-service/components.mjs.map +1 -0
  594. package/dist/services/document-service/draft-and-publish.d.ts +9 -23
  595. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  596. package/dist/services/document-service/draft-and-publish.js +104 -36
  597. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  598. package/dist/services/document-service/draft-and-publish.mjs +96 -35
  599. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  600. package/dist/services/document-service/entries.d.ts +10 -0
  601. package/dist/services/document-service/entries.d.ts.map +1 -0
  602. package/dist/services/document-service/entries.js +155 -0
  603. package/dist/services/document-service/entries.js.map +1 -0
  604. package/dist/services/document-service/entries.mjs +153 -0
  605. package/dist/services/document-service/entries.mjs.map +1 -0
  606. package/dist/services/document-service/events.d.ts +25 -0
  607. package/dist/services/document-service/events.d.ts.map +1 -0
  608. package/dist/services/document-service/events.js +59 -0
  609. package/dist/services/document-service/events.js.map +1 -0
  610. package/dist/services/document-service/events.mjs +57 -0
  611. package/dist/services/document-service/events.mjs.map +1 -0
  612. package/dist/services/document-service/first-published-at.d.ts +7 -0
  613. package/dist/services/document-service/first-published-at.d.ts.map +1 -0
  614. package/dist/services/document-service/first-published-at.js +31 -0
  615. package/dist/services/document-service/first-published-at.js.map +1 -0
  616. package/dist/services/document-service/first-published-at.mjs +28 -0
  617. package/dist/services/document-service/first-published-at.mjs.map +1 -0
  618. package/dist/services/document-service/index.d.ts +3 -4
  619. package/dist/services/document-service/index.d.ts.map +1 -1
  620. package/dist/services/document-service/index.js +53 -19
  621. package/dist/services/document-service/index.js.map +1 -1
  622. package/dist/services/document-service/index.mjs +52 -20
  623. package/dist/services/document-service/index.mjs.map +1 -1
  624. package/dist/services/document-service/internationalization.d.ts +11 -5
  625. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  626. package/dist/services/document-service/internationalization.js +100 -29
  627. package/dist/services/document-service/internationalization.js.map +1 -1
  628. package/dist/services/document-service/internationalization.mjs +94 -29
  629. package/dist/services/document-service/internationalization.mjs.map +1 -1
  630. package/dist/services/document-service/middlewares/errors.d.ts +6 -0
  631. package/dist/services/document-service/middlewares/errors.d.ts.map +1 -0
  632. package/dist/services/document-service/middlewares/errors.js +29 -0
  633. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  634. package/dist/services/document-service/middlewares/errors.mjs +27 -0
  635. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  636. package/dist/services/document-service/middlewares/index.d.ts +3 -0
  637. package/dist/services/document-service/middlewares/index.d.ts.map +1 -0
  638. package/dist/services/document-service/middlewares/middleware-manager.d.ts +10 -0
  639. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -0
  640. package/dist/services/document-service/middlewares/middleware-manager.js +51 -0
  641. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  642. package/dist/services/document-service/middlewares/middleware-manager.mjs +49 -0
  643. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  644. package/dist/services/document-service/params.d.ts +3 -1
  645. package/dist/services/document-service/params.d.ts.map +1 -1
  646. package/dist/services/document-service/params.js +14 -0
  647. package/dist/services/document-service/params.js.map +1 -0
  648. package/dist/services/document-service/params.mjs +12 -0
  649. package/dist/services/document-service/params.mjs.map +1 -0
  650. package/dist/services/document-service/repository.d.ts +3 -0
  651. package/dist/services/document-service/repository.d.ts.map +1 -0
  652. package/dist/services/document-service/repository.js +368 -0
  653. package/dist/services/document-service/repository.js.map +1 -0
  654. package/dist/services/document-service/repository.mjs +366 -0
  655. package/dist/services/document-service/repository.mjs.map +1 -0
  656. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  657. package/dist/services/document-service/transform/data.js +22 -10
  658. package/dist/services/document-service/transform/data.js.map +1 -1
  659. package/dist/services/document-service/transform/data.mjs +21 -11
  660. package/dist/services/document-service/transform/data.mjs.map +1 -1
  661. package/dist/services/document-service/transform/fields.d.ts +2 -2
  662. package/dist/services/document-service/transform/fields.d.ts.map +1 -1
  663. package/dist/services/document-service/transform/fields.js +29 -19
  664. package/dist/services/document-service/transform/fields.js.map +1 -1
  665. package/dist/services/document-service/transform/fields.mjs +28 -20
  666. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  667. package/dist/services/document-service/transform/id-map.d.ts +4 -4
  668. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  669. package/dist/services/document-service/transform/id-map.js +117 -64
  670. package/dist/services/document-service/transform/id-map.js.map +1 -1
  671. package/dist/services/document-service/transform/id-map.mjs +116 -65
  672. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  673. package/dist/services/document-service/transform/id-transform.d.ts +4 -25
  674. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  675. package/dist/services/document-service/transform/id-transform.js +39 -55
  676. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  677. package/dist/services/document-service/transform/id-transform.mjs +37 -55
  678. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  679. package/dist/services/document-service/transform/populate.d.ts +5 -2
  680. package/dist/services/document-service/transform/populate.d.ts.map +1 -1
  681. package/dist/services/document-service/transform/populate.js +23 -28
  682. package/dist/services/document-service/transform/populate.js.map +1 -1
  683. package/dist/services/document-service/transform/populate.mjs +22 -29
  684. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  685. package/dist/services/document-service/transform/query.d.ts +5 -0
  686. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  687. package/dist/services/document-service/transform/query.js +14 -0
  688. package/dist/services/document-service/transform/query.js.map +1 -0
  689. package/dist/services/document-service/transform/query.mjs +12 -0
  690. package/dist/services/document-service/transform/query.mjs.map +1 -0
  691. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  692. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  693. package/dist/services/document-service/transform/relations/extract/data-ids.js +75 -71
  694. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  695. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +74 -72
  696. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  697. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +9 -5
  698. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  699. package/dist/services/document-service/transform/relations/transform/data-ids.js +105 -110
  700. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  701. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +104 -111
  702. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  703. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  704. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  705. package/dist/services/document-service/transform/relations/transform/default-locale.js +50 -0
  706. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  707. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +48 -0
  708. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  709. package/dist/services/document-service/transform/relations/utils/data.d.ts +2 -4
  710. package/dist/services/document-service/transform/relations/utils/data.d.ts.map +1 -1
  711. package/dist/services/document-service/transform/relations/utils/dp.d.ts +10 -0
  712. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -0
  713. package/dist/services/document-service/transform/relations/utils/dp.js +56 -0
  714. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  715. package/dist/services/document-service/transform/relations/utils/dp.mjs +54 -0
  716. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  717. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +8 -8
  718. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  719. package/dist/services/document-service/transform/relations/utils/i18n.js +19 -23
  720. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  721. package/dist/services/document-service/transform/relations/utils/i18n.mjs +18 -26
  722. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  723. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  724. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  725. package/dist/services/document-service/transform/relations/utils/map-relation.js +130 -0
  726. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  727. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +127 -0
  728. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  729. package/dist/services/document-service/transform/relations/utils/types.d.ts +15 -2
  730. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  731. package/dist/services/document-service/transform/types.d.ts +4 -4
  732. package/dist/services/document-service/transform/types.d.ts.map +1 -1
  733. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  734. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  735. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  736. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  737. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  738. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  739. package/dist/services/document-service/utils/populate.d.ts +9 -2
  740. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  741. package/dist/services/document-service/utils/populate.js +67 -37
  742. package/dist/services/document-service/utils/populate.js.map +1 -1
  743. package/dist/services/document-service/utils/populate.mjs +66 -38
  744. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  745. package/dist/services/document-service/utils/unidirectional-relations.d.ts +36 -0
  746. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -0
  747. package/dist/services/document-service/utils/unidirectional-relations.js +116 -0
  748. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -0
  749. package/dist/services/document-service/utils/unidirectional-relations.mjs +113 -0
  750. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -0
  751. package/dist/services/entity-service/index.d.ts +4 -6
  752. package/dist/services/entity-service/index.d.ts.map +1 -1
  753. package/dist/services/entity-service/index.js +229 -319
  754. package/dist/services/entity-service/index.js.map +1 -1
  755. package/dist/services/entity-service/index.mjs +228 -318
  756. package/dist/services/entity-service/index.mjs.map +1 -1
  757. package/dist/services/entity-validator/blocks-validator.d.ts +1 -2
  758. package/dist/services/entity-validator/blocks-validator.d.ts.map +1 -1
  759. package/dist/services/entity-validator/blocks-validator.js +137 -104
  760. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  761. package/dist/services/entity-validator/blocks-validator.mjs +135 -105
  762. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  763. package/dist/services/entity-validator/index.d.ts +16 -2
  764. package/dist/services/entity-validator/index.d.ts.map +1 -1
  765. package/dist/services/entity-validator/index.js +371 -300
  766. package/dist/services/entity-validator/index.js.map +1 -1
  767. package/dist/services/entity-validator/index.mjs +367 -297
  768. package/dist/services/entity-validator/index.mjs.map +1 -1
  769. package/dist/services/entity-validator/validators.d.ts +37 -25
  770. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  771. package/dist/services/entity-validator/validators.js +286 -105
  772. package/dist/services/entity-validator/validators.js.map +1 -1
  773. package/dist/services/entity-validator/validators.mjs +277 -103
  774. package/dist/services/entity-validator/validators.mjs.map +1 -1
  775. package/dist/services/errors.js +65 -65
  776. package/dist/services/errors.js.map +1 -1
  777. package/dist/services/errors.mjs +64 -66
  778. package/dist/services/errors.mjs.map +1 -1
  779. package/dist/services/event-hub.d.ts +1 -0
  780. package/dist/services/event-hub.d.ts.map +1 -1
  781. package/dist/services/event-hub.js +82 -64
  782. package/dist/services/event-hub.js.map +1 -1
  783. package/dist/services/event-hub.mjs +81 -66
  784. package/dist/services/event-hub.mjs.map +1 -1
  785. package/dist/services/features.d.ts +3 -3
  786. package/dist/services/features.d.ts.map +1 -1
  787. package/dist/services/features.js +19 -14
  788. package/dist/services/features.js.map +1 -1
  789. package/dist/services/features.mjs +18 -15
  790. package/dist/services/features.mjs.map +1 -1
  791. package/dist/services/fs.d.ts +2 -2
  792. package/dist/services/fs.d.ts.map +1 -1
  793. package/dist/services/fs.js +41 -40
  794. package/dist/services/fs.js.map +1 -1
  795. package/dist/services/fs.mjs +40 -39
  796. package/dist/services/fs.mjs.map +1 -1
  797. package/dist/services/metrics/admin-user-hash.d.ts +2 -2
  798. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  799. package/dist/services/metrics/admin-user-hash.js +13 -11
  800. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  801. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  802. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  803. package/dist/services/metrics/index.d.ts +3 -3
  804. package/dist/services/metrics/index.d.ts.map +1 -1
  805. package/dist/services/metrics/index.js +47 -40
  806. package/dist/services/metrics/index.js.map +1 -1
  807. package/dist/services/metrics/index.mjs +46 -42
  808. package/dist/services/metrics/index.mjs.map +1 -1
  809. package/dist/services/metrics/is-truthy.js +13 -6
  810. package/dist/services/metrics/is-truthy.js.map +1 -1
  811. package/dist/services/metrics/is-truthy.mjs +12 -6
  812. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  813. package/dist/services/metrics/middleware.d.ts +2 -2
  814. package/dist/services/metrics/middleware.d.ts.map +1 -1
  815. package/dist/services/metrics/middleware.js +37 -22
  816. package/dist/services/metrics/middleware.js.map +1 -1
  817. package/dist/services/metrics/middleware.mjs +36 -24
  818. package/dist/services/metrics/middleware.mjs.map +1 -1
  819. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  820. package/dist/services/metrics/rate-limiter.js +24 -19
  821. package/dist/services/metrics/rate-limiter.js.map +1 -1
  822. package/dist/services/metrics/rate-limiter.mjs +23 -21
  823. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  824. package/dist/services/metrics/sender.d.ts +3 -3
  825. package/dist/services/metrics/sender.d.ts.map +1 -1
  826. package/dist/services/metrics/sender.js +78 -69
  827. package/dist/services/metrics/sender.js.map +1 -1
  828. package/dist/services/metrics/sender.mjs +77 -64
  829. package/dist/services/metrics/sender.mjs.map +1 -1
  830. package/dist/services/query-params.d.ts +7 -0
  831. package/dist/services/query-params.d.ts.map +1 -0
  832. package/dist/services/query-params.js +15 -0
  833. package/dist/services/query-params.js.map +1 -0
  834. package/dist/services/query-params.mjs +13 -0
  835. package/dist/services/query-params.mjs.map +1 -0
  836. package/dist/services/reloader.d.ts +7 -0
  837. package/dist/services/reloader.d.ts.map +1 -0
  838. package/dist/services/reloader.js +39 -0
  839. package/dist/services/reloader.js.map +1 -0
  840. package/dist/services/reloader.mjs +37 -0
  841. package/dist/services/reloader.mjs.map +1 -0
  842. package/dist/services/request-context.js +11 -8
  843. package/dist/services/request-context.js.map +1 -1
  844. package/dist/services/request-context.mjs +10 -10
  845. package/dist/services/request-context.mjs.map +1 -1
  846. package/dist/services/server/admin-api.d.ts +3 -3
  847. package/dist/services/server/admin-api.d.ts.map +1 -1
  848. package/dist/services/server/admin-api.js +11 -10
  849. package/dist/services/server/admin-api.js.map +1 -1
  850. package/dist/services/server/admin-api.mjs +10 -11
  851. package/dist/services/server/admin-api.mjs.map +1 -1
  852. package/dist/services/server/api.d.ts +3 -3
  853. package/dist/services/server/api.d.ts.map +1 -1
  854. package/dist/services/server/api.js +33 -27
  855. package/dist/services/server/api.js.map +1 -1
  856. package/dist/services/server/api.mjs +32 -26
  857. package/dist/services/server/api.mjs.map +1 -1
  858. package/dist/services/server/compose-endpoint.d.ts +2 -2
  859. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  860. package/dist/services/server/compose-endpoint.js +116 -106
  861. package/dist/services/server/compose-endpoint.js.map +1 -1
  862. package/dist/services/server/compose-endpoint.mjs +115 -106
  863. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  864. package/dist/services/server/content-api.d.ts +3 -3
  865. package/dist/services/server/content-api.d.ts.map +1 -1
  866. package/dist/services/server/content-api.js +11 -9
  867. package/dist/services/server/content-api.js.map +1 -1
  868. package/dist/services/server/content-api.mjs +10 -10
  869. package/dist/services/server/content-api.mjs.map +1 -1
  870. package/dist/services/server/http-server.d.ts +2 -2
  871. package/dist/services/server/http-server.d.ts.map +1 -1
  872. package/dist/services/server/http-server.js +48 -44
  873. package/dist/services/server/http-server.js.map +1 -1
  874. package/dist/services/server/http-server.mjs +47 -43
  875. package/dist/services/server/http-server.mjs.map +1 -1
  876. package/dist/services/server/index.d.ts +2 -2
  877. package/dist/services/server/index.d.ts.map +1 -1
  878. package/dist/services/server/index.js +85 -83
  879. package/dist/services/server/index.js.map +1 -1
  880. package/dist/services/server/index.mjs +84 -82
  881. package/dist/services/server/index.mjs.map +1 -1
  882. package/dist/services/server/koa.d.ts.map +1 -1
  883. package/dist/services/server/koa.js +49 -47
  884. package/dist/services/server/koa.js.map +1 -1
  885. package/dist/services/server/koa.mjs +48 -44
  886. package/dist/services/server/koa.mjs.map +1 -1
  887. package/dist/services/server/middleware.d.ts +4 -4
  888. package/dist/services/server/middleware.d.ts.map +1 -1
  889. package/dist/services/server/middleware.js +86 -82
  890. package/dist/services/server/middleware.js.map +1 -1
  891. package/dist/services/server/middleware.mjs +85 -82
  892. package/dist/services/server/middleware.mjs.map +1 -1
  893. package/dist/services/server/policy.d.ts +3 -3
  894. package/dist/services/server/policy.d.ts.map +1 -1
  895. package/dist/services/server/policy.js +25 -18
  896. package/dist/services/server/policy.js.map +1 -1
  897. package/dist/services/server/policy.mjs +23 -18
  898. package/dist/services/server/policy.mjs.map +1 -1
  899. package/dist/services/server/register-middlewares.d.ts +2 -2
  900. package/dist/services/server/register-middlewares.d.ts.map +1 -1
  901. package/dist/services/server/register-middlewares.js +68 -61
  902. package/dist/services/server/register-middlewares.js.map +1 -1
  903. package/dist/services/server/register-middlewares.mjs +67 -63
  904. package/dist/services/server/register-middlewares.mjs.map +1 -1
  905. package/dist/services/server/register-routes.d.ts +2 -2
  906. package/dist/services/server/register-routes.d.ts.map +1 -1
  907. package/dist/services/server/register-routes.js +109 -66
  908. package/dist/services/server/register-routes.js.map +1 -1
  909. package/dist/services/server/register-routes.mjs +108 -66
  910. package/dist/services/server/register-routes.mjs.map +1 -1
  911. package/dist/services/server/routing.d.ts +15 -5
  912. package/dist/services/server/routing.d.ts.map +1 -1
  913. package/dist/services/server/routing.js +100 -81
  914. package/dist/services/server/routing.js.map +1 -1
  915. package/dist/services/server/routing.mjs +99 -81
  916. package/dist/services/server/routing.mjs.map +1 -1
  917. package/dist/services/utils/conditional-fields.d.ts +3 -0
  918. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  919. package/dist/services/utils/conditional-fields.js +22 -0
  920. package/dist/services/utils/conditional-fields.js.map +1 -0
  921. package/dist/services/utils/conditional-fields.mjs +20 -0
  922. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  923. package/dist/services/utils/dynamic-zones.d.ts.map +1 -1
  924. package/dist/services/utils/dynamic-zones.js +13 -13
  925. package/dist/services/utils/dynamic-zones.js.map +1 -1
  926. package/dist/services/utils/dynamic-zones.mjs +12 -15
  927. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  928. package/dist/services/webhook-runner.d.ts +2 -1
  929. package/dist/services/webhook-runner.d.ts.map +1 -1
  930. package/dist/services/webhook-runner.js +124 -122
  931. package/dist/services/webhook-runner.js.map +1 -1
  932. package/dist/services/webhook-runner.mjs +123 -121
  933. package/dist/services/webhook-runner.mjs.map +1 -1
  934. package/dist/services/webhook-store.d.ts +2 -8
  935. package/dist/services/webhook-store.d.ts.map +1 -1
  936. package/dist/services/webhook-store.js +132 -93
  937. package/dist/services/webhook-store.js.map +1 -1
  938. package/dist/services/webhook-store.mjs +131 -95
  939. package/dist/services/webhook-store.mjs.map +1 -1
  940. package/dist/services/worker-queue.js +44 -49
  941. package/dist/services/worker-queue.js.map +1 -1
  942. package/dist/services/worker-queue.mjs +43 -49
  943. package/dist/services/worker-queue.mjs.map +1 -1
  944. package/dist/utils/convert-custom-field-type.d.ts +2 -2
  945. package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
  946. package/dist/utils/convert-custom-field-type.js +17 -20
  947. package/dist/utils/convert-custom-field-type.js.map +1 -1
  948. package/dist/utils/convert-custom-field-type.mjs +16 -21
  949. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  950. package/dist/utils/cron.js +64 -30
  951. package/dist/utils/cron.js.map +1 -1
  952. package/dist/utils/cron.mjs +63 -31
  953. package/dist/utils/cron.mjs.map +1 -1
  954. package/dist/utils/fetch.d.ts +7 -3
  955. package/dist/utils/fetch.d.ts.map +1 -1
  956. package/dist/utils/fetch.js +28 -17
  957. package/dist/utils/fetch.js.map +1 -1
  958. package/dist/utils/fetch.mjs +27 -18
  959. package/dist/utils/fetch.mjs.map +1 -1
  960. package/dist/utils/filepath-to-prop-path.d.ts +1 -1
  961. package/dist/utils/filepath-to-prop-path.d.ts.map +1 -1
  962. package/dist/utils/filepath-to-prop-path.js +22 -9
  963. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  964. package/dist/utils/filepath-to-prop-path.mjs +20 -7
  965. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  966. package/dist/utils/index.d.ts +2 -1
  967. package/dist/utils/index.d.ts.map +1 -1
  968. package/dist/utils/is-initialized.d.ts +2 -2
  969. package/dist/utils/is-initialized.d.ts.map +1 -1
  970. package/dist/utils/is-initialized.js +21 -12
  971. package/dist/utils/is-initialized.js.map +1 -1
  972. package/dist/utils/is-initialized.mjs +20 -13
  973. package/dist/utils/is-initialized.mjs.map +1 -1
  974. package/dist/utils/lifecycles.js +6 -5
  975. package/dist/utils/lifecycles.js.map +1 -1
  976. package/dist/utils/lifecycles.mjs +5 -6
  977. package/dist/utils/lifecycles.mjs.map +1 -1
  978. package/dist/utils/load-config-file.js +40 -38
  979. package/dist/utils/load-config-file.js.map +1 -1
  980. package/dist/utils/load-config-file.mjs +39 -36
  981. package/dist/utils/load-config-file.mjs.map +1 -1
  982. package/dist/utils/load-files.d.ts.map +1 -1
  983. package/dist/utils/load-files.js +40 -35
  984. package/dist/utils/load-files.js.map +1 -1
  985. package/dist/utils/load-files.mjs +39 -32
  986. package/dist/utils/load-files.mjs.map +1 -1
  987. package/dist/utils/open-browser.d.ts +2 -2
  988. package/dist/utils/open-browser.d.ts.map +1 -1
  989. package/dist/utils/open-browser.js +8 -8
  990. package/dist/utils/open-browser.js.map +1 -1
  991. package/dist/utils/open-browser.mjs +7 -7
  992. package/dist/utils/open-browser.mjs.map +1 -1
  993. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  994. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  995. package/dist/utils/resolve-working-dirs.js +26 -0
  996. package/dist/utils/resolve-working-dirs.js.map +1 -0
  997. package/dist/utils/resolve-working-dirs.mjs +24 -0
  998. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  999. package/dist/utils/signals.d.ts +2 -2
  1000. package/dist/utils/signals.d.ts.map +1 -1
  1001. package/dist/utils/signals.js +20 -14
  1002. package/dist/utils/signals.js.map +1 -1
  1003. package/dist/utils/signals.mjs +19 -15
  1004. package/dist/utils/signals.mjs.map +1 -1
  1005. package/dist/utils/startup-logger.d.ts +2 -2
  1006. package/dist/utils/startup-logger.d.ts.map +1 -1
  1007. package/dist/utils/startup-logger.js +107 -78
  1008. package/dist/utils/startup-logger.js.map +1 -1
  1009. package/dist/utils/startup-logger.mjs +106 -75
  1010. package/dist/utils/startup-logger.mjs.map +1 -1
  1011. package/dist/utils/transform-content-types-to-models.d.ts +658 -3
  1012. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  1013. package/dist/utils/transform-content-types-to-models.js +362 -183
  1014. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  1015. package/dist/utils/transform-content-types-to-models.mjs +351 -182
  1016. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  1017. package/dist/utils/update-notifier/index.d.ts +2 -7
  1018. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  1019. package/dist/utils/update-notifier/index.js +66 -74
  1020. package/dist/utils/update-notifier/index.js.map +1 -1
  1021. package/dist/utils/update-notifier/index.mjs +65 -68
  1022. package/dist/utils/update-notifier/index.mjs.map +1 -1
  1023. package/package.json +47 -41
  1024. package/dist/registries/config.d.ts +0 -4
  1025. package/dist/registries/config.d.ts.map +0 -1
  1026. package/dist/registries/config.js +0 -23
  1027. package/dist/registries/config.js.map +0 -1
  1028. package/dist/registries/config.mjs +0 -22
  1029. package/dist/registries/config.mjs.map +0 -1
  1030. package/dist/services/document-service/collection-type.d.ts +0 -4
  1031. package/dist/services/document-service/collection-type.d.ts.map +0 -1
  1032. package/dist/services/document-service/collection-type.js +0 -145
  1033. package/dist/services/document-service/collection-type.js.map +0 -1
  1034. package/dist/services/document-service/collection-type.mjs +0 -145
  1035. package/dist/services/document-service/collection-type.mjs.map +0 -1
  1036. package/dist/services/document-service/document-engine.d.ts +0 -8
  1037. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  1038. package/dist/services/document-service/document-engine.js +0 -249
  1039. package/dist/services/document-service/document-engine.js.map +0 -1
  1040. package/dist/services/document-service/document-engine.mjs +0 -250
  1041. package/dist/services/document-service/document-engine.mjs.map +0 -1
  1042. package/dist/services/document-service/middlewares.d.ts +0 -8
  1043. package/dist/services/document-service/middlewares.d.ts.map +0 -1
  1044. package/dist/services/document-service/middlewares.js +0 -46
  1045. package/dist/services/document-service/middlewares.js.map +0 -1
  1046. package/dist/services/document-service/middlewares.mjs +0 -46
  1047. package/dist/services/document-service/middlewares.mjs.map +0 -1
  1048. package/dist/services/document-service/repository-factory.d.ts +0 -3
  1049. package/dist/services/document-service/repository-factory.d.ts.map +0 -1
  1050. package/dist/services/document-service/repository-factory.js +0 -12
  1051. package/dist/services/document-service/repository-factory.js.map +0 -1
  1052. package/dist/services/document-service/repository-factory.mjs +0 -12
  1053. package/dist/services/document-service/repository-factory.mjs.map +0 -1
  1054. package/dist/services/document-service/single-type.d.ts +0 -4
  1055. package/dist/services/document-service/single-type.d.ts.map +0 -1
  1056. package/dist/services/document-service/single-type.js +0 -92
  1057. package/dist/services/document-service/single-type.js.map +0 -1
  1058. package/dist/services/document-service/single-type.mjs +0 -92
  1059. package/dist/services/document-service/single-type.mjs.map +0 -1
  1060. package/dist/services/document-service/transform/filters.d.ts +0 -3
  1061. package/dist/services/document-service/transform/filters.d.ts.map +0 -1
  1062. package/dist/services/document-service/transform/filters.js +0 -49
  1063. package/dist/services/document-service/transform/filters.js.map +0 -1
  1064. package/dist/services/document-service/transform/filters.mjs +0 -49
  1065. package/dist/services/document-service/transform/filters.mjs.map +0 -1
  1066. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -4
  1067. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  1068. package/dist/services/document-service/transform/relations/transform/output-ids.js +0 -26
  1069. package/dist/services/document-service/transform/relations/transform/output-ids.js.map +0 -1
  1070. package/dist/services/document-service/transform/relations/transform/output-ids.mjs +0 -26
  1071. package/dist/services/document-service/transform/relations/transform/output-ids.mjs.map +0 -1
  1072. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  1073. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  1074. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  1075. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  1076. package/dist/services/document-service/transform/sort.d.ts +0 -5
  1077. package/dist/services/document-service/transform/sort.d.ts.map +0 -1
  1078. package/dist/services/document-service/transform/sort.js +0 -44
  1079. package/dist/services/document-service/transform/sort.js.map +0 -1
  1080. package/dist/services/document-service/transform/sort.mjs +0 -44
  1081. package/dist/services/document-service/transform/sort.mjs.map +0 -1
  1082. package/dist/services/document-service/transform/utils.d.ts +0 -9
  1083. package/dist/services/document-service/transform/utils.d.ts.map +0 -1
  1084. package/dist/services/document-service/transform/utils.js +0 -23
  1085. package/dist/services/document-service/transform/utils.js.map +0 -1
  1086. package/dist/services/document-service/transform/utils.mjs +0 -23
  1087. package/dist/services/document-service/transform/utils.mjs.map +0 -1
  1088. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  1089. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  1090. package/dist/services/entity-service/attributes/index.js +0 -22
  1091. package/dist/services/entity-service/attributes/index.js.map +0 -1
  1092. package/dist/services/entity-service/attributes/index.mjs +0 -22
  1093. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  1094. package/dist/services/entity-service/attributes/transforms.d.ts +0 -10
  1095. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  1096. package/dist/services/entity-service/attributes/transforms.js +0 -20
  1097. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  1098. package/dist/services/entity-service/attributes/transforms.mjs +0 -19
  1099. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  1100. package/dist/services/entity-service/components.d.ts +0 -23
  1101. package/dist/services/entity-service/components.d.ts.map +0 -1
  1102. package/dist/services/entity-service/components.js +0 -384
  1103. package/dist/services/entity-service/components.js.map +0 -1
  1104. package/dist/services/entity-service/components.mjs +0 -382
  1105. package/dist/services/entity-service/components.mjs.map +0 -1
  1106. package/dist/services/entity-service/params.d.ts +0 -8
  1107. package/dist/services/entity-service/params.d.ts.map +0 -1
  1108. package/dist/services/entity-service/params.js +0 -8
  1109. package/dist/services/entity-service/params.js.map +0 -1
  1110. package/dist/services/entity-service/params.mjs +0 -8
  1111. package/dist/services/entity-service/params.mjs.map +0 -1
  1112. package/dist/services/utils/upload-files.d.ts +0 -8
  1113. package/dist/services/utils/upload-files.d.ts.map +0 -1
  1114. package/dist/services/utils/upload-files.js +0 -64
  1115. package/dist/services/utils/upload-files.js.map +0 -1
  1116. package/dist/services/utils/upload-files.mjs +0 -63
  1117. package/dist/services/utils/upload-files.mjs.map +0 -1
  1118. package/dist/utils/get-dirs.d.ts +0 -9
  1119. package/dist/utils/get-dirs.d.ts.map +0 -1
  1120. package/dist/utils/get-dirs.js +0 -30
  1121. package/dist/utils/get-dirs.js.map +0 -1
  1122. package/dist/utils/get-dirs.mjs +0 -30
  1123. package/dist/utils/get-dirs.mjs.map +0 -1
@@ -1,41 +1,102 @@
1
- import { assoc } from "lodash/fp";
2
- const setStatusToDraft = assoc("status", "draft");
3
- const defaultToDraft = (params) => {
4
- if (!params.status || params.status !== "published") {
5
- return setStatusToDraft(params);
6
- }
7
- return params;
1
+ import { curry, assoc } from 'lodash/fp';
2
+ import { contentTypes } from '@strapi/utils';
3
+
4
+ /**
5
+ * DP enabled -> set status to draft
6
+ * DP disabled -> Used mostly for parsing relations, so there is not a need for a default.
7
+ */ const setStatusToDraft = (contentType, params)=>{
8
+ if (!contentTypes.hasDraftAndPublish(contentType) && params.status) {
9
+ return params;
10
+ }
11
+ return assoc('status', 'draft', params);
8
12
  };
9
- const filterDataPublishedAt = (params) => {
10
- if (params?.data?.publishedAt) {
11
- return assoc(["data", "publishedAt"], null, params);
12
- }
13
- return params;
13
+ /**
14
+ * Adds a default status of `draft` to the params
15
+ */ const defaultToDraft = (params)=>{
16
+ // Default to draft if no status is provided or it's invalid
17
+ if (!params.status || params.status !== 'published') {
18
+ return assoc('status', 'draft', params);
19
+ }
20
+ return params;
14
21
  };
15
- const statusToLookup = (params) => {
16
- const lookup = params.lookup || {};
17
- switch (params?.status) {
18
- case "published":
19
- return assoc(["lookup", "publishedAt"], { $notNull: true }, params);
20
- case "draft":
21
- return assoc(["lookup", "publishedAt"], { $null: true }, params);
22
- }
23
- return assoc("lookup", lookup, params);
22
+ /**
23
+ * DP disabled -> ignore status
24
+ * DP enabled -> set status to draft if no status is provided or it's invalid
25
+ */ const defaultStatus = (contentType, params)=>{
26
+ if (!contentTypes.hasDraftAndPublish(contentType)) {
27
+ return params;
28
+ }
29
+ // Default to draft if no status is provided or it's invalid
30
+ if (!params.status || params.status !== 'published') {
31
+ return defaultToDraft(params);
32
+ }
33
+ return params;
24
34
  };
25
- const statusToData = (params) => {
26
- switch (params?.status) {
27
- case "published":
28
- return assoc(["data", "publishedAt"], /* @__PURE__ */ new Date(), params);
29
- case "draft":
30
- return assoc(["data", "publishedAt"], null, params);
31
- }
32
- return params;
35
+ /**
36
+ * In mutating actions we don't want user to set the publishedAt attribute.
37
+ */ const filterDataPublishedAt = (params)=>{
38
+ if (params?.data?.publishedAt) {
39
+ return assoc([
40
+ 'data',
41
+ 'publishedAt'
42
+ ], null, params);
43
+ }
44
+ return params;
33
45
  };
34
- export {
35
- defaultToDraft,
36
- filterDataPublishedAt,
37
- setStatusToDraft,
38
- statusToData,
39
- statusToLookup
46
+ /**
47
+ * Add status lookup query to the params
48
+ */ const statusToLookup = (contentType, params)=>{
49
+ if (!contentTypes.hasDraftAndPublish(contentType)) {
50
+ return params;
51
+ }
52
+ const lookup = params.lookup || {};
53
+ switch(params?.status){
54
+ case 'published':
55
+ return assoc([
56
+ 'lookup',
57
+ 'publishedAt'
58
+ ], {
59
+ $notNull: true
60
+ }, params);
61
+ case 'draft':
62
+ return assoc([
63
+ 'lookup',
64
+ 'publishedAt'
65
+ ], {
66
+ $null: true
67
+ }, params);
68
+ }
69
+ return assoc('lookup', lookup, params);
40
70
  };
71
+ /**
72
+ * Translate publication status parameter into the data that will be saved
73
+ */ const statusToData = (contentType, params)=>{
74
+ if (!contentTypes.hasDraftAndPublish(contentType)) {
75
+ return assoc([
76
+ 'data',
77
+ 'publishedAt'
78
+ ], new Date(), params);
79
+ }
80
+ switch(params?.status){
81
+ case 'published':
82
+ return assoc([
83
+ 'data',
84
+ 'publishedAt'
85
+ ], new Date(), params);
86
+ case 'draft':
87
+ return assoc([
88
+ 'data',
89
+ 'publishedAt'
90
+ ], null, params);
91
+ }
92
+ return params;
93
+ };
94
+ const setStatusToDraftCurry = curry(setStatusToDraft);
95
+ const defaultToDraftCurry = curry(defaultToDraft);
96
+ const defaultStatusCurry = curry(defaultStatus);
97
+ const filterDataPublishedAtCurry = curry(filterDataPublishedAt);
98
+ const statusToLookupCurry = curry(statusToLookup);
99
+ const statusToDataCurry = curry(statusToData);
100
+
101
+ export { defaultStatusCurry as defaultStatus, defaultToDraftCurry as defaultToDraft, filterDataPublishedAtCurry as filterDataPublishedAt, setStatusToDraftCurry as setStatusToDraft, statusToDataCurry as statusToData, statusToLookupCurry as statusToLookup };
41
102
  //# sourceMappingURL=draft-and-publish.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"draft-and-publish.mjs","sources":["../../../src/services/document-service/draft-and-publish.ts"],"sourcesContent":["import { Documents } from '@strapi/types';\nimport { assoc } from 'lodash/fp';\n\ntype ParamsTransform = (params: Documents.Params.All) => Documents.Params.All;\n\n/**\n * Sets status to draft only\n */\nexport const setStatusToDraft: ParamsTransform = assoc('status', 'draft');\n\n/**\n * Adds a default status of `draft` to the params\n */\nexport const defaultToDraft: ParamsTransform = (params) => {\n // Default to draft if no status is provided or it's invalid\n if (!params.status || params.status !== 'published') {\n return setStatusToDraft(params);\n }\n\n return params;\n};\n\n/**\n * In mutating actions we don't want user to set the publishedAt attribute.\n */\nexport const filterDataPublishedAt: ParamsTransform = (params) => {\n if (params?.data?.publishedAt) {\n return assoc(['data', 'publishedAt'], null, params);\n }\n\n return params;\n};\n\n/**\n * Add status lookup query to the params\n */\nexport const statusToLookup: ParamsTransform = (params) => {\n const lookup = params.lookup || {};\n\n switch (params?.status) {\n case 'published':\n return assoc(['lookup', 'publishedAt'], { $notNull: true }, params);\n case 'draft':\n return assoc(['lookup', 'publishedAt'], { $null: true }, params);\n default:\n break;\n }\n\n return assoc('lookup', lookup, params);\n};\n\n/**\n * Translate publication status parameter into the data that will be saved\n */\nexport const statusToData: ParamsTransform = (params) => {\n switch (params?.status) {\n case 'published':\n return assoc(['data', 'publishedAt'], new Date(), params);\n case 'draft':\n return assoc(['data', 'publishedAt'], null, params);\n default:\n break;\n }\n\n return params;\n};\n"],"names":[],"mappings":";AAQa,MAAA,mBAAoC,MAAM,UAAU,OAAO;AAK3D,MAAA,iBAAkC,CAAC,WAAW;AAEzD,MAAI,CAAC,OAAO,UAAU,OAAO,WAAW,aAAa;AACnD,WAAO,iBAAiB,MAAM;AAAA,EAChC;AAEO,SAAA;AACT;AAKa,MAAA,wBAAyC,CAAC,WAAW;AAC5D,MAAA,QAAQ,MAAM,aAAa;AAC7B,WAAO,MAAM,CAAC,QAAQ,aAAa,GAAG,MAAM,MAAM;AAAA,EACpD;AAEO,SAAA;AACT;AAKa,MAAA,iBAAkC,CAAC,WAAW;AACnD,QAAA,SAAS,OAAO,UAAU;AAEhC,UAAQ,QAAQ,QAAQ;AAAA,IACtB,KAAK;AACI,aAAA,MAAM,CAAC,UAAU,aAAa,GAAG,EAAE,UAAU,QAAQ,MAAM;AAAA,IACpE,KAAK;AACI,aAAA,MAAM,CAAC,UAAU,aAAa,GAAG,EAAE,OAAO,QAAQ,MAAM;AAAA,EAGnE;AAEO,SAAA,MAAM,UAAU,QAAQ,MAAM;AACvC;AAKa,MAAA,eAAgC,CAAC,WAAW;AACvD,UAAQ,QAAQ,QAAQ;AAAA,IACtB,KAAK;AACI,aAAA,MAAM,CAAC,QAAQ,aAAa,GAAO,oBAAA,KAAA,GAAQ,MAAM;AAAA,IAC1D,KAAK;AACH,aAAO,MAAM,CAAC,QAAQ,aAAa,GAAG,MAAM,MAAM;AAAA,EAGtD;AAEO,SAAA;AACT;"}
1
+ {"version":3,"file":"draft-and-publish.mjs","sources":["../../../src/services/document-service/draft-and-publish.ts"],"sourcesContent":["import { assoc, curry } from 'lodash/fp';\n\nimport type { Modules, Struct } from '@strapi/types';\nimport { contentTypes } from '@strapi/utils';\n\ntype ParamsTransform = (params: Modules.Documents.Params.All) => Modules.Documents.Params.All;\n\ntype TransformWithContentType = (\n contentType: Struct.SingleTypeSchema | Struct.CollectionTypeSchema,\n params: Modules.Documents.Params.All\n) => Modules.Documents.Params.All;\n\n/**\n * DP enabled -> set status to draft\n * DP disabled -> Used mostly for parsing relations, so there is not a need for a default.\n */\nconst setStatusToDraft: TransformWithContentType = (contentType, params) => {\n if (!contentTypes.hasDraftAndPublish(contentType) && params.status) {\n return params;\n }\n\n return assoc('status', 'draft', params);\n};\n\n/**\n * Adds a default status of `draft` to the params\n */\nconst defaultToDraft: ParamsTransform = (params) => {\n // Default to draft if no status is provided or it's invalid\n if (!params.status || params.status !== 'published') {\n return assoc('status', 'draft', params);\n }\n\n return params;\n};\n\n/**\n * DP disabled -> ignore status\n * DP enabled -> set status to draft if no status is provided or it's invalid\n */\nconst defaultStatus: TransformWithContentType = (contentType, params) => {\n if (!contentTypes.hasDraftAndPublish(contentType)) {\n return params;\n }\n\n // Default to draft if no status is provided or it's invalid\n if (!params.status || params.status !== 'published') {\n return defaultToDraft(params);\n }\n\n return params;\n};\n\n/**\n * In mutating actions we don't want user to set the publishedAt attribute.\n */\nconst filterDataPublishedAt: ParamsTransform = (params) => {\n if (params?.data?.publishedAt) {\n return assoc(['data', 'publishedAt'], null, params);\n }\n\n return params;\n};\n\n/**\n * Add status lookup query to the params\n */\nconst statusToLookup: TransformWithContentType = (contentType, params) => {\n if (!contentTypes.hasDraftAndPublish(contentType)) {\n return params;\n }\n\n const lookup = params.lookup || {};\n\n switch (params?.status) {\n case 'published':\n return assoc(['lookup', 'publishedAt'], { $notNull: true }, params);\n case 'draft':\n return assoc(['lookup', 'publishedAt'], { $null: true }, params);\n default:\n break;\n }\n\n return assoc('lookup', lookup, params);\n};\n\n/**\n * Translate publication status parameter into the data that will be saved\n */\nconst statusToData: TransformWithContentType = (contentType, params) => {\n if (!contentTypes.hasDraftAndPublish(contentType)) {\n return assoc(['data', 'publishedAt'], new Date(), params);\n }\n\n switch (params?.status) {\n case 'published':\n return assoc(['data', 'publishedAt'], new Date(), params);\n case 'draft':\n return assoc(['data', 'publishedAt'], null, params);\n default:\n break;\n }\n\n return params;\n};\n\nconst setStatusToDraftCurry = curry(setStatusToDraft);\nconst defaultToDraftCurry = curry(defaultToDraft);\nconst defaultStatusCurry = curry(defaultStatus);\nconst filterDataPublishedAtCurry = curry(filterDataPublishedAt);\nconst statusToLookupCurry = curry(statusToLookup);\nconst statusToDataCurry = curry(statusToData);\n\nexport {\n setStatusToDraftCurry as setStatusToDraft,\n defaultToDraftCurry as defaultToDraft,\n defaultStatusCurry as defaultStatus,\n filterDataPublishedAtCurry as filterDataPublishedAt,\n statusToLookupCurry as statusToLookup,\n statusToDataCurry as statusToData,\n};\n"],"names":["setStatusToDraft","contentType","params","contentTypes","hasDraftAndPublish","status","assoc","defaultToDraft","defaultStatus","filterDataPublishedAt","data","publishedAt","statusToLookup","lookup","$notNull","$null","statusToData","Date","setStatusToDraftCurry","curry","defaultToDraftCurry","defaultStatusCurry","filterDataPublishedAtCurry","statusToLookupCurry","statusToDataCurry"],"mappings":";;;AAYA;;;IAIA,MAAMA,gBAA6C,GAAA,CAACC,WAAaC,EAAAA,MAAAA,GAAAA;AAC/D,IAAA,IAAI,CAACC,YAAaC,CAAAA,kBAAkB,CAACH,WAAgBC,CAAAA,IAAAA,MAAAA,CAAOG,MAAM,EAAE;QAClE,OAAOH,MAAAA;AACT;IAEA,OAAOI,KAAAA,CAAM,UAAU,OAASJ,EAAAA,MAAAA,CAAAA;AAClC,CAAA;AAEA;;IAGA,MAAMK,iBAAkC,CAACL,MAAAA,GAAAA;;AAEvC,IAAA,IAAI,CAACA,MAAOG,CAAAA,MAAM,IAAIH,MAAOG,CAAAA,MAAM,KAAK,WAAa,EAAA;QACnD,OAAOC,KAAAA,CAAM,UAAU,OAASJ,EAAAA,MAAAA,CAAAA;AAClC;IAEA,OAAOA,MAAAA;AACT,CAAA;AAEA;;;IAIA,MAAMM,aAA0C,GAAA,CAACP,WAAaC,EAAAA,MAAAA,GAAAA;AAC5D,IAAA,IAAI,CAACC,YAAAA,CAAaC,kBAAkB,CAACH,WAAc,CAAA,EAAA;QACjD,OAAOC,MAAAA;AACT;;AAGA,IAAA,IAAI,CAACA,MAAOG,CAAAA,MAAM,IAAIH,MAAOG,CAAAA,MAAM,KAAK,WAAa,EAAA;AACnD,QAAA,OAAOE,cAAeL,CAAAA,MAAAA,CAAAA;AACxB;IAEA,OAAOA,MAAAA;AACT,CAAA;AAEA;;IAGA,MAAMO,wBAAyC,CAACP,MAAAA,GAAAA;IAC9C,IAAIA,MAAAA,EAAQQ,MAAMC,WAAa,EAAA;AAC7B,QAAA,OAAOL,KAAM,CAAA;AAAC,YAAA,MAAA;AAAQ,YAAA;AAAc,SAAA,EAAE,IAAMJ,EAAAA,MAAAA,CAAAA;AAC9C;IAEA,OAAOA,MAAAA;AACT,CAAA;AAEA;;IAGA,MAAMU,cAA2C,GAAA,CAACX,WAAaC,EAAAA,MAAAA,GAAAA;AAC7D,IAAA,IAAI,CAACC,YAAAA,CAAaC,kBAAkB,CAACH,WAAc,CAAA,EAAA;QACjD,OAAOC,MAAAA;AACT;AAEA,IAAA,MAAMW,MAASX,GAAAA,MAAAA,CAAOW,MAAM,IAAI,EAAC;AAEjC,IAAA,OAAQX,MAAQG,EAAAA,MAAAA;QACd,KAAK,WAAA;AACH,YAAA,OAAOC,KAAM,CAAA;AAAC,gBAAA,QAAA;AAAU,gBAAA;aAAc,EAAE;gBAAEQ,QAAU,EAAA;aAAQZ,EAAAA,MAAAA,CAAAA;QAC9D,KAAK,OAAA;AACH,YAAA,OAAOI,KAAM,CAAA;AAAC,gBAAA,QAAA;AAAU,gBAAA;aAAc,EAAE;gBAAES,KAAO,EAAA;aAAQb,EAAAA,MAAAA,CAAAA;AAG7D;IAEA,OAAOI,KAAAA,CAAM,UAAUO,MAAQX,EAAAA,MAAAA,CAAAA;AACjC,CAAA;AAEA;;IAGA,MAAMc,YAAyC,GAAA,CAACf,WAAaC,EAAAA,MAAAA,GAAAA;AAC3D,IAAA,IAAI,CAACC,YAAAA,CAAaC,kBAAkB,CAACH,WAAc,CAAA,EAAA;AACjD,QAAA,OAAOK,KAAM,CAAA;AAAC,YAAA,MAAA;AAAQ,YAAA;AAAc,SAAA,EAAE,IAAIW,IAAQf,EAAAA,EAAAA,MAAAA,CAAAA;AACpD;AAEA,IAAA,OAAQA,MAAQG,EAAAA,MAAAA;QACd,KAAK,WAAA;AACH,YAAA,OAAOC,KAAM,CAAA;AAAC,gBAAA,MAAA;AAAQ,gBAAA;AAAc,aAAA,EAAE,IAAIW,IAAQf,EAAAA,EAAAA,MAAAA,CAAAA;QACpD,KAAK,OAAA;AACH,YAAA,OAAOI,KAAM,CAAA;AAAC,gBAAA,MAAA;AAAQ,gBAAA;AAAc,aAAA,EAAE,IAAMJ,EAAAA,MAAAA,CAAAA;AAGhD;IAEA,OAAOA,MAAAA;AACT,CAAA;AAEA,MAAMgB,wBAAwBC,KAAMnB,CAAAA,gBAAAA;AACpC,MAAMoB,sBAAsBD,KAAMZ,CAAAA,cAAAA;AAClC,MAAMc,qBAAqBF,KAAMX,CAAAA,aAAAA;AACjC,MAAMc,6BAA6BH,KAAMV,CAAAA,qBAAAA;AACzC,MAAMc,sBAAsBJ,KAAMP,CAAAA,cAAAA;AAClC,MAAMY,oBAAoBL,KAAMH,CAAAA,YAAAA;;;;"}
@@ -0,0 +1,10 @@
1
+ import type { UID, Modules } from '@strapi/types';
2
+ declare const createEntriesService: (uid: UID.ContentType, entityValidator: Modules.EntityValidator.EntityValidator) => {
3
+ create: (params?: any) => Promise<any>;
4
+ delete: (id: number) => Promise<any>;
5
+ update: (entryToUpdate: any, params?: any) => Promise<any>;
6
+ publish: (entry: any, params?: any) => Promise<object>;
7
+ discardDraft: (entry: any, params?: any) => Promise<object>;
8
+ };
9
+ export { createEntriesService };
10
+ //# sourceMappingURL=entries.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entries.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAYlD,QAAA,MAAM,oBAAoB,QACnB,IAAI,WAAW,mBACH,QAAQ,eAAe,CAAC,eAAe;;iBA2EzB,MAAM;4BAUK,GAAG;qBA4BV,GAAG;0BAaE,GAAG;CAoB5C,CAAC;AAEF,OAAO,EAAE,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,155 @@
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+ var fp = require('lodash/fp');
5
+ var components = require('./components.js');
6
+ var idTransform = require('./transform/id-transform.js');
7
+ var query = require('./transform/query.js');
8
+ var params = require('./params.js');
9
+ var index = require('./attributes/index.js');
10
+ var data = require('./transform/data.js');
11
+
12
+ const createEntriesService = (uid, entityValidator)=>{
13
+ const contentType = strapi.contentType(uid);
14
+ async function createEntry(params$1 = {}) {
15
+ const { data, ...restParams } = await idTransform.transformParamsDocumentId(uid, params$1);
16
+ const query$1 = query.transformParamsToQuery(uid, params.pickSelectionParams(restParams)); // select / populate
17
+ // Validation
18
+ if (!data) {
19
+ throw new Error('Create requires data attribute');
20
+ }
21
+ // Check for uniqueness based on documentId and locale (if localized)
22
+ if (data.documentId) {
23
+ const i18nService = strapi.plugin('i18n')?.service('content-types');
24
+ const isLocalized = i18nService?.isLocalizedContentType(contentType) ?? false;
25
+ const hasDraftAndPublish = contentType.options?.draftAndPublish === true;
26
+ const whereClause = {
27
+ documentId: data.documentId
28
+ };
29
+ if (isLocalized) {
30
+ whereClause.locale = data.locale;
31
+ }
32
+ let publishedStateDescription = '';
33
+ if (hasDraftAndPublish) {
34
+ if (data.publishedAt) {
35
+ // Current entry is published, check for existing published entry
36
+ whereClause.publishedAt = {
37
+ $notNull: true
38
+ };
39
+ publishedStateDescription = 'published';
40
+ } else {
41
+ // Current entry is a draft, check for existing draft entry
42
+ whereClause.publishedAt = {
43
+ $null: true
44
+ };
45
+ publishedStateDescription = 'draft';
46
+ }
47
+ }
48
+ const existingEntry = await strapi.db.query(uid).findOne({
49
+ select: [
50
+ 'id'
51
+ ],
52
+ where: whereClause
53
+ });
54
+ if (existingEntry) {
55
+ let errorMsg = `A ${publishedStateDescription} entry with documentId "${data.documentId}"`;
56
+ if (isLocalized && data.locale) {
57
+ errorMsg += ` and locale "${data.locale}"`;
58
+ }
59
+ errorMsg += ` already exists for UID "${uid}". This combination must be unique.`;
60
+ throw new strapiUtils.errors.ApplicationError(errorMsg);
61
+ }
62
+ }
63
+ const validData = await entityValidator.validateEntityCreation(contentType, data, {
64
+ // Note: publishedAt value will always be set when DP is disabled
65
+ isDraft: !params$1?.data?.publishedAt,
66
+ locale: params$1?.locale
67
+ });
68
+ // Component handling
69
+ const componentData = await components.createComponents(uid, validData);
70
+ const dataWithComponents = components.assignComponentData(contentType, componentData, validData);
71
+ const entryData = index.applyTransforms(contentType, dataWithComponents);
72
+ const doc = await strapi.db.query(uid).create({
73
+ ...query$1,
74
+ data: entryData
75
+ });
76
+ return doc;
77
+ }
78
+ async function deleteEntry(id) {
79
+ const componentsToDelete = await components.getComponents(uid, {
80
+ id
81
+ });
82
+ const deletedEntry = await strapi.db.query(uid).delete({
83
+ where: {
84
+ id
85
+ }
86
+ });
87
+ await components.deleteComponents(uid, componentsToDelete, {
88
+ loadComponents: false
89
+ });
90
+ return deletedEntry;
91
+ }
92
+ async function updateEntry(entryToUpdate, params$1 = {}) {
93
+ const { data, ...restParams } = await idTransform.transformParamsDocumentId(uid, params$1);
94
+ const query$1 = query.transformParamsToQuery(uid, params.pickSelectionParams(restParams)); // select / populate
95
+ const validData = await entityValidator.validateEntityUpdate(contentType, data, {
96
+ isDraft: !params$1?.data?.publishedAt,
97
+ locale: params$1?.locale
98
+ }, entryToUpdate);
99
+ // Component handling
100
+ const componentData = await components.updateComponents(uid, entryToUpdate, validData);
101
+ const dataWithComponents = components.assignComponentData(contentType, componentData, validData);
102
+ const entryData = index.applyTransforms(contentType, dataWithComponents);
103
+ return strapi.db.query(uid).update({
104
+ ...query$1,
105
+ where: {
106
+ id: entryToUpdate.id
107
+ },
108
+ data: entryData
109
+ });
110
+ }
111
+ async function publishEntry(entry, params = {}) {
112
+ return strapiUtils.async.pipe(fp.omit('id'), fp.assoc('publishedAt', new Date()), (draft)=>{
113
+ const opts = {
114
+ uid,
115
+ locale: draft.locale,
116
+ status: 'published',
117
+ allowMissingId: true
118
+ };
119
+ return data.transformData(draft, opts);
120
+ }, // Create the published entry
121
+ (draft)=>createEntry({
122
+ ...params,
123
+ data: draft,
124
+ locale: draft.locale,
125
+ status: 'published'
126
+ }))(entry);
127
+ }
128
+ async function discardDraftEntry(entry, params = {}) {
129
+ return strapiUtils.async.pipe(fp.omit('id'), fp.assoc('publishedAt', null), (entry)=>{
130
+ const opts = {
131
+ uid,
132
+ locale: entry.locale,
133
+ status: 'draft',
134
+ allowMissingId: true
135
+ };
136
+ return data.transformData(entry, opts);
137
+ }, // Create the draft entry
138
+ (data)=>createEntry({
139
+ ...params,
140
+ locale: data.locale,
141
+ data,
142
+ status: 'draft'
143
+ }))(entry);
144
+ }
145
+ return {
146
+ create: createEntry,
147
+ delete: deleteEntry,
148
+ update: updateEntry,
149
+ publish: publishEntry,
150
+ discardDraft: discardDraftEntry
151
+ };
152
+ };
153
+
154
+ exports.createEntriesService = createEntriesService;
155
+ //# sourceMappingURL=entries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entries.js","sources":["../../../src/services/document-service/entries.ts"],"sourcesContent":["import type { UID, Modules } from '@strapi/types';\nimport { async, errors } from '@strapi/utils';\nimport { assoc, omit } from 'lodash/fp';\n\nimport * as components from './components';\n\nimport { transformParamsDocumentId } from './transform/id-transform';\nimport { transformParamsToQuery } from './transform/query';\nimport { pickSelectionParams } from './params';\nimport { applyTransforms } from './attributes';\nimport { transformData } from './transform/data';\n\nconst createEntriesService = (\n uid: UID.ContentType,\n entityValidator: Modules.EntityValidator.EntityValidator\n) => {\n const contentType = strapi.contentType(uid);\n\n async function createEntry(params = {} as any) {\n const { data, ...restParams } = await transformParamsDocumentId(uid, params);\n const query = transformParamsToQuery(uid, pickSelectionParams(restParams) as any); // select / populate\n\n // Validation\n if (!data) {\n throw new Error('Create requires data attribute');\n }\n\n // Check for uniqueness based on documentId and locale (if localized)\n if (data.documentId) {\n const i18nService = strapi.plugin('i18n')?.service('content-types');\n const isLocalized = i18nService?.isLocalizedContentType(contentType) ?? false;\n const hasDraftAndPublish = contentType.options?.draftAndPublish === true;\n\n const whereClause: Record<string, unknown> = { documentId: data.documentId };\n\n if (isLocalized) {\n whereClause.locale = data.locale;\n }\n\n let publishedStateDescription = '';\n\n if (hasDraftAndPublish) {\n if (data.publishedAt) {\n // Current entry is published, check for existing published entry\n whereClause.publishedAt = { $notNull: true };\n publishedStateDescription = 'published';\n } else {\n // Current entry is a draft, check for existing draft entry\n whereClause.publishedAt = { $null: true };\n publishedStateDescription = 'draft';\n }\n }\n\n const existingEntry = await strapi.db.query(uid).findOne({\n select: ['id'],\n where: whereClause,\n });\n\n if (existingEntry) {\n let errorMsg = `A ${publishedStateDescription} entry with documentId \"${data.documentId}\"`;\n if (isLocalized && data.locale) {\n errorMsg += ` and locale \"${data.locale}\"`;\n }\n errorMsg += ` already exists for UID \"${uid}\". This combination must be unique.`;\n throw new errors.ApplicationError(errorMsg);\n }\n }\n\n const validData = await entityValidator.validateEntityCreation(contentType, data, {\n // Note: publishedAt value will always be set when DP is disabled\n isDraft: !params?.data?.publishedAt,\n locale: params?.locale,\n });\n\n // Component handling\n const componentData = await components.createComponents(uid, validData);\n const dataWithComponents = components.assignComponentData(\n contentType,\n componentData,\n validData\n );\n\n const entryData = applyTransforms(contentType, dataWithComponents);\n\n const doc = await strapi.db.query(uid).create({ ...query, data: entryData });\n\n return doc;\n }\n\n async function deleteEntry(id: number) {\n const componentsToDelete = await components.getComponents(uid, { id });\n\n const deletedEntry = await strapi.db.query(uid).delete({ where: { id } });\n\n await components.deleteComponents(uid, componentsToDelete as any, { loadComponents: false });\n\n return deletedEntry;\n }\n\n async function updateEntry(entryToUpdate: any, params = {} as any) {\n const { data, ...restParams } = await transformParamsDocumentId(uid, params);\n const query = transformParamsToQuery(uid, pickSelectionParams(restParams) as any); // select / populate\n\n const validData = await entityValidator.validateEntityUpdate(\n contentType,\n data,\n {\n isDraft: !params?.data?.publishedAt, // Always update the draft version\n locale: params?.locale,\n },\n entryToUpdate\n );\n // Component handling\n const componentData = await components.updateComponents(uid, entryToUpdate, validData as any);\n const dataWithComponents = components.assignComponentData(\n contentType,\n componentData,\n validData\n );\n\n const entryData = applyTransforms(contentType, dataWithComponents);\n\n return strapi.db\n .query(uid)\n .update({ ...query, where: { id: entryToUpdate.id }, data: entryData });\n }\n\n async function publishEntry(entry: any, params = {} as any) {\n return async.pipe(\n omit('id'),\n assoc('publishedAt', new Date()),\n (draft) => {\n const opts = { uid, locale: draft.locale, status: 'published', allowMissingId: true };\n return transformData(draft, opts);\n },\n // Create the published entry\n (draft) => createEntry({ ...params, data: draft, locale: draft.locale, status: 'published' })\n )(entry);\n }\n\n async function discardDraftEntry(entry: any, params = {} as any) {\n return async.pipe(\n omit('id'),\n assoc('publishedAt', null),\n (entry) => {\n const opts = { uid, locale: entry.locale, status: 'draft', allowMissingId: true };\n return transformData(entry, opts);\n },\n // Create the draft entry\n (data) => createEntry({ ...params, locale: data.locale, data, status: 'draft' })\n )(entry);\n }\n\n return {\n create: createEntry,\n delete: deleteEntry,\n update: updateEntry,\n publish: publishEntry,\n discardDraft: discardDraftEntry,\n };\n};\n\nexport { createEntriesService };\n"],"names":["createEntriesService","uid","entityValidator","contentType","strapi","createEntry","params","data","restParams","transformParamsDocumentId","query","transformParamsToQuery","pickSelectionParams","Error","documentId","i18nService","plugin","service","isLocalized","isLocalizedContentType","hasDraftAndPublish","options","draftAndPublish","whereClause","locale","publishedStateDescription","publishedAt","$notNull","$null","existingEntry","db","findOne","select","where","errorMsg","errors","ApplicationError","validData","validateEntityCreation","isDraft","componentData","components","dataWithComponents","entryData","applyTransforms","doc","create","deleteEntry","id","componentsToDelete","deletedEntry","delete","loadComponents","updateEntry","entryToUpdate","validateEntityUpdate","update","publishEntry","entry","async","pipe","omit","assoc","Date","draft","opts","status","allowMissingId","transformData","discardDraftEntry","publish","discardDraft"],"mappings":";;;;;;;;;;;AAYMA,MAAAA,oBAAAA,GAAuB,CAC3BC,GACAC,EAAAA,eAAAA,GAAAA;IAEA,MAAMC,WAAAA,GAAcC,MAAOD,CAAAA,WAAW,CAACF,GAAAA,CAAAA;IAEvC,eAAeI,WAAAA,CAAYC,QAAS,GAAA,EAAS,EAAA;QAC3C,MAAM,EAAEC,IAAI,EAAE,GAAGC,YAAY,GAAG,MAAMC,sCAA0BR,GAAKK,EAAAA,QAAAA,CAAAA;AACrE,QAAA,MAAMI,OAAQC,GAAAA,4BAAAA,CAAuBV,GAAKW,EAAAA,0BAAAA,CAAoBJ;;AAG9D,QAAA,IAAI,CAACD,IAAM,EAAA;AACT,YAAA,MAAM,IAAIM,KAAM,CAAA,gCAAA,CAAA;AAClB;;QAGA,IAAIN,IAAAA,CAAKO,UAAU,EAAE;AACnB,YAAA,MAAMC,WAAcX,GAAAA,MAAAA,CAAOY,MAAM,CAAC,SAASC,OAAQ,CAAA,eAAA,CAAA;YACnD,MAAMC,WAAAA,GAAcH,WAAaI,EAAAA,sBAAAA,CAAuBhB,WAAgB,CAAA,IAAA,KAAA;AACxE,YAAA,MAAMiB,kBAAqBjB,GAAAA,WAAAA,CAAYkB,OAAO,EAAEC,eAAoB,KAAA,IAAA;AAEpE,YAAA,MAAMC,WAAuC,GAAA;AAAET,gBAAAA,UAAAA,EAAYP,KAAKO;AAAW,aAAA;AAE3E,YAAA,IAAII,WAAa,EAAA;gBACfK,WAAYC,CAAAA,MAAM,GAAGjB,IAAAA,CAAKiB,MAAM;AAClC;AAEA,YAAA,IAAIC,yBAA4B,GAAA,EAAA;AAEhC,YAAA,IAAIL,kBAAoB,EAAA;gBACtB,IAAIb,IAAAA,CAAKmB,WAAW,EAAE;;AAEpBH,oBAAAA,WAAAA,CAAYG,WAAW,GAAG;wBAAEC,QAAU,EAAA;AAAK,qBAAA;oBAC3CF,yBAA4B,GAAA,WAAA;iBACvB,MAAA;;AAELF,oBAAAA,WAAAA,CAAYG,WAAW,GAAG;wBAAEE,KAAO,EAAA;AAAK,qBAAA;oBACxCH,yBAA4B,GAAA,OAAA;AAC9B;AACF;YAEA,MAAMI,aAAAA,GAAgB,MAAMzB,MAAO0B,CAAAA,EAAE,CAACpB,KAAK,CAACT,GAAK8B,CAAAA,CAAAA,OAAO,CAAC;gBACvDC,MAAQ,EAAA;AAAC,oBAAA;AAAK,iBAAA;gBACdC,KAAOV,EAAAA;AACT,aAAA,CAAA;AAEA,YAAA,IAAIM,aAAe,EAAA;gBACjB,IAAIK,QAAAA,GAAW,CAAC,EAAE,EAAET,yBAAAA,CAA0B,wBAAwB,EAAElB,IAAKO,CAAAA,UAAU,CAAC,CAAC,CAAC;gBAC1F,IAAII,WAAAA,IAAeX,IAAKiB,CAAAA,MAAM,EAAE;AAC9BU,oBAAAA,QAAAA,IAAY,CAAC,aAAa,EAAE3B,KAAKiB,MAAM,CAAC,CAAC,CAAC;AAC5C;AACAU,gBAAAA,QAAAA,IAAY,CAAC,yBAAyB,EAAEjC,GAAAA,CAAI,mCAAmC,CAAC;gBAChF,MAAM,IAAIkC,kBAAOC,CAAAA,gBAAgB,CAACF,QAAAA,CAAAA;AACpC;AACF;AAEA,QAAA,MAAMG,YAAY,MAAMnC,eAAAA,CAAgBoC,sBAAsB,CAACnC,aAAaI,IAAM,EAAA;;YAEhFgC,OAAS,EAAA,CAACjC,UAAQC,IAAMmB,EAAAA,WAAAA;AACxBF,YAAAA,MAAAA,EAAQlB,QAAQkB,EAAAA;AAClB,SAAA,CAAA;;AAGA,QAAA,MAAMgB,aAAgB,GAAA,MAAMC,2BAA2B,CAACxC,GAAKoC,EAAAA,SAAAA,CAAAA;AAC7D,QAAA,MAAMK,kBAAqBD,GAAAA,8BAA8B,CACvDtC,aACAqC,aACAH,EAAAA,SAAAA,CAAAA;QAGF,MAAMM,SAAAA,GAAYC,sBAAgBzC,WAAauC,EAAAA,kBAAAA,CAAAA;QAE/C,MAAMG,GAAAA,GAAM,MAAMzC,MAAO0B,CAAAA,EAAE,CAACpB,KAAK,CAACT,GAAK6C,CAAAA,CAAAA,MAAM,CAAC;AAAE,YAAA,GAAGpC,OAAK;YAAEH,IAAMoC,EAAAA;AAAU,SAAA,CAAA;QAE1E,OAAOE,GAAAA;AACT;AAEA,IAAA,eAAeE,YAAYC,EAAU,EAAA;AACnC,QAAA,MAAMC,kBAAqB,GAAA,MAAMR,wBAAwB,CAACxC,GAAK,EAAA;AAAE+C,YAAAA;AAAG,SAAA,CAAA;QAEpE,MAAME,YAAAA,GAAe,MAAM9C,MAAO0B,CAAAA,EAAE,CAACpB,KAAK,CAACT,GAAKkD,CAAAA,CAAAA,MAAM,CAAC;YAAElB,KAAO,EAAA;AAAEe,gBAAAA;AAAG;AAAE,SAAA,CAAA;AAEvE,QAAA,MAAMP,2BAA2B,CAACxC,GAAAA,EAAKgD,kBAA2B,EAAA;YAAEG,cAAgB,EAAA;AAAM,SAAA,CAAA;QAE1F,OAAOF,YAAAA;AACT;AAEA,IAAA,eAAeG,WAAYC,CAAAA,aAAkB,EAAEhD,QAAAA,GAAS,EAAS,EAAA;QAC/D,MAAM,EAAEC,IAAI,EAAE,GAAGC,YAAY,GAAG,MAAMC,sCAA0BR,GAAKK,EAAAA,QAAAA,CAAAA;AACrE,QAAA,MAAMI,OAAQC,GAAAA,4BAAAA,CAAuBV,GAAKW,EAAAA,0BAAAA,CAAoBJ;AAE9D,QAAA,MAAM6B,YAAY,MAAMnC,eAAAA,CAAgBqD,oBAAoB,CAC1DpD,aACAI,IACA,EAAA;YACEgC,OAAS,EAAA,CAACjC,UAAQC,IAAMmB,EAAAA,WAAAA;AACxBF,YAAAA,MAAAA,EAAQlB,QAAQkB,EAAAA;SAElB8B,EAAAA,aAAAA,CAAAA;;AAGF,QAAA,MAAMd,gBAAgB,MAAMC,2BAA2B,CAACxC,KAAKqD,aAAejB,EAAAA,SAAAA,CAAAA;AAC5E,QAAA,MAAMK,kBAAqBD,GAAAA,8BAA8B,CACvDtC,aACAqC,aACAH,EAAAA,SAAAA,CAAAA;QAGF,MAAMM,SAAAA,GAAYC,sBAAgBzC,WAAauC,EAAAA,kBAAAA,CAAAA;AAE/C,QAAA,OAAOtC,OAAO0B,EAAE,CACbpB,KAAK,CAACT,GAAAA,CAAAA,CACNuD,MAAM,CAAC;AAAE,YAAA,GAAG9C,OAAK;YAAEuB,KAAO,EAAA;AAAEe,gBAAAA,EAAAA,EAAIM,cAAcN;AAAG,aAAA;YAAGzC,IAAMoC,EAAAA;AAAU,SAAA,CAAA;AACzE;AAEA,IAAA,eAAec,YAAaC,CAAAA,KAAU,EAAEpD,MAAAA,GAAS,EAAS,EAAA;QACxD,OAAOqD,iBAAAA,CAAMC,IAAI,CACfC,OAAAA,CAAK,OACLC,QAAM,CAAA,aAAA,EAAe,IAAIC,IAAAA,EAAAA,CAAAA,EACzB,CAACC,KAAAA,GAAAA;AACC,YAAA,MAAMC,IAAO,GAAA;AAAEhE,gBAAAA,GAAAA;AAAKuB,gBAAAA,MAAAA,EAAQwC,MAAMxC,MAAM;gBAAE0C,MAAQ,EAAA,WAAA;gBAAaC,cAAgB,EAAA;AAAK,aAAA;AACpF,YAAA,OAAOC,mBAAcJ,KAAOC,EAAAA,IAAAA,CAAAA;AAC9B,SAAA;AAEA,QAAA,CAACD,QAAU3D,WAAY,CAAA;AAAE,gBAAA,GAAGC,MAAM;gBAAEC,IAAMyD,EAAAA,KAAAA;AAAOxC,gBAAAA,MAAAA,EAAQwC,MAAMxC,MAAM;gBAAE0C,MAAQ,EAAA;aAC/ER,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA;AACJ;AAEA,IAAA,eAAeW,iBAAkBX,CAAAA,KAAU,EAAEpD,MAAAA,GAAS,EAAS,EAAA;QAC7D,OAAOqD,iBAAAA,CAAMC,IAAI,CACfC,OAAAA,CAAK,OACLC,QAAM,CAAA,aAAA,EAAe,OACrB,CAACJ,KAAAA,GAAAA;AACC,YAAA,MAAMO,IAAO,GAAA;AAAEhE,gBAAAA,GAAAA;AAAKuB,gBAAAA,MAAAA,EAAQkC,MAAMlC,MAAM;gBAAE0C,MAAQ,EAAA,OAAA;gBAASC,cAAgB,EAAA;AAAK,aAAA;AAChF,YAAA,OAAOC,mBAAcV,KAAOO,EAAAA,IAAAA,CAAAA;AAC9B,SAAA;AAEA,QAAA,CAAC1D,OAASF,WAAY,CAAA;AAAE,gBAAA,GAAGC,MAAM;AAAEkB,gBAAAA,MAAAA,EAAQjB,KAAKiB,MAAM;AAAEjB,gBAAAA,IAAAA;gBAAM2D,MAAQ,EAAA;aACtER,CAAAA,CAAAA,CAAAA,KAAAA,CAAAA;AACJ;IAEA,OAAO;QACLZ,MAAQzC,EAAAA,WAAAA;QACR8C,MAAQJ,EAAAA,WAAAA;QACRS,MAAQH,EAAAA,WAAAA;QACRiB,OAASb,EAAAA,YAAAA;QACTc,YAAcF,EAAAA;AAChB,KAAA;AACF;;;;"}
@@ -0,0 +1,153 @@
1
+ import { errors, async } from '@strapi/utils';
2
+ import { omit, assoc } from 'lodash/fp';
3
+ import { createComponents, assignComponentData, getComponents, deleteComponents, updateComponents } from './components.mjs';
4
+ import { transformParamsDocumentId as curriedTransformParamsDocumentId } from './transform/id-transform.mjs';
5
+ import { transformParamsToQuery } from './transform/query.mjs';
6
+ import { pickSelectionParams } from './params.mjs';
7
+ import { applyTransforms } from './attributes/index.mjs';
8
+ import { transformData } from './transform/data.mjs';
9
+
10
+ const createEntriesService = (uid, entityValidator)=>{
11
+ const contentType = strapi.contentType(uid);
12
+ async function createEntry(params = {}) {
13
+ const { data, ...restParams } = await curriedTransformParamsDocumentId(uid, params);
14
+ const query = transformParamsToQuery(uid, pickSelectionParams(restParams)); // select / populate
15
+ // Validation
16
+ if (!data) {
17
+ throw new Error('Create requires data attribute');
18
+ }
19
+ // Check for uniqueness based on documentId and locale (if localized)
20
+ if (data.documentId) {
21
+ const i18nService = strapi.plugin('i18n')?.service('content-types');
22
+ const isLocalized = i18nService?.isLocalizedContentType(contentType) ?? false;
23
+ const hasDraftAndPublish = contentType.options?.draftAndPublish === true;
24
+ const whereClause = {
25
+ documentId: data.documentId
26
+ };
27
+ if (isLocalized) {
28
+ whereClause.locale = data.locale;
29
+ }
30
+ let publishedStateDescription = '';
31
+ if (hasDraftAndPublish) {
32
+ if (data.publishedAt) {
33
+ // Current entry is published, check for existing published entry
34
+ whereClause.publishedAt = {
35
+ $notNull: true
36
+ };
37
+ publishedStateDescription = 'published';
38
+ } else {
39
+ // Current entry is a draft, check for existing draft entry
40
+ whereClause.publishedAt = {
41
+ $null: true
42
+ };
43
+ publishedStateDescription = 'draft';
44
+ }
45
+ }
46
+ const existingEntry = await strapi.db.query(uid).findOne({
47
+ select: [
48
+ 'id'
49
+ ],
50
+ where: whereClause
51
+ });
52
+ if (existingEntry) {
53
+ let errorMsg = `A ${publishedStateDescription} entry with documentId "${data.documentId}"`;
54
+ if (isLocalized && data.locale) {
55
+ errorMsg += ` and locale "${data.locale}"`;
56
+ }
57
+ errorMsg += ` already exists for UID "${uid}". This combination must be unique.`;
58
+ throw new errors.ApplicationError(errorMsg);
59
+ }
60
+ }
61
+ const validData = await entityValidator.validateEntityCreation(contentType, data, {
62
+ // Note: publishedAt value will always be set when DP is disabled
63
+ isDraft: !params?.data?.publishedAt,
64
+ locale: params?.locale
65
+ });
66
+ // Component handling
67
+ const componentData = await createComponents(uid, validData);
68
+ const dataWithComponents = assignComponentData(contentType, componentData, validData);
69
+ const entryData = applyTransforms(contentType, dataWithComponents);
70
+ const doc = await strapi.db.query(uid).create({
71
+ ...query,
72
+ data: entryData
73
+ });
74
+ return doc;
75
+ }
76
+ async function deleteEntry(id) {
77
+ const componentsToDelete = await getComponents(uid, {
78
+ id
79
+ });
80
+ const deletedEntry = await strapi.db.query(uid).delete({
81
+ where: {
82
+ id
83
+ }
84
+ });
85
+ await deleteComponents(uid, componentsToDelete, {
86
+ loadComponents: false
87
+ });
88
+ return deletedEntry;
89
+ }
90
+ async function updateEntry(entryToUpdate, params = {}) {
91
+ const { data, ...restParams } = await curriedTransformParamsDocumentId(uid, params);
92
+ const query = transformParamsToQuery(uid, pickSelectionParams(restParams)); // select / populate
93
+ const validData = await entityValidator.validateEntityUpdate(contentType, data, {
94
+ isDraft: !params?.data?.publishedAt,
95
+ locale: params?.locale
96
+ }, entryToUpdate);
97
+ // Component handling
98
+ const componentData = await updateComponents(uid, entryToUpdate, validData);
99
+ const dataWithComponents = assignComponentData(contentType, componentData, validData);
100
+ const entryData = applyTransforms(contentType, dataWithComponents);
101
+ return strapi.db.query(uid).update({
102
+ ...query,
103
+ where: {
104
+ id: entryToUpdate.id
105
+ },
106
+ data: entryData
107
+ });
108
+ }
109
+ async function publishEntry(entry, params = {}) {
110
+ return async.pipe(omit('id'), assoc('publishedAt', new Date()), (draft)=>{
111
+ const opts = {
112
+ uid,
113
+ locale: draft.locale,
114
+ status: 'published',
115
+ allowMissingId: true
116
+ };
117
+ return transformData(draft, opts);
118
+ }, // Create the published entry
119
+ (draft)=>createEntry({
120
+ ...params,
121
+ data: draft,
122
+ locale: draft.locale,
123
+ status: 'published'
124
+ }))(entry);
125
+ }
126
+ async function discardDraftEntry(entry, params = {}) {
127
+ return async.pipe(omit('id'), assoc('publishedAt', null), (entry)=>{
128
+ const opts = {
129
+ uid,
130
+ locale: entry.locale,
131
+ status: 'draft',
132
+ allowMissingId: true
133
+ };
134
+ return transformData(entry, opts);
135
+ }, // Create the draft entry
136
+ (data)=>createEntry({
137
+ ...params,
138
+ locale: data.locale,
139
+ data,
140
+ status: 'draft'
141
+ }))(entry);
142
+ }
143
+ return {
144
+ create: createEntry,
145
+ delete: deleteEntry,
146
+ update: updateEntry,
147
+ publish: publishEntry,
148
+ discardDraft: discardDraftEntry
149
+ };
150
+ };
151
+
152
+ export { createEntriesService };
153
+ //# sourceMappingURL=entries.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entries.mjs","sources":["../../../src/services/document-service/entries.ts"],"sourcesContent":["import type { UID, Modules } from '@strapi/types';\nimport { async, errors } from '@strapi/utils';\nimport { assoc, omit } from 'lodash/fp';\n\nimport * as components from './components';\n\nimport { transformParamsDocumentId } from './transform/id-transform';\nimport { transformParamsToQuery } from './transform/query';\nimport { pickSelectionParams } from './params';\nimport { applyTransforms } from './attributes';\nimport { transformData } from './transform/data';\n\nconst createEntriesService = (\n uid: UID.ContentType,\n entityValidator: Modules.EntityValidator.EntityValidator\n) => {\n const contentType = strapi.contentType(uid);\n\n async function createEntry(params = {} as any) {\n const { data, ...restParams } = await transformParamsDocumentId(uid, params);\n const query = transformParamsToQuery(uid, pickSelectionParams(restParams) as any); // select / populate\n\n // Validation\n if (!data) {\n throw new Error('Create requires data attribute');\n }\n\n // Check for uniqueness based on documentId and locale (if localized)\n if (data.documentId) {\n const i18nService = strapi.plugin('i18n')?.service('content-types');\n const isLocalized = i18nService?.isLocalizedContentType(contentType) ?? false;\n const hasDraftAndPublish = contentType.options?.draftAndPublish === true;\n\n const whereClause: Record<string, unknown> = { documentId: data.documentId };\n\n if (isLocalized) {\n whereClause.locale = data.locale;\n }\n\n let publishedStateDescription = '';\n\n if (hasDraftAndPublish) {\n if (data.publishedAt) {\n // Current entry is published, check for existing published entry\n whereClause.publishedAt = { $notNull: true };\n publishedStateDescription = 'published';\n } else {\n // Current entry is a draft, check for existing draft entry\n whereClause.publishedAt = { $null: true };\n publishedStateDescription = 'draft';\n }\n }\n\n const existingEntry = await strapi.db.query(uid).findOne({\n select: ['id'],\n where: whereClause,\n });\n\n if (existingEntry) {\n let errorMsg = `A ${publishedStateDescription} entry with documentId \"${data.documentId}\"`;\n if (isLocalized && data.locale) {\n errorMsg += ` and locale \"${data.locale}\"`;\n }\n errorMsg += ` already exists for UID \"${uid}\". This combination must be unique.`;\n throw new errors.ApplicationError(errorMsg);\n }\n }\n\n const validData = await entityValidator.validateEntityCreation(contentType, data, {\n // Note: publishedAt value will always be set when DP is disabled\n isDraft: !params?.data?.publishedAt,\n locale: params?.locale,\n });\n\n // Component handling\n const componentData = await components.createComponents(uid, validData);\n const dataWithComponents = components.assignComponentData(\n contentType,\n componentData,\n validData\n );\n\n const entryData = applyTransforms(contentType, dataWithComponents);\n\n const doc = await strapi.db.query(uid).create({ ...query, data: entryData });\n\n return doc;\n }\n\n async function deleteEntry(id: number) {\n const componentsToDelete = await components.getComponents(uid, { id });\n\n const deletedEntry = await strapi.db.query(uid).delete({ where: { id } });\n\n await components.deleteComponents(uid, componentsToDelete as any, { loadComponents: false });\n\n return deletedEntry;\n }\n\n async function updateEntry(entryToUpdate: any, params = {} as any) {\n const { data, ...restParams } = await transformParamsDocumentId(uid, params);\n const query = transformParamsToQuery(uid, pickSelectionParams(restParams) as any); // select / populate\n\n const validData = await entityValidator.validateEntityUpdate(\n contentType,\n data,\n {\n isDraft: !params?.data?.publishedAt, // Always update the draft version\n locale: params?.locale,\n },\n entryToUpdate\n );\n // Component handling\n const componentData = await components.updateComponents(uid, entryToUpdate, validData as any);\n const dataWithComponents = components.assignComponentData(\n contentType,\n componentData,\n validData\n );\n\n const entryData = applyTransforms(contentType, dataWithComponents);\n\n return strapi.db\n .query(uid)\n .update({ ...query, where: { id: entryToUpdate.id }, data: entryData });\n }\n\n async function publishEntry(entry: any, params = {} as any) {\n return async.pipe(\n omit('id'),\n assoc('publishedAt', new Date()),\n (draft) => {\n const opts = { uid, locale: draft.locale, status: 'published', allowMissingId: true };\n return transformData(draft, opts);\n },\n // Create the published entry\n (draft) => createEntry({ ...params, data: draft, locale: draft.locale, status: 'published' })\n )(entry);\n }\n\n async function discardDraftEntry(entry: any, params = {} as any) {\n return async.pipe(\n omit('id'),\n assoc('publishedAt', null),\n (entry) => {\n const opts = { uid, locale: entry.locale, status: 'draft', allowMissingId: true };\n return transformData(entry, opts);\n },\n // Create the draft entry\n (data) => createEntry({ ...params, locale: data.locale, data, status: 'draft' })\n )(entry);\n }\n\n return {\n create: createEntry,\n delete: deleteEntry,\n update: updateEntry,\n publish: publishEntry,\n discardDraft: discardDraftEntry,\n };\n};\n\nexport { createEntriesService };\n"],"names":["createEntriesService","uid","entityValidator","contentType","strapi","createEntry","params","data","restParams","transformParamsDocumentId","query","transformParamsToQuery","pickSelectionParams","Error","documentId","i18nService","plugin","service","isLocalized","isLocalizedContentType","hasDraftAndPublish","options","draftAndPublish","whereClause","locale","publishedStateDescription","publishedAt","$notNull","$null","existingEntry","db","findOne","select","where","errorMsg","errors","ApplicationError","validData","validateEntityCreation","isDraft","componentData","components","dataWithComponents","entryData","applyTransforms","doc","create","deleteEntry","id","componentsToDelete","deletedEntry","delete","loadComponents","updateEntry","entryToUpdate","validateEntityUpdate","update","publishEntry","entry","async","pipe","omit","assoc","Date","draft","opts","status","allowMissingId","transformData","discardDraftEntry","publish","discardDraft"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { UID, Utils, Modules, Core } from '@strapi/types';
2
+ declare const EVENTS: {
3
+ ENTRY_CREATE: string;
4
+ ENTRY_UPDATE: string;
5
+ ENTRY_DELETE: string;
6
+ ENTRY_PUBLISH: string;
7
+ ENTRY_UNPUBLISH: string;
8
+ ENTRY_DRAFT_DISCARD: string;
9
+ };
10
+ type EventName = Utils.Object.Values<typeof EVENTS>;
11
+ /**
12
+ * Manager to trigger entry related events
13
+ *
14
+ * It will populate the entry if it is not a delete event.
15
+ * So the event payload will contain the full entry.
16
+ */
17
+ declare const createEventManager: (strapi: Core.Strapi, uid: UID.Schema) => {
18
+ /**
19
+ * strapi.db.query might reuse the transaction used in the doc service request,
20
+ * so this is executed after that transaction is committed.
21
+ */
22
+ emitEvent(eventName: EventName, entry: Modules.Documents.AnyDocument): void;
23
+ };
24
+ export { createEventManager };
25
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/events.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAK/D,QAAA,MAAM,MAAM;;;;;;;CAOX,CAAC;AAEF,KAAK,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,QAAA,MAAM,kBAAkB,WAAY,KAAK,MAAM,OAAO,IAAI,MAAM;IA2B5D;;;OAGG;yBACkB,SAAS,SAAS,QAAQ,SAAS,CAAC,WAAW;CAMvE,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,59 @@
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+ var populate = require('./utils/populate.js');
5
+
6
+ const EVENTS = {
7
+ ENTRY_CREATE: 'entry.create',
8
+ ENTRY_UPDATE: 'entry.update',
9
+ ENTRY_DELETE: 'entry.delete',
10
+ ENTRY_PUBLISH: 'entry.publish',
11
+ ENTRY_UNPUBLISH: 'entry.unpublish',
12
+ ENTRY_DRAFT_DISCARD: 'entry.draft-discard'
13
+ };
14
+ /**
15
+ * Manager to trigger entry related events
16
+ *
17
+ * It will populate the entry if it is not a delete event.
18
+ * So the event payload will contain the full entry.
19
+ */ const createEventManager = (strapi, uid)=>{
20
+ const populate$1 = populate.getDeepPopulate(uid, {});
21
+ const model = strapi.getModel(uid);
22
+ const emitEvent = async (eventName, entry)=>{
23
+ // There is no need to populate the entry if it has been deleted
24
+ let populatedEntry = entry;
25
+ if (![
26
+ EVENTS.ENTRY_DELETE,
27
+ EVENTS.ENTRY_UNPUBLISH
28
+ ].includes(eventName)) {
29
+ populatedEntry = await strapi.db.query(uid).findOne({
30
+ where: {
31
+ id: entry.id
32
+ },
33
+ populate: populate$1
34
+ });
35
+ }
36
+ const sanitizedEntry = await strapiUtils.sanitize.sanitizers.defaultSanitizeOutput({
37
+ schema: model,
38
+ getModel: (uid)=>strapi.getModel(uid)
39
+ }, populatedEntry);
40
+ await strapi.eventHub.emit(eventName, {
41
+ model: model.modelName,
42
+ uid: model.uid,
43
+ entry: sanitizedEntry
44
+ });
45
+ };
46
+ return {
47
+ /**
48
+ * strapi.db.query might reuse the transaction used in the doc service request,
49
+ * so this is executed after that transaction is committed.
50
+ */ emitEvent (eventName, entry) {
51
+ strapi.db.transaction(({ onCommit })=>{
52
+ onCommit(()=>emitEvent(eventName, entry));
53
+ });
54
+ }
55
+ };
56
+ };
57
+
58
+ exports.createEventManager = createEventManager;
59
+ //# sourceMappingURL=events.js.map