@strapi/core 0.0.0-experimental.a407f3bc8fb79a53cf7975140864526b6ddbac4b → 0.0.0-experimental.a53a4b1c8f7981a689823cdd719105671e1c6392

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 (778) hide show
  1. package/dist/Strapi.d.ts +49 -58
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +149 -208
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +140 -200
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/configuration/config-loader.d.ts.map +1 -1
  8. package/dist/configuration/config-loader.js +9 -5
  9. package/dist/configuration/config-loader.js.map +1 -1
  10. package/dist/configuration/config-loader.mjs +9 -5
  11. package/dist/configuration/config-loader.mjs.map +1 -1
  12. package/dist/configuration/get-dirs.d.ts +10 -0
  13. package/dist/configuration/get-dirs.d.ts.map +1 -0
  14. package/dist/{utils → configuration}/get-dirs.js +3 -2
  15. package/dist/configuration/get-dirs.js.map +1 -0
  16. package/dist/{utils → configuration}/get-dirs.mjs +3 -2
  17. package/dist/configuration/get-dirs.mjs.map +1 -0
  18. package/dist/configuration/index.d.ts +4 -7
  19. package/dist/configuration/index.d.ts.map +1 -1
  20. package/dist/configuration/index.js +10 -8
  21. package/dist/configuration/index.js.map +1 -1
  22. package/dist/configuration/index.mjs +6 -5
  23. package/dist/configuration/index.mjs.map +1 -1
  24. package/dist/configuration/urls.d.ts +8 -0
  25. package/dist/configuration/urls.d.ts.map +1 -0
  26. package/dist/configuration/urls.js +68 -0
  27. package/dist/configuration/urls.js.map +1 -0
  28. package/dist/configuration/urls.mjs +66 -0
  29. package/dist/configuration/urls.mjs.map +1 -0
  30. package/dist/container.d.ts +2 -2
  31. package/dist/container.d.ts.map +1 -1
  32. package/dist/container.js.map +1 -1
  33. package/dist/container.mjs.map +1 -1
  34. package/dist/core-api/controller/collection-type.d.ts +3 -3
  35. package/dist/core-api/controller/collection-type.d.ts.map +1 -1
  36. package/dist/core-api/controller/collection-type.js +3 -0
  37. package/dist/core-api/controller/collection-type.js.map +1 -1
  38. package/dist/core-api/controller/collection-type.mjs +3 -0
  39. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  40. package/dist/core-api/controller/index.d.ts +3 -3
  41. package/dist/core-api/controller/index.d.ts.map +1 -1
  42. package/dist/core-api/controller/index.js +11 -6
  43. package/dist/core-api/controller/index.js.map +1 -1
  44. package/dist/core-api/controller/index.mjs +12 -7
  45. package/dist/core-api/controller/index.mjs.map +1 -1
  46. package/dist/core-api/controller/single-type.d.ts +3 -3
  47. package/dist/core-api/controller/single-type.d.ts.map +1 -1
  48. package/dist/core-api/controller/single-type.js +1 -0
  49. package/dist/core-api/controller/single-type.js.map +1 -1
  50. package/dist/core-api/controller/single-type.mjs +1 -0
  51. package/dist/core-api/controller/single-type.mjs.map +1 -1
  52. package/dist/core-api/controller/transform.d.ts +10 -9
  53. package/dist/core-api/controller/transform.d.ts.map +1 -1
  54. package/dist/core-api/controller/transform.js +19 -13
  55. package/dist/core-api/controller/transform.js.map +1 -1
  56. package/dist/core-api/controller/transform.mjs +19 -13
  57. package/dist/core-api/controller/transform.mjs.map +1 -1
  58. package/dist/core-api/routes/index.d.ts.map +1 -1
  59. package/dist/core-api/service/collection-type.d.ts +11 -17
  60. package/dist/core-api/service/collection-type.d.ts.map +1 -1
  61. package/dist/core-api/service/collection-type.js +18 -7
  62. package/dist/core-api/service/collection-type.js.map +1 -1
  63. package/dist/core-api/service/collection-type.mjs +19 -8
  64. package/dist/core-api/service/collection-type.mjs.map +1 -1
  65. package/dist/core-api/service/index.d.ts +3 -3
  66. package/dist/core-api/service/index.d.ts.map +1 -1
  67. package/dist/core-api/service/index.js.map +1 -1
  68. package/dist/core-api/service/index.mjs.map +1 -1
  69. package/dist/core-api/service/pagination.d.ts +4 -11
  70. package/dist/core-api/service/pagination.d.ts.map +1 -1
  71. package/dist/core-api/service/pagination.js +14 -40
  72. package/dist/core-api/service/pagination.js.map +1 -1
  73. package/dist/core-api/service/pagination.mjs +16 -42
  74. package/dist/core-api/service/pagination.mjs.map +1 -1
  75. package/dist/core-api/service/single-type.d.ts +5 -5
  76. package/dist/core-api/service/single-type.d.ts.map +1 -1
  77. package/dist/core-api/service/single-type.js +12 -6
  78. package/dist/core-api/service/single-type.js.map +1 -1
  79. package/dist/core-api/service/single-type.mjs +12 -6
  80. package/dist/core-api/service/single-type.mjs.map +1 -1
  81. package/dist/domain/content-type/index.d.ts +1 -1
  82. package/dist/domain/content-type/index.d.ts.map +1 -1
  83. package/dist/domain/content-type/index.js +3 -0
  84. package/dist/domain/content-type/index.js.map +1 -1
  85. package/dist/domain/content-type/index.mjs +3 -0
  86. package/dist/domain/content-type/index.mjs.map +1 -1
  87. package/dist/domain/content-type/validator.d.ts.map +1 -1
  88. package/dist/domain/content-type/validator.js +1 -1
  89. package/dist/domain/content-type/validator.js.map +1 -1
  90. package/dist/domain/content-type/validator.mjs +2 -2
  91. package/dist/domain/content-type/validator.mjs.map +1 -1
  92. package/dist/domain/module/index.d.ts +24 -23
  93. package/dist/domain/module/index.d.ts.map +1 -1
  94. package/dist/domain/module/index.js +3 -3
  95. package/dist/domain/module/index.js.map +1 -1
  96. package/dist/domain/module/index.mjs +4 -4
  97. package/dist/domain/module/index.mjs.map +1 -1
  98. package/dist/ee/index.d.ts +4 -2
  99. package/dist/ee/index.d.ts.map +1 -1
  100. package/dist/ee/index.js.map +1 -1
  101. package/dist/ee/index.mjs.map +1 -1
  102. package/dist/ee/license.d.ts +2 -2
  103. package/dist/ee/license.d.ts.map +1 -1
  104. package/dist/ee/license.js +2 -1
  105. package/dist/ee/license.js.map +1 -1
  106. package/dist/ee/license.mjs +2 -1
  107. package/dist/ee/license.mjs.map +1 -1
  108. package/dist/factories.d.ts +10 -10
  109. package/dist/factories.d.ts.map +1 -1
  110. package/dist/factories.js +6 -2
  111. package/dist/factories.js.map +1 -1
  112. package/dist/factories.mjs +6 -2
  113. package/dist/factories.mjs.map +1 -1
  114. package/dist/index.d.ts +4 -2
  115. package/dist/index.d.ts.map +1 -1
  116. package/dist/index.js +25 -1
  117. package/dist/index.js.map +1 -1
  118. package/dist/index.mjs +27 -3
  119. package/dist/index.mjs.map +1 -1
  120. package/dist/loaders/admin.d.ts +2 -2
  121. package/dist/loaders/admin.d.ts.map +1 -1
  122. package/dist/loaders/admin.js +0 -1
  123. package/dist/loaders/admin.js.map +1 -1
  124. package/dist/loaders/admin.mjs +0 -1
  125. package/dist/loaders/admin.mjs.map +1 -1
  126. package/dist/loaders/apis.d.ts +2 -2
  127. package/dist/loaders/apis.d.ts.map +1 -1
  128. package/dist/loaders/apis.js +11 -11
  129. package/dist/loaders/apis.js.map +1 -1
  130. package/dist/loaders/apis.mjs +12 -12
  131. package/dist/loaders/apis.mjs.map +1 -1
  132. package/dist/loaders/components.d.ts +2 -2
  133. package/dist/loaders/components.d.ts.map +1 -1
  134. package/dist/loaders/components.js.map +1 -1
  135. package/dist/loaders/components.mjs.map +1 -1
  136. package/dist/loaders/index.d.ts +2 -2
  137. package/dist/loaders/index.d.ts.map +1 -1
  138. package/dist/loaders/index.js +0 -2
  139. package/dist/loaders/index.js.map +1 -1
  140. package/dist/loaders/index.mjs +0 -2
  141. package/dist/loaders/index.mjs.map +1 -1
  142. package/dist/loaders/middlewares.d.ts +2 -2
  143. package/dist/loaders/middlewares.d.ts.map +1 -1
  144. package/dist/loaders/middlewares.js.map +1 -1
  145. package/dist/loaders/middlewares.mjs.map +1 -1
  146. package/dist/loaders/plugins/get-enabled-plugins.d.ts +2 -2
  147. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  148. package/dist/loaders/plugins/get-enabled-plugins.js +8 -6
  149. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  150. package/dist/loaders/plugins/get-enabled-plugins.mjs +9 -7
  151. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  152. package/dist/loaders/plugins/index.d.ts +2 -2
  153. package/dist/loaders/plugins/index.d.ts.map +1 -1
  154. package/dist/loaders/plugins/index.js.map +1 -1
  155. package/dist/loaders/plugins/index.mjs.map +1 -1
  156. package/dist/loaders/policies.d.ts +2 -2
  157. package/dist/loaders/policies.d.ts.map +1 -1
  158. package/dist/loaders/policies.js.map +1 -1
  159. package/dist/loaders/policies.mjs.map +1 -1
  160. package/dist/loaders/sanitizers.d.ts +2 -2
  161. package/dist/loaders/sanitizers.d.ts.map +1 -1
  162. package/dist/loaders/sanitizers.js.map +1 -1
  163. package/dist/loaders/sanitizers.mjs.map +1 -1
  164. package/dist/loaders/src-index.d.ts +2 -2
  165. package/dist/loaders/src-index.d.ts.map +1 -1
  166. package/dist/loaders/src-index.js.map +1 -1
  167. package/dist/loaders/src-index.mjs.map +1 -1
  168. package/dist/loaders/validators.d.ts +2 -2
  169. package/dist/loaders/validators.d.ts.map +1 -1
  170. package/dist/loaders/validators.js.map +1 -1
  171. package/dist/loaders/validators.mjs.map +1 -1
  172. package/dist/middlewares/body.d.ts +4 -4
  173. package/dist/middlewares/body.d.ts.map +1 -1
  174. package/dist/middlewares/body.js +4 -4
  175. package/dist/middlewares/body.js.map +1 -1
  176. package/dist/middlewares/body.mjs +4 -4
  177. package/dist/middlewares/body.mjs.map +1 -1
  178. package/dist/middlewares/compression.d.ts +2 -2
  179. package/dist/middlewares/compression.d.ts.map +1 -1
  180. package/dist/middlewares/compression.js.map +1 -1
  181. package/dist/middlewares/compression.mjs.map +1 -1
  182. package/dist/middlewares/cors.d.ts +2 -2
  183. package/dist/middlewares/cors.d.ts.map +1 -1
  184. package/dist/middlewares/cors.js +6 -8
  185. package/dist/middlewares/cors.js.map +1 -1
  186. package/dist/middlewares/cors.mjs +6 -8
  187. package/dist/middlewares/cors.mjs.map +1 -1
  188. package/dist/middlewares/errors.d.ts +2 -2
  189. package/dist/middlewares/errors.d.ts.map +1 -1
  190. package/dist/middlewares/errors.js.map +1 -1
  191. package/dist/middlewares/errors.mjs.map +1 -1
  192. package/dist/middlewares/favicon.d.ts +2 -2
  193. package/dist/middlewares/favicon.d.ts.map +1 -1
  194. package/dist/middlewares/favicon.js.map +1 -1
  195. package/dist/middlewares/favicon.mjs.map +1 -1
  196. package/dist/middlewares/index.d.ts +2 -2
  197. package/dist/middlewares/index.d.ts.map +1 -1
  198. package/dist/middlewares/index.js.map +1 -1
  199. package/dist/middlewares/index.mjs.map +1 -1
  200. package/dist/middlewares/ip.d.ts +2 -2
  201. package/dist/middlewares/ip.d.ts.map +1 -1
  202. package/dist/middlewares/ip.js.map +1 -1
  203. package/dist/middlewares/ip.mjs.map +1 -1
  204. package/dist/middlewares/logger.d.ts +2 -2
  205. package/dist/middlewares/logger.d.ts.map +1 -1
  206. package/dist/middlewares/logger.js.map +1 -1
  207. package/dist/middlewares/logger.mjs.map +1 -1
  208. package/dist/middlewares/powered-by.d.ts +2 -2
  209. package/dist/middlewares/powered-by.d.ts.map +1 -1
  210. package/dist/middlewares/powered-by.js.map +1 -1
  211. package/dist/middlewares/powered-by.mjs.map +1 -1
  212. package/dist/middlewares/public.d.ts +2 -2
  213. package/dist/middlewares/public.d.ts.map +1 -1
  214. package/dist/middlewares/public.js +1 -1
  215. package/dist/middlewares/public.js.map +1 -1
  216. package/dist/middlewares/public.mjs +1 -1
  217. package/dist/middlewares/public.mjs.map +1 -1
  218. package/dist/middlewares/query.d.ts +2 -2
  219. package/dist/middlewares/query.d.ts.map +1 -1
  220. package/dist/middlewares/query.js.map +1 -1
  221. package/dist/middlewares/query.mjs.map +1 -1
  222. package/dist/middlewares/response-time.d.ts +2 -2
  223. package/dist/middlewares/response-time.d.ts.map +1 -1
  224. package/dist/middlewares/response-time.js.map +1 -1
  225. package/dist/middlewares/response-time.mjs.map +1 -1
  226. package/dist/middlewares/responses.d.ts +3 -3
  227. package/dist/middlewares/responses.d.ts.map +1 -1
  228. package/dist/middlewares/responses.js.map +1 -1
  229. package/dist/middlewares/responses.mjs.map +1 -1
  230. package/dist/middlewares/security.d.ts +2 -2
  231. package/dist/middlewares/security.d.ts.map +1 -1
  232. package/dist/middlewares/security.js +11 -4
  233. package/dist/middlewares/security.js.map +1 -1
  234. package/dist/middlewares/security.mjs +12 -5
  235. package/dist/middlewares/security.mjs.map +1 -1
  236. package/dist/middlewares/session.d.ts +2 -2
  237. package/dist/middlewares/session.d.ts.map +1 -1
  238. package/dist/middlewares/session.js.map +1 -1
  239. package/dist/middlewares/session.mjs.map +1 -1
  240. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +30 -0
  241. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -0
  242. package/dist/migrations/database/5.0.0-discard-drafts.js +50 -0
  243. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -0
  244. package/dist/migrations/database/5.0.0-discard-drafts.mjs +50 -0
  245. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -0
  246. package/dist/migrations/draft-publish.d.ts +17 -0
  247. package/dist/migrations/draft-publish.d.ts.map +1 -0
  248. package/dist/migrations/draft-publish.js +42 -0
  249. package/dist/migrations/draft-publish.js.map +1 -0
  250. package/dist/migrations/draft-publish.mjs +42 -0
  251. package/dist/migrations/draft-publish.mjs.map +1 -0
  252. package/dist/providers/admin.d.ts +3 -0
  253. package/dist/providers/admin.d.ts.map +1 -0
  254. package/dist/providers/admin.js +20 -0
  255. package/dist/providers/admin.js.map +1 -0
  256. package/dist/providers/admin.mjs +21 -0
  257. package/dist/providers/admin.mjs.map +1 -0
  258. package/dist/providers/coreStore.d.ts +3 -0
  259. package/dist/providers/coreStore.d.ts.map +1 -0
  260. package/dist/providers/coreStore.js +11 -0
  261. package/dist/providers/coreStore.js.map +1 -0
  262. package/dist/providers/coreStore.mjs +12 -0
  263. package/dist/providers/coreStore.mjs.map +1 -0
  264. package/dist/providers/cron.d.ts +3 -0
  265. package/dist/providers/cron.d.ts.map +1 -0
  266. package/dist/providers/cron.js +20 -0
  267. package/dist/providers/cron.js.map +1 -0
  268. package/dist/providers/cron.mjs +21 -0
  269. package/dist/providers/cron.mjs.map +1 -0
  270. package/dist/providers/index.d.ts +3 -0
  271. package/dist/providers/index.d.ts.map +1 -0
  272. package/dist/providers/index.js +11 -0
  273. package/dist/providers/index.js.map +1 -0
  274. package/dist/providers/index.mjs +11 -0
  275. package/dist/providers/index.mjs.map +1 -0
  276. package/dist/providers/provider.d.ts +9 -0
  277. package/dist/providers/provider.d.ts.map +1 -0
  278. package/dist/providers/provider.js +5 -0
  279. package/dist/providers/provider.js.map +1 -0
  280. package/dist/providers/provider.mjs +5 -0
  281. package/dist/providers/provider.mjs.map +1 -0
  282. package/dist/providers/registries.d.ts +3 -0
  283. package/dist/providers/registries.d.ts.map +1 -0
  284. package/dist/providers/registries.js +35 -0
  285. package/dist/providers/registries.js.map +1 -0
  286. package/dist/providers/registries.mjs +36 -0
  287. package/dist/providers/registries.mjs.map +1 -0
  288. package/dist/providers/telemetry.d.ts +3 -0
  289. package/dist/providers/telemetry.d.ts.map +1 -0
  290. package/dist/providers/telemetry.js +19 -0
  291. package/dist/providers/telemetry.js.map +1 -0
  292. package/dist/providers/telemetry.mjs +20 -0
  293. package/dist/providers/telemetry.mjs.map +1 -0
  294. package/dist/providers/webhooks.d.ts +3 -0
  295. package/dist/providers/webhooks.d.ts.map +1 -0
  296. package/dist/providers/webhooks.js +30 -0
  297. package/dist/providers/webhooks.js.map +1 -0
  298. package/dist/providers/webhooks.mjs +31 -0
  299. package/dist/providers/webhooks.mjs.map +1 -0
  300. package/dist/registries/apis.d.ts +2 -2
  301. package/dist/registries/apis.d.ts.map +1 -1
  302. package/dist/registries/apis.js.map +1 -1
  303. package/dist/registries/apis.mjs.map +1 -1
  304. package/dist/registries/components.d.ts +6 -6
  305. package/dist/registries/components.d.ts.map +1 -1
  306. package/dist/registries/components.js.map +1 -1
  307. package/dist/registries/components.mjs.map +1 -1
  308. package/dist/registries/content-types.d.ts +5 -5
  309. package/dist/registries/content-types.d.ts.map +1 -1
  310. package/dist/registries/content-types.js.map +1 -1
  311. package/dist/registries/content-types.mjs.map +1 -1
  312. package/dist/registries/controllers.d.ts +10 -10
  313. package/dist/registries/controllers.d.ts.map +1 -1
  314. package/dist/registries/controllers.js.map +1 -1
  315. package/dist/registries/controllers.mjs.map +1 -1
  316. package/dist/registries/custom-fields.d.ts +3 -3
  317. package/dist/registries/custom-fields.d.ts.map +1 -1
  318. package/dist/registries/custom-fields.js.map +1 -1
  319. package/dist/registries/custom-fields.mjs.map +1 -1
  320. package/dist/registries/index.d.ts +0 -1
  321. package/dist/registries/index.d.ts.map +1 -1
  322. package/dist/registries/middlewares.d.ts +6 -6
  323. package/dist/registries/middlewares.d.ts.map +1 -1
  324. package/dist/registries/middlewares.js.map +1 -1
  325. package/dist/registries/middlewares.mjs.map +1 -1
  326. package/dist/registries/modules.d.ts +2 -2
  327. package/dist/registries/modules.d.ts.map +1 -1
  328. package/dist/registries/modules.js.map +1 -1
  329. package/dist/registries/modules.mjs.map +1 -1
  330. package/dist/registries/plugins.d.ts +5 -5
  331. package/dist/registries/plugins.d.ts.map +1 -1
  332. package/dist/registries/plugins.js.map +1 -1
  333. package/dist/registries/plugins.mjs.map +1 -1
  334. package/dist/registries/policies.d.ts +23 -11
  335. package/dist/registries/policies.d.ts.map +1 -1
  336. package/dist/registries/policies.js +64 -18
  337. package/dist/registries/policies.js.map +1 -1
  338. package/dist/registries/policies.mjs +65 -19
  339. package/dist/registries/policies.mjs.map +1 -1
  340. package/dist/registries/services.d.ts +8 -8
  341. package/dist/registries/services.d.ts.map +1 -1
  342. package/dist/registries/services.js.map +1 -1
  343. package/dist/registries/services.mjs.map +1 -1
  344. package/dist/services/auth/index.d.ts +4 -4
  345. package/dist/services/auth/index.d.ts.map +1 -1
  346. package/dist/services/auth/index.js.map +1 -1
  347. package/dist/services/auth/index.mjs.map +1 -1
  348. package/dist/services/config.d.ts +3 -0
  349. package/dist/services/config.d.ts.map +1 -0
  350. package/dist/services/config.js +47 -0
  351. package/dist/services/config.js.map +1 -0
  352. package/dist/services/config.mjs +47 -0
  353. package/dist/services/config.mjs.map +1 -0
  354. package/dist/services/content-api/index.d.ts +21 -3
  355. package/dist/services/content-api/index.d.ts.map +1 -1
  356. package/dist/services/content-api/index.js +28 -2
  357. package/dist/services/content-api/index.js.map +1 -1
  358. package/dist/services/content-api/index.mjs +28 -2
  359. package/dist/services/content-api/index.mjs.map +1 -1
  360. package/dist/services/content-api/permissions/index.d.ts +3 -3
  361. package/dist/services/content-api/permissions/index.d.ts.map +1 -1
  362. package/dist/services/content-api/permissions/index.js +1 -1
  363. package/dist/services/content-api/permissions/index.js.map +1 -1
  364. package/dist/services/content-api/permissions/index.mjs +1 -1
  365. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  366. package/dist/services/core-store.d.ts.map +1 -1
  367. package/dist/services/cron.d.ts +2 -2
  368. package/dist/services/cron.d.ts.map +1 -1
  369. package/dist/services/cron.js.map +1 -1
  370. package/dist/services/cron.mjs.map +1 -1
  371. package/dist/services/custom-fields.d.ts +2 -2
  372. package/dist/services/custom-fields.d.ts.map +1 -1
  373. package/dist/services/custom-fields.js.map +1 -1
  374. package/dist/services/custom-fields.mjs.map +1 -1
  375. package/dist/services/document-service/attributes/index.d.ts +6 -0
  376. package/dist/services/document-service/attributes/index.d.ts.map +1 -0
  377. package/dist/services/{entity-service → document-service}/attributes/index.js +5 -5
  378. package/dist/services/document-service/attributes/index.js.map +1 -0
  379. package/dist/services/{entity-service → document-service}/attributes/index.mjs +5 -5
  380. package/dist/services/document-service/attributes/index.mjs.map +1 -0
  381. package/dist/services/document-service/attributes/transforms.d.ts +10 -0
  382. package/dist/services/document-service/attributes/transforms.d.ts.map +1 -0
  383. package/dist/services/document-service/attributes/transforms.js.map +1 -0
  384. package/dist/services/document-service/attributes/transforms.mjs.map +1 -0
  385. package/dist/services/document-service/common.d.ts +2 -2
  386. package/dist/services/document-service/common.d.ts.map +1 -1
  387. package/dist/services/document-service/common.js.map +1 -1
  388. package/dist/services/document-service/common.mjs.map +1 -1
  389. package/dist/services/document-service/components.d.ts +25 -1
  390. package/dist/services/document-service/components.d.ts.map +1 -1
  391. package/dist/services/{entity-service → document-service}/components.js +46 -142
  392. package/dist/services/document-service/components.js.map +1 -0
  393. package/dist/services/{entity-service → document-service}/components.mjs +48 -144
  394. package/dist/services/document-service/components.mjs.map +1 -0
  395. package/dist/services/document-service/draft-and-publish.d.ts +9 -23
  396. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  397. package/dist/services/document-service/draft-and-publish.js +37 -9
  398. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  399. package/dist/services/document-service/draft-and-publish.mjs +38 -10
  400. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  401. package/dist/services/document-service/entries.d.ts +10 -0
  402. package/dist/services/document-service/entries.d.ts.map +1 -0
  403. package/dist/services/document-service/entries.js +96 -0
  404. package/dist/services/document-service/entries.js.map +1 -0
  405. package/dist/services/document-service/entries.mjs +96 -0
  406. package/dist/services/document-service/entries.mjs.map +1 -0
  407. package/dist/services/document-service/events.d.ts +25 -0
  408. package/dist/services/document-service/events.d.ts.map +1 -0
  409. package/dist/services/document-service/events.js +47 -0
  410. package/dist/services/document-service/events.js.map +1 -0
  411. package/dist/services/document-service/events.mjs +47 -0
  412. package/dist/services/document-service/events.mjs.map +1 -0
  413. package/dist/services/document-service/index.d.ts +2 -4
  414. package/dist/services/document-service/index.d.ts.map +1 -1
  415. package/dist/services/document-service/index.js +21 -8
  416. package/dist/services/document-service/index.js.map +1 -1
  417. package/dist/services/document-service/index.mjs +17 -4
  418. package/dist/services/document-service/index.mjs.map +1 -1
  419. package/dist/services/document-service/internationalization.d.ts +5 -5
  420. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  421. package/dist/services/document-service/internationalization.js +14 -5
  422. package/dist/services/document-service/internationalization.js.map +1 -1
  423. package/dist/services/document-service/internationalization.mjs +14 -5
  424. package/dist/services/document-service/internationalization.mjs.map +1 -1
  425. package/dist/services/document-service/middlewares/errors.d.ts +6 -0
  426. package/dist/services/document-service/middlewares/errors.d.ts.map +1 -0
  427. package/dist/services/document-service/middlewares/errors.js +25 -0
  428. package/dist/services/document-service/middlewares/errors.js.map +1 -0
  429. package/dist/services/document-service/middlewares/errors.mjs +25 -0
  430. package/dist/services/document-service/middlewares/errors.mjs.map +1 -0
  431. package/dist/services/document-service/middlewares/index.d.ts +3 -0
  432. package/dist/services/document-service/middlewares/index.d.ts.map +1 -0
  433. package/dist/services/document-service/middlewares/middleware-manager.d.ts +10 -0
  434. package/dist/services/document-service/middlewares/middleware-manager.d.ts.map +1 -0
  435. package/dist/services/document-service/{middlewares.js → middlewares/middleware-manager.js} +9 -6
  436. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -0
  437. package/dist/services/document-service/{middlewares.mjs → middlewares/middleware-manager.mjs} +9 -6
  438. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -0
  439. package/dist/services/document-service/params.d.ts +3 -1
  440. package/dist/services/document-service/params.d.ts.map +1 -1
  441. package/dist/services/{entity-service → document-service}/params.js +1 -1
  442. package/dist/services/document-service/params.js.map +1 -0
  443. package/dist/services/{entity-service → document-service}/params.mjs +1 -1
  444. package/dist/services/document-service/params.mjs.map +1 -0
  445. package/dist/services/document-service/repository.d.ts +3 -0
  446. package/dist/services/document-service/repository.d.ts.map +1 -0
  447. package/dist/services/document-service/repository.js +278 -0
  448. package/dist/services/document-service/repository.js.map +1 -0
  449. package/dist/services/document-service/repository.mjs +278 -0
  450. package/dist/services/document-service/repository.mjs.map +1 -0
  451. package/dist/services/document-service/transform/data.d.ts.map +1 -1
  452. package/dist/services/document-service/transform/data.js +4 -2
  453. package/dist/services/document-service/transform/data.js.map +1 -1
  454. package/dist/services/document-service/transform/data.mjs +4 -2
  455. package/dist/services/document-service/transform/data.mjs.map +1 -1
  456. package/dist/services/document-service/transform/fields.d.ts +2 -2
  457. package/dist/services/document-service/transform/fields.d.ts.map +1 -1
  458. package/dist/services/document-service/transform/fields.js.map +1 -1
  459. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  460. package/dist/services/document-service/transform/id-map.d.ts +4 -4
  461. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  462. package/dist/services/document-service/transform/id-map.js +15 -9
  463. package/dist/services/document-service/transform/id-map.js.map +1 -1
  464. package/dist/services/document-service/transform/id-map.mjs +16 -10
  465. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  466. package/dist/services/document-service/transform/id-transform.d.ts +4 -18
  467. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  468. package/dist/services/document-service/transform/id-transform.js +18 -12
  469. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  470. package/dist/services/document-service/transform/id-transform.mjs +18 -12
  471. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  472. package/dist/services/document-service/transform/populate.d.ts +5 -2
  473. package/dist/services/document-service/transform/populate.d.ts.map +1 -1
  474. package/dist/services/document-service/transform/populate.js +1 -1
  475. package/dist/services/document-service/transform/populate.js.map +1 -1
  476. package/dist/services/document-service/transform/populate.mjs +1 -1
  477. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  478. package/dist/services/document-service/transform/query.d.ts +5 -0
  479. package/dist/services/document-service/transform/query.d.ts.map +1 -0
  480. package/dist/services/document-service/transform/query.js +9 -0
  481. package/dist/services/document-service/transform/query.js.map +1 -0
  482. package/dist/services/document-service/transform/query.mjs +9 -0
  483. package/dist/services/document-service/transform/query.mjs.map +1 -0
  484. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +8 -7
  485. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  486. package/dist/services/document-service/transform/relations/extract/data-ids.js +45 -67
  487. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  488. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +45 -67
  489. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  490. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts +9 -5
  491. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  492. package/dist/services/document-service/transform/relations/transform/data-ids.js +63 -104
  493. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  494. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +64 -105
  495. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  496. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts +9 -0
  497. package/dist/services/document-service/transform/relations/transform/default-locale.d.ts.map +1 -0
  498. package/dist/services/document-service/transform/relations/transform/default-locale.js +32 -0
  499. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -0
  500. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +32 -0
  501. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -0
  502. package/dist/services/document-service/transform/relations/utils/dp.d.ts +10 -0
  503. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -0
  504. package/dist/services/document-service/transform/relations/utils/dp.js +30 -0
  505. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -0
  506. package/dist/services/document-service/transform/relations/utils/dp.mjs +30 -0
  507. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -0
  508. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +6 -6
  509. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  510. package/dist/services/document-service/transform/relations/utils/i18n.js +3 -9
  511. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  512. package/dist/services/document-service/transform/relations/utils/i18n.mjs +3 -9
  513. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  514. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts +6 -0
  515. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -0
  516. package/dist/services/document-service/transform/relations/utils/map-relation.js +91 -0
  517. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -0
  518. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +91 -0
  519. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -0
  520. package/dist/services/document-service/transform/relations/utils/types.d.ts +10 -1
  521. package/dist/services/document-service/transform/relations/utils/types.d.ts.map +1 -1
  522. package/dist/services/document-service/transform/types.d.ts +4 -4
  523. package/dist/services/document-service/transform/types.d.ts.map +1 -1
  524. package/dist/services/document-service/utils/populate.d.ts +9 -2
  525. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  526. package/dist/services/document-service/utils/populate.js +5 -5
  527. package/dist/services/document-service/utils/populate.js.map +1 -1
  528. package/dist/services/document-service/utils/populate.mjs +5 -5
  529. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  530. package/dist/services/entity-service/index.d.ts +4 -6
  531. package/dist/services/entity-service/index.d.ts.map +1 -1
  532. package/dist/services/entity-service/index.js +44 -203
  533. package/dist/services/entity-service/index.js.map +1 -1
  534. package/dist/services/entity-service/index.mjs +38 -197
  535. package/dist/services/entity-service/index.mjs.map +1 -1
  536. package/dist/services/entity-validator/index.d.ts +2 -2
  537. package/dist/services/entity-validator/index.d.ts.map +1 -1
  538. package/dist/services/entity-validator/index.js +101 -90
  539. package/dist/services/entity-validator/index.js.map +1 -1
  540. package/dist/services/entity-validator/index.mjs +101 -90
  541. package/dist/services/entity-validator/index.mjs.map +1 -1
  542. package/dist/services/entity-validator/validators.d.ts +18 -18
  543. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  544. package/dist/services/entity-validator/validators.js +6 -1
  545. package/dist/services/entity-validator/validators.js.map +1 -1
  546. package/dist/services/entity-validator/validators.mjs +6 -1
  547. package/dist/services/entity-validator/validators.mjs.map +1 -1
  548. package/dist/services/event-hub.d.ts +1 -0
  549. package/dist/services/event-hub.d.ts.map +1 -1
  550. package/dist/services/event-hub.js +9 -4
  551. package/dist/services/event-hub.js.map +1 -1
  552. package/dist/services/event-hub.mjs +9 -4
  553. package/dist/services/event-hub.mjs.map +1 -1
  554. package/dist/services/features.d.ts +3 -3
  555. package/dist/services/features.d.ts.map +1 -1
  556. package/dist/services/features.js.map +1 -1
  557. package/dist/services/features.mjs.map +1 -1
  558. package/dist/services/fs.d.ts +2 -2
  559. package/dist/services/fs.d.ts.map +1 -1
  560. package/dist/services/fs.js.map +1 -1
  561. package/dist/services/fs.mjs.map +1 -1
  562. package/dist/services/metrics/admin-user-hash.d.ts +2 -2
  563. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  564. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  565. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  566. package/dist/services/metrics/index.d.ts +2 -2
  567. package/dist/services/metrics/index.d.ts.map +1 -1
  568. package/dist/services/metrics/index.js.map +1 -1
  569. package/dist/services/metrics/index.mjs.map +1 -1
  570. package/dist/services/metrics/middleware.d.ts +2 -2
  571. package/dist/services/metrics/middleware.d.ts.map +1 -1
  572. package/dist/services/metrics/middleware.js.map +1 -1
  573. package/dist/services/metrics/middleware.mjs.map +1 -1
  574. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  575. package/dist/services/metrics/rate-limiter.js.map +1 -1
  576. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  577. package/dist/services/metrics/sender.d.ts +3 -3
  578. package/dist/services/metrics/sender.d.ts.map +1 -1
  579. package/dist/services/metrics/sender.js.map +1 -1
  580. package/dist/services/metrics/sender.mjs.map +1 -1
  581. package/dist/services/query-params.d.ts +7 -0
  582. package/dist/services/query-params.d.ts.map +1 -0
  583. package/dist/services/query-params.js +12 -0
  584. package/dist/services/query-params.js.map +1 -0
  585. package/dist/services/query-params.mjs +13 -0
  586. package/dist/services/query-params.mjs.map +1 -0
  587. package/dist/services/reloader.d.ts +7 -0
  588. package/dist/services/reloader.d.ts.map +1 -0
  589. package/dist/services/reloader.js +36 -0
  590. package/dist/services/reloader.js.map +1 -0
  591. package/dist/services/reloader.mjs +36 -0
  592. package/dist/services/reloader.mjs.map +1 -0
  593. package/dist/services/server/admin-api.d.ts +3 -3
  594. package/dist/services/server/admin-api.d.ts.map +1 -1
  595. package/dist/services/server/admin-api.js.map +1 -1
  596. package/dist/services/server/admin-api.mjs.map +1 -1
  597. package/dist/services/server/api.d.ts +3 -3
  598. package/dist/services/server/api.d.ts.map +1 -1
  599. package/dist/services/server/api.js.map +1 -1
  600. package/dist/services/server/api.mjs.map +1 -1
  601. package/dist/services/server/compose-endpoint.d.ts +2 -2
  602. package/dist/services/server/compose-endpoint.d.ts.map +1 -1
  603. package/dist/services/server/compose-endpoint.js +1 -2
  604. package/dist/services/server/compose-endpoint.js.map +1 -1
  605. package/dist/services/server/compose-endpoint.mjs +2 -3
  606. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  607. package/dist/services/server/content-api.d.ts +3 -3
  608. package/dist/services/server/content-api.d.ts.map +1 -1
  609. package/dist/services/server/content-api.js.map +1 -1
  610. package/dist/services/server/content-api.mjs.map +1 -1
  611. package/dist/services/server/http-server.d.ts +2 -2
  612. package/dist/services/server/http-server.d.ts.map +1 -1
  613. package/dist/services/server/http-server.js.map +1 -1
  614. package/dist/services/server/http-server.mjs.map +1 -1
  615. package/dist/services/server/index.d.ts +2 -2
  616. package/dist/services/server/index.d.ts.map +1 -1
  617. package/dist/services/server/index.js +1 -2
  618. package/dist/services/server/index.js.map +1 -1
  619. package/dist/services/server/index.mjs +1 -2
  620. package/dist/services/server/index.mjs.map +1 -1
  621. package/dist/services/server/koa.d.ts.map +1 -1
  622. package/dist/services/server/koa.js +1 -1
  623. package/dist/services/server/koa.js.map +1 -1
  624. package/dist/services/server/koa.mjs +1 -1
  625. package/dist/services/server/koa.mjs.map +1 -1
  626. package/dist/services/server/middleware.d.ts +4 -4
  627. package/dist/services/server/middleware.d.ts.map +1 -1
  628. package/dist/services/server/middleware.js.map +1 -1
  629. package/dist/services/server/middleware.mjs.map +1 -1
  630. package/dist/services/server/policy.d.ts +3 -3
  631. package/dist/services/server/policy.d.ts.map +1 -1
  632. package/dist/services/server/policy.js +4 -4
  633. package/dist/services/server/policy.js.map +1 -1
  634. package/dist/services/server/policy.mjs +4 -4
  635. package/dist/services/server/policy.mjs.map +1 -1
  636. package/dist/services/server/register-middlewares.d.ts +2 -2
  637. package/dist/services/server/register-middlewares.d.ts.map +1 -1
  638. package/dist/services/server/register-middlewares.js.map +1 -1
  639. package/dist/services/server/register-middlewares.mjs.map +1 -1
  640. package/dist/services/server/register-routes.d.ts +2 -2
  641. package/dist/services/server/register-routes.d.ts.map +1 -1
  642. package/dist/services/server/register-routes.js +3 -3
  643. package/dist/services/server/register-routes.js.map +1 -1
  644. package/dist/services/server/register-routes.mjs +3 -3
  645. package/dist/services/server/register-routes.mjs.map +1 -1
  646. package/dist/services/server/routing.d.ts +5 -5
  647. package/dist/services/server/routing.d.ts.map +1 -1
  648. package/dist/services/server/routing.js.map +1 -1
  649. package/dist/services/server/routing.mjs.map +1 -1
  650. package/dist/services/utils/dynamic-zones.d.ts.map +1 -1
  651. package/dist/services/utils/dynamic-zones.js +2 -1
  652. package/dist/services/utils/dynamic-zones.js.map +1 -1
  653. package/dist/services/utils/dynamic-zones.mjs +2 -1
  654. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  655. package/dist/services/webhook-runner.d.ts +2 -1
  656. package/dist/services/webhook-runner.d.ts.map +1 -1
  657. package/dist/services/webhook-runner.js.map +1 -1
  658. package/dist/services/webhook-runner.mjs.map +1 -1
  659. package/dist/services/webhook-store.d.ts +2 -8
  660. package/dist/services/webhook-store.d.ts.map +1 -1
  661. package/dist/services/webhook-store.js +14 -8
  662. package/dist/services/webhook-store.js.map +1 -1
  663. package/dist/services/webhook-store.mjs +14 -8
  664. package/dist/services/webhook-store.mjs.map +1 -1
  665. package/dist/utils/convert-custom-field-type.d.ts +2 -2
  666. package/dist/utils/convert-custom-field-type.d.ts.map +1 -1
  667. package/dist/utils/convert-custom-field-type.js.map +1 -1
  668. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  669. package/dist/utils/fetch.d.ts +3 -3
  670. package/dist/utils/fetch.d.ts.map +1 -1
  671. package/dist/utils/fetch.js.map +1 -1
  672. package/dist/utils/fetch.mjs.map +1 -1
  673. package/dist/utils/index.d.ts +2 -1
  674. package/dist/utils/index.d.ts.map +1 -1
  675. package/dist/utils/is-initialized.d.ts +2 -2
  676. package/dist/utils/is-initialized.d.ts.map +1 -1
  677. package/dist/utils/is-initialized.js +1 -1
  678. package/dist/utils/is-initialized.js.map +1 -1
  679. package/dist/utils/is-initialized.mjs +1 -1
  680. package/dist/utils/is-initialized.mjs.map +1 -1
  681. package/dist/utils/load-config-file.js +1 -1
  682. package/dist/utils/load-config-file.js.map +1 -1
  683. package/dist/utils/load-config-file.mjs +2 -2
  684. package/dist/utils/load-config-file.mjs.map +1 -1
  685. package/dist/utils/load-files.d.ts.map +1 -1
  686. package/dist/utils/open-browser.d.ts +2 -2
  687. package/dist/utils/open-browser.d.ts.map +1 -1
  688. package/dist/utils/open-browser.js.map +1 -1
  689. package/dist/utils/open-browser.mjs.map +1 -1
  690. package/dist/utils/resolve-working-dirs.d.ts +19 -0
  691. package/dist/utils/resolve-working-dirs.d.ts.map +1 -0
  692. package/dist/utils/resolve-working-dirs.js +13 -0
  693. package/dist/utils/resolve-working-dirs.js.map +1 -0
  694. package/dist/utils/resolve-working-dirs.mjs +11 -0
  695. package/dist/utils/resolve-working-dirs.mjs.map +1 -0
  696. package/dist/utils/signals.d.ts +2 -2
  697. package/dist/utils/signals.d.ts.map +1 -1
  698. package/dist/utils/signals.js.map +1 -1
  699. package/dist/utils/signals.mjs.map +1 -1
  700. package/dist/utils/startup-logger.d.ts +2 -2
  701. package/dist/utils/startup-logger.d.ts.map +1 -1
  702. package/dist/utils/startup-logger.js.map +1 -1
  703. package/dist/utils/startup-logger.mjs.map +1 -1
  704. package/dist/utils/transform-content-types-to-models.d.ts +54 -99
  705. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  706. package/dist/utils/transform-content-types-to-models.js +105 -57
  707. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  708. package/dist/utils/transform-content-types-to-models.mjs +105 -57
  709. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  710. package/dist/utils/update-notifier/index.d.ts +2 -7
  711. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  712. package/dist/utils/update-notifier/index.js +11 -14
  713. package/dist/utils/update-notifier/index.js.map +1 -1
  714. package/dist/utils/update-notifier/index.mjs +11 -14
  715. package/dist/utils/update-notifier/index.mjs.map +1 -1
  716. package/package.json +29 -27
  717. package/dist/registries/config.d.ts +0 -4
  718. package/dist/registries/config.d.ts.map +0 -1
  719. package/dist/registries/config.js +0 -23
  720. package/dist/registries/config.js.map +0 -1
  721. package/dist/registries/config.mjs +0 -22
  722. package/dist/registries/config.mjs.map +0 -1
  723. package/dist/services/document-service/document-engine.d.ts +0 -8
  724. package/dist/services/document-service/document-engine.d.ts.map +0 -1
  725. package/dist/services/document-service/document-engine.js +0 -241
  726. package/dist/services/document-service/document-engine.js.map +0 -1
  727. package/dist/services/document-service/document-engine.mjs +0 -242
  728. package/dist/services/document-service/document-engine.mjs.map +0 -1
  729. package/dist/services/document-service/middlewares.d.ts +0 -8
  730. package/dist/services/document-service/middlewares.d.ts.map +0 -1
  731. package/dist/services/document-service/middlewares.js.map +0 -1
  732. package/dist/services/document-service/middlewares.mjs.map +0 -1
  733. package/dist/services/document-service/repositories/content-type.d.ts +0 -3
  734. package/dist/services/document-service/repositories/content-type.d.ts.map +0 -1
  735. package/dist/services/document-service/repositories/content-type.js +0 -139
  736. package/dist/services/document-service/repositories/content-type.js.map +0 -1
  737. package/dist/services/document-service/repositories/content-type.mjs +0 -139
  738. package/dist/services/document-service/repositories/content-type.mjs.map +0 -1
  739. package/dist/services/document-service/transform/filters.d.ts +0 -3
  740. package/dist/services/document-service/transform/filters.d.ts.map +0 -1
  741. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts +0 -4
  742. package/dist/services/document-service/transform/relations/transform/output-ids.d.ts.map +0 -1
  743. package/dist/services/document-service/transform/relations/utils/data.js +0 -12
  744. package/dist/services/document-service/transform/relations/utils/data.js.map +0 -1
  745. package/dist/services/document-service/transform/relations/utils/data.mjs +0 -12
  746. package/dist/services/document-service/transform/relations/utils/data.mjs.map +0 -1
  747. package/dist/services/document-service/transform/sort.d.ts +0 -5
  748. package/dist/services/document-service/transform/sort.d.ts.map +0 -1
  749. package/dist/services/document-service/transform/utils.d.ts +0 -9
  750. package/dist/services/document-service/transform/utils.d.ts.map +0 -1
  751. package/dist/services/entity-service/attributes/index.d.ts +0 -6
  752. package/dist/services/entity-service/attributes/index.d.ts.map +0 -1
  753. package/dist/services/entity-service/attributes/index.js.map +0 -1
  754. package/dist/services/entity-service/attributes/index.mjs.map +0 -1
  755. package/dist/services/entity-service/attributes/transforms.d.ts +0 -10
  756. package/dist/services/entity-service/attributes/transforms.d.ts.map +0 -1
  757. package/dist/services/entity-service/attributes/transforms.js.map +0 -1
  758. package/dist/services/entity-service/attributes/transforms.mjs.map +0 -1
  759. package/dist/services/entity-service/components.d.ts +0 -23
  760. package/dist/services/entity-service/components.d.ts.map +0 -1
  761. package/dist/services/entity-service/components.js.map +0 -1
  762. package/dist/services/entity-service/components.mjs.map +0 -1
  763. package/dist/services/entity-service/params.d.ts +0 -8
  764. package/dist/services/entity-service/params.d.ts.map +0 -1
  765. package/dist/services/entity-service/params.js.map +0 -1
  766. package/dist/services/entity-service/params.mjs.map +0 -1
  767. package/dist/services/utils/upload-files.d.ts +0 -8
  768. package/dist/services/utils/upload-files.d.ts.map +0 -1
  769. package/dist/services/utils/upload-files.js +0 -64
  770. package/dist/services/utils/upload-files.js.map +0 -1
  771. package/dist/services/utils/upload-files.mjs +0 -63
  772. package/dist/services/utils/upload-files.mjs.map +0 -1
  773. package/dist/utils/get-dirs.d.ts +0 -9
  774. package/dist/utils/get-dirs.d.ts.map +0 -1
  775. package/dist/utils/get-dirs.js.map +0 -1
  776. package/dist/utils/get-dirs.mjs.map +0 -1
  777. /package/dist/services/{entity-service → document-service}/attributes/transforms.js +0 -0
  778. /package/dist/services/{entity-service → document-service}/attributes/transforms.mjs +0 -0
