@strapi/core 0.0.0-experimental.90ca9123352ed07e0a9cedaf4bcad1475e74137f → 0.0.0-experimental.9612538209f3c68285c5dea8fe26f96e7e470afd

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 (812) hide show
  1. package/dist/Strapi.d.ts +52 -59
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +193 -209
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +165 -201
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/configuration/config-loader.d.ts.map +1 -1
  8. package/dist/configuration/config-loader.js +9 -5
  9. package/dist/configuration/config-loader.js.map +1 -1
  10. package/dist/configuration/config-loader.mjs +9 -5
  11. package/dist/configuration/config-loader.mjs.map +1 -1
  12. package/dist/configuration/get-dirs.d.ts +10 -0
  13. package/dist/configuration/get-dirs.d.ts.map +1 -0
  14. package/dist/{utils → configuration}/get-dirs.js +3 -2
  15. package/dist/configuration/get-dirs.js.map +1 -0
  16. package/dist/{utils → configuration}/get-dirs.mjs +3 -2
  17. package/dist/configuration/get-dirs.mjs.map +1 -0
  18. package/dist/configuration/index.d.ts +4 -7
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +10 -8
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +6 -5
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/configuration/urls.d.ts +8 -0
  25. package/dist/configuration/urls.d.ts.map +1 -0
  26. package/dist/configuration/urls.js +68 -0
  27. package/dist/configuration/urls.js.map +1 -0
  28. package/dist/configuration/urls.mjs +66 -0
  29. package/dist/configuration/urls.mjs.map +1 -0
  30. package/dist/container.d.ts +2 -2
  31. package/dist/container.d.ts.map +1 -1
  32. package/dist/container.js.map +1 -1
  33. package/dist/container.mjs.map +1 -1
  34. package/dist/core-api/controller/collection-type.d.ts +3 -3
  35. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  36. package/dist/core-api/controller/collection-type.js +3 -0
  37. package/dist/core-api/controller/collection-type.js.map +1 -1
  38. package/dist/core-api/controller/collection-type.mjs +3 -0
  39. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  40. package/dist/core-api/controller/index.d.ts +3 -3
  41. package/dist/core-api/controller/index.d.ts.map +1 -1
  42. package/dist/core-api/controller/index.js +11 -6
  43. package/dist/core-api/controller/index.js.map +1 -1
  44. package/dist/core-api/controller/index.mjs +12 -7
  45. package/dist/core-api/controller/index.mjs.map +1 -1
  46. package/dist/core-api/controller/single-type.d.ts +3 -3
  47. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  48. package/dist/core-api/controller/single-type.js +1 -0
  49. package/dist/core-api/controller/single-type.js.map +1 -1
  50. package/dist/core-api/controller/single-type.mjs +1 -0
  51. package/dist/core-api/controller/single-type.mjs.map +1 -1
  52. package/dist/core-api/controller/transform.d.ts +10 -9
  53. package/dist/core-api/controller/transform.d.ts.map +1 -1
  54. package/dist/core-api/controller/transform.js +17 -11
  55. package/dist/core-api/controller/transform.js.map +1 -1
  56. package/dist/core-api/controller/transform.mjs +17 -11
  57. package/dist/core-api/controller/transform.mjs.map +1 -1
  58. package/dist/core-api/routes/index.d.ts.map +1 -1
  59. package/dist/core-api/service/collection-type.d.ts +11 -17
  60. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  61. package/dist/core-api/service/collection-type.js +18 -7
  62. package/dist/core-api/service/collection-type.js.map +1 -1
  63. package/dist/core-api/service/collection-type.mjs +19 -8
  64. package/dist/core-api/service/collection-type.mjs.map +1 -1
  65. package/dist/core-api/service/index.d.ts +3 -3
  66. package/dist/core-api/service/index.d.ts.map +1 -1
  67. package/dist/core-api/service/index.js.map +1 -1
  68. package/dist/core-api/service/index.mjs.map +1 -1
  69. package/dist/core-api/service/pagination.d.ts +4 -11
  70. package/dist/core-api/service/pagination.d.ts.map +1 -1
  71. package/dist/core-api/service/pagination.js +14 -40
  72. package/dist/core-api/service/pagination.js.map +1 -1
  73. package/dist/core-api/service/pagination.mjs +16 -42
  74. package/dist/core-api/service/pagination.mjs.map +1 -1
  75. package/dist/core-api/service/single-type.d.ts +7 -6
  76. package/dist/core-api/service/single-type.d.ts.map +1 -1
  77. package/dist/core-api/service/single-type.js +21 -3
  78. package/dist/core-api/service/single-type.js.map +1 -1
  79. package/dist/core-api/service/single-type.mjs +21 -3
  80. package/dist/core-api/service/single-type.mjs.map +1 -1
  81. package/dist/domain/content-type/index.d.ts +1 -1
  82. package/dist/domain/content-type/index.d.ts.map +1 -1
  83. package/dist/domain/content-type/index.js +3 -0
  84. package/dist/domain/content-type/index.js.map +1 -1
  85. package/dist/domain/content-type/index.mjs +3 -0
  86. package/dist/domain/content-type/index.mjs.map +1 -1
  87. package/dist/domain/content-type/validator.d.ts.map +1 -1
  88. package/dist/domain/content-type/validator.js +1 -1
  89. package/dist/domain/content-type/validator.js.map +1 -1
  90. package/dist/domain/content-type/validator.mjs +2 -2
  91. package/dist/domain/content-type/validator.mjs.map +1 -1
  92. package/dist/domain/module/index.d.ts +24 -23
  93. package/dist/domain/module/index.d.ts.map +1 -1
  94. package/dist/domain/module/index.js +3 -3
  95. package/dist/domain/module/index.js.map +1 -1
  96. package/dist/domain/module/index.mjs +4 -4
  97. package/dist/domain/module/index.mjs.map +1 -1
  98. package/dist/ee/index.d.ts +4 -2
  99. package/dist/ee/index.d.ts.map +1 -1
  100. package/dist/ee/index.js.map +1 -1
  101. package/dist/ee/index.mjs.map +1 -1
  102. package/dist/ee/license.d.ts +2 -2
  103. package/dist/ee/license.d.ts.map +1 -1
  104. package/dist/ee/license.js +2 -1
  105. package/dist/ee/license.js.map +1 -1
  106. package/dist/ee/license.mjs +2 -1
  107. package/dist/ee/license.mjs.map +1 -1
  108. package/dist/factories.d.ts +10 -10
  109. package/dist/factories.d.ts.map +1 -1
  110. package/dist/factories.js +6 -2
  111. package/dist/factories.js.map +1 -1
  112. package/dist/factories.mjs +6 -2
  113. package/dist/factories.mjs.map +1 -1
  114. package/dist/index.d.ts +4 -2
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.js +25 -1
  117. package/dist/index.js.map +1 -1
  118. package/dist/index.mjs +27 -3
  119. package/dist/index.mjs.map +1 -1
  120. package/dist/loaders/admin.d.ts +2 -2
  121. package/dist/loaders/admin.d.ts.map +1 -1
  122. package/dist/loaders/admin.js +0 -1
  123. package/dist/loaders/admin.js.map +1 -1
  124. package/dist/loaders/admin.mjs +0 -1
  125. package/dist/loaders/admin.mjs.map +1 -1
  126. package/dist/loaders/apis.d.ts +2 -2
  127. package/dist/loaders/apis.d.ts.map +1 -1
  128. package/dist/loaders/apis.js +11 -11
  129. package/dist/loaders/apis.js.map +1 -1
  130. package/dist/loaders/apis.mjs +12 -12
  131. package/dist/loaders/apis.mjs.map +1 -1
  132. package/dist/loaders/components.d.ts +2 -2
  133. package/dist/loaders/components.d.ts.map +1 -1
  134. package/dist/loaders/components.js.map +1 -1
  135. package/dist/loaders/components.mjs.map +1 -1
  136. package/dist/loaders/index.d.ts +2 -2
  137. package/dist/loaders/index.d.ts.map +1 -1
  138. package/dist/loaders/index.js +0 -2
  139. package/dist/loaders/index.js.map +1 -1
  140. package/dist/loaders/index.mjs +0 -2
  141. package/dist/loaders/index.mjs.map +1 -1
  142. package/dist/loaders/middlewares.d.ts +2 -2
  143. package/dist/loaders/middlewares.d.ts.map +1 -1
  144. package/dist/loaders/middlewares.js.map +1 -1
  145. package/dist/loaders/middlewares.mjs.map +1 -1
  146. package/dist/loaders/plugins/get-enabled-plugins.d.ts +2 -2
  147. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  148. package/dist/loaders/plugins/get-enabled-plugins.js +8 -6
  149. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  150. package/dist/loaders/plugins/get-enabled-plugins.mjs +9 -7
  151. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  152. package/dist/loaders/plugins/index.d.ts +2 -2
  153. package/dist/loaders/plugins/index.d.ts.map +1 -1
  154. package/dist/loaders/plugins/index.js.map +1 -1
  155. package/dist/loaders/plugins/index.mjs.map +1 -1
  156. package/dist/loaders/policies.d.ts +2 -2
  157. package/dist/loaders/policies.d.ts.map +1 -1
  158. package/dist/loaders/policies.js.map +1 -1
  159. package/dist/loaders/policies.mjs.map +1 -1
  160. package/dist/loaders/sanitizers.d.ts +2 -2
  161. package/dist/loaders/sanitizers.d.ts.map +1 -1
  162. package/dist/loaders/sanitizers.js.map +1 -1
  163. package/dist/loaders/sanitizers.mjs.map +1 -1
  164. package/dist/loaders/src-index.d.ts +2 -2
  165. package/dist/loaders/src-index.d.ts.map +1 -1
  166. package/dist/loaders/src-index.js.map +1 -1
  167. package/dist/loaders/src-index.mjs.map +1 -1
  168. package/dist/loaders/validators.d.ts +2 -2
  169. package/dist/loaders/validators.d.ts.map +1 -1
  170. package/dist/loaders/validators.js.map +1 -1
  171. package/dist/loaders/validators.mjs.map +1 -1
  172. package/dist/middlewares/body.d.ts +4 -4
  173. package/dist/middlewares/body.d.ts.map +1 -1
  174. package/dist/middlewares/body.js +4 -4
  175. package/dist/middlewares/body.js.map +1 -1
  176. package/dist/middlewares/body.mjs +4 -4
  177. package/dist/middlewares/body.mjs.map +1 -1
  178. package/dist/middlewares/compression.d.ts +2 -2
  179. package/dist/middlewares/compression.d.ts.map +1 -1
  180. package/dist/middlewares/compression.js.map +1 -1
  181. package/dist/middlewares/compression.mjs.map +1 -1
  182. package/dist/middlewares/cors.d.ts +2 -2
  183. package/dist/middlewares/cors.d.ts.map +1 -1
  184. package/dist/middlewares/cors.js +6 -8
  185. package/dist/middlewares/cors.js.map +1 -1
  186. package/dist/middlewares/cors.mjs +6 -8
  187. package/dist/middlewares/cors.mjs.map +1 -1
  188. package/dist/middlewares/errors.d.ts +2 -2
  189. package/dist/middlewares/errors.d.ts.map +1 -1
  190. package/dist/middlewares/errors.js.map +1 -1
  191. package/dist/middlewares/errors.mjs.map +1 -1
  192. package/dist/middlewares/favicon.d.ts +2 -2
  193. package/dist/middlewares/favicon.d.ts.map +1 -1
  194. package/dist/middlewares/favicon.js.map +1 -1
  195. package/dist/middlewares/favicon.mjs.map +1 -1
  196. package/dist/middlewares/index.d.ts +2 -2
  197. package/dist/middlewares/index.d.ts.map +1 -1
  198. package/dist/middlewares/index.js.map +1 -1
  199. package/dist/middlewares/index.mjs.map +1 -1
  200. package/dist/middlewares/ip.d.ts +2 -2
  201. package/dist/middlewares/ip.d.ts.map +1 -1
  202. package/dist/middlewares/ip.js.map +1 -1
  203. package/dist/middlewares/ip.mjs.map +1 -1
  204. package/dist/middlewares/logger.d.ts +2 -2
  205. package/dist/middlewares/logger.d.ts.map +1 -1
  206. package/dist/middlewares/logger.js.map +1 -1
  207. package/dist/middlewares/logger.mjs.map +1 -1
  208. package/dist/middlewares/powered-by.d.ts +2 -2
  209. package/dist/middlewares/powered-by.d.ts.map +1 -1
  210. package/dist/middlewares/powered-by.js.map +1 -1
  211. package/dist/middlewares/powered-by.mjs.map +1 -1
  212. package/dist/middlewares/public.d.ts +2 -2
  213. package/dist/middlewares/public.d.ts.map +1 -1
  214. package/dist/middlewares/public.js +1 -1
  215. package/dist/middlewares/public.js.map +1 -1
  216. package/dist/middlewares/public.mjs +1 -1
  217. package/dist/middlewares/public.mjs.map +1 -1
  218. package/dist/middlewares/query.d.ts +2 -2
  219. package/dist/middlewares/query.d.ts.map +1 -1
  220. package/dist/middlewares/query.js.map +1 -1
  221. package/dist/middlewares/query.mjs.map +1 -1
  222. package/dist/middlewares/response-time.d.ts +2 -2
  223. package/dist/middlewares/response-time.d.ts.map +1 -1
  224. package/dist/middlewares/response-time.js.map +1 -1
  225. package/dist/middlewares/response-time.mjs.map +1 -1
  226. package/dist/middlewares/responses.d.ts +3 -3
  227. package/dist/middlewares/responses.d.ts.map +1 -1
  228. package/dist/middlewares/responses.js.map +1 -1
  229. package/dist/middlewares/responses.mjs.map +1 -1
  230. package/dist/middlewares/security.d.ts +2 -2
  231. package/dist/middlewares/security.d.ts.map +1 -1
  232. package/dist/middlewares/security.js +11 -4
  233. package/dist/middlewares/security.js.map +1 -1
  234. package/dist/middlewares/security.mjs +12 -5
  235. package/dist/middlewares/security.mjs.map +1 -1
  236. package/dist/middlewares/session.d.ts +2 -2
  237. package/dist/middlewares/session.d.ts.map +1 -1
  238. package/dist/middlewares/session.js.map +1 -1
  239. package/dist/middlewares/session.mjs.map +1 -1
  240. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +30 -0
  241. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  242. package/dist/migrations/database/5.0.0-discard-drafts.js +50 -0
  243. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  244. package/dist/migrations/database/5.0.0-discard-drafts.mjs +50 -0
  245. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  246. package/dist/migrations/draft-publish.d.ts +17 -0
  247. package/dist/migrations/draft-publish.d.ts.map +1 -0
  248. package/dist/migrations/draft-publish.js +42 -0
  249. package/dist/migrations/draft-publish.js.map +1 -0
  250. package/dist/migrations/draft-publish.mjs +42 -0
  251. package/dist/migrations/draft-publish.mjs.map +1 -0
  252. package/dist/providers/admin.d.ts +3 -0
  253. package/dist/providers/admin.d.ts.map +1 -0
  254. package/dist/providers/admin.js +20 -0
  255. package/dist/providers/admin.js.map +1 -0
  256. package/dist/providers/admin.mjs +21 -0
  257. package/dist/providers/admin.mjs.map +1 -0
  258. package/dist/providers/coreStore.d.ts +3 -0
  259. package/dist/providers/coreStore.d.ts.map +1 -0
  260. package/dist/providers/coreStore.js +11 -0
  261. package/dist/providers/coreStore.js.map +1 -0
  262. package/dist/providers/coreStore.mjs +12 -0
  263. package/dist/providers/coreStore.mjs.map +1 -0
  264. package/dist/providers/cron.d.ts +3 -0
  265. package/dist/providers/cron.d.ts.map +1 -0
  266. package/dist/providers/cron.js +20 -0
  267. package/dist/providers/cron.js.map +1 -0
  268. package/dist/providers/cron.mjs +21 -0
  269. package/dist/providers/cron.mjs.map +1 -0
  270. package/dist/providers/index.d.ts +3 -0
  271. package/dist/providers/index.d.ts.map +1 -0
  272. package/dist/providers/index.js +11 -0
  273. package/dist/providers/index.js.map +1 -0
  274. package/dist/providers/index.mjs +11 -0
  275. package/dist/providers/index.mjs.map +1 -0
  276. package/dist/providers/provider.d.ts +9 -0
  277. package/dist/providers/provider.d.ts.map +1 -0
  278. package/dist/providers/provider.js +5 -0
  279. package/dist/providers/provider.js.map +1 -0
  280. package/dist/providers/provider.mjs +5 -0
  281. package/dist/providers/provider.mjs.map +1 -0
  282. package/dist/providers/registries.d.ts +3 -0
  283. package/dist/providers/registries.d.ts.map +1 -0
  284. package/dist/providers/registries.js +35 -0
  285. package/dist/providers/registries.js.map +1 -0
  286. package/dist/providers/registries.mjs +36 -0
  287. package/dist/providers/registries.mjs.map +1 -0
  288. package/dist/providers/telemetry.d.ts +3 -0
  289. package/dist/providers/telemetry.d.ts.map +1 -0
  290. package/dist/providers/telemetry.js +19 -0
  291. package/dist/providers/telemetry.js.map +1 -0
  292. package/dist/providers/telemetry.mjs +20 -0
  293. package/dist/providers/telemetry.mjs.map +1 -0
  294. package/dist/providers/webhooks.d.ts +3 -0
  295. package/dist/providers/webhooks.d.ts.map +1 -0
  296. package/dist/providers/webhooks.js +30 -0
  297. package/dist/providers/webhooks.js.map +1 -0
  298. package/dist/providers/webhooks.mjs +31 -0
  299. package/dist/providers/webhooks.mjs.map +1 -0
  300. package/dist/registries/apis.d.ts +2 -2
  301. package/dist/registries/apis.d.ts.map +1 -1
  302. package/dist/registries/apis.js.map +1 -1
  303. package/dist/registries/apis.mjs.map +1 -1
  304. package/dist/registries/components.d.ts +6 -6
  305. package/dist/registries/components.d.ts.map +1 -1
  306. package/dist/registries/components.js.map +1 -1
  307. package/dist/registries/components.mjs.map +1 -1
  308. package/dist/registries/content-types.d.ts +5 -5
  309. package/dist/registries/content-types.d.ts.map +1 -1
  310. package/dist/registries/content-types.js.map +1 -1
  311. package/dist/registries/content-types.mjs.map +1 -1
  312. package/dist/registries/controllers.d.ts +10 -10
  313. package/dist/registries/controllers.d.ts.map +1 -1
  314. package/dist/registries/controllers.js.map +1 -1
  315. package/dist/registries/controllers.mjs.map +1 -1
  316. package/dist/registries/custom-fields.d.ts +3 -3
  317. package/dist/registries/custom-fields.d.ts.map +1 -1
  318. package/dist/registries/custom-fields.js.map +1 -1
  319. package/dist/registries/custom-fields.mjs.map +1 -1
  320. package/dist/registries/index.d.ts +0 -1
  321. package/dist/registries/index.d.ts.map +1 -1
  322. package/dist/registries/middlewares.d.ts +6 -6
  323. package/dist/registries/middlewares.d.ts.map +1 -1
  324. package/dist/registries/middlewares.js.map +1 -1
  325. package/dist/registries/middlewares.mjs.map +1 -1
  326. package/dist/registries/modules.d.ts +2 -2
  327. package/dist/registries/modules.d.ts.map +1 -1
  328. package/dist/registries/modules.js.map +1 -1
  329. package/dist/registries/modules.mjs.map +1 -1
  330. package/dist/registries/plugins.d.ts +5 -5
  331. package/dist/registries/plugins.d.ts.map +1 -1
  332. package/dist/registries/plugins.js.map +1 -1
  333. package/dist/registries/plugins.mjs.map +1 -1
  334. package/dist/registries/policies.d.ts +23 -11
  335. package/dist/registries/policies.d.ts.map +1 -1
  336. package/dist/registries/policies.js +64 -18
  337. package/dist/registries/policies.js.map +1 -1
  338. package/dist/registries/policies.mjs +65 -19
  339. package/dist/registries/policies.mjs.map +1 -1
  340. package/dist/registries/services.d.ts +8 -8
  341. package/dist/registries/services.d.ts.map +1 -1
  342. package/dist/registries/services.js.map +1 -1
  343. package/dist/registries/services.mjs.map +1 -1
  344. package/dist/services/auth/index.d.ts +4 -4
  345. package/dist/services/auth/index.d.ts.map +1 -1
  346. package/dist/services/auth/index.js.map +1 -1
  347. package/dist/services/auth/index.mjs.map +1 -1
  348. package/dist/services/config.d.ts +3 -0
  349. package/dist/services/config.d.ts.map +1 -0
  350. package/dist/services/config.js +47 -0
  351. package/dist/services/config.js.map +1 -0
  352. package/dist/services/config.mjs +47 -0
  353. package/dist/services/config.mjs.map +1 -0
  354. package/dist/services/content-api/index.d.ts +21 -3
  355. package/dist/services/content-api/index.d.ts.map +1 -1
  356. package/dist/services/content-api/index.js +28 -2
  357. package/dist/services/content-api/index.js.map +1 -1
  358. package/dist/services/content-api/index.mjs +28 -2
  359. package/dist/services/content-api/index.mjs.map +1 -1
  360. package/dist/services/content-api/permissions/index.d.ts +3 -3
  361. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  362. package/dist/services/content-api/permissions/index.js +1 -1
  363. package/dist/services/content-api/permissions/index.js.map +1 -1
  364. package/dist/services/content-api/permissions/index.mjs +1 -1
  365. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  366. package/dist/services/core-store.d.ts.map +1 -1
  367. package/dist/services/cron.d.ts +2 -2
  368. package/dist/services/cron.d.ts.map +1 -1
  369. package/dist/services/cron.js.map +1 -1
  370. package/dist/services/cron.mjs.map +1 -1
  371. package/dist/services/custom-fields.d.ts +2 -2
  372. package/dist/services/custom-fields.d.ts.map +1 -1
  373. package/dist/services/custom-fields.js.map +1 -1
  374. package/dist/services/custom-fields.mjs.map +1 -1
  375. package/dist/services/document-service/attributes/index.d.ts +6 -0
  376. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  377. package/dist/services/{entity-service → document-service}/attributes/index.js +5 -5
  378. package/dist/services/document-service/attributes/index.js.map +1 -0
  379. package/dist/services/{entity-service → document-service}/attributes/index.mjs +5 -5
  380. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  381. package/dist/services/document-service/attributes/transforms.d.ts +10 -0
  382. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  383. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  384. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  385. package/dist/services/document-service/common.d.ts +2 -2
  386. package/dist/services/document-service/common.d.ts.map +1 -1
  387. package/dist/services/document-service/common.js.map +1 -1
  388. package/dist/services/document-service/common.mjs.map +1 -1
  389. package/dist/services/document-service/components.d.ts +25 -1
  390. package/dist/services/document-service/components.d.ts.map +1 -1
  391. package/dist/services/{entity-service → document-service}/components.js +46 -142
  392. package/dist/services/document-service/components.js.map +1 -0
  393. package/dist/services/{entity-service → document-service}/components.mjs +48 -144
  394. package/dist/services/document-service/components.mjs.map +1 -0
  395. package/dist/services/document-service/draft-and-publish.d.ts +9 -23
  396. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  397. package/dist/services/document-service/draft-and-publish.js +37 -9
  398. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  399. package/dist/services/document-service/draft-and-publish.mjs +38 -10
  400. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  401. package/dist/services/document-service/entries.d.ts +10 -0
  402. package/dist/services/document-service/entries.d.ts.map +1 -0
  403. package/dist/services/document-service/entries.js +96 -0
  404. package/dist/services/document-service/entries.js.map +1 -0
  405. package/dist/services/document-service/entries.mjs +96 -0
  406. package/dist/services/document-service/entries.mjs.map +1 -0
  407. package/dist/services/document-service/events.d.ts +25 -0
  408. package/dist/services/document-service/events.d.ts.map +1 -0
  409. package/dist/services/document-service/events.js +47 -0
  410. package/dist/services/document-service/events.js.map +1 -0
  411. package/dist/services/document-service/events.mjs +47 -0
  412. package/dist/services/document-service/events.mjs.map +1 -0
  413. package/dist/services/document-service/index.d.ts +2 -4
  414. package/dist/services/document-service/index.d.ts.map +1 -1
  415. package/dist/services/document-service/index.js +20 -7
  416. package/dist/services/document-service/index.js.map +1 -1
  417. package/dist/services/document-service/index.mjs +18 -5
  418. package/dist/services/document-service/index.mjs.map +1 -1
  419. package/dist/services/document-service/internationalization.d.ts +6 -5
  420. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  421. package/dist/services/document-service/internationalization.js +24 -1
  422. package/dist/services/document-service/internationalization.js.map +1 -1
  423. package/dist/services/document-service/internationalization.mjs +25 -2
  424. package/dist/services/document-service/internationalization.mjs.map +1 -1
  425. package/dist/services/document-service/middlewares/errors.d.ts +6 -0
  426. package/dist/services/document-service/middlewares/errors.d.ts.map +1 -0
  427. package/dist/services/document-service/middlewares/errors.js +25 -0
  428. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  429. package/dist/services/document-service/middlewares/errors.mjs +25 -0
  430. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  431. package/dist/services/document-service/middlewares/index.d.ts +3 -0
  432. package/dist/services/document-service/middlewares/index.d.ts.map +1 -0
  433. package/dist/services/document-service/middlewares/middleware-manager.d.ts +10 -0
  434. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -0
  435. package/dist/services/document-service/{middlewares.js → middlewares/middleware-manager.js} +9 -6
  436. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  437. package/dist/services/document-service/{middlewares.mjs → middlewares/middleware-manager.mjs} +9 -6
  438. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  439. package/dist/services/document-service/params.d.ts +3 -1
  440. package/dist/services/document-service/params.d.ts.map +1 -1
  441. package/dist/services/{entity-service → document-service}/params.js +1 -1
  442. package/dist/services/document-service/params.js.map +1 -0
  443. package/dist/services/{entity-service → document-service}/params.mjs +1 -1
  444. package/dist/services/document-service/params.mjs.map +1 -0
  445. package/dist/services/document-service/repository.d.ts +3 -0
  446. package/dist/services/document-service/repository.d.ts.map +1 -0
  447. package/dist/services/document-service/repository.js +278 -0
  448. package/dist/services/document-service/repository.js.map +1 -0
  449. package/dist/services/document-service/repository.mjs +278 -0
  450. package/dist/services/document-service/repository.mjs.map +1 -0
  451. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  452. package/dist/services/document-service/transform/data.js +4 -2
  453. package/dist/services/document-service/transform/data.js.map +1 -1
  454. package/dist/services/document-service/transform/data.mjs +4 -2
  455. package/dist/services/document-service/transform/data.mjs.map +1 -1
  456. package/dist/services/document-service/transform/fields.d.ts +2 -2
  457. package/dist/services/document-service/transform/fields.d.ts.map +1 -1
  458. package/dist/services/document-service/transform/fields.js +11 -10
  459. package/dist/services/document-service/transform/fields.js.map +1 -1
  460. package/dist/services/document-service/transform/fields.mjs +11 -10
  461. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  462. package/dist/services/document-service/transform/id-map.d.ts +4 -4
  463. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  464. package/dist/services/document-service/transform/id-map.js +15 -9
  465. package/dist/services/document-service/transform/id-map.js.map +1 -1
  466. package/dist/services/document-service/transform/id-map.mjs +16 -10
  467. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  468. package/dist/services/document-service/transform/id-transform.d.ts +4 -25
  469. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  470. package/dist/services/document-service/transform/id-transform.js +19 -43
  471. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  472. package/dist/services/document-service/transform/id-transform.mjs +20 -44
  473. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  474. package/dist/services/document-service/transform/populate.d.ts +5 -2
  475. package/dist/services/document-service/transform/populate.d.ts.map +1 -1
  476. package/dist/services/document-service/transform/populate.js +1 -11
  477. package/dist/services/document-service/transform/populate.js.map +1 -1
  478. package/dist/services/document-service/transform/populate.mjs +1 -11
  479. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  480. package/dist/services/document-service/transform/query.d.ts +5 -0
  481. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  482. package/dist/services/document-service/transform/query.js +9 -0
  483. package/dist/services/document-service/transform/query.js.map +1 -0
  484. package/dist/services/document-service/transform/query.mjs +9 -0
  485. package/dist/services/document-service/transform/query.mjs.map +1 -0
  486. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  487. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  488. package/dist/services/document-service/transform/relations/extract/data-ids.js +45 -64
  489. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  490. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +45 -64
  491. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  492. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +9 -5
  493. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  494. package/dist/services/document-service/transform/relations/transform/data-ids.js +64 -103
  495. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  496. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +64 -103
  497. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  498. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  499. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  500. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  501. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  502. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  503. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  504. package/dist/services/document-service/transform/relations/utils/data.d.ts +2 -4
  505. package/dist/services/document-service/transform/relations/utils/data.d.ts.map +1 -1
  506. package/dist/services/document-service/transform/relations/utils/dp.d.ts +10 -0
  507. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -0
  508. package/dist/services/document-service/transform/relations/utils/dp.js +30 -0
  509. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  510. package/dist/services/document-service/transform/relations/utils/dp.mjs +30 -0
  511. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  512. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +8 -8
  513. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  514. package/dist/services/document-service/transform/relations/utils/i18n.js +3 -9
  515. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  516. package/dist/services/document-service/transform/relations/utils/i18n.mjs +3 -9
  517. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  518. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  519. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  520. package/dist/services/document-service/transform/relations/utils/map-relation.js +91 -0
  521. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  522. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +91 -0
  523. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  524. package/dist/services/document-service/transform/relations/utils/types.d.ts +15 -2
  525. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  526. package/dist/services/document-service/transform/types.d.ts +4 -4
  527. package/dist/services/document-service/transform/types.d.ts.map +1 -1
  528. package/dist/services/document-service/utils/populate.d.ts +9 -2
  529. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  530. package/dist/services/document-service/utils/populate.js +9 -5
  531. package/dist/services/document-service/utils/populate.js.map +1 -1
  532. package/dist/services/document-service/utils/populate.mjs +9 -5
  533. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  534. package/dist/services/entity-service/index.d.ts +4 -6
  535. package/dist/services/entity-service/index.d.ts.map +1 -1
  536. package/dist/services/entity-service/index.js +44 -203
  537. package/dist/services/entity-service/index.js.map +1 -1
  538. package/dist/services/entity-service/index.mjs +38 -197
  539. package/dist/services/entity-service/index.mjs.map +1 -1
  540. package/dist/services/entity-validator/index.d.ts +15 -2
  541. package/dist/services/entity-validator/index.d.ts.map +1 -1
  542. package/dist/services/entity-validator/index.js +187 -119
  543. package/dist/services/entity-validator/index.js.map +1 -1
  544. package/dist/services/entity-validator/index.mjs +187 -119
  545. package/dist/services/entity-validator/index.mjs.map +1 -1
  546. package/dist/services/entity-validator/validators.d.ts +24 -22
  547. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  548. package/dist/services/entity-validator/validators.js +65 -19
  549. package/dist/services/entity-validator/validators.js.map +1 -1
  550. package/dist/services/entity-validator/validators.mjs +58 -11
  551. package/dist/services/entity-validator/validators.mjs.map +1 -1
  552. package/dist/services/event-hub.d.ts +1 -0
  553. package/dist/services/event-hub.d.ts.map +1 -1
  554. package/dist/services/event-hub.js +9 -4
  555. package/dist/services/event-hub.js.map +1 -1
  556. package/dist/services/event-hub.mjs +9 -4
  557. package/dist/services/event-hub.mjs.map +1 -1
  558. package/dist/services/features.d.ts +3 -3
  559. package/dist/services/features.d.ts.map +1 -1
  560. package/dist/services/features.js.map +1 -1
  561. package/dist/services/features.mjs.map +1 -1
  562. package/dist/services/fs.d.ts +2 -2
  563. package/dist/services/fs.d.ts.map +1 -1
  564. package/dist/services/fs.js.map +1 -1
  565. package/dist/services/fs.mjs.map +1 -1
  566. package/dist/services/metrics/admin-user-hash.d.ts +2 -2
  567. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  568. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  569. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  570. package/dist/services/metrics/index.d.ts +2 -2
  571. package/dist/services/metrics/index.d.ts.map +1 -1
  572. package/dist/services/metrics/index.js.map +1 -1
  573. package/dist/services/metrics/index.mjs.map +1 -1
  574. package/dist/services/metrics/middleware.d.ts +2 -2
  575. package/dist/services/metrics/middleware.d.ts.map +1 -1
  576. package/dist/services/metrics/middleware.js.map +1 -1
  577. package/dist/services/metrics/middleware.mjs.map +1 -1
  578. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  579. package/dist/services/metrics/rate-limiter.js.map +1 -1
  580. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  581. package/dist/services/metrics/sender.d.ts +3 -3
  582. package/dist/services/metrics/sender.d.ts.map +1 -1
  583. package/dist/services/metrics/sender.js.map +1 -1
  584. package/dist/services/metrics/sender.mjs.map +1 -1
  585. package/dist/services/query-params.d.ts +7 -0
  586. package/dist/services/query-params.d.ts.map +1 -0
  587. package/dist/services/query-params.js +12 -0
  588. package/dist/services/query-params.js.map +1 -0
  589. package/dist/services/query-params.mjs +13 -0
  590. package/dist/services/query-params.mjs.map +1 -0
  591. package/dist/services/reloader.d.ts +7 -0
  592. package/dist/services/reloader.d.ts.map +1 -0
  593. package/dist/services/reloader.js +36 -0
  594. package/dist/services/reloader.js.map +1 -0
  595. package/dist/services/reloader.mjs +36 -0
  596. package/dist/services/reloader.mjs.map +1 -0
  597. package/dist/services/server/admin-api.d.ts +3 -3
  598. package/dist/services/server/admin-api.d.ts.map +1 -1
  599. package/dist/services/server/admin-api.js.map +1 -1
  600. package/dist/services/server/admin-api.mjs.map +1 -1
  601. package/dist/services/server/api.d.ts +3 -3
  602. package/dist/services/server/api.d.ts.map +1 -1
  603. package/dist/services/server/api.js.map +1 -1
  604. package/dist/services/server/api.mjs.map +1 -1
  605. package/dist/services/server/compose-endpoint.d.ts +2 -2
  606. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  607. package/dist/services/server/compose-endpoint.js +1 -2
  608. package/dist/services/server/compose-endpoint.js.map +1 -1
  609. package/dist/services/server/compose-endpoint.mjs +2 -3
  610. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  611. package/dist/services/server/content-api.d.ts +3 -3
  612. package/dist/services/server/content-api.d.ts.map +1 -1
  613. package/dist/services/server/content-api.js.map +1 -1
  614. package/dist/services/server/content-api.mjs.map +1 -1
  615. package/dist/services/server/http-server.d.ts +2 -2
  616. package/dist/services/server/http-server.d.ts.map +1 -1
  617. package/dist/services/server/http-server.js.map +1 -1
  618. package/dist/services/server/http-server.mjs.map +1 -1
  619. package/dist/services/server/index.d.ts +2 -2
  620. package/dist/services/server/index.d.ts.map +1 -1
  621. package/dist/services/server/index.js +2 -3
  622. package/dist/services/server/index.js.map +1 -1
  623. package/dist/services/server/index.mjs +2 -3
  624. package/dist/services/server/index.mjs.map +1 -1
  625. package/dist/services/server/koa.d.ts.map +1 -1
  626. package/dist/services/server/koa.js +1 -1
  627. package/dist/services/server/koa.js.map +1 -1
  628. package/dist/services/server/koa.mjs +1 -1
  629. package/dist/services/server/koa.mjs.map +1 -1
  630. package/dist/services/server/middleware.d.ts +4 -4
  631. package/dist/services/server/middleware.d.ts.map +1 -1
  632. package/dist/services/server/middleware.js.map +1 -1
  633. package/dist/services/server/middleware.mjs.map +1 -1
  634. package/dist/services/server/policy.d.ts +3 -3
  635. package/dist/services/server/policy.d.ts.map +1 -1
  636. package/dist/services/server/policy.js +4 -4
  637. package/dist/services/server/policy.js.map +1 -1
  638. package/dist/services/server/policy.mjs +4 -4
  639. package/dist/services/server/policy.mjs.map +1 -1
  640. package/dist/services/server/register-middlewares.d.ts +2 -2
  641. package/dist/services/server/register-middlewares.d.ts.map +1 -1
  642. package/dist/services/server/register-middlewares.js.map +1 -1
  643. package/dist/services/server/register-middlewares.mjs.map +1 -1
  644. package/dist/services/server/register-routes.d.ts +2 -2
  645. package/dist/services/server/register-routes.d.ts.map +1 -1
  646. package/dist/services/server/register-routes.js +3 -3
  647. package/dist/services/server/register-routes.js.map +1 -1
  648. package/dist/services/server/register-routes.mjs +3 -3
  649. package/dist/services/server/register-routes.mjs.map +1 -1
  650. package/dist/services/server/routing.d.ts +5 -5
  651. package/dist/services/server/routing.d.ts.map +1 -1
  652. package/dist/services/server/routing.js.map +1 -1
  653. package/dist/services/server/routing.mjs.map +1 -1
  654. package/dist/services/utils/dynamic-zones.d.ts.map +1 -1
  655. package/dist/services/utils/dynamic-zones.js +2 -1
  656. package/dist/services/utils/dynamic-zones.js.map +1 -1
  657. package/dist/services/utils/dynamic-zones.mjs +2 -1
  658. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  659. package/dist/services/webhook-runner.d.ts +2 -1
  660. package/dist/services/webhook-runner.d.ts.map +1 -1
  661. package/dist/services/webhook-runner.js.map +1 -1
  662. package/dist/services/webhook-runner.mjs.map +1 -1
  663. package/dist/services/webhook-store.d.ts +2 -8
  664. package/dist/services/webhook-store.d.ts.map +1 -1
  665. package/dist/services/webhook-store.js +14 -8
  666. package/dist/services/webhook-store.js.map +1 -1
  667. package/dist/services/webhook-store.mjs +14 -8
  668. package/dist/services/webhook-store.mjs.map +1 -1
  669. package/dist/utils/convert-custom-field-type.d.ts +2 -2
  670. package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
  671. package/dist/utils/convert-custom-field-type.js.map +1 -1
  672. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  673. package/dist/utils/fetch.d.ts +3 -3
  674. package/dist/utils/fetch.d.ts.map +1 -1
  675. package/dist/utils/fetch.js +4 -3
  676. package/dist/utils/fetch.js.map +1 -1
  677. package/dist/utils/fetch.mjs +4 -3
  678. package/dist/utils/fetch.mjs.map +1 -1
  679. package/dist/utils/index.d.ts +2 -1
  680. package/dist/utils/index.d.ts.map +1 -1
  681. package/dist/utils/is-initialized.d.ts +2 -2
  682. package/dist/utils/is-initialized.d.ts.map +1 -1
  683. package/dist/utils/is-initialized.js +1 -1
  684. package/dist/utils/is-initialized.js.map +1 -1
  685. package/dist/utils/is-initialized.mjs +1 -1
  686. package/dist/utils/is-initialized.mjs.map +1 -1
  687. package/dist/utils/load-config-file.js +1 -1
  688. package/dist/utils/load-config-file.js.map +1 -1
  689. package/dist/utils/load-config-file.mjs +2 -2
  690. package/dist/utils/load-config-file.mjs.map +1 -1
  691. package/dist/utils/load-files.d.ts.map +1 -1
  692. package/dist/utils/open-browser.d.ts +2 -2
  693. package/dist/utils/open-browser.d.ts.map +1 -1
  694. package/dist/utils/open-browser.js.map +1 -1
  695. package/dist/utils/open-browser.mjs.map +1 -1
  696. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  697. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  698. package/dist/utils/resolve-working-dirs.js +13 -0
  699. package/dist/utils/resolve-working-dirs.js.map +1 -0
  700. package/dist/utils/resolve-working-dirs.mjs +11 -0
  701. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  702. package/dist/utils/signals.d.ts +2 -2
  703. package/dist/utils/signals.d.ts.map +1 -1
  704. package/dist/utils/signals.js.map +1 -1
  705. package/dist/utils/signals.mjs.map +1 -1
  706. package/dist/utils/startup-logger.d.ts +2 -2
  707. package/dist/utils/startup-logger.d.ts.map +1 -1
  708. package/dist/utils/startup-logger.js.map +1 -1
  709. package/dist/utils/startup-logger.mjs.map +1 -1
  710. package/dist/utils/transform-content-types-to-models.d.ts +129 -3
  711. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  712. package/dist/utils/transform-content-types-to-models.js +134 -47
  713. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  714. package/dist/utils/transform-content-types-to-models.mjs +133 -47
  715. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  716. package/dist/utils/update-notifier/index.d.ts +2 -7
  717. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  718. package/dist/utils/update-notifier/index.js +11 -14
  719. package/dist/utils/update-notifier/index.js.map +1 -1
  720. package/dist/utils/update-notifier/index.mjs +11 -14
  721. package/dist/utils/update-notifier/index.mjs.map +1 -1
  722. package/package.json +32 -28
  723. package/dist/registries/config.d.ts +0 -4
  724. package/dist/registries/config.d.ts.map +0 -1
  725. package/dist/registries/config.js +0 -23
  726. package/dist/registries/config.js.map +0 -1
  727. package/dist/registries/config.mjs +0 -22
  728. package/dist/registries/config.mjs.map +0 -1
  729. package/dist/services/document-service/collection-type.d.ts +0 -4
  730. package/dist/services/document-service/collection-type.d.ts.map +0 -1
  731. package/dist/services/document-service/collection-type.js +0 -145
  732. package/dist/services/document-service/collection-type.js.map +0 -1
  733. package/dist/services/document-service/collection-type.mjs +0 -145
  734. package/dist/services/document-service/collection-type.mjs.map +0 -1
  735. package/dist/services/document-service/document-engine.d.ts +0 -8
  736. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  737. package/dist/services/document-service/document-engine.js +0 -249
  738. package/dist/services/document-service/document-engine.js.map +0 -1
  739. package/dist/services/document-service/document-engine.mjs +0 -250
  740. package/dist/services/document-service/document-engine.mjs.map +0 -1
  741. package/dist/services/document-service/middlewares.d.ts +0 -8
  742. package/dist/services/document-service/middlewares.d.ts.map +0 -1
  743. package/dist/services/document-service/middlewares.js.map +0 -1
  744. package/dist/services/document-service/middlewares.mjs.map +0 -1
  745. package/dist/services/document-service/repository-factory.d.ts +0 -3
  746. package/dist/services/document-service/repository-factory.d.ts.map +0 -1
  747. package/dist/services/document-service/repository-factory.js +0 -12
  748. package/dist/services/document-service/repository-factory.js.map +0 -1
  749. package/dist/services/document-service/repository-factory.mjs +0 -12
  750. package/dist/services/document-service/repository-factory.mjs.map +0 -1
  751. package/dist/services/document-service/single-type.d.ts +0 -4
  752. package/dist/services/document-service/single-type.d.ts.map +0 -1
  753. package/dist/services/document-service/single-type.js +0 -92
  754. package/dist/services/document-service/single-type.js.map +0 -1
  755. package/dist/services/document-service/single-type.mjs +0 -92
  756. package/dist/services/document-service/single-type.mjs.map +0 -1
  757. package/dist/services/document-service/transform/filters.d.ts +0 -3
  758. package/dist/services/document-service/transform/filters.d.ts.map +0 -1
  759. package/dist/services/document-service/transform/filters.js +0 -49
  760. package/dist/services/document-service/transform/filters.js.map +0 -1
  761. package/dist/services/document-service/transform/filters.mjs +0 -49
  762. package/dist/services/document-service/transform/filters.mjs.map +0 -1
  763. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -4
  764. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  765. package/dist/services/document-service/transform/relations/transform/output-ids.js +0 -26
  766. package/dist/services/document-service/transform/relations/transform/output-ids.js.map +0 -1
  767. package/dist/services/document-service/transform/relations/transform/output-ids.mjs +0 -26
  768. package/dist/services/document-service/transform/relations/transform/output-ids.mjs.map +0 -1
  769. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  770. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  771. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  772. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  773. package/dist/services/document-service/transform/sort.d.ts +0 -5
  774. package/dist/services/document-service/transform/sort.d.ts.map +0 -1
  775. package/dist/services/document-service/transform/sort.js +0 -44
  776. package/dist/services/document-service/transform/sort.js.map +0 -1
  777. package/dist/services/document-service/transform/sort.mjs +0 -44
  778. package/dist/services/document-service/transform/sort.mjs.map +0 -1
  779. package/dist/services/document-service/transform/utils.d.ts +0 -9
  780. package/dist/services/document-service/transform/utils.d.ts.map +0 -1
  781. package/dist/services/document-service/transform/utils.js +0 -23
  782. package/dist/services/document-service/transform/utils.js.map +0 -1
  783. package/dist/services/document-service/transform/utils.mjs +0 -23
  784. package/dist/services/document-service/transform/utils.mjs.map +0 -1
  785. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  786. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  787. package/dist/services/entity-service/attributes/index.js.map +0 -1
  788. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  789. package/dist/services/entity-service/attributes/transforms.d.ts +0 -10
  790. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  791. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  792. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  793. package/dist/services/entity-service/components.d.ts +0 -23
  794. package/dist/services/entity-service/components.d.ts.map +0 -1
  795. package/dist/services/entity-service/components.js.map +0 -1
  796. package/dist/services/entity-service/components.mjs.map +0 -1
  797. package/dist/services/entity-service/params.d.ts +0 -8
  798. package/dist/services/entity-service/params.d.ts.map +0 -1
  799. package/dist/services/entity-service/params.js.map +0 -1
  800. package/dist/services/entity-service/params.mjs.map +0 -1
  801. package/dist/services/utils/upload-files.d.ts +0 -8
  802. package/dist/services/utils/upload-files.d.ts.map +0 -1
  803. package/dist/services/utils/upload-files.js +0 -64
  804. package/dist/services/utils/upload-files.js.map +0 -1
  805. package/dist/services/utils/upload-files.mjs +0 -63
  806. package/dist/services/utils/upload-files.mjs.map +0 -1
  807. package/dist/utils/get-dirs.d.ts +0 -9
  808. package/dist/utils/get-dirs.d.ts.map +0 -1
  809. package/dist/utils/get-dirs.js.map +0 -1
  810. package/dist/utils/get-dirs.mjs.map +0 -1
  811. /package/dist/services/{entity-service → document-service}/attributes/transforms.js +0 -0
  812. /package/dist/services/{entity-service → document-service}/attributes/transforms.mjs +0 -0
