@strapi/core 0.0.0-experimental.f8a68bc03b751aa0a66c4dcfaf83553c9b6adf2b → 0.0.0-experimental.f8df2d79a7853c4cc2ede1ecc22a5e7120b6a99c

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

Potentially problematic release.


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

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