@strapi/core 0.0.0-experimental.b391efb8ce3832d4f280928b99ef5cb9c228fdee → 0.0.0-experimental.b64b317678ef49ec595d4adb8eab18393c8bc607

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (724) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +429 -403
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +428 -402
  5. package/dist/Strapi.mjs.map +1 -1
  6. package/dist/compile.js +23 -14
  7. package/dist/compile.js.map +1 -1
  8. package/dist/compile.mjs +22 -14
  9. package/dist/compile.mjs.map +1 -1
  10. package/dist/configuration/config-loader.js +110 -97
  11. package/dist/configuration/config-loader.js.map +1 -1
  12. package/dist/configuration/config-loader.mjs +109 -96
  13. package/dist/configuration/config-loader.mjs.map +1 -1
  14. package/dist/configuration/get-dirs.js +31 -29
  15. package/dist/configuration/get-dirs.js.map +1 -1
  16. package/dist/configuration/get-dirs.mjs +30 -30
  17. package/dist/configuration/get-dirs.mjs.map +1 -1
  18. package/dist/configuration/index.d.ts +1 -0
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +85 -73
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +84 -69
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/configuration/urls.d.ts.map +1 -1
  25. package/dist/configuration/urls.js +74 -61
  26. package/dist/configuration/urls.js.map +1 -1
  27. package/dist/configuration/urls.mjs +73 -62
  28. package/dist/configuration/urls.mjs.map +1 -1
  29. package/dist/container.js +27 -23
  30. package/dist/container.js.map +1 -1
  31. package/dist/container.mjs +26 -24
  32. package/dist/container.mjs.map +1 -1
  33. package/dist/core-api/controller/collection-type.js +77 -76
  34. package/dist/core-api/controller/collection-type.js.map +1 -1
  35. package/dist/core-api/controller/collection-type.mjs +76 -77
  36. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  37. package/dist/core-api/controller/index.js +63 -48
  38. package/dist/core-api/controller/index.js.map +1 -1
  39. package/dist/core-api/controller/index.mjs +62 -49
  40. package/dist/core-api/controller/index.mjs.map +1 -1
  41. package/dist/core-api/controller/single-type.js +41 -40
  42. package/dist/core-api/controller/single-type.js.map +1 -1
  43. package/dist/core-api/controller/single-type.mjs +40 -41
  44. package/dist/core-api/controller/single-type.mjs.map +1 -1
  45. package/dist/core-api/controller/transform.js +72 -63
  46. package/dist/core-api/controller/transform.js.map +1 -1
  47. package/dist/core-api/controller/transform.mjs +71 -64
  48. package/dist/core-api/controller/transform.mjs.map +1 -1
  49. package/dist/core-api/routes/index.js +64 -62
  50. package/dist/core-api/routes/index.js.map +1 -1
  51. package/dist/core-api/routes/index.mjs +62 -62
  52. package/dist/core-api/routes/index.mjs.map +1 -1
  53. package/dist/core-api/service/collection-type.js +73 -60
  54. package/dist/core-api/service/collection-type.js.map +1 -1
  55. package/dist/core-api/service/collection-type.mjs +72 -62
  56. package/dist/core-api/service/collection-type.mjs.map +1 -1
  57. package/dist/core-api/service/core-service.js +9 -8
  58. package/dist/core-api/service/core-service.js.map +1 -1
  59. package/dist/core-api/service/core-service.mjs +8 -9
  60. package/dist/core-api/service/core-service.mjs.map +1 -1
  61. package/dist/core-api/service/index.js +13 -13
  62. package/dist/core-api/service/index.js.map +1 -1
  63. package/dist/core-api/service/index.mjs +12 -14
  64. package/dist/core-api/service/index.mjs.map +1 -1
  65. package/dist/core-api/service/pagination.js +69 -43
  66. package/dist/core-api/service/pagination.js.map +1 -1
  67. package/dist/core-api/service/pagination.mjs +68 -47
  68. package/dist/core-api/service/pagination.mjs.map +1 -1
  69. package/dist/core-api/service/single-type.js +43 -39
  70. package/dist/core-api/service/single-type.js.map +1 -1
  71. package/dist/core-api/service/single-type.mjs +42 -41
  72. package/dist/core-api/service/single-type.mjs.map +1 -1
  73. package/dist/domain/content-type/index.js +95 -100
  74. package/dist/domain/content-type/index.js.map +1 -1
  75. package/dist/domain/content-type/index.mjs +94 -100
  76. package/dist/domain/content-type/index.mjs.map +1 -1
  77. package/dist/domain/content-type/validator.js +84 -69
  78. package/dist/domain/content-type/validator.js.map +1 -1
  79. package/dist/domain/content-type/validator.mjs +83 -68
  80. package/dist/domain/content-type/validator.mjs.map +1 -1
  81. package/dist/domain/module/index.js +109 -100
  82. package/dist/domain/module/index.js.map +1 -1
  83. package/dist/domain/module/index.mjs +108 -99
  84. package/dist/domain/module/index.mjs.map +1 -1
  85. package/dist/domain/module/validation.js +25 -20
  86. package/dist/domain/module/validation.js.map +1 -1
  87. package/dist/domain/module/validation.mjs +24 -21
  88. package/dist/domain/module/validation.mjs.map +1 -1
  89. package/dist/ee/index.d.ts +7 -0
  90. package/dist/ee/index.d.ts.map +1 -1
  91. package/dist/ee/index.js +197 -137
  92. package/dist/ee/index.js.map +1 -1
  93. package/dist/ee/index.mjs +196 -139
  94. package/dist/ee/index.mjs.map +1 -1
  95. package/dist/ee/license.d.ts +3 -1
  96. package/dist/ee/license.d.ts.map +1 -1
  97. package/dist/ee/license.js +105 -75
  98. package/dist/ee/license.js.map +1 -1
  99. package/dist/ee/license.mjs +103 -76
  100. package/dist/ee/license.mjs.map +1 -1
  101. package/dist/factories.js +72 -67
  102. package/dist/factories.js.map +1 -1
  103. package/dist/factories.mjs +71 -71
  104. package/dist/factories.mjs.map +1 -1
  105. package/dist/index.js +29 -26
  106. package/dist/index.js.map +1 -1
  107. package/dist/index.mjs +29 -29
  108. package/dist/index.mjs.map +1 -1
  109. package/dist/loaders/admin.d.ts.map +1 -1
  110. package/dist/loaders/admin.js +21 -20
  111. package/dist/loaders/admin.js.map +1 -1
  112. package/dist/loaders/admin.mjs +20 -20
  113. package/dist/loaders/admin.mjs.map +1 -1
  114. package/dist/loaders/apis.js +143 -120
  115. package/dist/loaders/apis.js.map +1 -1
  116. package/dist/loaders/apis.mjs +142 -119
  117. package/dist/loaders/apis.mjs.map +1 -1
  118. package/dist/loaders/components.js +33 -34
  119. package/dist/loaders/components.js.map +1 -1
  120. package/dist/loaders/components.mjs +32 -34
  121. package/dist/loaders/components.mjs.map +1 -1
  122. package/dist/loaders/index.js +22 -20
  123. package/dist/loaders/index.js.map +1 -1
  124. package/dist/loaders/index.mjs +21 -21
  125. package/dist/loaders/index.mjs.map +1 -1
  126. package/dist/loaders/middlewares.js +29 -25
  127. package/dist/loaders/middlewares.js.map +1 -1
  128. package/dist/loaders/middlewares.mjs +28 -25
  129. package/dist/loaders/middlewares.mjs.map +1 -1
  130. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  131. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  132. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  133. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  134. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  135. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  136. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  137. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  138. package/dist/loaders/plugins/index.js +132 -122
  139. package/dist/loaders/plugins/index.js.map +1 -1
  140. package/dist/loaders/plugins/index.mjs +121 -112
  141. package/dist/loaders/plugins/index.mjs.map +1 -1
  142. package/dist/loaders/policies.js +24 -20
  143. package/dist/loaders/policies.js.map +1 -1
  144. package/dist/loaders/policies.mjs +23 -20
  145. package/dist/loaders/policies.mjs.map +1 -1
  146. package/dist/loaders/sanitizers.js +10 -4
  147. package/dist/loaders/sanitizers.js.map +1 -1
  148. package/dist/loaders/sanitizers.mjs +9 -6
  149. package/dist/loaders/sanitizers.mjs.map +1 -1
  150. package/dist/loaders/src-index.js +35 -27
  151. package/dist/loaders/src-index.js.map +1 -1
  152. package/dist/loaders/src-index.mjs +34 -29
  153. package/dist/loaders/src-index.mjs.map +1 -1
  154. package/dist/loaders/validators.js +9 -4
  155. package/dist/loaders/validators.js.map +1 -1
  156. package/dist/loaders/validators.mjs +8 -6
  157. package/dist/loaders/validators.mjs.map +1 -1
  158. package/dist/middlewares/body.d.ts.map +1 -1
  159. package/dist/middlewares/body.js +58 -54
  160. package/dist/middlewares/body.js.map +1 -1
  161. package/dist/middlewares/body.mjs +57 -51
  162. package/dist/middlewares/body.mjs.map +1 -1
  163. package/dist/middlewares/compression.js +6 -6
  164. package/dist/middlewares/compression.js.map +1 -1
  165. package/dist/middlewares/compression.mjs +5 -5
  166. package/dist/middlewares/compression.mjs.map +1 -1
  167. package/dist/middlewares/cors.js +59 -48
  168. package/dist/middlewares/cors.js.map +1 -1
  169. package/dist/middlewares/cors.mjs +58 -47
  170. package/dist/middlewares/cors.mjs.map +1 -1
  171. package/dist/middlewares/errors.js +32 -30
  172. package/dist/middlewares/errors.js.map +1 -1
  173. package/dist/middlewares/errors.mjs +31 -31
  174. package/dist/middlewares/errors.mjs.map +1 -1
  175. package/dist/middlewares/favicon.js +27 -17
  176. package/dist/middlewares/favicon.js.map +1 -1
  177. package/dist/middlewares/favicon.mjs +26 -16
  178. package/dist/middlewares/favicon.mjs.map +1 -1
  179. package/dist/middlewares/index.js +32 -30
  180. package/dist/middlewares/index.js.map +1 -1
  181. package/dist/middlewares/index.mjs +31 -31
  182. package/dist/middlewares/index.mjs.map +1 -1
  183. package/dist/middlewares/ip.js +6 -6
  184. package/dist/middlewares/ip.js.map +1 -1
  185. package/dist/middlewares/ip.mjs +5 -5
  186. package/dist/middlewares/ip.mjs.map +1 -1
  187. package/dist/middlewares/logger.js +10 -9
  188. package/dist/middlewares/logger.js.map +1 -1
  189. package/dist/middlewares/logger.mjs +9 -10
  190. package/dist/middlewares/logger.mjs.map +1 -1
  191. package/dist/middlewares/powered-by.js +13 -9
  192. package/dist/middlewares/powered-by.js.map +1 -1
  193. package/dist/middlewares/powered-by.mjs +12 -10
  194. package/dist/middlewares/powered-by.mjs.map +1 -1
  195. package/dist/middlewares/public.js +33 -29
  196. package/dist/middlewares/public.js.map +1 -1
  197. package/dist/middlewares/public.mjs +32 -28
  198. package/dist/middlewares/public.mjs.map +1 -1
  199. package/dist/middlewares/query.js +35 -32
  200. package/dist/middlewares/query.js.map +1 -1
  201. package/dist/middlewares/query.mjs +34 -31
  202. package/dist/middlewares/query.mjs.map +1 -1
  203. package/dist/middlewares/response-time.js +10 -9
  204. package/dist/middlewares/response-time.js.map +1 -1
  205. package/dist/middlewares/response-time.mjs +9 -10
  206. package/dist/middlewares/response-time.mjs.map +1 -1
  207. package/dist/middlewares/responses.js +14 -12
  208. package/dist/middlewares/responses.js.map +1 -1
  209. package/dist/middlewares/responses.mjs +13 -13
  210. package/dist/middlewares/responses.mjs.map +1 -1
  211. package/dist/middlewares/security.js +109 -71
  212. package/dist/middlewares/security.js.map +1 -1
  213. package/dist/middlewares/security.mjs +108 -70
  214. package/dist/middlewares/security.mjs.map +1 -1
  215. package/dist/middlewares/session.js +26 -25
  216. package/dist/middlewares/session.js.map +1 -1
  217. package/dist/middlewares/session.mjs +25 -24
  218. package/dist/middlewares/session.mjs.map +1 -1
  219. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  220. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  221. package/dist/migrations/database/5.0.0-discard-drafts.js +152 -90
  222. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  223. package/dist/migrations/database/5.0.0-discard-drafts.mjs +151 -92
  224. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  225. package/dist/migrations/draft-publish.d.ts +1 -1
  226. package/dist/migrations/draft-publish.d.ts.map +1 -1
  227. package/dist/migrations/draft-publish.js +61 -34
  228. package/dist/migrations/draft-publish.js.map +1 -1
  229. package/dist/migrations/draft-publish.mjs +60 -36
  230. package/dist/migrations/draft-publish.mjs.map +1 -1
  231. package/dist/migrations/i18n.js +62 -45
  232. package/dist/migrations/i18n.js.map +1 -1
  233. package/dist/migrations/i18n.mjs +61 -47
  234. package/dist/migrations/i18n.mjs.map +1 -1
  235. package/dist/migrations/index.js +24 -10
  236. package/dist/migrations/index.js.map +1 -1
  237. package/dist/migrations/index.mjs +23 -12
  238. package/dist/migrations/index.mjs.map +1 -1
  239. package/dist/package.json.js +184 -0
  240. package/dist/package.json.js.map +1 -0
  241. package/dist/package.json.mjs +161 -0
  242. package/dist/package.json.mjs.map +1 -0
  243. package/dist/providers/admin.js +27 -17
  244. package/dist/providers/admin.js.map +1 -1
  245. package/dist/providers/admin.mjs +26 -19
  246. package/dist/providers/admin.mjs.map +1 -1
  247. package/dist/providers/coreStore.js +13 -8
  248. package/dist/providers/coreStore.js.map +1 -1
  249. package/dist/providers/coreStore.mjs +12 -10
  250. package/dist/providers/coreStore.mjs.map +1 -1
  251. package/dist/providers/cron.js +19 -16
  252. package/dist/providers/cron.js.map +1 -1
  253. package/dist/providers/cron.mjs +18 -18
  254. package/dist/providers/cron.mjs.map +1 -1
  255. package/dist/providers/index.js +18 -9
  256. package/dist/providers/index.js.map +1 -1
  257. package/dist/providers/index.mjs +17 -10
  258. package/dist/providers/index.mjs.map +1 -1
  259. package/dist/providers/provider.js +4 -3
  260. package/dist/providers/provider.js.map +1 -1
  261. package/dist/providers/provider.mjs +3 -4
  262. package/dist/providers/provider.mjs.map +1 -1
  263. package/dist/providers/registries.js +37 -32
  264. package/dist/providers/registries.js.map +1 -1
  265. package/dist/providers/registries.mjs +36 -34
  266. package/dist/providers/registries.mjs.map +1 -1
  267. package/dist/providers/telemetry.js +19 -16
  268. package/dist/providers/telemetry.js.map +1 -1
  269. package/dist/providers/telemetry.mjs +18 -18
  270. package/dist/providers/telemetry.mjs.map +1 -1
  271. package/dist/providers/webhooks.js +28 -26
  272. package/dist/providers/webhooks.js.map +1 -1
  273. package/dist/providers/webhooks.mjs +27 -28
  274. package/dist/providers/webhooks.mjs.map +1 -1
  275. package/dist/registries/apis.js +23 -20
  276. package/dist/registries/apis.js.map +1 -1
  277. package/dist/registries/apis.mjs +22 -22
  278. package/dist/registries/apis.mjs.map +1 -1
  279. package/dist/registries/components.js +35 -37
  280. package/dist/registries/components.js.map +1 -1
  281. package/dist/registries/components.mjs +34 -39
  282. package/dist/registries/components.mjs.map +1 -1
  283. package/dist/registries/content-types.js +54 -59
  284. package/dist/registries/content-types.js.map +1 -1
  285. package/dist/registries/content-types.mjs +53 -61
  286. package/dist/registries/content-types.mjs.map +1 -1
  287. package/dist/registries/controllers.js +70 -71
  288. package/dist/registries/controllers.js.map +1 -1
  289. package/dist/registries/controllers.mjs +69 -73
  290. package/dist/registries/controllers.mjs.map +1 -1
  291. package/dist/registries/custom-fields.js +75 -65
  292. package/dist/registries/custom-fields.js.map +1 -1
  293. package/dist/registries/custom-fields.mjs +74 -67
  294. package/dist/registries/custom-fields.mjs.map +1 -1
  295. package/dist/registries/hooks.js +46 -49
  296. package/dist/registries/hooks.js.map +1 -1
  297. package/dist/registries/hooks.mjs +45 -51
  298. package/dist/registries/hooks.mjs.map +1 -1
  299. package/dist/registries/middlewares.js +49 -51
  300. package/dist/registries/middlewares.js.map +1 -1
  301. package/dist/registries/middlewares.mjs +48 -53
  302. package/dist/registries/middlewares.mjs.map +1 -1
  303. package/dist/registries/models.js +14 -13
  304. package/dist/registries/models.js.map +1 -1
  305. package/dist/registries/models.mjs +13 -14
  306. package/dist/registries/models.mjs.map +1 -1
  307. package/dist/registries/modules.js +39 -36
  308. package/dist/registries/modules.js.map +1 -1
  309. package/dist/registries/modules.mjs +38 -38
  310. package/dist/registries/modules.mjs.map +1 -1
  311. package/dist/registries/namespace.js +21 -20
  312. package/dist/registries/namespace.js.map +1 -1
  313. package/dist/registries/namespace.mjs +20 -23
  314. package/dist/registries/namespace.mjs.map +1 -1
  315. package/dist/registries/plugins.js +23 -20
  316. package/dist/registries/plugins.js.map +1 -1
  317. package/dist/registries/plugins.mjs +22 -22
  318. package/dist/registries/plugins.mjs.map +1 -1
  319. package/dist/registries/policies.js +103 -96
  320. package/dist/registries/policies.js.map +1 -1
  321. package/dist/registries/policies.mjs +102 -98
  322. package/dist/registries/policies.mjs.map +1 -1
  323. package/dist/registries/sanitizers.js +23 -22
  324. package/dist/registries/sanitizers.js.map +1 -1
  325. package/dist/registries/sanitizers.mjs +22 -22
  326. package/dist/registries/sanitizers.mjs.map +1 -1
  327. package/dist/registries/services.js +71 -71
  328. package/dist/registries/services.js.map +1 -1
  329. package/dist/registries/services.mjs +70 -73
  330. package/dist/registries/services.mjs.map +1 -1
  331. package/dist/registries/validators.js +23 -22
  332. package/dist/registries/validators.js.map +1 -1
  333. package/dist/registries/validators.mjs +22 -22
  334. package/dist/registries/validators.mjs.map +1 -1
  335. package/dist/services/auth/index.js +74 -74
  336. package/dist/services/auth/index.js.map +1 -1
  337. package/dist/services/auth/index.mjs +73 -74
  338. package/dist/services/auth/index.mjs.map +1 -1
  339. package/dist/services/config.js +47 -43
  340. package/dist/services/config.js.map +1 -1
  341. package/dist/services/config.mjs +46 -44
  342. package/dist/services/config.mjs.map +1 -1
  343. package/dist/services/content-api/index.js +80 -79
  344. package/dist/services/content-api/index.js.map +1 -1
  345. package/dist/services/content-api/index.mjs +79 -79
  346. package/dist/services/content-api/index.mjs.map +1 -1
  347. package/dist/services/content-api/permissions/engine.js +8 -5
  348. package/dist/services/content-api/permissions/engine.js.map +1 -1
  349. package/dist/services/content-api/permissions/engine.mjs +7 -5
  350. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  351. package/dist/services/content-api/permissions/index.js +101 -81
  352. package/dist/services/content-api/permissions/index.js.map +1 -1
  353. package/dist/services/content-api/permissions/index.mjs +100 -81
  354. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  355. package/dist/services/content-api/permissions/providers/action.js +17 -14
  356. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  357. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  358. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  359. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  360. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  361. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  362. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  363. package/dist/services/core-store.d.ts +2 -2
  364. package/dist/services/core-store.d.ts.map +1 -1
  365. package/dist/services/core-store.js +115 -95
  366. package/dist/services/core-store.js.map +1 -1
  367. package/dist/services/core-store.mjs +114 -97
  368. package/dist/services/core-store.mjs.map +1 -1
  369. package/dist/services/cron.js +74 -65
  370. package/dist/services/cron.js.map +1 -1
  371. package/dist/services/cron.mjs +73 -67
  372. package/dist/services/cron.mjs.map +1 -1
  373. package/dist/services/custom-fields.js +9 -7
  374. package/dist/services/custom-fields.js.map +1 -1
  375. package/dist/services/custom-fields.mjs +8 -9
  376. package/dist/services/custom-fields.mjs.map +1 -1
  377. package/dist/services/document-service/attributes/index.js +23 -18
  378. package/dist/services/document-service/attributes/index.js.map +1 -1
  379. package/dist/services/document-service/attributes/index.mjs +22 -19
  380. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  381. package/dist/services/document-service/attributes/transforms.js +16 -15
  382. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  383. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  384. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  385. package/dist/services/document-service/common.js +5 -4
  386. package/dist/services/document-service/common.js.map +1 -1
  387. package/dist/services/document-service/common.mjs +4 -5
  388. package/dist/services/document-service/common.mjs.map +1 -1
  389. package/dist/services/document-service/components.d.ts.map +1 -1
  390. package/dist/services/document-service/components.js +255 -257
  391. package/dist/services/document-service/components.js.map +1 -1
  392. package/dist/services/document-service/components.mjs +254 -262
  393. package/dist/services/document-service/components.mjs.map +1 -1
  394. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  395. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  396. package/dist/services/document-service/draft-and-publish.js +88 -48
  397. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  398. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  399. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  400. package/dist/services/document-service/entries.d.ts.map +1 -1
  401. package/dist/services/document-service/entries.js +151 -91
  402. package/dist/services/document-service/entries.js.map +1 -1
  403. package/dist/services/document-service/entries.mjs +150 -92
  404. package/dist/services/document-service/entries.mjs.map +1 -1
  405. package/dist/services/document-service/events.d.ts +1 -1
  406. package/dist/services/document-service/events.d.ts.map +1 -1
  407. package/dist/services/document-service/events.js +52 -40
  408. package/dist/services/document-service/events.js.map +1 -1
  409. package/dist/services/document-service/events.mjs +51 -41
  410. package/dist/services/document-service/events.mjs.map +1 -1
  411. package/dist/services/document-service/index.js +53 -33
  412. package/dist/services/document-service/index.js.map +1 -1
  413. package/dist/services/document-service/index.mjs +52 -34
  414. package/dist/services/document-service/index.mjs.map +1 -1
  415. package/dist/services/document-service/internationalization.d.ts +6 -1
  416. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  417. package/dist/services/document-service/internationalization.js +94 -46
  418. package/dist/services/document-service/internationalization.js.map +1 -1
  419. package/dist/services/document-service/internationalization.mjs +92 -50
  420. package/dist/services/document-service/internationalization.mjs.map +1 -1
  421. package/dist/services/document-service/middlewares/errors.js +23 -19
  422. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  423. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  424. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  425. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  426. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  427. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  428. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  429. package/dist/services/document-service/params.js +11 -5
  430. package/dist/services/document-service/params.js.map +1 -1
  431. package/dist/services/document-service/params.mjs +10 -6
  432. package/dist/services/document-service/params.mjs.map +1 -1
  433. package/dist/services/document-service/repository.d.ts.map +1 -1
  434. package/dist/services/document-service/repository.js +355 -319
  435. package/dist/services/document-service/repository.js.map +1 -1
  436. package/dist/services/document-service/repository.mjs +354 -320
  437. package/dist/services/document-service/repository.mjs.map +1 -1
  438. package/dist/services/document-service/transform/data.js +22 -12
  439. package/dist/services/document-service/transform/data.js.map +1 -1
  440. package/dist/services/document-service/transform/data.mjs +21 -13
  441. package/dist/services/document-service/transform/data.mjs.map +1 -1
  442. package/dist/services/document-service/transform/fields.js +26 -17
  443. package/dist/services/document-service/transform/fields.js.map +1 -1
  444. package/dist/services/document-service/transform/fields.mjs +25 -18
  445. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  446. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  447. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  448. package/dist/services/document-service/transform/id-map.js +115 -77
  449. package/dist/services/document-service/transform/id-map.js.map +1 -1
  450. package/dist/services/document-service/transform/id-map.mjs +114 -78
  451. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  452. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  453. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  454. package/dist/services/document-service/transform/id-transform.js +37 -29
  455. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  456. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  457. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  458. package/dist/services/document-service/transform/populate.js +23 -18
  459. package/dist/services/document-service/transform/populate.js.map +1 -1
  460. package/dist/services/document-service/transform/populate.mjs +22 -19
  461. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  462. package/dist/services/document-service/transform/query.js +11 -6
  463. package/dist/services/document-service/transform/query.js.map +1 -1
  464. package/dist/services/document-service/transform/query.mjs +10 -7
  465. package/dist/services/document-service/transform/query.mjs.map +1 -1
  466. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  467. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  468. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  469. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  470. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  471. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  472. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  473. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  474. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  475. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  476. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  477. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  478. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  479. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  480. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  481. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  482. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  483. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  484. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  485. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  486. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  487. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  488. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  489. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  490. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  491. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  492. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  493. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  494. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  495. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  496. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  497. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  498. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  499. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  500. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  501. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  502. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  503. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  504. package/dist/services/document-service/utils/populate.d.ts +1 -1
  505. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  506. package/dist/services/document-service/utils/populate.js +66 -42
  507. package/dist/services/document-service/utils/populate.js.map +1 -1
  508. package/dist/services/document-service/utils/populate.mjs +65 -43
  509. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  510. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  511. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  512. package/dist/services/document-service/utils/unidirectional-relations.js +109 -62
  513. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  514. package/dist/services/document-service/utils/unidirectional-relations.mjs +108 -64
  515. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  516. package/dist/services/entity-service/index.js +230 -161
  517. package/dist/services/entity-service/index.js.map +1 -1
  518. package/dist/services/entity-service/index.mjs +229 -160
  519. package/dist/services/entity-service/index.mjs.map +1 -1
  520. package/dist/services/entity-validator/blocks-validator.js +135 -103
  521. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  522. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  523. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  524. package/dist/services/entity-validator/index.d.ts +1 -1
  525. package/dist/services/entity-validator/index.d.ts.map +1 -1
  526. package/dist/services/entity-validator/index.js +370 -366
  527. package/dist/services/entity-validator/index.js.map +1 -1
  528. package/dist/services/entity-validator/index.mjs +366 -363
  529. package/dist/services/entity-validator/index.mjs.map +1 -1
  530. package/dist/services/entity-validator/validators.d.ts +1 -0
  531. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  532. package/dist/services/entity-validator/validators.js +270 -209
  533. package/dist/services/entity-validator/validators.js.map +1 -1
  534. package/dist/services/entity-validator/validators.mjs +269 -215
  535. package/dist/services/entity-validator/validators.mjs.map +1 -1
  536. package/dist/services/errors.js +65 -65
  537. package/dist/services/errors.js.map +1 -1
  538. package/dist/services/errors.mjs +64 -66
  539. package/dist/services/errors.mjs.map +1 -1
  540. package/dist/services/event-hub.js +82 -69
  541. package/dist/services/event-hub.js.map +1 -1
  542. package/dist/services/event-hub.mjs +81 -71
  543. package/dist/services/event-hub.mjs.map +1 -1
  544. package/dist/services/features.js +19 -14
  545. package/dist/services/features.js.map +1 -1
  546. package/dist/services/features.mjs +18 -15
  547. package/dist/services/features.mjs.map +1 -1
  548. package/dist/services/fs.js +41 -40
  549. package/dist/services/fs.js.map +1 -1
  550. package/dist/services/fs.mjs +40 -39
  551. package/dist/services/fs.mjs.map +1 -1
  552. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  553. package/dist/services/metrics/admin-user-hash.js +13 -11
  554. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  555. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  556. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  557. package/dist/services/metrics/index.js +46 -40
  558. package/dist/services/metrics/index.js.map +1 -1
  559. package/dist/services/metrics/index.mjs +45 -42
  560. package/dist/services/metrics/index.mjs.map +1 -1
  561. package/dist/services/metrics/is-truthy.js +13 -6
  562. package/dist/services/metrics/is-truthy.js.map +1 -1
  563. package/dist/services/metrics/is-truthy.mjs +12 -6
  564. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  565. package/dist/services/metrics/middleware.d.ts.map +1 -1
  566. package/dist/services/metrics/middleware.js +37 -22
  567. package/dist/services/metrics/middleware.js.map +1 -1
  568. package/dist/services/metrics/middleware.mjs +36 -24
  569. package/dist/services/metrics/middleware.mjs.map +1 -1
  570. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  571. package/dist/services/metrics/rate-limiter.js +24 -19
  572. package/dist/services/metrics/rate-limiter.js.map +1 -1
  573. package/dist/services/metrics/rate-limiter.mjs +23 -21
  574. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  575. package/dist/services/metrics/sender.d.ts.map +1 -1
  576. package/dist/services/metrics/sender.js +78 -69
  577. package/dist/services/metrics/sender.js.map +1 -1
  578. package/dist/services/metrics/sender.mjs +77 -64
  579. package/dist/services/metrics/sender.mjs.map +1 -1
  580. package/dist/services/query-params.js +13 -10
  581. package/dist/services/query-params.js.map +1 -1
  582. package/dist/services/query-params.mjs +12 -12
  583. package/dist/services/query-params.mjs.map +1 -1
  584. package/dist/services/reloader.js +35 -32
  585. package/dist/services/reloader.js.map +1 -1
  586. package/dist/services/reloader.mjs +34 -33
  587. package/dist/services/reloader.mjs.map +1 -1
  588. package/dist/services/request-context.js +11 -8
  589. package/dist/services/request-context.js.map +1 -1
  590. package/dist/services/request-context.mjs +10 -10
  591. package/dist/services/request-context.mjs.map +1 -1
  592. package/dist/services/server/admin-api.js +11 -10
  593. package/dist/services/server/admin-api.js.map +1 -1
  594. package/dist/services/server/admin-api.mjs +10 -11
  595. package/dist/services/server/admin-api.mjs.map +1 -1
  596. package/dist/services/server/api.js +33 -27
  597. package/dist/services/server/api.js.map +1 -1
  598. package/dist/services/server/api.mjs +32 -26
  599. package/dist/services/server/api.mjs.map +1 -1
  600. package/dist/services/server/compose-endpoint.js +116 -105
  601. package/dist/services/server/compose-endpoint.js.map +1 -1
  602. package/dist/services/server/compose-endpoint.mjs +115 -105
  603. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  604. package/dist/services/server/content-api.js +11 -9
  605. package/dist/services/server/content-api.js.map +1 -1
  606. package/dist/services/server/content-api.mjs +10 -10
  607. package/dist/services/server/content-api.mjs.map +1 -1
  608. package/dist/services/server/http-server.js +48 -44
  609. package/dist/services/server/http-server.js.map +1 -1
  610. package/dist/services/server/http-server.mjs +47 -43
  611. package/dist/services/server/http-server.mjs.map +1 -1
  612. package/dist/services/server/index.js +85 -82
  613. package/dist/services/server/index.js.map +1 -1
  614. package/dist/services/server/index.mjs +84 -81
  615. package/dist/services/server/index.mjs.map +1 -1
  616. package/dist/services/server/koa.js +49 -47
  617. package/dist/services/server/koa.js.map +1 -1
  618. package/dist/services/server/koa.mjs +48 -44
  619. package/dist/services/server/koa.mjs.map +1 -1
  620. package/dist/services/server/middleware.js +86 -82
  621. package/dist/services/server/middleware.js.map +1 -1
  622. package/dist/services/server/middleware.mjs +85 -82
  623. package/dist/services/server/middleware.mjs.map +1 -1
  624. package/dist/services/server/policy.js +24 -17
  625. package/dist/services/server/policy.js.map +1 -1
  626. package/dist/services/server/policy.mjs +23 -18
  627. package/dist/services/server/policy.mjs.map +1 -1
  628. package/dist/services/server/register-middlewares.js +68 -61
  629. package/dist/services/server/register-middlewares.js.map +1 -1
  630. package/dist/services/server/register-middlewares.mjs +67 -63
  631. package/dist/services/server/register-middlewares.mjs.map +1 -1
  632. package/dist/services/server/register-routes.js +90 -67
  633. package/dist/services/server/register-routes.js.map +1 -1
  634. package/dist/services/server/register-routes.mjs +89 -67
  635. package/dist/services/server/register-routes.mjs.map +1 -1
  636. package/dist/services/server/routing.js +94 -81
  637. package/dist/services/server/routing.js.map +1 -1
  638. package/dist/services/server/routing.mjs +93 -81
  639. package/dist/services/server/routing.mjs.map +1 -1
  640. package/dist/services/utils/conditional-fields.d.ts +3 -0
  641. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  642. package/dist/services/utils/conditional-fields.js +22 -0
  643. package/dist/services/utils/conditional-fields.js.map +1 -0
  644. package/dist/services/utils/conditional-fields.mjs +20 -0
  645. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  646. package/dist/services/utils/dynamic-zones.js +13 -14
  647. package/dist/services/utils/dynamic-zones.js.map +1 -1
  648. package/dist/services/utils/dynamic-zones.mjs +12 -16
  649. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  650. package/dist/services/webhook-runner.js +124 -122
  651. package/dist/services/webhook-runner.js.map +1 -1
  652. package/dist/services/webhook-runner.mjs +123 -121
  653. package/dist/services/webhook-runner.mjs.map +1 -1
  654. package/dist/services/webhook-store.js +132 -99
  655. package/dist/services/webhook-store.js.map +1 -1
  656. package/dist/services/webhook-store.mjs +131 -101
  657. package/dist/services/webhook-store.mjs.map +1 -1
  658. package/dist/services/worker-queue.js +44 -49
  659. package/dist/services/worker-queue.js.map +1 -1
  660. package/dist/services/worker-queue.mjs +43 -49
  661. package/dist/services/worker-queue.mjs.map +1 -1
  662. package/dist/utils/convert-custom-field-type.js +17 -20
  663. package/dist/utils/convert-custom-field-type.js.map +1 -1
  664. package/dist/utils/convert-custom-field-type.mjs +16 -21
  665. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  666. package/dist/utils/cron.js +64 -30
  667. package/dist/utils/cron.js.map +1 -1
  668. package/dist/utils/cron.mjs +63 -31
  669. package/dist/utils/cron.mjs.map +1 -1
  670. package/dist/utils/fetch.d.ts +5 -1
  671. package/dist/utils/fetch.d.ts.map +1 -1
  672. package/dist/utils/fetch.js +28 -18
  673. package/dist/utils/fetch.js.map +1 -1
  674. package/dist/utils/fetch.mjs +27 -19
  675. package/dist/utils/fetch.mjs.map +1 -1
  676. package/dist/utils/filepath-to-prop-path.js +20 -28
  677. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  678. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  679. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  680. package/dist/utils/is-initialized.js +21 -12
  681. package/dist/utils/is-initialized.js.map +1 -1
  682. package/dist/utils/is-initialized.mjs +20 -13
  683. package/dist/utils/is-initialized.mjs.map +1 -1
  684. package/dist/utils/lifecycles.js +6 -5
  685. package/dist/utils/lifecycles.js.map +1 -1
  686. package/dist/utils/lifecycles.mjs +5 -6
  687. package/dist/utils/lifecycles.mjs.map +1 -1
  688. package/dist/utils/load-config-file.js +40 -38
  689. package/dist/utils/load-config-file.js.map +1 -1
  690. package/dist/utils/load-config-file.mjs +39 -36
  691. package/dist/utils/load-config-file.mjs.map +1 -1
  692. package/dist/utils/load-files.js +40 -35
  693. package/dist/utils/load-files.js.map +1 -1
  694. package/dist/utils/load-files.mjs +39 -32
  695. package/dist/utils/load-files.mjs.map +1 -1
  696. package/dist/utils/open-browser.js +8 -8
  697. package/dist/utils/open-browser.js.map +1 -1
  698. package/dist/utils/open-browser.mjs +7 -7
  699. package/dist/utils/open-browser.mjs.map +1 -1
  700. package/dist/utils/resolve-working-dirs.js +23 -10
  701. package/dist/utils/resolve-working-dirs.js.map +1 -1
  702. package/dist/utils/resolve-working-dirs.mjs +22 -9
  703. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  704. package/dist/utils/signals.js +20 -14
  705. package/dist/utils/signals.js.map +1 -1
  706. package/dist/utils/signals.mjs +19 -15
  707. package/dist/utils/signals.mjs.map +1 -1
  708. package/dist/utils/startup-logger.d.ts.map +1 -1
  709. package/dist/utils/startup-logger.js +107 -78
  710. package/dist/utils/startup-logger.js.map +1 -1
  711. package/dist/utils/startup-logger.mjs +106 -75
  712. package/dist/utils/startup-logger.mjs.map +1 -1
  713. package/dist/utils/transform-content-types-to-models.d.ts +225 -0
  714. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  715. package/dist/utils/transform-content-types-to-models.js +350 -261
  716. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  717. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  718. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  719. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  720. package/dist/utils/update-notifier/index.js +68 -73
  721. package/dist/utils/update-notifier/index.js.map +1 -1
  722. package/dist/utils/update-notifier/index.mjs +67 -67
  723. package/dist/utils/update-notifier/index.mjs.map +1 -1
  724. package/package.json +27 -26