@@ -1,14 +1,9 @@
1
1
  import _ from "lodash";
2
2
  import delegate from "delegates";
3
3
  import { errors } from "@strapi/database";
4
- import { errors as errors$1, sanitize, contentTypes, relations, convertQueryParams } from "@strapi/utils";
5
- import uploadFile from "../utils/upload-files.mjs";
6
- import { createComponents, omitComponentData, updateComponents, getComponents, deleteComponents, cloneComponents } from "./components.mjs";
7
- import { pickSelectionParams } from "./params.mjs";
8
- import { applyTransforms } from "./attributes/index.mjs";
9
- const { transformParamsToQuery } = convertQueryParams;
4
+ import { errors as errors$1, contentTypes, relations } from "@strapi/utils";
10
5
  const transformLoadParamsToQuery = (uid, field, params, pagination = {}) => {
11
- const query = transformParamsToQuery(uid, { populate: { [field]: params } });
6
+ const query = strapi.get("query-params").transform(uid, { populate: { [field]: params } });
12
7
  const res = {
13
8
  ...query.populate[field],
14
9
  ...pagination
@@ -21,240 +16,89 @@ const databaseErrorsToTransform = [
21
16
  errors.InvalidDateError,
22
17
  errors.InvalidRelationError
23
18
  ];
24
- const creationPipeline = (data, context) => {
25
- return applyTransforms(data, context);
26
- };
27
- const updatePipeline = (data, context) => {
28
- return applyTransforms(data, context);
29
- };
30
- const ALLOWED_WEBHOOK_EVENTS = {
31
- ENTRY_CREATE: "entry.create",
32
- ENTRY_UPDATE: "entry.update",
33
- ENTRY_DELETE: "entry.delete"
34
- };
35
19
  const createDefaultImplementation = ({
36
- strapi,
37
- db,
38
- eventHub,
39
- entityValidator
20
+ strapi: strapi2,
21
+ db
40
22
  }) => ({
41
- /**
42
- * Upload files utility
43
- */
44
- uploadFiles: uploadFile,
45
23
  async wrapParams(options = {}) {
46
24
  return options;
47
25
  },
48
26
  async wrapResult(result = {}) {
49
27
  return result;
50
28
  },
51
- async emitEvent(uid, event, entity) {
52
- if (uid === "admin::audit-log") {
53
- return;
54
- }
55
- const model = strapi.getModel(uid);
56
- const sanitizedEntity = await sanitize.sanitizers.defaultSanitizeOutput(model, entity);
57
- eventHub.emit(event, {
58
- model: model.modelName,
59
- uid: model.uid,
60
- entry: sanitizedEntity
61
- });
62
- },
63
29
  async findMany(uid, opts) {
64
- const { kind } = strapi.getModel(uid);
30
+ const { kind } = strapi2.getModel(uid);
65
31
  const wrappedParams = await this.wrapParams(opts, { uid, action: "findMany" });
66
- const query = transformParamsToQuery(uid, wrappedParams);
67
32
  if (kind === "singleType") {
68
- const entity = db.query(uid).findOne(query);
33
+ const entity = strapi2.documents(uid).findFirst(wrappedParams);
69
34
  return this.wrapResult(entity, { uid, action: "findOne" });
70
35
  }
71
- const entities = await db.query(uid).findMany(query);
36
+ const entities = await strapi2.documents(uid).findMany(wrappedParams);
72
37
  return this.wrapResult(entities, { uid, action: "findMany" });
73
38
  },
74
39
  async findPage(uid, opts) {
75
40
  const wrappedParams = await this.wrapParams(opts, { uid, action: "findPage" });
76
- const query = transformParamsToQuery(uid, wrappedParams);
77
- const page = await db.query(uid).findPage(query);
78
- return {
79
- ...page,
80
- results: await this.wrapResult(page.results, { uid, action: "findPage" })
81
- };
82
- },
83
- // TODO: streamline the logic based on the populate option
84
- async findWithRelationCountsPage(uid, opts) {
85
- const wrappedParams = await this.wrapParams(opts, { uid, action: "findWithRelationCounts" });
86
- const query = transformParamsToQuery(uid, wrappedParams);
41
+ const query = strapi2.get("query-params").transform(uid, wrappedParams);
87
42
  const entities = await db.query(uid).findPage(query);
88
- return {
89
- ...entities,
90
- results: await this.wrapResult(entities.results, { uid, action: "findWithRelationCounts" })
91
- };
92
- },
93
- async findWithRelationCounts(uid, opts) {
94
- const wrappedParams = await this.wrapParams(opts, { uid, action: "findWithRelationCounts" });
95
- const query = transformParamsToQuery(uid, wrappedParams);
96
- const entities = await db.query(uid).findMany(query);
97
- return this.wrapResult(entities, { uid, action: "findWithRelationCounts" });
43
+ return this.wrapResult(entities, { uid, action: "findMany" });
98
44
  },
99
45
  async findOne(uid, entityId, opts) {
100
46
  const wrappedParams = await this.wrapParams(opts, { uid, action: "findOne" });
101
- const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));
102
- const entity = await db.query(uid).findOne({ ...query, where: { id: entityId } });
47
+ const res = await db.query(uid).findOne({ where: { id: entityId } });
48
+ if (!res) {
49
+ return this.wrapResult(null, { uid, action: "findOne" });
50
+ }
51
+ const entity = await strapi2.documents(uid).findOne({
52
+ ...wrappedParams,
53
+ documentId: res.documentId
54
+ });
103
55
  return this.wrapResult(entity, { uid, action: "findOne" });
104
56
  },
105
57
  async count(uid, opts) {
106
58
  const wrappedParams = await this.wrapParams(opts, { uid, action: "count" });
107
- const query = transformParamsToQuery(uid, wrappedParams);
108
- return db.query(uid).count(query);
59
+ return strapi2.documents(uid).count(wrappedParams);
109
60
  },
110
61
  async create(uid, params) {
111
62
  const wrappedParams = await this.wrapParams(params, { uid, action: "create" });
112
- const { data, files } = wrappedParams;
63
+ const { data } = wrappedParams;
113
64
  if (!data) {
114
65
  throw new Error("cannot create");
115
66
  }
116
- const model = strapi.getModel(uid);
117
- const isDraft = contentTypes.isDraft(data);
118
- const validData = await entityValidator.validateEntityCreation(model, data, { isDraft });
119
- const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));
120
- const componentData = await createComponents(uid, validData);
121
- const entityData = creationPipeline(
122
- Object.assign(omitComponentData(model, validData), componentData),
123
- {
124
- contentType: model
125
- }
126
- );
127
- let entity = await db.query(uid).create({
128
- ...query,
129
- data: entityData
67
+ const shouldPublish = !contentTypes.isDraft(data, strapi2.getModel(uid));
68
+ const entity = await strapi2.documents(uid).create({
69
+ ...wrappedParams,
70
+ status: shouldPublish ? "published" : "draft"
130
71
  });
131
- if (files && Object.keys(files).length > 0) {
132
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
133
- entity = await this.findOne(uid, entity.id, wrappedParams);
134
- }
135
- entity = await this.wrapResult(entity, { uid, action: "create" });
136
- const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
137
- await this.emitEvent(uid, ENTRY_CREATE, entity);
138
- return entity;
72
+ return this.wrapResult(entity, { uid, action: "create" });
139
73
  },
140
74
  async update(uid, entityId, opts) {
141
75
  const wrappedParams = await this.wrapParams(opts, {
142
76
  uid,
143
77
  action: "update"
144
78
  });
145
- const { data, files } = wrappedParams;
146
- const model = strapi.getModel(uid);
147
79
  const entityToUpdate = await db.query(uid).findOne({ where: { id: entityId } });
148
80
  if (!entityToUpdate) {
149
- return null;
81
+ return this.wrapResult(null, { uid, action: "update" });
150
82
  }
151
- const isDraft = contentTypes.isDraft(entityToUpdate);
152
- const validData = await entityValidator.validateEntityUpdate(
153
- model,
154
- data,
155
- {
156
- isDraft
157
- },
158
- entityToUpdate
159
- );
160
- const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));
161
- const componentData = await updateComponents(uid, entityToUpdate, validData);
162
- const entityData = updatePipeline(
163
- Object.assign(omitComponentData(model, validData), componentData),
164
- { contentType: model }
165
- );
166
- let entity = await db.query(uid).update({
167
- ...query,
168
- where: { id: entityId },
169
- data: entityData
83
+ const shouldPublish = !contentTypes.isDraft(entityToUpdate, strapi2.getModel(uid));
84
+ const entity = strapi2.documents(uid).update({
85
+ ...wrappedParams,
86
+ status: shouldPublish ? "published" : "draft",
87
+ documentId: entityToUpdate.documentId
170
88
  });
171
- if (files && Object.keys(files).length > 0) {
172
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
173
- entity = await this.findOne(uid, entity.id, wrappedParams);
174
- }
175
- entity = await this.wrapResult(entity, { uid, action: "update" });
176
- const { ENTRY_UPDATE } = ALLOWED_WEBHOOK_EVENTS;
177
- await this.emitEvent(uid, ENTRY_UPDATE, entity);
178
- return entity;
89
+ return this.wrapResult(entity, { uid, action: "update" });
179
90
  },
180
91
  async delete(uid, entityId, opts) {
181
92
  const wrappedParams = await this.wrapParams(opts, { uid, action: "delete" });
182
- const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));
183
- let entityToDelete = await db.query(uid).findOne({
184
- ...query,
185
- where: { id: entityId }
186
- });
93
+ const entityToDelete = await db.query(uid).findOne({ where: { id: entityId } });
187
94
  if (!entityToDelete) {
188
- return null;
95
+ return this.wrapResult(null, { uid, action: "delete" });
189
96
  }
190
- const componentsToDelete = await getComponents(uid, entityToDelete);
191
- await db.query(uid).delete({ where: { id: entityToDelete.id } });
192
- await deleteComponents(uid, componentsToDelete, { loadComponents: false });
193
- entityToDelete = await this.wrapResult(entityToDelete, { uid, action: "delete" });
194
- const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
195
- await this.emitEvent(uid, ENTRY_DELETE, entityToDelete);
196
- return entityToDelete;
197
- },
198
- async clone(uid, cloneId, opts) {
199
- const wrappedParams = await this.wrapParams(opts, { uid, action: "clone" });
200
- const { data, files } = wrappedParams;
201
- if (!data) {
202
- throw new Error("cannot clone");
203
- }
204
- const model = strapi.getModel(uid);
205
- const entityToClone = await db.query(uid).findOne({ where: { id: cloneId } });
206
- if (!entityToClone) {
207
- return null;
208
- }
209
- const isDraft = contentTypes.isDraft(entityToClone);
210
- const validData = await entityValidator.validateEntityUpdate(
211
- model,
212
- // Omit the id, the cloned entity id will be generated by the database
213
- _.omit(data, ["id"]),
214
- { isDraft },
215
- entityToClone
216
- );
217
- const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));
218
- const componentData = await cloneComponents(uid, entityToClone, validData);
219
- const entityData = creationPipeline(
220
- Object.assign(omitComponentData(model, validData), componentData),
221
- {
222
- contentType: model
223
- }
224
- );
225
- let entity = await db.query(uid).clone(cloneId, {
226
- ...query,
227
- data: entityData
97
+ await strapi2.documents(uid).delete({
98
+ ...wrappedParams,
99
+ documentId: entityToDelete.documentId
228
100
  });
229
- if (files && Object.keys(files).length > 0) {
230
- await this.uploadFiles(uid, Object.assign(entityData, entity), files);
231
- entity = await this.findOne(uid, entity.id, wrappedParams);
232
- }
233
- const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;
234
- await this.emitEvent(uid, ENTRY_CREATE, entity);
235
- return entity;
236
- },
237
- // FIXME: used only for the CM to be removed
238
- async deleteMany(uid, opts) {
239
- const wrappedParams = await this.wrapParams(opts, { uid, action: "delete" });
240
- const query = transformParamsToQuery(uid, wrappedParams);
241
- let entitiesToDelete = await db.query(uid).findMany(query);
242
- if (!entitiesToDelete.length) {
243
- return { count: 0 };
244
- }
245
- const componentsToDelete = await Promise.all(
246
- entitiesToDelete.map((entityToDelete) => getComponents(uid, entityToDelete))
247
- );
248
- const deletedEntities = await db.query(uid).deleteMany(query);
249
- await Promise.all(
250
- componentsToDelete.map(
251
- (compos) => deleteComponents(uid, compos, { loadComponents: false })
252
- )
253
- );
254
- entitiesToDelete = await this.wrapResult(entitiesToDelete, { uid, action: "delete" });
255
- const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;
256
- await Promise.all(entitiesToDelete.map((entity) => this.emitEvent(uid, ENTRY_DELETE, entity)));
257
- return deletedEntities;
101
+ return this.wrapResult(entityToDelete, { uid, action: "delete" });
258
102
  },
259
103
  async load(uid, entity, field, params) {
260
104
  if (!_.isString(field)) {
@@ -267,7 +111,7 @@ const createDefaultImplementation = ({
267
111
  if (!_.isString(field)) {
268
112
  throw new Error(`Invalid load. Expected "${field}" to be a string`);
269
113
  }
270
- const { attributes } = strapi.getModel(uid);
114
+ const { attributes } = strapi2.getModel(uid);
271
115
  const attribute = attributes[field];
272
116
  if (!relations.isAnyToMany(attribute)) {
273
117
  throw new Error(`Invalid load. Expected "${field}" to be an anyToMany relational attribute`);
@@ -281,9 +125,6 @@ const createDefaultImplementation = ({
281
125
  }
282
126
  });
283
127
  const createEntityService = (ctx) => {
284
- Object.entries(ALLOWED_WEBHOOK_EVENTS).forEach(([key, value]) => {
285
- ctx.strapi.webhookStore?.addAllowedEvent(key, value);
286
- });
287
128
  const implementation = createDefaultImplementation(ctx);
288
129
  const service = {
289
130
  implementation,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/services/entity-service/index.ts"],"sourcesContent":["import _ from 'lodash';\nimport delegate from 'delegates';\nimport { errors as databaseErrors } from '@strapi/database';\nimport {\n contentTypes as contentTypesUtils,\n sanitize,\n errors,\n relations as relationUtils,\n convertQueryParams,\n} from '@strapi/utils';\nimport type { Database } from '@strapi/database';\nimport type {\n Strapi,\n EntityService,\n EntityValidator,\n EventHub,\n Common,\n Schema,\n Shared,\n Utils,\n} from '@strapi/types';\n\nimport uploadFiles from '../utils/upload-files';\n\nimport {\n omitComponentData,\n getComponents,\n createComponents,\n updateComponents,\n deleteComponents,\n cloneComponents,\n} from './components';\n\nimport { pickSelectionParams } from './params';\nimport { applyTransforms } from './attributes';\n\nconst { transformParamsToQuery } = convertQueryParams;\n\ntype Decoratable<T> = T & {\n decorate(\n decorator: (old: EntityService.EntityService) => EntityService.EntityService & {\n [key: string]: unknown;\n }\n ): void;\n};\n\ntype Context = {\n contentType: Schema.ContentType;\n};\n\nconst transformLoadParamsToQuery = (\n uid: string,\n field: string,\n params: Record<string, unknown>,\n pagination = {}\n) => {\n const query = transformParamsToQuery(uid, { populate: { [field]: params } as any }) as any;\n\n const res = {\n ...query.populate[field],\n ...pagination,\n };\n\n return res;\n};\n\nconst databaseErrorsToTransform = [\n databaseErrors.InvalidTimeError,\n databaseErrors.InvalidDateTimeError,\n databaseErrors.InvalidDateError,\n databaseErrors.InvalidRelationError,\n];\n\nconst creationPipeline = (data: Record<string, unknown>, context: Context) => {\n return applyTransforms(data, context);\n};\n\nconst updatePipeline = (data: Record<string, unknown>, context: Context) => {\n return applyTransforms(data, context);\n};\n\nconst ALLOWED_WEBHOOK_EVENTS = {\n ENTRY_CREATE: 'entry.create',\n ENTRY_UPDATE: 'entry.update',\n ENTRY_DELETE: 'entry.delete',\n};\n\nconst createDefaultImplementation = ({\n strapi,\n db,\n eventHub,\n entityValidator,\n}: {\n strapi: Strapi;\n db: Database;\n eventHub: EventHub;\n entityValidator: EntityValidator;\n}): EntityService.EntityService => ({\n /**\n * Upload files utility\n */\n uploadFiles,\n\n async wrapParams(options: any = {}) {\n return options;\n },\n\n async wrapResult(result: any = {}) {\n return result;\n },\n\n async emitEvent(uid, event: string, entity) {\n // Ignore audit log events to prevent infinite loops\n if (uid === ('admin::audit-log' as Common.UID.ContentType)) {\n return;\n }\n\n const model = strapi.getModel(uid);\n const sanitizedEntity = await sanitize.sanitizers.defaultSanitizeOutput(model, entity);\n\n eventHub.emit(event, {\n model: model.modelName,\n uid: model.uid,\n entry: sanitizedEntity,\n });\n },\n\n async findMany(uid, opts) {\n const { kind } = strapi.getModel(uid);\n\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findMany' });\n\n const query = transformParamsToQuery(uid, wrappedParams);\n\n if (kind === 'singleType') {\n const entity = db.query(uid).findOne(query);\n return this.wrapResult(entity, { uid, action: 'findOne' });\n }\n\n const entities = await db.query(uid).findMany(query);\n return this.wrapResult(entities, { uid, action: 'findMany' });\n },\n\n async findPage(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findPage' });\n\n const query = transformParamsToQuery(uid, wrappedParams);\n\n const page = await db.query(uid).findPage(query);\n return {\n ...page,\n results: await this.wrapResult(page.results, { uid, action: 'findPage' }),\n };\n },\n\n // TODO: streamline the logic based on the populate option\n async findWithRelationCountsPage(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findWithRelationCounts' });\n\n const query = transformParamsToQuery(uid, wrappedParams);\n\n const entities = await db.query(uid).findPage(query);\n return {\n ...entities,\n results: await this.wrapResult(entities.results, { uid, action: 'findWithRelationCounts' }),\n };\n },\n\n async findWithRelationCounts(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findWithRelationCounts' });\n\n const query = transformParamsToQuery(uid, wrappedParams);\n\n const entities = await db.query(uid).findMany(query);\n return this.wrapResult(entities, { uid, action: 'findWithRelationCounts' });\n },\n\n async findOne(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findOne' });\n\n const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));\n\n const entity = await db.query(uid).findOne({ ...query, where: { id: entityId } });\n return this.wrapResult(entity, { uid, action: 'findOne' });\n },\n\n async count(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'count' });\n\n const query = transformParamsToQuery(uid, wrappedParams);\n\n return db.query(uid).count(query);\n },\n\n async create<\n TUID extends Common.UID.ContentType,\n TParams extends EntityService.Params.Pick<TUID, 'data' | 'files' | 'fields' | 'populate'>\n >(uid: TUID, params?: TParams) {\n const wrappedParams = await this.wrapParams<TParams>(params, { uid, action: 'create' });\n const { data, files } = wrappedParams;\n\n if (!data) {\n throw new Error('cannot create');\n }\n\n const model = strapi.getModel(uid) as Shared.ContentTypes[Common.UID.ContentType];\n\n const isDraft = contentTypesUtils.isDraft(data);\n const validData = await entityValidator.validateEntityCreation(model, data, { isDraft });\n\n // select / populate\n const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));\n\n // TODO: wrap into transaction\n const componentData = await createComponents(uid, validData);\n\n const entityData = creationPipeline(\n Object.assign(omitComponentData(model, validData), componentData),\n {\n contentType: model,\n }\n );\n let entity = await db.query(uid).create({\n ...query,\n data: entityData,\n });\n\n // TODO: do all of this in a transaction to avoid a race condition where entity is created then deleted before we do findOne again\n // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries\n if (files && Object.keys(files).length > 0) {\n await this.uploadFiles(uid, Object.assign(entityData, entity), files);\n entity = await this.findOne(uid, entity.id, wrappedParams);\n }\n\n entity = await this.wrapResult(entity, { uid, action: 'create' });\n\n const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;\n await this.emitEvent(uid, ENTRY_CREATE, entity);\n\n return entity;\n },\n\n async update(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams<\n EntityService.Params.Pick<typeof uid, 'data:partial' | 'files' | 'fields' | 'populate'>\n >(opts, {\n uid,\n action: 'update',\n });\n const { data, files } = wrappedParams;\n\n const model = strapi.getModel(uid);\n\n const entityToUpdate = await db.query(uid).findOne({ where: { id: entityId } });\n\n if (!entityToUpdate) {\n return null;\n }\n\n const isDraft = contentTypesUtils.isDraft(entityToUpdate);\n\n const validData = await entityValidator.validateEntityUpdate(\n model,\n data,\n {\n isDraft,\n },\n entityToUpdate\n );\n\n const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));\n\n // TODO: wrap in transaction\n const componentData = await updateComponents(uid, entityToUpdate, validData);\n const entityData = updatePipeline(\n Object.assign(omitComponentData(model, validData), componentData),\n { contentType: model }\n );\n\n let entity = await db.query(uid).update({\n ...query,\n where: { id: entityId },\n data: entityData,\n });\n\n // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries\n if (files && Object.keys(files).length > 0) {\n await this.uploadFiles(uid, Object.assign(entityData, entity), files);\n entity = await this.findOne(uid, entity.id, wrappedParams);\n }\n\n entity = await this.wrapResult(entity, { uid, action: 'update' });\n\n const { ENTRY_UPDATE } = ALLOWED_WEBHOOK_EVENTS;\n await this.emitEvent(uid, ENTRY_UPDATE, entity);\n\n return entity;\n },\n\n async delete(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'delete' });\n\n // select / populate\n const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));\n\n let entityToDelete = await db.query(uid).findOne({\n ...query,\n where: { id: entityId },\n });\n\n if (!entityToDelete) {\n return null;\n }\n\n const componentsToDelete = await getComponents(uid, entityToDelete);\n\n await db.query(uid).delete({ where: { id: entityToDelete.id } });\n await deleteComponents(uid, componentsToDelete as any, { loadComponents: false });\n\n entityToDelete = await this.wrapResult(entityToDelete, { uid, action: 'delete' });\n\n const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;\n await this.emitEvent(uid, ENTRY_DELETE, entityToDelete);\n\n return entityToDelete;\n },\n\n async clone(uid, cloneId, opts) {\n const wrappedParams = await this.wrapParams<\n EntityService.Params.Pick<typeof uid, 'data' | 'files' | 'fields' | 'populate'>\n >(opts, { uid, action: 'clone' });\n const { data, files } = wrappedParams;\n\n if (!data) {\n throw new Error('cannot clone');\n }\n\n const model = strapi.getModel(uid);\n\n const entityToClone = await db.query(uid).findOne({ where: { id: cloneId } });\n\n if (!entityToClone) {\n return null;\n }\n const isDraft = contentTypesUtils.isDraft(entityToClone);\n\n const validData = await entityValidator.validateEntityUpdate(\n model,\n // Omit the id, the cloned entity id will be generated by the database\n _.omit(data, ['id']) as Partial<typeof data>,\n { isDraft },\n entityToClone\n );\n\n const query = transformParamsToQuery(uid, pickSelectionParams(wrappedParams));\n\n // TODO: wrap into transaction\n const componentData = await cloneComponents(uid, entityToClone, validData);\n\n const entityData = creationPipeline(\n Object.assign(omitComponentData(model, validData), componentData),\n {\n contentType: model,\n }\n );\n\n let entity = await db.query(uid).clone(cloneId, {\n ...query,\n data: entityData,\n });\n\n // TODO: upload the files then set the links in the entity like with compo to avoid making too many queries\n if (files && Object.keys(files).length > 0) {\n await this.uploadFiles(uid, Object.assign(entityData, entity), files);\n entity = await this.findOne(uid, entity.id, wrappedParams);\n }\n\n const { ENTRY_CREATE } = ALLOWED_WEBHOOK_EVENTS;\n await this.emitEvent(uid, ENTRY_CREATE, entity);\n\n return entity;\n },\n // FIXME: used only for the CM to be removed\n async deleteMany(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'delete' });\n\n // select / populate\n const query = transformParamsToQuery(uid, wrappedParams);\n\n let entitiesToDelete = await db.query(uid).findMany(query);\n\n if (!entitiesToDelete.length) {\n return { count: 0 };\n }\n\n const componentsToDelete = await Promise.all(\n entitiesToDelete.map((entityToDelete) => getComponents(uid, entityToDelete))\n );\n\n const deletedEntities = await db.query(uid).deleteMany(query);\n await Promise.all(\n componentsToDelete.map((compos) =>\n deleteComponents(uid, compos as any, { loadComponents: false })\n )\n );\n\n entitiesToDelete = await this.wrapResult(entitiesToDelete, { uid, action: 'delete' });\n\n // Trigger webhooks. One for each entity\n const { ENTRY_DELETE } = ALLOWED_WEBHOOK_EVENTS;\n await Promise.all(entitiesToDelete.map((entity) => this.emitEvent(uid, ENTRY_DELETE, entity)));\n\n return deletedEntities;\n },\n\n async load(uid, entity, field, params) {\n if (!_.isString(field)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be a string`);\n }\n\n const loadedEntity = await db\n .query(uid)\n .load(entity, field, transformLoadParamsToQuery(uid, field, params ?? {}));\n\n return this.wrapResult(loadedEntity, { uid, field, action: 'load' });\n },\n\n async loadPages(uid, entity, field, params, pagination = {}) {\n if (!_.isString(field)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be a string`);\n }\n\n const { attributes } = strapi.getModel(uid);\n const attribute = attributes[field];\n\n if (!relationUtils.isAnyToMany(attribute)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be an anyToMany relational attribute`);\n }\n\n const query = transformLoadParamsToQuery(uid, field, params ?? {}, pagination);\n\n const loadedPage = await db.query(uid).loadPages(entity, field, query);\n\n return {\n ...loadedPage,\n results: await this.wrapResult(loadedPage.results, { uid, field, action: 'load' }),\n };\n },\n});\n\nexport default (ctx: {\n strapi: Strapi;\n db: Database;\n eventHub: EventHub;\n entityValidator: EntityValidator;\n}): Decoratable<EntityService.EntityService> => {\n Object.entries(ALLOWED_WEBHOOK_EVENTS).forEach(([key, value]) => {\n ctx.strapi.webhookStore?.addAllowedEvent(key, value);\n });\n\n const implementation = createDefaultImplementation(ctx);\n\n const service = {\n implementation,\n decorate<T extends object>(decorator: (current: typeof implementation) => T) {\n if (typeof decorator !== 'function') {\n throw new Error(`Decorator must be a function, received ${typeof decorator}`);\n }\n\n this.implementation = { ...this.implementation, ...decorator(this.implementation) };\n return this;\n },\n };\n\n const delegator = delegate(service, 'implementation');\n\n // delegate every method in implementation\n Object.keys(service.implementation).forEach((key) => delegator.method(key));\n\n // wrap methods to handle Database Errors\n service.decorate((oldService: EntityService.EntityService) => {\n const newService = _.mapValues(\n oldService,\n (method, methodName: keyof EntityService.EntityService) =>\n async function (this: EntityService.EntityService, ...args: []) {\n try {\n return await (oldService[methodName] as Utils.Function.AnyPromise).call(this, ...args);\n } catch (error) {\n if (\n databaseErrorsToTransform.some(\n (errorToTransform) => error instanceof errorToTransform\n )\n ) {\n if (error instanceof Error) {\n throw new errors.ValidationError(error.message);\n }\n\n throw error;\n }\n throw error;\n }\n }\n );\n\n return newService;\n });\n\n return service as unknown as Decoratable<EntityService.EntityService>;\n};\n"],"names":["databaseErrors","uploadFiles","contentTypesUtils","relationUtils","errors"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/services/entity-service/index.ts"],"sourcesContent":["import _ from 'lodash';\nimport delegate from 'delegates';\nimport { errors as databaseErrors } from '@strapi/database';\nimport {\n contentTypes as contentTypesUtils,\n errors,\n relations as relationUtils,\n} from '@strapi/utils';\nimport type { Database } from '@strapi/database';\nimport type { Core, Modules, Utils } from '@strapi/types';\n\ntype Decoratable<T> = T & {\n decorate(\n decorator: (old: Modules.EntityService.EntityService) => Modules.EntityService.EntityService & {\n [key: string]: unknown;\n }\n ): void;\n};\n\nconst transformLoadParamsToQuery = (\n uid: string,\n field: string,\n params: Record<string, unknown>,\n pagination = {}\n) => {\n const query = strapi\n .get('query-params')\n .transform(uid, { populate: { [field]: params } as any }) as any;\n\n const res = {\n ...query.populate[field],\n ...pagination,\n };\n\n return res;\n};\n\nconst databaseErrorsToTransform = [\n databaseErrors.InvalidTimeError,\n databaseErrors.InvalidDateTimeError,\n databaseErrors.InvalidDateError,\n databaseErrors.InvalidRelationError,\n];\n\nconst createDefaultImplementation = ({\n strapi,\n db,\n}: {\n strapi: Core.Strapi;\n db: Database;\n}): Modules.EntityService.EntityService => ({\n async wrapParams(options: any = {}) {\n return options;\n },\n\n async wrapResult(result: any = {}) {\n return result;\n },\n\n async findMany(uid, opts) {\n const { kind } = strapi.getModel(uid);\n\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findMany' });\n\n if (kind === 'singleType') {\n const entity = strapi.documents!(uid).findFirst(wrappedParams);\n return this.wrapResult(entity, { uid, action: 'findOne' });\n }\n\n const entities = await strapi.documents!(uid).findMany(wrappedParams);\n return this.wrapResult(entities, { uid, action: 'findMany' });\n },\n\n async findPage(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findPage' });\n\n const query = strapi.get('query-params').transform(uid, wrappedParams);\n\n const entities = await db.query(uid).findPage(query);\n return this.wrapResult(entities, { uid, action: 'findMany' });\n },\n\n async findOne(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'findOne' });\n\n const res = await db.query(uid).findOne({ where: { id: entityId } });\n\n if (!res) {\n return this.wrapResult(null, { uid, action: 'findOne' });\n }\n\n const entity = await strapi.documents!(uid).findOne({\n ...wrappedParams,\n documentId: res.documentId,\n });\n return this.wrapResult(entity, { uid, action: 'findOne' });\n },\n\n async count(uid, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'count' });\n\n return strapi.documents!(uid).count(wrappedParams);\n },\n\n async create(uid, params) {\n const wrappedParams = await this.wrapParams<\n Modules.EntityService.Params.Pick<typeof uid, 'data' | 'fields' | 'populate'>\n >(params, { uid, action: 'create' });\n const { data } = wrappedParams;\n\n if (!data) {\n throw new Error('cannot create');\n }\n\n const shouldPublish = !contentTypesUtils.isDraft(data, strapi.getModel(uid));\n\n const entity = await strapi.documents!(uid).create({\n ...(wrappedParams as any),\n status: shouldPublish ? 'published' : 'draft',\n });\n\n return this.wrapResult(entity, { uid, action: 'create' });\n },\n\n async update(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams<\n Modules.EntityService.Params.Pick<typeof uid, 'data:partial' | 'fields' | 'populate'>\n >(opts, {\n uid,\n action: 'update',\n });\n const entityToUpdate = await db.query(uid).findOne({ where: { id: entityId } });\n\n if (!entityToUpdate) {\n return this.wrapResult(null, { uid, action: 'update' });\n }\n\n const shouldPublish = !contentTypesUtils.isDraft(entityToUpdate, strapi.getModel(uid));\n\n const entity = strapi.documents!(uid).update({\n ...(wrappedParams as any),\n status: shouldPublish ? 'published' : 'draft',\n documentId: entityToUpdate.documentId,\n });\n\n return this.wrapResult(entity, { uid, action: 'update' });\n },\n\n async delete(uid, entityId, opts) {\n const wrappedParams = await this.wrapParams(opts, { uid, action: 'delete' });\n\n const entityToDelete = await db.query(uid).findOne({ where: { id: entityId } });\n\n if (!entityToDelete) {\n return this.wrapResult(null, { uid, action: 'delete' });\n }\n\n await strapi.documents!(uid).delete({\n ...wrappedParams,\n documentId: entityToDelete.documentId,\n });\n\n return this.wrapResult(entityToDelete, { uid, action: 'delete' });\n },\n\n async load(uid, entity, field, params) {\n if (!_.isString(field)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be a string`);\n }\n\n const loadedEntity = await db\n .query(uid)\n .load(entity, field, transformLoadParamsToQuery(uid, field, params ?? {}));\n\n return this.wrapResult(loadedEntity, { uid, field, action: 'load' });\n },\n\n async loadPages(uid, entity, field, params, pagination = {}) {\n if (!_.isString(field)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be a string`);\n }\n\n const { attributes } = strapi.getModel(uid);\n const attribute = attributes[field];\n\n if (!relationUtils.isAnyToMany(attribute)) {\n throw new Error(`Invalid load. Expected \"${field}\" to be an anyToMany relational attribute`);\n }\n\n const query = transformLoadParamsToQuery(uid, field, params ?? {}, pagination);\n\n const loadedPage = await db.query(uid).loadPages(entity, field, query);\n\n return {\n ...loadedPage,\n results: await this.wrapResult(loadedPage.results, { uid, field, action: 'load' }),\n };\n },\n});\n\nexport default (ctx: {\n strapi: Core.Strapi;\n db: Database;\n}): Decoratable<Modules.EntityService.EntityService> => {\n const implementation = createDefaultImplementation(ctx);\n\n const service = {\n implementation,\n decorate<T extends object>(decorator: (current: typeof implementation) => T) {\n if (typeof decorator !== 'function') {\n throw new Error(`Decorator must be a function, received ${typeof decorator}`);\n }\n\n this.implementation = { ...this.implementation, ...decorator(this.implementation) };\n return this;\n },\n };\n\n const delegator = delegate(service, 'implementation');\n\n // delegate every method in implementation\n Object.keys(service.implementation).forEach((key) => delegator.method(key));\n\n // wrap methods to handle Database Errors\n service.decorate((oldService: Modules.EntityService.EntityService) => {\n const newService = _.mapValues(\n oldService,\n (method, methodName: keyof Modules.EntityService.EntityService) =>\n async function (this: Modules.EntityService.EntityService, ...args: []) {\n try {\n return await (oldService[methodName] as Utils.Function.AnyPromise).call(this, ...args);\n } catch (error) {\n if (\n databaseErrorsToTransform.some(\n (errorToTransform) => error instanceof errorToTransform\n )\n ) {\n if (error instanceof Error) {\n throw new errors.ValidationError(error.message);\n }\n\n throw error;\n }\n throw error;\n }\n }\n );\n\n return newService;\n });\n\n return service as unknown as Decoratable<Modules.EntityService.EntityService>;\n};\n"],"names":["databaseErrors","strapi","contentTypesUtils","relationUtils","errors"],"mappings":"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"}
@@ -2,7 +2,20 @@
2
2
  * Entity validator
3
3
  * Module that will validate input data for entity creation or edition
4
4
  */
5
- import { EntityValidator } from '@strapi/types';
6
- declare const entityValidator: EntityValidator;
5
+ import { Modules, Struct } from '@strapi/types';
6
+ export type ComponentContext = {
7
+ parentContent: {
8
+ model: Struct.Schema;
9
+ id?: number;
10
+ options?: ValidatorContext;
11
+ };
12
+ pathToComponent: string[];
13
+ repeatableData: Modules.EntityValidator.Entity[];
14
+ };
15
+ interface ValidatorContext {
16
+ isDraft?: boolean;
17
+ locale?: string | null;
18
+ }
19
+ declare const entityValidator: Modules.EntityValidator.EntityValidator;
7
20
  export default entityValidator;
8
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/entity-validator/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,eAAe,EAAoD,MAAM,eAAe,CAAC;AAwelG,QAAA,MAAM,eAAe,EAAE,eAGtB,CAAC;AAEF,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/entity-validator/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,OAAO,EAAO,MAAM,EAAU,MAAM,eAAe,CAAC;AAa7D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,EAAE;QAEb,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QAErB,EAAE,CAAC,EAAE,MAAM,CAAC;QAGZ,OAAO,CAAC,EAAE,gBAAgB,CAAC;KAC5B,CAAC;IAEF,eAAe,EAAE,MAAM,EAAE,CAAC;IAG1B,cAAc,EAAE,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;CAClD,CAAC;AAWF,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AA8hBD,QAAA,MAAM,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC,eAG9C,CAAC;AAEF,eAAe,eAAe,CAAC"}