@@ -1,22 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const _ = require("lodash/fp");
3
4
  const transforms = require("./transforms.js");
4
- const applyTransforms = (data, context) => {
5
- const { contentType } = context;
5
+ const applyTransforms = _.curry((schema, data) => {
6
6
  const attributeNames = Object.keys(data);
7
7
  for (const attributeName of attributeNames) {
8
8
  const value = data[attributeName];
9
- const attribute = contentType.attributes[attributeName];
9
+ const attribute = schema.attributes[attributeName];
10
10
  if (!attribute) {
11
11
  continue;
12
12
  }
13
13
  const transform = transforms[attribute.type];
14
14
  if (transform) {
15
- const attributeContext = { ...context, attributeName, attribute };
15
+ const attributeContext = { attributeName, attribute };
16
16
  data[attributeName] = transform(value, attributeContext);
17
17
  }
18
18
  }
19
19
  return data;
20
- };
20
+ });
21
21
  exports.applyTransforms = applyTransforms;
22
22
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../src/services/document-service/attributes/index.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport type { UID, Modules, Schema } from '@strapi/types';\n\nimport transforms from './transforms';\n\n// aliasing the type to make it easier to read\ntype Data = Modules.Documents.Params.Data.Input<UID.Schema>;\n\nconst applyTransforms = curry((schema: Schema.Schema, data: Data) => {\n const attributeNames = Object.keys(data) as Array<keyof typeof data & string>;\n\n for (const attributeName of attributeNames) {\n const value = data[attributeName];\n\n const attribute = schema.attributes[attributeName];\n\n if (!attribute) {\n continue;\n }\n\n const transform = transforms[attribute.type];\n\n if (transform) {\n const attributeContext = { attributeName, attribute };\n\n data[attributeName] = transform(value, attributeContext);\n }\n }\n\n return data;\n});\n\nexport { applyTransforms };\n"],"names":["curry"],"mappings":";;;;AASA,MAAM,kBAAkBA,EAAA,MAAM,CAAC,QAAuB,SAAe;AAC7D,QAAA,iBAAiB,OAAO,KAAK,IAAI;AAEvC,aAAW,iBAAiB,gBAAgB;AACpC,UAAA,QAAQ,KAAK,aAAa;AAE1B,UAAA,YAAY,OAAO,WAAW,aAAa;AAEjD,QAAI,CAAC,WAAW;AACd;AAAA,IACF;AAEM,UAAA,YAAY,WAAW,UAAU,IAAI;AAE3C,QAAI,WAAW;AACP,YAAA,mBAAmB,EAAE,eAAe;AAE1C,WAAK,aAAa,IAAI,UAAU,OAAO,gBAAgB;AAAA,IACzD;AAAA,EACF;AAEO,SAAA;AACT,CAAC;;"}
@@ -1,21 +1,21 @@
1
+ import { curry } from "lodash/fp";
1
2
  import transforms from "./transforms.mjs";