@@ -1,329 +1,363 @@
1
- import { curry, assoc, omit, merge } from "lodash/fp";
2
- import { contentTypes, async, validate } from "@strapi/utils";
3
- import { wrapInTransaction } from "./common.mjs";
4
- import { defaultToDraft as defaultToDraftCurry, statusToLookup as statusToLookupCurry, filterDataPublishedAt as filterDataPublishedAtCurry, setStatusToDraft as setStatusToDraftCurry, statusToData as statusToDataCurry, defaultStatus as defaultStatusCurry } from "./draft-and-publish.mjs";
5
- import { defaultLocale as defaultLocaleCurry, multiLocaleToLookup as multiLocaleToLookupCurry, localeToLookup as localeToLookupCurry, localeToData as localeToDataCurry } from "./internationalization.mjs";
6
- import { updateComponents, omitComponentData } from "./components.mjs";
7
- import { createEntriesService } from "./entries.mjs";
8
- import { pickSelectionParams } from "./params.mjs";
9
- import { createDocumentId } from "../../utils/transform-content-types-to-models.mjs";
10
- import { getDeepPopulate } from "./utils/populate.mjs";
11
- import { transformParamsToQuery } from "./transform/query.mjs";
12
- import { transformParamsDocumentId as curriedTransformParamsDocumentId } from "./transform/id-transform.mjs";
13
- import { createEventManager } from "./events.mjs";
14
- import { load, sync } from "./utils/unidirectional-relations.mjs";
15
- import entityValidator from "../entity-validator/index.mjs";
1
+ import { curry, assoc, omit, merge } from 'lodash/fp';
2
+ import { contentTypes, async, errors, validate } from '@strapi/utils';
3
+ import { wrapInTransaction } from './common.mjs';
4
+ import { defaultToDraft as defaultToDraftCurry, statusToLookup as statusToLookupCurry, filterDataPublishedAt as filterDataPublishedAtCurry, setStatusToDraft as setStatusToDraftCurry, statusToData as statusToDataCurry, defaultStatus as defaultStatusCurry } from './draft-and-publish.mjs';
5
+ import { defaultLocale as defaultLocaleCurry, multiLocaleToLookup as multiLocaleToLookupCurry, localeToLookup as localeToLookupCurry, localeToData as localeToDataCurry, copyNonLocalizedFields } from './internationalization.mjs';
6
+ import { updateComponents, omitComponentData } from './components.mjs';
7
+ import { createEntriesService } from './entries.mjs';
8
+ import { pickSelectionParams } from './params.mjs';
9
+ import { createDocumentId } from '../../utils/transform-content-types-to-models.mjs';
10
+ import { getDeepPopulate } from './utils/populate.mjs';
11
+ import { transformParamsToQuery } from './transform/query.mjs';
12
+ import { transformParamsDocumentId as curriedTransformParamsDocumentId } from './transform/id-transform.mjs';
13
+ import { createEventManager } from './events.mjs';
14
+ import { load, sync } from './utils/unidirectional-relations.mjs';
15
+ import { load as load$1, sync as sync$1 } from './utils/bidirectional-relations.mjs';
16
+ import entityValidator from '../entity-validator/index.mjs';
17
+
16
18
  const { validators } = validate;
