@strapi/core 0.0.0-next.0af49f5c5ec496b0fad61ac9bfd4d0127b89d8d3 → 0.0.0-next.0fc44faf3ab6f94c481a4d426988705776878bb3

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