2
- const applyTransforms = (data, context) => {
3
- const { contentType } = context;
3
+ const applyTransforms = curry((schema, data) => {
4
4
  const attributeNames = Object.keys(data);
5
5
  for (const attributeName of attributeNames) {
6
6
  const value = data[attributeName];
7
- const attribute = contentType.attributes[attributeName];
7
+ const attribute = schema.attributes[attributeName];
8
8
  if (!attribute) {
9
9
  continue;
10
10
  }
11
11
  const transform = transforms[attribute.type];
12
12
  if (transform) {
13
- const attributeContext = { ...context, attributeName, attribute };
13
+ const attributeContext = { attributeName, attribute };
14
14
  data[attributeName] = transform(value, attributeContext);
15
15
  }
16
16
  }
17
17
  return data;
18
- };
18
+ });
19
19
  export {
20
20
  applyTransforms
21
21
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../src/services/document-service/attributes/index.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport type { UID, Modules, Schema } from '@strapi/types';\n\nimport transforms from './transforms';\n\n// aliasing the type to make it easier to read\ntype Data = Modules.Documents.Params.Data.Input<UID.Schema>;\n\nconst applyTransforms = curry((schema: Schema.Schema, data: Data) => {\n const attributeNames = Object.keys(data) as Array<keyof typeof data & string>;\n\n for (const attributeName of attributeNames) {\n const value = data[attributeName];\n\n const attribute = schema.attributes[attributeName];\n\n if (!attribute) {\n continue;\n }\n\n const transform = transforms[attribute.type];\n\n if (transform) {\n const attributeContext = { attributeName, attribute };\n\n data[attributeName] = transform(value, attributeContext);\n }\n }\n\n return data;\n});\n\nexport { applyTransforms };\n"],"names":[],"mappings":";;AASA,MAAM,kBAAkB,MAAM,CAAC,QAAuB,SAAe;AAC7D,QAAA,iBAAiB,OAAO,KAAK,IAAI;AAEvC,aAAW,iBAAiB,gBAAgB;AACpC,UAAA,QAAQ,KAAK,aAAa;AAE1B,UAAA,YAAY,OAAO,WAAW,aAAa;AAEjD,QAAI,CAAC,WAAW;AACd;AAAA,IACF;AAEM,UAAA,YAAY,WAAW,UAAU,IAAI;AAE3C,QAAI,WAAW;AACP,YAAA,mBAAmB,EAAE,eAAe;AAE1C,WAAK,aAAa,IAAI,UAAU,OAAO,gBAAgB;AAAA,IACzD;AAAA,EACF;AAEO,SAAA;AACT,CAAC;"}
@@ -0,0 +1,10 @@
1
+ import type { Schema } from '@strapi/types';
2
+ type Transforms = {
3
+ [TKind in Schema.Attribute.Kind]?: (value: unknown, context: {
4
+ attribute: Schema.Attribute.AnyAttribute;
5
+ attributeName: string;
6
+ }) => any;
7
+ };
8
+ declare const transforms: Transforms;
9
+ export default transforms;
10
+ //# sourceMappingURL=transforms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transforms.d.ts","sourceRoot":"","sources":["../../../../src/services/document-service/attributes/transforms.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAG5C,KAAK,UAAU,GAAG;KACf,KAAK,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CACjC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC;QACzC,aAAa,EAAE,MAAM,CAAC;KACvB,KACE,GAAG;CACT,CAAC;AAEF,QAAA,MAAM,UAAU,EAAE,UAgBjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transforms.js","sources":["../../../../src/services/document-service/attributes/transforms.ts"],"sourcesContent":["import { getOr, toNumber, isString } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport bcrypt from 'bcryptjs';\n\ntype Transforms = {\n [TKind in Schema.Attribute.Kind]?: (\n value: unknown,\n context: {\n attribute: Schema.Attribute.AnyAttribute;\n attributeName: string;\n }\n ) => any;\n};\n\nconst transforms: Transforms = {\n password(value, context) {\n const { attribute } = context;\n\n if (attribute.type !== 'password') {\n throw new Error('Invalid attribute type');\n }\n\n if (!isString(value) && !(value instanceof Buffer)) {\n return value;\n }\n\n const rounds = toNumber(getOr(10, 'encryption.rounds', attribute));\n\n return bcrypt.hashSync(value.toString(), rounds);\n },\n};\n\nexport default transforms;\n"],"names":["isString","toNumber","getOr","bcrypt"],"mappings":";;;;;AAcA,MAAM,aAAyB;AAAA,EAC7B,SAAS,OAAO,SAAS;AACjB,UAAA,EAAE,UAAc,IAAA;AAElB,QAAA,UAAU,SAAS,YAAY;AAC3B,YAAA,IAAI,MAAM,wBAAwB;AAAA,IAC1C;AAEA,QAAI,CAACA,EAAS,SAAA,KAAK,KAAK,EAAE,iBAAiB,SAAS;AAC3C,aAAA;AAAA,IACT;AAEA,UAAM,SAASC,EAAAA,SAASC,EAAA,MAAM,IAAI,qBAAqB,SAAS,CAAC;AAEjE,WAAOC,gBAAAA,QAAO,SAAS,MAAM,YAAY,MAAM;AAAA,EACjD;AACF;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transforms.mjs","sources":["../../../../src/services/document-service/attributes/transforms.ts"],"sourcesContent":["import { getOr, toNumber, isString } from 'lodash/fp';\nimport type { Schema } from '@strapi/types';\nimport bcrypt from 'bcryptjs';\n\ntype Transforms = {\n [TKind in Schema.Attribute.Kind]?: (\n value: unknown,\n context: {\n attribute: Schema.Attribute.AnyAttribute;\n attributeName: string;\n }\n ) => any;\n};\n\nconst transforms: Transforms = {\n password(value, context) {\n const { attribute } = context;\n\n if (attribute.type !== 'password') {\n throw new Error('Invalid attribute type');\n }\n\n if (!isString(value) && !(value instanceof Buffer)) {\n return value;\n }\n\n const rounds = toNumber(getOr(10, 'encryption.rounds', attribute));\n\n return bcrypt.hashSync(value.toString(), rounds);\n },\n};\n\nexport default transforms;\n"],"names":[],"mappings":";;AAcA,MAAM,aAAyB;AAAA,EAC7B,SAAS,OAAO,SAAS;AACjB,UAAA,EAAE,UAAc,IAAA;AAElB,QAAA,UAAU,SAAS,YAAY;AAC3B,YAAA,IAAI,MAAM,wBAAwB;AAAA,IAC1C;AAEA,QAAI,CAAC,SAAS,KAAK,KAAK,EAAE,iBAAiB,SAAS;AAC3C,aAAA;AAAA,IACT;AAEA,UAAM,SAAS,SAAS,MAAM,IAAI,qBAAqB,SAAS,CAAC;AAEjE,WAAO,OAAO,SAAS,MAAM,YAAY,MAAM;AAAA,EACjD;AACF;"}
@@ -1,4 +1,4 @@
1
- import type { Common } from '@strapi/types';
2
- export type RepositoryFactoryMethod = (uid: Common.UID.CollectionType) => any;
1
+ import type { UID, Modules } from '@strapi/types';
2
+ export type RepositoryFactoryMethod = <TContentTypeUID extends UID.ContentType>(uid: TContentTypeUID) => Modules.Documents.ServiceInstance<TContentTypeUID>;
3
3
  export declare const wrapInTransaction: (fn: (...args: any) => any) => (...args: any[]) => Promise<any>;
4
4
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAE5C,MAAM,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,KAAK,GAAG,CAAC;AAE9E,eAAO,MAAM,iBAAiB,iBAAkB,GAAG,KAAK,GAAG,eACxC,GAAG,EAAE,iBACvB,CAAC"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/common.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAElD,MAAM,MAAM,uBAAuB,GAAG,CAAC,eAAe,SAAS,GAAG,CAAC,WAAW,EAC5E,GAAG,EAAE,eAAe,KACjB,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,iBAAiB,OAAQ,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,eACxC,GAAG,EAAE,iBACvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sources":["../../../src/services/document-service/common.ts"],"sourcesContent":["import type { Common } from '@strapi/types';\n\nexport type RepositoryFactoryMethod = (uid: Common.UID.CollectionType) => any;\n\nexport const wrapInTransaction = (fn: (...args: any) => any) => {\n return (...args: any[]) => strapi.db.transaction?.(() => fn(...args));\n};\n"],"names":[],"mappings":";;AAIa,MAAA,oBAAoB,CAAC,OAA8B;AACvD,SAAA,IAAI,SAAgB,OAAO,GAAG,cAAc,MAAM,GAAG,GAAG,IAAI,CAAC;AACtE;;"}
1
+ {"version":3,"file":"common.js","sources":["../../../src/services/document-service/common.ts"],"sourcesContent":["import type { UID, Modules } from '@strapi/types';\n\nexport type RepositoryFactoryMethod = <TContentTypeUID extends UID.ContentType>(\n uid: TContentTypeUID\n) => Modules.Documents.ServiceInstance<TContentTypeUID>;\n\nexport const wrapInTransaction = (fn: (...args: any) => any) => {\n return (...args: any[]) => strapi.db.transaction?.(() => fn(...args));\n};\n"],"names":[],"mappings":";;AAMa,MAAA,oBAAoB,CAAC,OAA8B;AACvD,SAAA,IAAI,SAAgB,OAAO,GAAG,cAAc,MAAM,GAAG,GAAG,IAAI,CAAC;AACtE;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"common.mjs","sources":["../../../src/services/document-service/common.ts"],"sourcesContent":["import type { Common } from '@strapi/types';\n\nexport type RepositoryFactoryMethod = (uid: Common.UID.CollectionType) => any;\n\nexport const wrapInTransaction = (fn: (...args: any) => any) => {\n return (...args: any[]) => strapi.db.transaction?.(() => fn(...args));\n};\n"],"names":[],"mappings":"AAIa,MAAA,oBAAoB,CAAC,OAA8B;AACvD,SAAA,IAAI,SAAgB,OAAO,GAAG,cAAc,MAAM,GAAG,GAAG,IAAI,CAAC;AACtE;"}
1
+ {"version":3,"file":"common.mjs","sources":["../../../src/services/document-service/common.ts"],"sourcesContent":["import type { UID, Modules } from '@strapi/types';\n\nexport type RepositoryFactoryMethod = <TContentTypeUID extends UID.ContentType>(\n uid: TContentTypeUID\n) => Modules.Documents.ServiceInstance<TContentTypeUID>;\n\nexport const wrapInTransaction = (fn: (...args: any) => any) => {\n return (...args: any[]) => strapi.db.transaction?.(() => fn(...args));\n};\n"],"names":[],"mappings":"AAMa,MAAA,oBAAoB,CAAC,OAA8B;AACvD,SAAA,IAAI,SAAgB,OAAO,GAAG,cAAc,MAAM,GAAG,GAAG,IAAI,CAAC;AACtE;"}
@@ -1,2 +1,26 @@
1
- export {};
1
+ import _ from 'lodash';
2
+ import type { UID, Schema, Data, Modules } from '@strapi/types';
3
+ type Input<T extends UID.Schema> = Modules.Documents.Params.Data.Input<T>;
4
+ type LoadedComponents<TUID extends UID.Schema> = Data.Entity<TUID, Schema.AttributeNamesByType<TUID, 'component' | 'dynamiczone'>>;
5
+ type SingleComponentValue = Schema.Attribute.ComponentValue<UID.Component, false>;
6
+ type RepeatableComponentValue = Schema.Attribute.ComponentValue<UID.Component, true>;
7
+ type ComponentValue = SingleComponentValue | RepeatableComponentValue;
8
+ type DynamicZoneValue = Schema.Attribute.DynamicZoneValue<UID.Component[]>;
9
+ type ComponentBody = {
10
+ [key: string]: ComponentValue | DynamicZoneValue;
11
+ };
12
+ declare const omitComponentData: _.CurriedFunction2<import("@strapi/types/dist/struct").ComponentSchema | import("@strapi/types/dist/struct").ContentTypeSchema, Input<UID.Schema>, Partial<Input<UID.Schema>>>;
13
+ declare const createComponents: <TUID extends UID.Schema, TData extends Input<TUID>>(uid: TUID, data: TData) => Promise<ComponentBody>;
14
+ declare const getComponents: <TUID extends UID.Schema>(uid: TUID, entity: {
15
+ id: Modules.EntityService.Params.Attribute.ID;
16
+ }) => Promise<LoadedComponents<TUID>>;
17
+ declare const updateComponents: <TUID extends UID.Schema, TData extends Partial<Input<TUID>>>(uid: TUID, entityToUpdate: {
18
+ id: Modules.EntityService.Params.Attribute.ID;
19
+ }, data: TData) => Promise<ComponentBody>;
20
+ declare const deleteComponents: <TUID extends UID.Schema, TEntity extends Data.Entity<TUID, Extract<keyof Schema.Attributes<TUID>, string>>>(uid: TUID, entityToDelete: TEntity, { loadComponents }?: {
21
+ loadComponents?: boolean | undefined;
22
+ }) => Promise<void>;
23
+ declare const deleteComponent: <TUID extends `${string}.${string}`>(uid: TUID, componentToDelete: Data.Component<TUID>) => Promise<void>;
24
+ declare const assignComponentData: _.CurriedFunction3<import("@strapi/types/dist/struct").ComponentSchema | import("@strapi/types/dist/struct").ContentTypeSchema, ComponentBody, Input<UID.Schema>, ComponentBody & Partial<Input<UID.Schema>>>;
25
+ export { omitComponentData, assignComponentData, getComponents, createComponents, updateComponents, deleteComponents, deleteComponent, };
2
26
  //# sourceMappingURL=components.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/components.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/services/document-service/components.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAC;AAEvB,OAAO,KAAK,EAAS,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAIvE,KAAK,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAE1E,KAAK,gBAAgB,CAAC,IAAI,SAAS,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAC1D,IAAI,EACJ,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,aAAa,CAAC,CAC/D,CAAC;AAEF,KAAK,oBAAoB,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAClF,KAAK,wBAAwB,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAErF,KAAK,cAAc,GAAG,oBAAoB,GAAG,wBAAwB,CAAC;AAEtE,KAAK,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC;AAE3E,KAAK,aAAa,GAAG;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,gBAAgB,CAAC;CAClD,CAAC;AAEF,QAAA,MAAM,iBAAiB,gLAStB,CAAC;AAGF,QAAA,MAAM,gBAAgB,4DACf,IAAI,QACH,KAAK,2BA6FZ,CAAC;AAEF,QAAA,MAAM,aAAa,iCACZ,IAAI,UACD;IAAE,EAAE,EAAE,QAAQ,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAA;CAAE,KACxD,QAAQ,iBAAiB,IAAI,CAAC,CAQhC,CAAC;AAMF,QAAA,MAAM,gBAAgB,qEACf,IAAI,kBACO;IAAE,EAAE,EAAE,QAAQ,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAA;CAAE,QAC3D,KAAK,2BA0EZ,CAAC;AAkGF,QAAA,MAAM,gBAAgB,oHACf,IAAI,kBACO,OAAO;;mBAqCxB,CAAC;AAyDF,QAAA,MAAM,eAAe,4CACd,IAAI,qBACU,KAAK,SAAS,CAAC,IAAI,CAAC,kBAIxC,CAAC;AAEF,QAAA,MAAM,mBAAmB,+MAIxB,CAAC;AAEF,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,GAChB,CAAC"}
@@ -5,14 +5,15 @@ const _ = require("lodash/fp");
5
5
  const strapiUtils = require("@strapi/utils");
6
6
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
7
7
  const ___default = /* @__PURE__ */ _interopDefault(_$1);
8
- const isDialectMySQL = () => strapi.db?.dialect.client === "mysql";
9
- function omitComponentData(contentType, data) {
10
- const { attributes } = contentType;
11
- const componentAttributes = Object.keys(attributes).filter(
12
- (attributeName) => strapiUtils.contentTypes.isComponentAttribute(attributes[attributeName])
13
- );
14
- return _.omit(componentAttributes, data);
15
- }
8
+ const omitComponentData = _.curry(
9
+ (schema, data) => {
10
+ const { attributes } = schema;
11
+ const componentAttributes = Object.keys(attributes).filter(
12
+ (attributeName) => strapiUtils.contentTypes.isComponentAttribute(attributes[attributeName])
13
+ );
14
+ return _.omit(componentAttributes, data);
15
+ }
16
+ );
16
17
  const createComponents = async (uid, data) => {
17
18
  const { attributes = {} } = strapi.getModel(uid);
18
19
  const componentBody = {};
@@ -32,10 +33,9 @@ const createComponents = async (uid, data) => {
32
33
  if (!Array.isArray(componentValue)) {
33
34
  throw new Error("Expected an array to create repeatable component");
34
35
  }
35
- const components = await strapiUtils.mapAsync(
36
+ const components = await strapiUtils.async.map(
36
37
  componentValue,
37
- (value) => createComponent(componentUID, value),
38
- { concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity }
38
+ (value) => createComponent(componentUID, value)
39
39
  );
40
40
  componentBody[attributeName] = components.map(({ id }) => {
41
41
  return {
@@ -76,10 +76,9 @@ const createComponents = async (uid, data) => {
76
76
  }
77
77
  };
78
78
  };
79
- componentBody[attributeName] = await strapiUtils.mapAsync(
79
+ componentBody[attributeName] = await strapiUtils.async.map(
80
80
  dynamiczoneValues,
81
- createDynamicZoneComponents,
82
- { concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity }
81
+ createDynamicZoneComponents
83
82
  );
84
83
  continue;
85
84
  }
@@ -91,7 +90,7 @@ const getComponents = async (uid, entity) => {
91
90
  if (___default.default.isEmpty(componentAttributes)) {
92
91
  return {};
93
92
  }
94
- return strapi.query(uid).load(entity, componentAttributes);
93
+ return strapi.db.query(uid).load(entity, componentAttributes);
95
94
  };
96
95
  const updateComponents = async (uid, entityToUpdate, data) => {
97
96
  const { attributes = {} } = strapi.getModel(uid);
@@ -109,10 +108,9 @@ const updateComponents = async (uid, entityToUpdate, data) => {
109
108
  if (!Array.isArray(componentValue)) {
110
109
  throw new Error("Expected an array to create repeatable component");
111
110
  }
112
- const components = await strapiUtils.mapAsync(
111
+ const components = await strapiUtils.async.map(
113
112
  componentValue,
114
- (value) => updateOrCreateComponent(componentUID, value),
115
- { concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity }
113
+ (value) => updateOrCreateComponent(componentUID, value)
116
114
  );
117
115
  componentBody[attributeName] = components.filter(___default.default.negate(___default.default.isNil)).map(({ id }) => {
118
116
  return {
@@ -133,29 +131,22 @@ const updateComponents = async (uid, entityToUpdate, data) => {
133
131
  }
134
132
  };
135
133
  }
136
- continue;
137
- }
138
- if (attribute.type === "dynamiczone") {
134
+ } else if (attribute.type === "dynamiczone") {
139
135
  const dynamiczoneValues = data[attributeName];
140
136
  await deleteOldDZComponents(uid, entityToUpdate, attributeName, dynamiczoneValues);
141
137
  if (!Array.isArray(dynamiczoneValues)) {
142
138
  throw new Error("Expected an array to create repeatable component");
143
139
  }
144
- componentBody[attributeName] = await strapiUtils.mapAsync(
145
- dynamiczoneValues,
146
- async (value) => {
147
- const { id } = await updateOrCreateComponent(value.__component, value);
148
- return {
149
- id,
150
- __component: value.__component,
151
- __pivot: {
152
- field: attributeName
153
- }
154
- };
155
- },
156
- { concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity }
157
- );
158
- continue;
140
+ componentBody[attributeName] = await strapiUtils.async.map(dynamiczoneValues, async (value) => {
141
+ const { id } = await updateOrCreateComponent(value.__component, value);
142
+ return {
143
+ id,
144
+ __component: value.__component,
145
+ __pivot: {
146
+ field: attributeName
147
+ }
148
+ };
149
+ });
159
150
  }
160
151
  }
161
152
  return componentBody;
@@ -169,7 +160,7 @@ const pickStringifiedId = ({
169
160
  return `${id}`;
170
161
  };
171
162
  const deleteOldComponents = async (uid, componentUID, entityToUpdate, attributeName, componentValue) => {
172
- const previousValue = await strapi.query(uid).load(entityToUpdate, attributeName);
163
+ const previousValue = await strapi.db.query(uid).load(entityToUpdate, attributeName);
173
164
  const idsToKeep = ___default.default.castArray(componentValue).filter(_.has("id")).map(pickStringifiedId);
174
165
  const allIds = ___default.default.castArray(previousValue).filter(_.has("id")).map(pickStringifiedId);
175
166
  idsToKeep.forEach((id) => {
@@ -187,7 +178,7 @@ const deleteOldComponents = async (uid, componentUID, entityToUpdate, attributeN
187
178
  }
188
179
  };
189
180
  const deleteOldDZComponents = async (uid, entityToUpdate, attributeName, dynamiczoneValues) => {
190
- const previousValue = await strapi.query(uid).load(entityToUpdate, attributeName);
181
+ const previousValue = await strapi.db.query(uid).load(entityToUpdate, attributeName);
191
182
  const idsToKeep = ___default.default.castArray(dynamiczoneValues).filter(_.has("id")).map((v) => ({
192
183
  id: pickStringifiedId(v),
193
184
  __component: v.__component
@@ -226,7 +217,7 @@ const deleteComponents = async (uid, entityToDelete, { loadComponents = true } =
226
217
  if (attribute.type === "component" || attribute.type === "dynamiczone") {
227
218
  let value;
228
219
  if (loadComponents) {
229
- value = await strapi.query(uid).load(entityToDelete, attributeName);
220
+ value = await strapi.db.query(uid).load(entityToDelete, attributeName);
230
221
  } else {
231
222
  value = entityToDelete[attributeName];
232
223
  }
@@ -235,114 +226,38 @@ const deleteComponents = async (uid, entityToDelete, { loadComponents = true } =
235
226
  }
236
227
  if (attribute.type === "component") {
237
228
  const { component: componentUID } = attribute;
238
- await strapiUtils.mapAsync(
229
+ await strapiUtils.async.map(
239
230
  ___default.default.castArray(value),
240
- (subValue) => deleteComponent(componentUID, subValue),
241
- {
242
- concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity
243
- }
231
+ (subValue) => deleteComponent(componentUID, subValue)
244
232
  );
245
233
  } else {
246
- await strapiUtils.mapAsync(
234
+ await strapiUtils.async.map(
247
235
  ___default.default.castArray(value),
248
- (subValue) => deleteComponent(subValue.__component, subValue),
249
- { concurrency: isDialectMySQL() && !strapi.db?.inTransaction() ? 1 : Infinity }
236
+ (subValue) => deleteComponent(subValue.__component, subValue)
250
237
  );
251
238
  }
252
239
  continue;
253
240
  }
254
241
  }
255
242
  };
256
- const cloneComponents = async (uid, entityToClone, data) => {
257
- const { attributes = {} } = strapi.getModel(uid);
258
- const componentBody = {};
259
- const componentData = await getComponents(uid, entityToClone);
260
- for (const attributeName of Object.keys(attributes)) {
261
- const attribute = attributes[attributeName];
262
- if (!_.has(attributeName, data) && !_.has(attributeName, componentData)) {
263
- continue;
264
- }
265
- if (attribute.type === "component") {
266
- const { component: componentUID, repeatable = false } = attribute;
267
- const componentValue = attributeName in data ? data[attributeName] : componentData[attributeName];
268
- if (componentValue === null) {
269
- continue;
270
- }
271
- if (repeatable === true) {
272
- if (!Array.isArray(componentValue)) {
273
- throw new Error("Expected an array to create repeatable component");
274
- }
275
- const components = await strapiUtils.mapAsync(
276
- componentValue,
277
- (value) => cloneComponent(componentUID, value),
278
- { concurrency: isDialectMySQL() ? 1 : Infinity }
279
- );
280
- componentBody[attributeName] = components.filter(___default.default.negate(___default.default.isNil)).map(({ id }) => {
281
- return {
282
- id,
283
- __pivot: {
284
- field: attributeName,
285
- component_type: componentUID
286
- }
287
- };
288
- });
289
- } else {
290
- const component = await cloneComponent(componentUID, componentValue);
291
- componentBody[attributeName] = component && {
292
- id: component.id,
293
- __pivot: {
294
- field: attributeName,
295
- component_type: componentUID
296
- }
297
- };
298
- }
299
- continue;
300
- }
301
- if (attribute.type === "dynamiczone") {
302
- const dynamiczoneValues = _.has(attributeName, data) ? data[attributeName] : componentData[attributeName];
303
- if (!Array.isArray(dynamiczoneValues)) {
304
- throw new Error("Expected an array to create repeatable component");
305
- }
306
- componentBody[attributeName] = await strapiUtils.mapAsync(
307
- dynamiczoneValues,
308
- async (value) => {
309
- const { id } = await cloneComponent(value.__component, value);
310
- return {
311
- id,
312
- __component: value.__component,
313
- __pivot: {
314
- field: attributeName
315
- }
316
- };
317
- },
318
- { concurrency: isDialectMySQL() ? 1 : Infinity }
319
- );
320
- continue;
321
- }
322
- }
323
- return componentBody;
324
- };
325
243
  const createComponent = async (uid, data) => {
326
- const model = strapi.getModel(uid);
244
+ const schema = strapi.getModel(uid);
327
245
  const componentData = await createComponents(uid, data);
328
246
  const transform = _.pipe(
329
247
  // Make sure we don't save the component with a pre-defined ID
330
248
  _.omit("id"),
331
- // Remove the component data from the original data object ...
332
- (payload) => omitComponentData(model, payload),
333
- // ... and assign the newly created component instead
334
- _.assign(componentData)
249
+ assignComponentData(schema, componentData)
335
250
  );
336
- return strapi.query(uid).create({ data: transform(data) });
251
+ return strapi.db.query(uid).create({ data: transform(data) });
337
252
  };
338
253
  const updateComponent = async (uid, componentToUpdate, data) => {
339
- const model = strapi.getModel(uid);
254
+ const schema = strapi.getModel(uid);
340
255
  const componentData = await updateComponents(uid, componentToUpdate, data);
341
- return strapi.query(uid).update({
256
+ return strapi.db.query(uid).update({
342
257
  where: {
343
258
  id: componentToUpdate.id
344
259
  },
345
- data: Object.assign(omitComponentData(model, data), componentData)
260
+ data: assignComponentData(schema, componentData, data)
346
261
  });
347
262
  };
348
263
  const updateOrCreateComponent = (componentUID, value) => {
@@ -356,25 +271,14 @@ const updateOrCreateComponent = (componentUID, value) => {
356
271
  };
357
272
  const deleteComponent = async (uid, componentToDelete) => {
358
273
  await deleteComponents(uid, componentToDelete);
359
- await strapi.query(uid).delete({ where: { id: componentToDelete.id } });
274
+ await strapi.db.query(uid).delete({ where: { id: componentToDelete.id } });
360
275
  };
361
- const cloneComponent = async (uid, data) => {
362
- const model = strapi.getModel(uid);
363
- if (!("id" in data) || typeof data.id === "undefined") {
364
- return createComponent(uid, data);
276
+ const assignComponentData = _.curry(
277
+ (schema, componentData, data) => {
278
+ return _.pipe(omitComponentData(schema), _.assign(componentData))(data);
365
279
  }
366
- const componentData = await cloneComponents(uid, { id: data.id }, data);
367
- const transform = _.pipe(
368
- // Make sure we don't save the component with a pre-defined ID
369
- _.omit("id"),
370
- // Remove the component data from the original data object ...
371
- (payload) => omitComponentData(model, payload),
372
- // ... and assign the newly created component instead
373
- _.assign(componentData)
374
- );
375
- return strapi.query(uid).clone(data.id, { data: transform(data) });
376
- };
377
- exports.cloneComponents = cloneComponents;
280
+ );
281
+ exports.assignComponentData = assignComponentData;
378
282
  exports.createComponents = createComponents;
379
283
  exports.deleteComponent = deleteComponent;
380
284
  exports.deleteComponents = deleteComponents;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sources":["../../../src/services/document-service/components.ts"],"sourcesContent":["import _ from 'lodash';\nimport { has, omit, pipe, assign, curry } from 'lodash/fp';\nimport type { Utils, UID, Schema, Data, Modules } from '@strapi/types';\nimport { contentTypes as contentTypesUtils, async, errors } from '@strapi/utils';\n\n// type aliases for readability\ntype Input<T extends UID.Schema> = Modules.Documents.Params.Data.Input<T>;\n\ntype LoadedComponents<TUID extends UID.Schema> = Data.Entity<\n TUID,\n Schema.AttributeNamesByType<TUID, 'component' | 'dynamiczone'>\n>;\n\ntype SingleComponentValue = Schema.Attribute.ComponentValue<UID.Component, false>;\ntype RepeatableComponentValue = Schema.Attribute.ComponentValue<UID.Component, true>;\n\ntype ComponentValue = SingleComponentValue | RepeatableComponentValue;\n\ntype DynamicZoneValue = Schema.Attribute.DynamicZoneValue<UID.Component[]>;\n\ntype ComponentBody = {\n [key: string]: ComponentValue | DynamicZoneValue;\n};\n\nconst omitComponentData = curry(\n (schema: Schema.Schema, data: Input<UID.Schema>): Partial<Input<UID.Schema>> => {\n const { attributes } = schema;\n const componentAttributes = Object.keys(attributes).filter((attributeName) =>\n contentTypesUtils.isComponentAttribute(attributes[attributeName])\n );\n\n return omit(componentAttributes, data);\n }\n);\n\n// NOTE: we could generalize the logic to allow CRUD of relation directly in the DB layer\nconst createComponents = async <TUID extends UID.Schema, TData extends Input<TUID>>(\n uid: TUID,\n data: TData\n) => {\n const { attributes = {} } = strapi.getModel(uid);\n\n const componentBody: ComponentBody = {};\n\n const attributeNames = Object.keys(attributes);\n\n for (const attributeName of attributeNames) {\n const attribute = attributes[attributeName];\n\n if (!has(attributeName, data) || !contentTypesUtils.isComponentAttribute(attribute)) {\n continue;\n }\n\n if (attribute.type === 'component') {\n const { component: componentUID, repeatable = false } = attribute;\n\n const componentValue = data[attributeName as keyof TData];\n\n if (componentValue === null) {\n continue;\n }\n\n if (repeatable === true) {\n if (!Array.isArray(componentValue)) {\n throw new Error('Expected an array to create repeatable component');\n }\n\n const components: RepeatableComponentValue = await async.map(componentValue, (value: any) =>\n createComponent(componentUID, value)\n );\n\n componentBody[attributeName] = components.map(({ id }) => {\n return {\n id,\n __pivot: {\n field: attributeName,\n component_type: componentUID,\n },\n };\n });\n } else {\n const component = await createComponent(\n componentUID,\n componentValue as Input<UID.Component>\n );\n\n componentBody[attributeName] = {\n id: component.id,\n __pivot: {\n field: attributeName,\n component_type: componentUID,\n },\n };\n }\n\n continue;\n }\n\n if (attribute.type === 'dynamiczone') {\n const dynamiczoneValues = data[\n attributeName as keyof TData\n ] as Modules.EntityService.Params.Attribute.GetValue<Schema.Attribute.DynamicZone>;\n\n if (!Array.isArray(dynamiczoneValues)) {\n throw new Error('Expected an array to create repeatable component');\n }\n\n const createDynamicZoneComponents = async (\n value: Utils.Array.Values<typeof dynamiczoneValues>\n ) => {\n const { id } = await createComponent(value.__component, value);\n return {\n id,\n __component: value.__component,\n __pivot: {\n field: attributeName,\n },\n };\n };\n\n // MySQL/MariaDB can cause deadlocks here if concurrency higher than 1\n componentBody[attributeName] = await async.map(\n dynamiczoneValues,\n createDynamicZoneComponents\n );\n\n continue;\n }\n }\n\n return componentBody;\n};\n\nconst getComponents = async <TUID extends UID.Schema>(\n uid: TUID,\n entity: { id: Modules.EntityService.Params.Attribute.ID }\n): Promise<LoadedComponents<TUID>> => {\n const componentAttributes = contentTypesUtils.getComponentAttributes(strapi.getModel(uid));\n\n if (_.isEmpty(componentAttributes)) {\n return {} as LoadedComponents<TUID>;\n }\n\n return strapi.db.query(uid).load(entity, componentAttributes) as Promise<LoadedComponents<TUID>>;\n};\n\n/*\n delete old components\n create or update\n*/\nconst updateComponents = async <TUID extends UID.Schema, TData extends Partial<Input<TUID>>>(\n uid: TUID,\n entityToUpdate: { id: Modules.EntityService.Params.Attribute.ID },\n data: TData\n) => {\n const { attributes = {} } = strapi.getModel(uid);\n\n const componentBody: ComponentBody = {};\n\n for (const attributeName of Object.keys(attributes)) {\n const attribute = attributes[attributeName];\n\n if (!has(attributeName, data)) {\n continue;\n }\n\n if (attribute.type === 'component') {\n const { component: componentUID, repeatable = false } = attribute;\n\n const componentValue = data[attributeName as keyof TData] as ComponentValue;\n\n await deleteOldComponents(uid, componentUID, entityToUpdate, attributeName, componentValue);\n\n if (repeatable === true) {\n if (!Array.isArray(componentValue)) {\n throw new Error('Expected an array to create repeatable component');\n }\n\n // MySQL/MariaDB can cause deadlocks here if concurrency higher than 1\n const components: RepeatableComponentValue = await async.map(componentValue, (value: any) =>\n updateOrCreateComponent(componentUID, value)\n );\n\n componentBody[attributeName] = components.filter(_.negate(_.isNil)).map(({ id }) => {\n return {\n id,\n __pivot: {\n field: attributeName,\n component_type: componentUID,\n },\n };\n });\n } else {\n const component = await updateOrCreateComponent(componentUID, componentValue);\n componentBody[attributeName] = component && {\n id: component.id,\n __pivot: {\n field: attributeName,\n component_type: componentUID,\n },\n };\n }\n } else if (attribute.type === 'dynamiczone') {\n const dynamiczoneValues = data[attributeName as keyof TData] as DynamicZoneValue;\n\n await deleteOldDZComponents(uid, entityToUpdate, attributeName, dynamiczoneValues);\n\n if (!Array.isArray(dynamiczoneValues)) {\n throw new Error('Expected an array to create repeatable component');\n }\n\n // MySQL/MariaDB can cause deadlocks here if concurrency higher than 1\n componentBody[attributeName] = await async.map(dynamiczoneValues, async (value: any) => {\n const { id } = await updateOrCreateComponent(value.__component, value);\n\n return {\n id,\n __component: value.__component,\n __pivot: {\n field: attributeName,\n },\n };\n });\n }\n }\n\n return componentBody;\n};\n\nconst pickStringifiedId = ({\n id,\n}: {\n id: Modules.EntityService.Params.Attribute.ID;\n}): Modules.EntityService.Params.Attribute.ID & string => {\n if (typeof id === 'string') {\n return id;\n }\n\n return `${id}`;\n};\n\nconst deleteOldComponents = async <TUID extends UID.Schema>(\n uid: TUID,\n componentUID: UID.Component,\n entityToUpdate: { id: Modules.EntityService.Params.Attribute.ID },\n attributeName: string,\n componentValue: ComponentValue\n) => {\n const previousValue = (await strapi.db\n .query(uid)\n .load(entityToUpdate, attributeName)) as ComponentValue;\n\n const idsToKeep = _.castArray(componentValue).filter(has('id')).map(pickStringifiedId);\n const allIds = _.castArray(previousValue).filter(has('id')).map(pickStringifiedId);\n\n idsToKeep.forEach((id) => {\n if (!allIds.includes(id)) {\n throw new errors.ApplicationError(\n `Some of the provided components in ${attributeName} are not related to the entity`\n );\n }\n });\n\n const idsToDelete = _.difference(allIds, idsToKeep);\n\n if (idsToDelete.length > 0) {\n for (const idToDelete of idsToDelete) {\n await deleteComponent(componentUID, { id: idToDelete });\n }\n }\n};\n\nconst deleteOldDZComponents = async <TUID extends UID.Schema>(\n uid: TUID,\n entityToUpdate: { id: Modules.EntityService.Params.Attribute.ID },\n attributeName: string,\n dynamiczoneValues: DynamicZoneValue\n) => {\n const previousValue = (await strapi.db\n .query(uid)\n .load(entityToUpdate, attributeName)) as DynamicZoneValue;\n\n const idsToKeep = _.castArray(dynamiczoneValues)\n .filter(has('id'))\n .map((v) => ({\n id: pickStringifiedId(v),\n __component: v.__component,\n }));\n\n const allIds = _.castArray(previousValue)\n .filter(has('id'))\n .map((v) => ({\n id: pickStringifiedId(v),\n __component: v.__component,\n }));\n\n idsToKeep.forEach(({ id, __component }) => {\n if (!allIds.find((el) => el.id === id && el.__component === __component)) {\n const err = new Error(\n `Some of the provided components in ${attributeName} are not related to the entity`\n );\n\n Object.assign(err, { status: 400 });\n throw err;\n }\n });\n\n type IdsToDelete = DynamicZoneValue;\n\n const idsToDelete = allIds.reduce((acc, { id, __component }) => {\n if (!idsToKeep.find((el) => el.id === id && el.__component === __component)) {\n acc.push({ id, __component });\n }\n\n return acc;\n }, [] as IdsToDelete);\n\n if (idsToDelete.length > 0) {\n for (const idToDelete of idsToDelete) {\n const { id, __component } = idToDelete;\n await deleteComponent(__component, { id });\n }\n }\n};\n\nconst deleteComponents = async <TUID extends UID.Schema, TEntity extends Data.Entity<TUID>>(\n uid: TUID,\n entityToDelete: TEntity,\n { loadComponents = true } = {}\n) => {\n const { attributes = {} } = strapi.getModel(uid);\n\n const attributeNames = Object.keys(attributes);\n\n for (const attributeName of attributeNames) {\n const attribute = attributes[attributeName];\n\n if (attribute.type === 'component' || attribute.type === 'dynamiczone') {\n let value;\n\n if (loadComponents) {\n value = await strapi.db.query(uid).load(entityToDelete, attributeName);\n } else {\n value = entityToDelete[attributeName as keyof TEntity];\n }\n\n if (!value) {\n continue;\n }\n\n if (attribute.type === 'component') {\n const { component: componentUID } = attribute;\n await async.map(_.castArray(value), (subValue: any) =>\n deleteComponent(componentUID, subValue)\n );\n } else {\n await async.map(_.castArray(value), (subValue: any) =>\n deleteComponent(subValue.__component, subValue)\n );\n }\n\n continue;\n }\n }\n};\n\n/** *************************\n Component queries\n************************** */\n\n// components can have nested compos so this must be recursive\nconst createComponent = async <TUID extends UID.Component>(uid: TUID, data: Input<TUID>) => {\n const schema = strapi.getModel(uid);\n\n const componentData = await createComponents(uid, data);\n\n const transform = pipe(\n // Make sure we don't save the component with a pre-defined ID\n omit('id'),\n assignComponentData(schema, componentData)\n );\n\n return strapi.db.query(uid).create({ data: transform(data) });\n};\n\n// components can have nested compos so this must be recursive\nconst updateComponent = async <TUID extends UID.Component>(\n uid: TUID,\n componentToUpdate: { id: Modules.EntityService.Params.Attribute.ID },\n data: Input<TUID>\n) => {\n const schema = strapi.getModel(uid);\n\n const componentData = await updateComponents(uid, componentToUpdate, data);\n\n return strapi.db.query(uid).update({\n where: {\n id: componentToUpdate.id,\n },\n data: assignComponentData(schema, componentData, data),\n });\n};\n\nconst updateOrCreateComponent = <TUID extends UID.Component>(\n componentUID: TUID,\n value: Input<TUID>\n) => {\n if (value === null) {\n return null;\n }\n\n // update\n if ('id' in value && typeof value.id !== 'undefined') {\n // TODO: verify the compo is associated with the entity\n return updateComponent(componentUID, { id: value.id }, value);\n }\n\n // create\n return createComponent(componentUID, value);\n};\n\nconst deleteComponent = async <TUID extends UID.Component>(\n uid: TUID,\n componentToDelete: Data.Component<TUID>\n) => {\n await deleteComponents(uid, componentToDelete);\n await strapi.db.query(uid).delete({ where: { id: componentToDelete.id } });\n};\n\nconst assignComponentData = curry(\n (schema: Schema.Schema, componentData: ComponentBody, data: Input<UID.Schema>) => {\n return pipe(omitComponentData(schema), assign(componentData))(data);\n }\n);\n\nexport {\n omitComponentData,\n assignComponentData,\n getComponents,\n createComponents,\n updateComponents,\n deleteComponents,\n deleteComponent,\n};\n"],"names":["curry","contentTypesUtils","omit","has","async","_","errors","pipe","assign"],"mappings":"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"}