17
- const getModel = (schema) => strapi.getModel(schema);
18
- const createContentTypeRepository = (uid, validator = entityValidator) => {
19
- const contentType = strapi.contentType(uid);
20
- const hasDraftAndPublish = contentTypes.hasDraftAndPublish(contentType);
21
- const sortValidations = ["nonAttributesOperators", "dynamicZones", "morphRelations"];
22
- const fieldValidations = ["scalarAttributes"];
23
- const filtersValidations = ["nonAttributesOperators", "dynamicZones", "morphRelations"];
24
- const populateValidations = {
25
- sort: sortValidations,
26
- field: fieldValidations,
27
- filters: filtersValidations,
28
- populate: ["nonAttributesOperators"]
29
- };
30
- const validateParams = async (params) => {
31
- const ctx = { schema: contentType, getModel };
32
- await validators.validateFilters(ctx, params.filters, filtersValidations);
33
- await validators.validateSort(ctx, params.sort, sortValidations);
34
- await validators.validateFields(ctx, params.fields, fieldValidations);
35
- await validators.validatePopulate(ctx, params.populate, populateValidations);
36
- return params;
37
- };
38
- const entries = createEntriesService(uid, validator);
39
- const eventManager = createEventManager(strapi, uid);
40
- const emitEvent = curry(eventManager.emitEvent);
41
- async function findMany(params = {}) {
42
- const query = await async.pipe(
43
- validateParams,
44
- defaultToDraftCurry,
45
- statusToLookupCurry(contentType),
46
- defaultLocaleCurry(contentType),
47
- multiLocaleToLookupCurry(contentType),
48
- curriedTransformParamsDocumentId(uid),
49
- transformParamsToQuery(uid)
50
- )(params || {});
51
- return strapi.db.query(uid).findMany(query);
52
- }
53
- async function findFirst(params = {}) {
54
- const query = await async.pipe(
55
- validateParams,
56
- defaultToDraftCurry,
57
- statusToLookupCurry(contentType),
58
- defaultLocaleCurry(contentType),
59
- localeToLookupCurry(contentType),
60
- curriedTransformParamsDocumentId(uid),
61
- transformParamsToQuery(uid)
62
- )(params);
63
- return strapi.db.query(uid).findOne(query);
64
- }
65
- async function findOne(opts = {}) {
66
- const { documentId, ...params } = opts;
67
- const query = await async.pipe(
68
- validateParams,
69
- defaultToDraftCurry,
70
- statusToLookupCurry(contentType),
71
- defaultLocaleCurry(contentType),
72
- localeToLookupCurry(contentType),
73
- curriedTransformParamsDocumentId(uid),
74
- transformParamsToQuery(uid),
75
- (query2) => assoc("where", { ...query2.where, documentId }, query2)
76
- )(params);
77
- return strapi.db.query(uid).findOne(query);
78
- }
79
- async function deleteDocument(opts = {}) {
80
- const { documentId, ...params } = opts;
81
- const query = await async.pipe(
82
- validateParams,
83
- omit("status"),
84
- defaultLocaleCurry(contentType),
85
- multiLocaleToLookupCurry(contentType),
86
- transformParamsToQuery(uid),
87
- (query2) => assoc("where", { ...query2.where, documentId }, query2)
88
- )(params);
89
- if (params.status === "draft") {
90
- throw new Error("Cannot delete a draft document");
19
+ // we have to typecast to reconcile the differences between validator and database getModel
20
+ const getModel = (schema)=>strapi.getModel(schema);
21
+ const createContentTypeRepository = (uid, validator = entityValidator)=>{
22
+ const contentType = strapi.contentType(uid);
23
+ const hasDraftAndPublish = contentTypes.hasDraftAndPublish(contentType);
24
+ // Define the validations that should be performed
25
+ const sortValidations = [
26
+ 'nonAttributesOperators',
27
+ 'dynamicZones',
28
+ 'morphRelations'
29
+ ];
30
+ const fieldValidations = [
31
+ 'scalarAttributes'
32
+ ];
33
+ const filtersValidations = [
34
+ 'nonAttributesOperators',
35
+ 'dynamicZones',
36
+ 'morphRelations'
37
+ ];
38
+ const populateValidations = {
39
+ sort: sortValidations,
40
+ field: fieldValidations,
41
+ filters: filtersValidations,
42
+ populate: [
43
+ 'nonAttributesOperators'
44
+ ]
45
+ };
46
+ const validateParams = async (params)=>{
47
+ const ctx = {
48
+ schema: contentType,
49
+ getModel
50
+ };
51
+ await validators.validateFilters(ctx, params.filters, filtersValidations);
52
+ await validators.validateSort(ctx, params.sort, sortValidations);
53
+ await validators.validateFields(ctx, params.fields, fieldValidations);
54
+ await validators.validatePopulate(ctx, params.populate, populateValidations);
55
+ // Strip lookup from params, it's only used internally
56
+ if (params.lookup) {
57
+ throw new errors.ValidationError("Invalid params: 'lookup'");
58
+ }
59
+ // TODO: add validate status, locale, pagination
60
+ return params;
61
+ };
62
+ const entries = createEntriesService(uid, validator);
63
+ const eventManager = createEventManager(strapi, uid);
64
+ const emitEvent = curry(eventManager.emitEvent);
65
+ async function findMany(params = {}) {
66
+ const query = await async.pipe(validateParams, defaultToDraftCurry, statusToLookupCurry(contentType), defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType), curriedTransformParamsDocumentId(uid), transformParamsToQuery(uid))(params || {});
67
+ return strapi.db.query(uid).findMany(query);
91
68
  }
92
- const entriesToDelete = await strapi.db.query(uid).findMany(query);
93
- const deletedEntries = await async.map(
94
- entriesToDelete,
95
- (entryToDelete) => entries.delete(entryToDelete.id)
96
- );
97
- entriesToDelete.forEach(emitEvent("entry.delete"));
98
- return { documentId, entries: deletedEntries };
99
- }
100
- async function create(opts = {}) {
101
- const { documentId, ...params } = opts;
102
- const queryParams = await async.pipe(
103
- validateParams,
104
- filterDataPublishedAtCurry,
105
- setStatusToDraftCurry(contentType),
106
- statusToDataCurry(contentType),
107
- defaultLocaleCurry(contentType),
108
- localeToDataCurry(contentType)
109
- )(params);
110
- const doc = await entries.create(queryParams);
111
- emitEvent("entry.create", doc);
112
- if (hasDraftAndPublish && params.status === "published") {
113
- return publish({
114
- ...params,
115
- documentId: doc.documentId
116
- }).then((doc2) => doc2.entries[0]);
69
+ async function findFirst(params = {}) {
70
+ const query = await async.pipe(validateParams, defaultToDraftCurry, statusToLookupCurry(contentType), defaultLocaleCurry(contentType), localeToLookupCurry(contentType), curriedTransformParamsDocumentId(uid), transformParamsToQuery(uid))(params);
71
+ return strapi.db.query(uid).findOne(query);
117
72
  }
118
- return doc;
119
- }
120
- async function clone(opts = {}) {
121
- const { documentId, ...params } = opts;
122
- const queryParams = await async.pipe(
123
- validateParams,
124
- filterDataPublishedAtCurry,
125
- defaultLocaleCurry(contentType),
126
- multiLocaleToLookupCurry(contentType)
127
- )(params);
128
- const entriesToClone = await strapi.db.query(uid).findMany({
129
- where: {
130
- ...queryParams?.lookup,
131
- documentId,
132
- // DP Enabled: Clone drafts
133
- // DP Disabled: Clone only the existing version (published)
134
- publishedAt: { $null: hasDraftAndPublish }
135
- },
136
- populate: getDeepPopulate(uid, { relationalFields: ["id"] })
137
- });
138
- const clonedEntries = await async.map(
139
- entriesToClone,
140
- async.pipe(
141
- validateParams,
142
- omit("id"),
143
- // assign new documentId
144
- assoc("documentId", createDocumentId()),
145
- // Merge new data into it
146
- (data) => merge(data, queryParams.data),
147
- (data) => entries.create({ ...queryParams, data, status: "draft" })
148
- )
149
- );
150
- clonedEntries.forEach(emitEvent("entry.create"));
151
- return { documentId: clonedEntries.at(0)?.documentId, entries: clonedEntries };
152
- }
153
- async function update(opts = {}) {
154
- const { documentId, ...params } = opts;
155
- const queryParams = await async.pipe(
156
- validateParams,
157
- filterDataPublishedAtCurry,
158
- setStatusToDraftCurry(contentType),
159
- statusToLookupCurry(contentType),
160
- statusToDataCurry(contentType),
161
- // Default locale will be set if not provided
162
- defaultLocaleCurry(contentType),
163
- localeToLookupCurry(contentType),
164
- localeToDataCurry(contentType)
165
- )(params);
166
- const { data, ...restParams } = await curriedTransformParamsDocumentId(uid, queryParams || {});
167
- const query = transformParamsToQuery(uid, pickSelectionParams(restParams || {}));
168
- const entryToUpdate = await strapi.db.query(uid).findOne({ ...query, where: { ...queryParams?.lookup, ...query?.where, documentId } });
169
- let updatedDraft = null;
170
- if (entryToUpdate) {
171
- updatedDraft = await entries.update(entryToUpdate, queryParams);
172
- emitEvent("entry.update", updatedDraft);
73
+ // TODO: do we really want to add filters on the findOne now that we have findFirst ?
74
+ async function findOne(opts = {}) {
75
+ const { documentId, ...params } = opts;
76
+ const query = await async.pipe(validateParams, defaultToDraftCurry, statusToLookupCurry(contentType), defaultLocaleCurry(contentType), localeToLookupCurry(contentType), curriedTransformParamsDocumentId(uid), transformParamsToQuery(uid), (query)=>assoc('where', {
77
+ ...query.where,
78
+ documentId
79
+ }, query))(params);
80
+ return strapi.db.query(uid).findOne(query);
173
81
  }
174
- if (!updatedDraft) {
175
- const documentExists = await strapi.db.query(contentType.uid).findOne({ where: { documentId } });
176
- if (documentExists) {
177
- updatedDraft = await entries.create({
178
- ...queryParams,
179
- data: { ...queryParams.data, documentId }
82
+ async function deleteDocument(opts = {}) {
83
+ const { documentId, ...params } = opts;
84
+ const query = await async.pipe(validateParams, omit('status'), defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType), transformParamsToQuery(uid), (query)=>assoc('where', {
85
+ ...query.where,
86
+ documentId
87
+ }, query))(params);
88
+ if (params.status === 'draft') {
89
+ throw new Error('Cannot delete a draft document');
90
+ }
91
+ const entriesToDelete = await strapi.db.query(uid).findMany(query);
92
+ // Delete all matched entries and its components
93
+ const deletedEntries = await async.map(entriesToDelete, (entryToDelete)=>entries.delete(entryToDelete.id));
94
+ entriesToDelete.forEach(emitEvent('entry.delete'));
95
+ return {
96
+ documentId,
97
+ entries: deletedEntries
98
+ };
99
+ }
100
+ async function create(opts = {}) {
101
+ const { documentId, ...params } = opts;
102
+ const queryParams = await async.pipe(validateParams, filterDataPublishedAtCurry, setStatusToDraftCurry(contentType), statusToDataCurry(contentType), defaultLocaleCurry(contentType), localeToDataCurry(contentType))(params);
103
+ const doc = await entries.create(queryParams);
104
+ emitEvent('entry.create', doc);
105
+ if (hasDraftAndPublish && params.status === 'published') {
106
+ return publish({
107
+ ...params,
108
+ documentId: doc.documentId
109
+ }).then((doc)=>doc.entries[0]);
110
+ }
111
+ return doc;
112
+ }
113
+ async function clone(opts = {}) {
114
+ const { documentId, ...params } = opts;
115
+ const queryParams = await async.pipe(validateParams, filterDataPublishedAtCurry, defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType))(params);
116
+ // Get deep populate
117
+ const entriesToClone = await strapi.db.query(uid).findMany({
118
+ where: {
119
+ ...queryParams?.lookup,
120
+ documentId,
121
+ // DP Enabled: Clone drafts
122
+ // DP Disabled: Clone only the existing version (published)
123
+ publishedAt: {
124
+ $null: hasDraftAndPublish
125
+ }
126
+ },
127
+ populate: getDeepPopulate(uid, {
128
+ relationalFields: [
129
+ 'id'
130
+ ]
131
+ })
180
132
  });
181
- emitEvent("entry.create", updatedDraft);
182
- }
133
+ const clonedEntries = await async.map(entriesToClone, async.pipe(validateParams, omit([
134
+ 'id',
135
+ 'createdAt',
136
+ 'updatedAt'
137
+ ]), // assign new documentId
138
+ assoc('documentId', createDocumentId()), // Merge new data into it
139
+ (data)=>merge(data, queryParams.data), (data)=>entries.create({
140
+ ...queryParams,
141
+ data,
142
+ status: 'draft'
143
+ })));
144
+ clonedEntries.forEach(emitEvent('entry.create'));
145
+ return {
146
+ documentId: clonedEntries.at(0)?.documentId,
147
+ entries: clonedEntries
148
+ };
183
149
  }
184
- if (hasDraftAndPublish && updatedDraft && params.status === "published") {
185
- return publish({
186
- ...params,
187
- documentId
188
- }).then((doc) => doc.entries[0]);
150
+ async function update(opts = {}) {
151
+ const { documentId, ...params } = opts;
152
+ const queryParams = await async.pipe(validateParams, filterDataPublishedAtCurry, setStatusToDraftCurry(contentType), statusToLookupCurry(contentType), statusToDataCurry(contentType), // Default locale will be set if not provided
153
+ defaultLocaleCurry(contentType), localeToLookupCurry(contentType), localeToDataCurry(contentType))(params);
154
+ const { data, ...restParams } = await curriedTransformParamsDocumentId(uid, queryParams || {});
155
+ const query = transformParamsToQuery(uid, pickSelectionParams(restParams || {}));
156
+ // Validation
157
+ // Find if document exists
158
+ const entryToUpdate = await strapi.db.query(uid).findOne({
159
+ ...query,
160
+ where: {
161
+ ...queryParams?.lookup,
162
+ ...query?.where,
163
+ documentId
164
+ }
165
+ });
166
+ let updatedDraft = null;
167
+ if (entryToUpdate) {
168
+ updatedDraft = await entries.update(entryToUpdate, queryParams);
169
+ emitEvent('entry.update', updatedDraft);
170
+ }
171
+ if (!updatedDraft) {
172
+ const documentExists = await strapi.db.query(contentType.uid).findOne({
173
+ where: {
174
+ documentId
175
+ }
176
+ });
177
+ if (documentExists) {
178
+ const mergedData = await copyNonLocalizedFields(contentType, documentId, {
179
+ ...queryParams.data,
180
+ documentId
181
+ });
182
+ updatedDraft = await entries.create({
183
+ ...queryParams,
184
+ data: mergedData
185
+ });
186
+ emitEvent('entry.create', updatedDraft);
187
+ }
188
+ }
189
+ if (hasDraftAndPublish && updatedDraft && params.status === 'published') {
190
+ return publish({
191
+ ...params,
192
+ documentId
193
+ }).then((doc)=>doc.entries[0]);
194
+ }
195
+ return updatedDraft;
189
196
  }
190
- return updatedDraft;
191
- }
192
- async function count(params = {}) {
193
- const query = await async.pipe(
194
- validateParams,
195
- defaultStatusCurry(contentType),
196
- statusToLookupCurry(contentType),
197
- defaultLocaleCurry(contentType),
198
- localeToLookupCurry(contentType),
199
- transformParamsToQuery(uid)
200
- )(params);
201
- return strapi.db.query(uid).count(query);
202
- }
203
- async function publish(opts = {}) {
204
- const { documentId, ...params } = opts;
205
- const queryParams = await async.pipe(
206
- validateParams,
207
- defaultLocaleCurry(contentType),
208
- multiLocaleToLookupCurry(contentType)
209
- )(params);
210
- const [draftsToPublish, oldPublishedVersions] = await Promise.all([
211
- strapi.db.query(uid).findMany({
212
- where: {
213
- ...queryParams?.lookup,
214
- documentId,
215
- publishedAt: null
216
- // Ignore lookup
217
- },
218
- // Populate relations, media, compos and dz
219
- populate: getDeepPopulate(uid, { relationalFields: ["documentId", "locale"] })
220
- }),
221
- strapi.db.query(uid).findMany({
222
- where: {
223
- ...queryParams?.lookup,
224
- documentId,
225
- publishedAt: { $ne: null }
226
- },
227
- select: ["id", "locale"]
228
- })
229
- ]);
230
- const relationsToSync = await load(uid, {
231
- newVersions: draftsToPublish,
232
- oldVersions: oldPublishedVersions
233
- });
234
- await async.map(oldPublishedVersions, (entry) => entries.delete(entry.id));
235
- const publishedEntries = await async.map(
236
- draftsToPublish,
237
- (draft) => entries.publish(draft, queryParams)
238
- );
239
- await sync(
240
- [...oldPublishedVersions, ...draftsToPublish],
241
- publishedEntries,
242
- relationsToSync
243
- );
244
- publishedEntries.forEach(emitEvent("entry.publish"));
245
- return { documentId, entries: publishedEntries };
246
- }
247
- async function unpublish(opts = {}) {
248
- const { documentId, ...params } = opts;
249
- const query = await async.pipe(
250
- validateParams,
251
- defaultLocaleCurry(contentType),
252
- multiLocaleToLookupCurry(contentType),
253
- transformParamsToQuery(uid),
254
- (query2) => assoc("where", { ...query2.where, documentId, publishedAt: { $ne: null } }, query2)
255
- )(params);
256
- const versionsToDelete = await strapi.db.query(uid).findMany(query);
257
- await async.map(versionsToDelete, (entry) => entries.delete(entry.id));
258
- versionsToDelete.forEach(emitEvent("entry.unpublish"));
259
- return { documentId, entries: versionsToDelete };
260
- }
261
- async function discardDraft(opts = {}) {
262
- const { documentId, ...params } = opts;
263
- const queryParams = await async.pipe(
264
- validateParams,
265
- defaultLocaleCurry(contentType),
266
- multiLocaleToLookupCurry(contentType)
267
- )(params);
268
- const [versionsToDraft, oldDrafts] = await Promise.all([
269
- strapi.db.query(uid).findMany({
270
- where: {
271
- ...queryParams?.lookup,
272
- documentId,
273
- publishedAt: { $ne: null }
274
- },
275
- // Populate relations, media, compos and dz
276
- populate: getDeepPopulate(uid, { relationalFields: ["documentId", "locale"] })
277
- }),
278
- strapi.db.query(uid).findMany({
279
- where: {
280
- ...queryParams?.lookup,
281
- documentId,
282
- publishedAt: null
283
- },
284
- select: ["id", "locale"]
285
- })
286
- ]);
287
- const relationsToSync = await load(uid, {
288
- newVersions: versionsToDraft,
289
- oldVersions: oldDrafts
290
- });
291
- await async.map(oldDrafts, (entry) => entries.delete(entry.id));
292
- const draftEntries = await async.map(
293
- versionsToDraft,
294
- (entry) => entries.discardDraft(entry, queryParams)
295
- );
296
- await sync(
297
- [...oldDrafts, ...versionsToDraft],
298
- draftEntries,
299
- relationsToSync
300
- );
301
- draftEntries.forEach(emitEvent("entry.draft-discard"));
302
- return { documentId, entries: draftEntries };
303
- }
304
- async function updateComponents$1(entry, data) {
305
- return updateComponents(uid, entry, data);
306
- }
307
- function omitComponentData$1(data) {
308
- return omitComponentData(contentType, data);
309
- }
310
- return {
311
- findMany: wrapInTransaction(findMany),
312
- findFirst: wrapInTransaction(findFirst),
313
- findOne: wrapInTransaction(findOne),
314
- delete: wrapInTransaction(deleteDocument),
315
- create: wrapInTransaction(create),
316
- clone: wrapInTransaction(clone),
317
- update: wrapInTransaction(update),
318
- count: wrapInTransaction(count),
319
- publish: hasDraftAndPublish ? wrapInTransaction(publish) : void 0,
320
- unpublish: hasDraftAndPublish ? wrapInTransaction(unpublish) : void 0,
321
- discardDraft: hasDraftAndPublish ? wrapInTransaction(discardDraft) : void 0,
322
- updateComponents: updateComponents$1,
323
- omitComponentData: omitComponentData$1
324
- };
325
- };
326
- export {
327
- createContentTypeRepository
197
+ async function count(params = {}) {
198
+ const query = await async.pipe(validateParams, defaultStatusCurry(contentType), statusToLookupCurry(contentType), defaultLocaleCurry(contentType), localeToLookupCurry(contentType), transformParamsToQuery(uid))(params);
199
+ return strapi.db.query(uid).count(query);
200
+ }
201
+ async function publish(opts = {}) {
202
+ const { documentId, ...params } = opts;
203
+ const queryParams = await async.pipe(validateParams, defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType))(params);
204
+ const [draftsToPublish, oldPublishedVersions] = await Promise.all([
205
+ strapi.db.query(uid).findMany({
206
+ where: {
207
+ ...queryParams?.lookup,
208
+ documentId,
209
+ publishedAt: null
210
+ },
211
+ // Populate relations, media, compos and dz
212
+ populate: getDeepPopulate(uid, {
213
+ relationalFields: [
214
+ 'documentId',
215
+ 'locale'
216
+ ]
217
+ })
218
+ }),
219
+ strapi.db.query(uid).findMany({
220
+ where: {
221
+ ...queryParams?.lookup,
222
+ documentId,
223
+ publishedAt: {
224
+ $ne: null
225
+ }
226
+ },
227
+ select: [
228
+ 'id',
229
+ 'locale'
230
+ ]
231
+ })
232
+ ]);
233
+ // Load any unidirectional relation targetting the old published entries
234
+ const relationsToSync = await load(uid, {
235
+ newVersions: draftsToPublish,
236
+ oldVersions: oldPublishedVersions
237
+ });
238
+ const bidirectionalRelationsToSync = await load$1(uid, {
239
+ newVersions: draftsToPublish,
240
+ oldVersions: oldPublishedVersions
241
+ });
242
+ // Delete old published versions
243
+ await async.map(oldPublishedVersions, (entry)=>entries.delete(entry.id));
244
+ // Transform draft entry data and create published versions
245
+ const publishedEntries = await async.map(draftsToPublish, (draft)=>entries.publish(draft, queryParams));
246
+ // Sync unidirectional relations with the new published entries
247
+ await sync([
248
+ ...oldPublishedVersions,
249
+ ...draftsToPublish
250
+ ], publishedEntries, relationsToSync);
251
+ await sync$1([
252
+ ...oldPublishedVersions,
253
+ ...draftsToPublish
254
+ ], publishedEntries, bidirectionalRelationsToSync);
255
+ publishedEntries.forEach(emitEvent('entry.publish'));
256
+ return {
257
+ documentId,
258
+ entries: publishedEntries
259
+ };
260
+ }
261
+ async function unpublish(opts = {}) {
262
+ const { documentId, ...params } = opts;
263
+ const query = await async.pipe(validateParams, defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType), transformParamsToQuery(uid), (query)=>assoc('where', {
264
+ ...query.where,
265
+ documentId,
266
+ publishedAt: {
267
+ $ne: null
268
+ }
269
+ }, query))(params);
270
+ // Delete all published versions
271
+ const versionsToDelete = await strapi.db.query(uid).findMany(query);
272
+ await async.map(versionsToDelete, (entry)=>entries.delete(entry.id));
273
+ versionsToDelete.forEach(emitEvent('entry.unpublish'));
274
+ return {
275
+ documentId,
276
+ entries: versionsToDelete
277
+ };
278
+ }
279
+ async function discardDraft(opts = {}) {
280
+ const { documentId, ...params } = opts;
281
+ const queryParams = await async.pipe(validateParams, defaultLocaleCurry(contentType), multiLocaleToLookupCurry(contentType))(params);
282
+ const [versionsToDraft, oldDrafts] = await Promise.all([
283
+ strapi.db.query(uid).findMany({
284
+ where: {
285
+ ...queryParams?.lookup,
286
+ documentId,
287
+ publishedAt: {
288
+ $ne: null
289
+ }
290
+ },
291
+ // Populate relations, media, compos and dz
292
+ populate: getDeepPopulate(uid, {
293
+ relationalFields: [
294
+ 'documentId',
295
+ 'locale'
296
+ ]
297
+ })
298
+ }),
299
+ strapi.db.query(uid).findMany({
300
+ where: {
301
+ ...queryParams?.lookup,
302
+ documentId,
303
+ publishedAt: null
304
+ },
305
+ select: [
306
+ 'id',
307
+ 'locale'
308
+ ]
309
+ })
310
+ ]);
311
+ // Load any unidirectional relation targeting the old drafts
312
+ const relationsToSync = await load(uid, {
313
+ newVersions: versionsToDraft,
314
+ oldVersions: oldDrafts
315
+ });
316
+ const bidirectionalRelationsToSync = await load$1(uid, {
317
+ newVersions: versionsToDraft,
318
+ oldVersions: oldDrafts
319
+ });
320
+ // Delete old drafts
321
+ await async.map(oldDrafts, (entry)=>entries.delete(entry.id));
322
+ // Transform published entry data and create draft versions
323
+ const draftEntries = await async.map(versionsToDraft, (entry)=>entries.discardDraft(entry, queryParams));
324
+ // Sync unidirectional relations with the new draft entries
325
+ await sync([
326
+ ...oldDrafts,
327
+ ...versionsToDraft
328
+ ], draftEntries, relationsToSync);
329
+ await sync$1([
330
+ ...oldDrafts,
331
+ ...versionsToDraft
332
+ ], draftEntries, bidirectionalRelationsToSync);
333
+ draftEntries.forEach(emitEvent('entry.draft-discard'));
334
+ return {
335
+ documentId,
336
+ entries: draftEntries
337
+ };
338
+ }
339
+ async function updateComponents$1(entry, data) {
340
+ return updateComponents(uid, entry, data);
341
+ }
342
+ function omitComponentData$1(data) {
343
+ return omitComponentData(contentType, data);
344
+ }
345
+ return {
346
+ findMany: wrapInTransaction(findMany),
347
+ findFirst: wrapInTransaction(findFirst),
348
+ findOne: wrapInTransaction(findOne),
349
+ delete: wrapInTransaction(deleteDocument),
350
+ create: wrapInTransaction(create),
351
+ clone: wrapInTransaction(clone),
352
+ update: wrapInTransaction(update),
353
+ count: wrapInTransaction(count),
354
+ publish: hasDraftAndPublish ? wrapInTransaction(publish) : undefined,
355
+ unpublish: hasDraftAndPublish ? wrapInTransaction(unpublish) : undefined,
356
+ discardDraft: hasDraftAndPublish ? wrapInTransaction(discardDraft) : undefined,
357
+ updateComponents: updateComponents$1,
358
+ omitComponentData: omitComponentData$1
359
+ };
328
360
  };
361
+
362
+ export { createContentTypeRepository };
329
363
  //# sourceMappingURL=repository.mjs.map