@strapi/core 0.0.0-experimental.b1d7921ddb1b36c84b58a3946e1dc9dbda91b2dc → 0.0.0-experimental.b2710a38fa715c2420a41122dc06ffd65f2514ee

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 (710) hide show
  1. package/dist/Strapi.d.ts.map +1 -1
  2. package/dist/Strapi.js +427 -403
  3. package/dist/Strapi.js.map +1 -1
  4. package/dist/Strapi.mjs +426 -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.map +1 -1
  19. package/dist/configuration/index.js +84 -73
  20. package/dist/configuration/index.js.map +1 -1
  21. package/dist/configuration/index.mjs +83 -69
  22. package/dist/configuration/index.mjs.map +1 -1
  23. package/dist/configuration/urls.js +65 -61
  24. package/dist/configuration/urls.js.map +1 -1
  25. package/dist/configuration/urls.mjs +64 -62
  26. package/dist/configuration/urls.mjs.map +1 -1
  27. package/dist/container.js +27 -23
  28. package/dist/container.js.map +1 -1
  29. package/dist/container.mjs +26 -24
  30. package/dist/container.mjs.map +1 -1
  31. package/dist/core-api/controller/collection-type.js +77 -76
  32. package/dist/core-api/controller/collection-type.js.map +1 -1
  33. package/dist/core-api/controller/collection-type.mjs +76 -77
  34. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  35. package/dist/core-api/controller/index.js +63 -48
  36. package/dist/core-api/controller/index.js.map +1 -1
  37. package/dist/core-api/controller/index.mjs +62 -49
  38. package/dist/core-api/controller/index.mjs.map +1 -1
  39. package/dist/core-api/controller/single-type.js +41 -40
  40. package/dist/core-api/controller/single-type.js.map +1 -1
  41. package/dist/core-api/controller/single-type.mjs +40 -41
  42. package/dist/core-api/controller/single-type.mjs.map +1 -1
  43. package/dist/core-api/controller/transform.js +72 -63
  44. package/dist/core-api/controller/transform.js.map +1 -1
  45. package/dist/core-api/controller/transform.mjs +71 -64
  46. package/dist/core-api/controller/transform.mjs.map +1 -1
  47. package/dist/core-api/routes/index.js +64 -62
  48. package/dist/core-api/routes/index.js.map +1 -1
  49. package/dist/core-api/routes/index.mjs +62 -62
  50. package/dist/core-api/routes/index.mjs.map +1 -1
  51. package/dist/core-api/service/collection-type.js +73 -60
  52. package/dist/core-api/service/collection-type.js.map +1 -1
  53. package/dist/core-api/service/collection-type.mjs +72 -62
  54. package/dist/core-api/service/collection-type.mjs.map +1 -1
  55. package/dist/core-api/service/core-service.js +9 -8
  56. package/dist/core-api/service/core-service.js.map +1 -1
  57. package/dist/core-api/service/core-service.mjs +8 -9
  58. package/dist/core-api/service/core-service.mjs.map +1 -1
  59. package/dist/core-api/service/index.js +13 -13
  60. package/dist/core-api/service/index.js.map +1 -1
  61. package/dist/core-api/service/index.mjs +12 -14
  62. package/dist/core-api/service/index.mjs.map +1 -1
  63. package/dist/core-api/service/pagination.js +69 -43
  64. package/dist/core-api/service/pagination.js.map +1 -1
  65. package/dist/core-api/service/pagination.mjs +68 -47
  66. package/dist/core-api/service/pagination.mjs.map +1 -1
  67. package/dist/core-api/service/single-type.js +43 -39
  68. package/dist/core-api/service/single-type.js.map +1 -1
  69. package/dist/core-api/service/single-type.mjs +42 -41
  70. package/dist/core-api/service/single-type.mjs.map +1 -1
  71. package/dist/domain/content-type/index.js +95 -100
  72. package/dist/domain/content-type/index.js.map +1 -1
  73. package/dist/domain/content-type/index.mjs +94 -100
  74. package/dist/domain/content-type/index.mjs.map +1 -1
  75. package/dist/domain/content-type/validator.js +84 -69
  76. package/dist/domain/content-type/validator.js.map +1 -1
  77. package/dist/domain/content-type/validator.mjs +83 -68
  78. package/dist/domain/content-type/validator.mjs.map +1 -1
  79. package/dist/domain/module/index.js +109 -100
  80. package/dist/domain/module/index.js.map +1 -1
  81. package/dist/domain/module/index.mjs +108 -99
  82. package/dist/domain/module/index.mjs.map +1 -1
  83. package/dist/domain/module/validation.js +25 -20
  84. package/dist/domain/module/validation.js.map +1 -1
  85. package/dist/domain/module/validation.mjs +24 -21
  86. package/dist/domain/module/validation.mjs.map +1 -1
  87. package/dist/ee/index.d.ts +1 -0
  88. package/dist/ee/index.d.ts.map +1 -1
  89. package/dist/ee/index.js +171 -132
  90. package/dist/ee/index.js.map +1 -1
  91. package/dist/ee/index.mjs +170 -134
  92. package/dist/ee/index.mjs.map +1 -1
  93. package/dist/ee/license.d.ts.map +1 -1
  94. package/dist/ee/license.js +99 -75
  95. package/dist/ee/license.js.map +1 -1
  96. package/dist/ee/license.mjs +98 -76
  97. package/dist/ee/license.mjs.map +1 -1
  98. package/dist/factories.js +72 -67
  99. package/dist/factories.js.map +1 -1
  100. package/dist/factories.mjs +71 -71
  101. package/dist/factories.mjs.map +1 -1
  102. package/dist/index.js +29 -26
  103. package/dist/index.js.map +1 -1
  104. package/dist/index.mjs +29 -29
  105. package/dist/index.mjs.map +1 -1
  106. package/dist/loaders/admin.d.ts.map +1 -1
  107. package/dist/loaders/admin.js +21 -20
  108. package/dist/loaders/admin.js.map +1 -1
  109. package/dist/loaders/admin.mjs +20 -20
  110. package/dist/loaders/admin.mjs.map +1 -1
  111. package/dist/loaders/apis.js +143 -120
  112. package/dist/loaders/apis.js.map +1 -1
  113. package/dist/loaders/apis.mjs +142 -119
  114. package/dist/loaders/apis.mjs.map +1 -1
  115. package/dist/loaders/components.js +33 -34
  116. package/dist/loaders/components.js.map +1 -1
  117. package/dist/loaders/components.mjs +32 -34
  118. package/dist/loaders/components.mjs.map +1 -1
  119. package/dist/loaders/index.js +22 -20
  120. package/dist/loaders/index.js.map +1 -1
  121. package/dist/loaders/index.mjs +21 -21
  122. package/dist/loaders/index.mjs.map +1 -1
  123. package/dist/loaders/middlewares.js +29 -25
  124. package/dist/loaders/middlewares.js.map +1 -1
  125. package/dist/loaders/middlewares.mjs +28 -25
  126. package/dist/loaders/middlewares.mjs.map +1 -1
  127. package/dist/loaders/plugins/get-enabled-plugins.js +126 -131
  128. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  129. package/dist/loaders/plugins/get-enabled-plugins.mjs +125 -108
  130. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  131. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  132. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  133. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  134. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  135. package/dist/loaders/plugins/index.js +132 -122
  136. package/dist/loaders/plugins/index.js.map +1 -1
  137. package/dist/loaders/plugins/index.mjs +121 -112
  138. package/dist/loaders/plugins/index.mjs.map +1 -1
  139. package/dist/loaders/policies.js +24 -20
  140. package/dist/loaders/policies.js.map +1 -1
  141. package/dist/loaders/policies.mjs +23 -20
  142. package/dist/loaders/policies.mjs.map +1 -1
  143. package/dist/loaders/sanitizers.js +10 -4
  144. package/dist/loaders/sanitizers.js.map +1 -1
  145. package/dist/loaders/sanitizers.mjs +9 -6
  146. package/dist/loaders/sanitizers.mjs.map +1 -1
  147. package/dist/loaders/src-index.js +35 -27
  148. package/dist/loaders/src-index.js.map +1 -1
  149. package/dist/loaders/src-index.mjs +34 -29
  150. package/dist/loaders/src-index.mjs.map +1 -1
  151. package/dist/loaders/validators.js +9 -4
  152. package/dist/loaders/validators.js.map +1 -1
  153. package/dist/loaders/validators.mjs +8 -6
  154. package/dist/loaders/validators.mjs.map +1 -1
  155. package/dist/middlewares/body.d.ts.map +1 -1
  156. package/dist/middlewares/body.js +58 -54
  157. package/dist/middlewares/body.js.map +1 -1
  158. package/dist/middlewares/body.mjs +57 -51
  159. package/dist/middlewares/body.mjs.map +1 -1
  160. package/dist/middlewares/compression.js +6 -6
  161. package/dist/middlewares/compression.js.map +1 -1
  162. package/dist/middlewares/compression.mjs +5 -5
  163. package/dist/middlewares/compression.mjs.map +1 -1
  164. package/dist/middlewares/cors.js +59 -48
  165. package/dist/middlewares/cors.js.map +1 -1
  166. package/dist/middlewares/cors.mjs +58 -47
  167. package/dist/middlewares/cors.mjs.map +1 -1
  168. package/dist/middlewares/errors.js +32 -30
  169. package/dist/middlewares/errors.js.map +1 -1
  170. package/dist/middlewares/errors.mjs +31 -31
  171. package/dist/middlewares/errors.mjs.map +1 -1
  172. package/dist/middlewares/favicon.js +27 -17
  173. package/dist/middlewares/favicon.js.map +1 -1
  174. package/dist/middlewares/favicon.mjs +26 -16
  175. package/dist/middlewares/favicon.mjs.map +1 -1
  176. package/dist/middlewares/index.js +32 -30
  177. package/dist/middlewares/index.js.map +1 -1
  178. package/dist/middlewares/index.mjs +31 -31
  179. package/dist/middlewares/index.mjs.map +1 -1
  180. package/dist/middlewares/ip.js +6 -6
  181. package/dist/middlewares/ip.js.map +1 -1
  182. package/dist/middlewares/ip.mjs +5 -5
  183. package/dist/middlewares/ip.mjs.map +1 -1
  184. package/dist/middlewares/logger.js +10 -9
  185. package/dist/middlewares/logger.js.map +1 -1
  186. package/dist/middlewares/logger.mjs +9 -10
  187. package/dist/middlewares/logger.mjs.map +1 -1
  188. package/dist/middlewares/powered-by.js +13 -9
  189. package/dist/middlewares/powered-by.js.map +1 -1
  190. package/dist/middlewares/powered-by.mjs +12 -10
  191. package/dist/middlewares/powered-by.mjs.map +1 -1
  192. package/dist/middlewares/public.js +33 -29
  193. package/dist/middlewares/public.js.map +1 -1
  194. package/dist/middlewares/public.mjs +32 -28
  195. package/dist/middlewares/public.mjs.map +1 -1
  196. package/dist/middlewares/query.js +35 -32
  197. package/dist/middlewares/query.js.map +1 -1
  198. package/dist/middlewares/query.mjs +34 -31
  199. package/dist/middlewares/query.mjs.map +1 -1
  200. package/dist/middlewares/response-time.js +10 -9
  201. package/dist/middlewares/response-time.js.map +1 -1
  202. package/dist/middlewares/response-time.mjs +9 -10
  203. package/dist/middlewares/response-time.mjs.map +1 -1
  204. package/dist/middlewares/responses.js +14 -12
  205. package/dist/middlewares/responses.js.map +1 -1
  206. package/dist/middlewares/responses.mjs +13 -13
  207. package/dist/middlewares/responses.mjs.map +1 -1
  208. package/dist/middlewares/security.js +109 -71
  209. package/dist/middlewares/security.js.map +1 -1
  210. package/dist/middlewares/security.mjs +108 -70
  211. package/dist/middlewares/security.mjs.map +1 -1
  212. package/dist/middlewares/session.js +26 -25
  213. package/dist/middlewares/session.js.map +1 -1
  214. package/dist/middlewares/session.mjs +25 -24
  215. package/dist/middlewares/session.mjs.map +1 -1
  216. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  217. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  218. package/dist/migrations/database/5.0.0-discard-drafts.js +154 -80
  219. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  220. package/dist/migrations/database/5.0.0-discard-drafts.mjs +153 -82
  221. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  222. package/dist/migrations/draft-publish.d.ts +1 -1
  223. package/dist/migrations/draft-publish.d.ts.map +1 -1
  224. package/dist/migrations/draft-publish.js +61 -34
  225. package/dist/migrations/draft-publish.js.map +1 -1
  226. package/dist/migrations/draft-publish.mjs +60 -36
  227. package/dist/migrations/draft-publish.mjs.map +1 -1
  228. package/dist/migrations/i18n.js +62 -45
  229. package/dist/migrations/i18n.js.map +1 -1
  230. package/dist/migrations/i18n.mjs +61 -47
  231. package/dist/migrations/i18n.mjs.map +1 -1
  232. package/dist/migrations/index.js +24 -10
  233. package/dist/migrations/index.js.map +1 -1
  234. package/dist/migrations/index.mjs +23 -12
  235. package/dist/migrations/index.mjs.map +1 -1
  236. package/dist/package.json.js +182 -0
  237. package/dist/package.json.js.map +1 -0
  238. package/dist/package.json.mjs +159 -0
  239. package/dist/package.json.mjs.map +1 -0
  240. package/dist/providers/admin.js +27 -17
  241. package/dist/providers/admin.js.map +1 -1
  242. package/dist/providers/admin.mjs +26 -19
  243. package/dist/providers/admin.mjs.map +1 -1
  244. package/dist/providers/coreStore.js +13 -8
  245. package/dist/providers/coreStore.js.map +1 -1
  246. package/dist/providers/coreStore.mjs +12 -10
  247. package/dist/providers/coreStore.mjs.map +1 -1
  248. package/dist/providers/cron.js +19 -16
  249. package/dist/providers/cron.js.map +1 -1
  250. package/dist/providers/cron.mjs +18 -18
  251. package/dist/providers/cron.mjs.map +1 -1
  252. package/dist/providers/index.js +18 -9
  253. package/dist/providers/index.js.map +1 -1
  254. package/dist/providers/index.mjs +17 -10
  255. package/dist/providers/index.mjs.map +1 -1
  256. package/dist/providers/provider.js +4 -3
  257. package/dist/providers/provider.js.map +1 -1
  258. package/dist/providers/provider.mjs +3 -4
  259. package/dist/providers/provider.mjs.map +1 -1
  260. package/dist/providers/registries.js +37 -32
  261. package/dist/providers/registries.js.map +1 -1
  262. package/dist/providers/registries.mjs +36 -34
  263. package/dist/providers/registries.mjs.map +1 -1
  264. package/dist/providers/telemetry.js +19 -16
  265. package/dist/providers/telemetry.js.map +1 -1
  266. package/dist/providers/telemetry.mjs +18 -18
  267. package/dist/providers/telemetry.mjs.map +1 -1
  268. package/dist/providers/webhooks.js +28 -26
  269. package/dist/providers/webhooks.js.map +1 -1
  270. package/dist/providers/webhooks.mjs +27 -28
  271. package/dist/providers/webhooks.mjs.map +1 -1
  272. package/dist/registries/apis.js +23 -20
  273. package/dist/registries/apis.js.map +1 -1
  274. package/dist/registries/apis.mjs +22 -22
  275. package/dist/registries/apis.mjs.map +1 -1
  276. package/dist/registries/components.js +35 -37
  277. package/dist/registries/components.js.map +1 -1
  278. package/dist/registries/components.mjs +34 -39
  279. package/dist/registries/components.mjs.map +1 -1
  280. package/dist/registries/content-types.js +54 -59
  281. package/dist/registries/content-types.js.map +1 -1
  282. package/dist/registries/content-types.mjs +53 -61
  283. package/dist/registries/content-types.mjs.map +1 -1
  284. package/dist/registries/controllers.js +70 -71
  285. package/dist/registries/controllers.js.map +1 -1
  286. package/dist/registries/controllers.mjs +69 -73
  287. package/dist/registries/controllers.mjs.map +1 -1
  288. package/dist/registries/custom-fields.js +75 -65
  289. package/dist/registries/custom-fields.js.map +1 -1
  290. package/dist/registries/custom-fields.mjs +74 -67
  291. package/dist/registries/custom-fields.mjs.map +1 -1
  292. package/dist/registries/hooks.js +46 -49
  293. package/dist/registries/hooks.js.map +1 -1
  294. package/dist/registries/hooks.mjs +45 -51
  295. package/dist/registries/hooks.mjs.map +1 -1
  296. package/dist/registries/middlewares.js +49 -51
  297. package/dist/registries/middlewares.js.map +1 -1
  298. package/dist/registries/middlewares.mjs +48 -53
  299. package/dist/registries/middlewares.mjs.map +1 -1
  300. package/dist/registries/models.js +14 -13
  301. package/dist/registries/models.js.map +1 -1
  302. package/dist/registries/models.mjs +13 -14
  303. package/dist/registries/models.mjs.map +1 -1
  304. package/dist/registries/modules.js +39 -36
  305. package/dist/registries/modules.js.map +1 -1
  306. package/dist/registries/modules.mjs +38 -38
  307. package/dist/registries/modules.mjs.map +1 -1
  308. package/dist/registries/namespace.js +21 -20
  309. package/dist/registries/namespace.js.map +1 -1
  310. package/dist/registries/namespace.mjs +20 -23
  311. package/dist/registries/namespace.mjs.map +1 -1
  312. package/dist/registries/plugins.js +23 -20
  313. package/dist/registries/plugins.js.map +1 -1
  314. package/dist/registries/plugins.mjs +22 -22
  315. package/dist/registries/plugins.mjs.map +1 -1
  316. package/dist/registries/policies.js +103 -96
  317. package/dist/registries/policies.js.map +1 -1
  318. package/dist/registries/policies.mjs +102 -98
  319. package/dist/registries/policies.mjs.map +1 -1
  320. package/dist/registries/sanitizers.js +23 -22
  321. package/dist/registries/sanitizers.js.map +1 -1
  322. package/dist/registries/sanitizers.mjs +22 -22
  323. package/dist/registries/sanitizers.mjs.map +1 -1
  324. package/dist/registries/services.js +71 -71
  325. package/dist/registries/services.js.map +1 -1
  326. package/dist/registries/services.mjs +70 -73
  327. package/dist/registries/services.mjs.map +1 -1
  328. package/dist/registries/validators.js +23 -22
  329. package/dist/registries/validators.js.map +1 -1
  330. package/dist/registries/validators.mjs +22 -22
  331. package/dist/registries/validators.mjs.map +1 -1
  332. package/dist/services/auth/index.js +74 -74
  333. package/dist/services/auth/index.js.map +1 -1
  334. package/dist/services/auth/index.mjs +73 -74
  335. package/dist/services/auth/index.mjs.map +1 -1
  336. package/dist/services/config.js +47 -43
  337. package/dist/services/config.js.map +1 -1
  338. package/dist/services/config.mjs +46 -44
  339. package/dist/services/config.mjs.map +1 -1
  340. package/dist/services/content-api/index.js +80 -79
  341. package/dist/services/content-api/index.js.map +1 -1
  342. package/dist/services/content-api/index.mjs +79 -79
  343. package/dist/services/content-api/index.mjs.map +1 -1
  344. package/dist/services/content-api/permissions/engine.js +8 -5
  345. package/dist/services/content-api/permissions/engine.js.map +1 -1
  346. package/dist/services/content-api/permissions/engine.mjs +7 -5
  347. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  348. package/dist/services/content-api/permissions/index.js +101 -81
  349. package/dist/services/content-api/permissions/index.js.map +1 -1
  350. package/dist/services/content-api/permissions/index.mjs +100 -81
  351. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  352. package/dist/services/content-api/permissions/providers/action.js +17 -14
  353. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  354. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  355. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  356. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  357. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  358. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  359. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  360. package/dist/services/core-store.js +115 -95
  361. package/dist/services/core-store.js.map +1 -1
  362. package/dist/services/core-store.mjs +114 -97
  363. package/dist/services/core-store.mjs.map +1 -1
  364. package/dist/services/cron.js +74 -60
  365. package/dist/services/cron.js.map +1 -1
  366. package/dist/services/cron.mjs +73 -62
  367. package/dist/services/cron.mjs.map +1 -1
  368. package/dist/services/custom-fields.js +9 -7
  369. package/dist/services/custom-fields.js.map +1 -1
  370. package/dist/services/custom-fields.mjs +8 -9
  371. package/dist/services/custom-fields.mjs.map +1 -1
  372. package/dist/services/document-service/attributes/index.js +23 -18
  373. package/dist/services/document-service/attributes/index.js.map +1 -1
  374. package/dist/services/document-service/attributes/index.mjs +22 -19
  375. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  376. package/dist/services/document-service/attributes/transforms.js +16 -15
  377. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  378. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  379. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  380. package/dist/services/document-service/common.d.ts +1 -1
  381. package/dist/services/document-service/common.d.ts.map +1 -1
  382. package/dist/services/document-service/common.js +5 -4
  383. package/dist/services/document-service/common.js.map +1 -1
  384. package/dist/services/document-service/common.mjs +4 -5
  385. package/dist/services/document-service/common.mjs.map +1 -1
  386. package/dist/services/document-service/components.d.ts.map +1 -1
  387. package/dist/services/document-service/components.js +255 -257
  388. package/dist/services/document-service/components.js.map +1 -1
  389. package/dist/services/document-service/components.mjs +254 -262
  390. package/dist/services/document-service/components.mjs.map +1 -1
  391. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  392. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  393. package/dist/services/document-service/draft-and-publish.js +88 -48
  394. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  395. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  396. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  397. package/dist/services/document-service/entries.d.ts +2 -2
  398. package/dist/services/document-service/entries.d.ts.map +1 -1
  399. package/dist/services/document-service/entries.js +109 -92
  400. package/dist/services/document-service/entries.js.map +1 -1
  401. package/dist/services/document-service/entries.mjs +108 -93
  402. package/dist/services/document-service/entries.mjs.map +1 -1
  403. package/dist/services/document-service/events.d.ts +1 -1
  404. package/dist/services/document-service/events.d.ts.map +1 -1
  405. package/dist/services/document-service/events.js +52 -40
  406. package/dist/services/document-service/events.js.map +1 -1
  407. package/dist/services/document-service/events.mjs +51 -41
  408. package/dist/services/document-service/events.mjs.map +1 -1
  409. package/dist/services/document-service/index.d.ts +2 -1
  410. package/dist/services/document-service/index.d.ts.map +1 -1
  411. package/dist/services/document-service/index.js +53 -32
  412. package/dist/services/document-service/index.js.map +1 -1
  413. package/dist/services/document-service/index.mjs +52 -33
  414. package/dist/services/document-service/index.mjs.map +1 -1
  415. package/dist/services/document-service/internationalization.js +62 -46
  416. package/dist/services/document-service/internationalization.js.map +1 -1
  417. package/dist/services/document-service/internationalization.mjs +61 -50
  418. package/dist/services/document-service/internationalization.mjs.map +1 -1
  419. package/dist/services/document-service/middlewares/errors.js +23 -19
  420. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  421. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  422. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  423. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  424. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  425. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  426. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  427. package/dist/services/document-service/params.js +11 -5
  428. package/dist/services/document-service/params.js.map +1 -1
  429. package/dist/services/document-service/params.mjs +10 -6
  430. package/dist/services/document-service/params.mjs.map +1 -1
  431. package/dist/services/document-service/repository.d.ts.map +1 -1
  432. package/dist/services/document-service/repository.js +354 -318
  433. package/dist/services/document-service/repository.js.map +1 -1
  434. package/dist/services/document-service/repository.mjs +353 -319
  435. package/dist/services/document-service/repository.mjs.map +1 -1
  436. package/dist/services/document-service/transform/data.js +22 -12
  437. package/dist/services/document-service/transform/data.js.map +1 -1
  438. package/dist/services/document-service/transform/data.mjs +21 -13
  439. package/dist/services/document-service/transform/data.mjs.map +1 -1
  440. package/dist/services/document-service/transform/fields.js +26 -17
  441. package/dist/services/document-service/transform/fields.js.map +1 -1
  442. package/dist/services/document-service/transform/fields.mjs +25 -18
  443. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  444. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  445. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  446. package/dist/services/document-service/transform/id-map.js +116 -69
  447. package/dist/services/document-service/transform/id-map.js.map +1 -1
  448. package/dist/services/document-service/transform/id-map.mjs +115 -70
  449. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  450. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  451. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  452. package/dist/services/document-service/transform/id-transform.js +37 -29
  453. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  454. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  455. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  456. package/dist/services/document-service/transform/populate.js +23 -18
  457. package/dist/services/document-service/transform/populate.js.map +1 -1
  458. package/dist/services/document-service/transform/populate.mjs +22 -19
  459. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  460. package/dist/services/document-service/transform/query.js +11 -6
  461. package/dist/services/document-service/transform/query.js.map +1 -1
  462. package/dist/services/document-service/transform/query.mjs +10 -7
  463. package/dist/services/document-service/transform/query.mjs.map +1 -1
  464. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  465. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  466. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  467. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  468. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  469. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  470. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  471. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  472. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  473. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  474. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  475. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  476. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  477. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  478. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  479. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  480. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  481. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  482. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  483. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  484. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  485. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  486. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  487. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  488. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  489. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  490. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  491. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  492. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  493. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  494. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  495. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  496. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  497. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  498. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  499. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  500. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  501. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  502. package/dist/services/document-service/utils/populate.d.ts +1 -1
  503. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  504. package/dist/services/document-service/utils/populate.js +66 -42
  505. package/dist/services/document-service/utils/populate.js.map +1 -1
  506. package/dist/services/document-service/utils/populate.mjs +65 -43
  507. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  508. package/dist/services/document-service/utils/unidirectional-relations.d.ts +1 -1
  509. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  510. package/dist/services/document-service/utils/unidirectional-relations.js +109 -62
  511. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  512. package/dist/services/document-service/utils/unidirectional-relations.mjs +108 -64
  513. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  514. package/dist/services/entity-service/index.js +230 -161
  515. package/dist/services/entity-service/index.js.map +1 -1
  516. package/dist/services/entity-service/index.mjs +229 -160
  517. package/dist/services/entity-service/index.mjs.map +1 -1
  518. package/dist/services/entity-validator/blocks-validator.js +135 -103
  519. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  520. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  521. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  522. package/dist/services/entity-validator/index.d.ts +1 -1
  523. package/dist/services/entity-validator/index.d.ts.map +1 -1
  524. package/dist/services/entity-validator/index.js +362 -367
  525. package/dist/services/entity-validator/index.js.map +1 -1
  526. package/dist/services/entity-validator/index.mjs +358 -364
  527. package/dist/services/entity-validator/index.mjs.map +1 -1
  528. package/dist/services/entity-validator/validators.js +268 -210
  529. package/dist/services/entity-validator/validators.js.map +1 -1
  530. package/dist/services/entity-validator/validators.mjs +267 -216
  531. package/dist/services/entity-validator/validators.mjs.map +1 -1
  532. package/dist/services/errors.js +65 -65
  533. package/dist/services/errors.js.map +1 -1
  534. package/dist/services/errors.mjs +64 -66
  535. package/dist/services/errors.mjs.map +1 -1
  536. package/dist/services/event-hub.js +82 -69
  537. package/dist/services/event-hub.js.map +1 -1
  538. package/dist/services/event-hub.mjs +81 -71
  539. package/dist/services/event-hub.mjs.map +1 -1
  540. package/dist/services/features.js +19 -14
  541. package/dist/services/features.js.map +1 -1
  542. package/dist/services/features.mjs +18 -15
  543. package/dist/services/features.mjs.map +1 -1
  544. package/dist/services/fs.js +41 -40
  545. package/dist/services/fs.js.map +1 -1
  546. package/dist/services/fs.mjs +40 -39
  547. package/dist/services/fs.mjs.map +1 -1
  548. package/dist/services/metrics/admin-user-hash.js +13 -11
  549. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  550. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  551. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  552. package/dist/services/metrics/index.js +46 -40
  553. package/dist/services/metrics/index.js.map +1 -1
  554. package/dist/services/metrics/index.mjs +45 -42
  555. package/dist/services/metrics/index.mjs.map +1 -1
  556. package/dist/services/metrics/is-truthy.js +13 -6
  557. package/dist/services/metrics/is-truthy.js.map +1 -1
  558. package/dist/services/metrics/is-truthy.mjs +12 -6
  559. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  560. package/dist/services/metrics/middleware.d.ts.map +1 -1
  561. package/dist/services/metrics/middleware.js +37 -22
  562. package/dist/services/metrics/middleware.js.map +1 -1
  563. package/dist/services/metrics/middleware.mjs +36 -24
  564. package/dist/services/metrics/middleware.mjs.map +1 -1
  565. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  566. package/dist/services/metrics/rate-limiter.js +24 -19
  567. package/dist/services/metrics/rate-limiter.js.map +1 -1
  568. package/dist/services/metrics/rate-limiter.mjs +23 -21
  569. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  570. package/dist/services/metrics/sender.js +78 -69
  571. package/dist/services/metrics/sender.js.map +1 -1
  572. package/dist/services/metrics/sender.mjs +77 -64
  573. package/dist/services/metrics/sender.mjs.map +1 -1
  574. package/dist/services/query-params.js +13 -10
  575. package/dist/services/query-params.js.map +1 -1
  576. package/dist/services/query-params.mjs +12 -12
  577. package/dist/services/query-params.mjs.map +1 -1
  578. package/dist/services/reloader.js +35 -32
  579. package/dist/services/reloader.js.map +1 -1
  580. package/dist/services/reloader.mjs +34 -33
  581. package/dist/services/reloader.mjs.map +1 -1
  582. package/dist/services/request-context.js +11 -8
  583. package/dist/services/request-context.js.map +1 -1
  584. package/dist/services/request-context.mjs +10 -10
  585. package/dist/services/request-context.mjs.map +1 -1
  586. package/dist/services/server/admin-api.js +11 -10
  587. package/dist/services/server/admin-api.js.map +1 -1
  588. package/dist/services/server/admin-api.mjs +10 -11
  589. package/dist/services/server/admin-api.mjs.map +1 -1
  590. package/dist/services/server/api.js +33 -27
  591. package/dist/services/server/api.js.map +1 -1
  592. package/dist/services/server/api.mjs +32 -26
  593. package/dist/services/server/api.mjs.map +1 -1
  594. package/dist/services/server/compose-endpoint.js +116 -105
  595. package/dist/services/server/compose-endpoint.js.map +1 -1
  596. package/dist/services/server/compose-endpoint.mjs +115 -105
  597. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  598. package/dist/services/server/content-api.js +11 -9
  599. package/dist/services/server/content-api.js.map +1 -1
  600. package/dist/services/server/content-api.mjs +10 -10
  601. package/dist/services/server/content-api.mjs.map +1 -1
  602. package/dist/services/server/http-server.js +48 -44
  603. package/dist/services/server/http-server.js.map +1 -1
  604. package/dist/services/server/http-server.mjs +47 -43
  605. package/dist/services/server/http-server.mjs.map +1 -1
  606. package/dist/services/server/index.js +85 -82
  607. package/dist/services/server/index.js.map +1 -1
  608. package/dist/services/server/index.mjs +84 -81
  609. package/dist/services/server/index.mjs.map +1 -1
  610. package/dist/services/server/koa.js +49 -47
  611. package/dist/services/server/koa.js.map +1 -1
  612. package/dist/services/server/koa.mjs +48 -44
  613. package/dist/services/server/koa.mjs.map +1 -1
  614. package/dist/services/server/middleware.js +86 -82
  615. package/dist/services/server/middleware.js.map +1 -1
  616. package/dist/services/server/middleware.mjs +85 -82
  617. package/dist/services/server/middleware.mjs.map +1 -1
  618. package/dist/services/server/policy.js +24 -17
  619. package/dist/services/server/policy.js.map +1 -1
  620. package/dist/services/server/policy.mjs +23 -18
  621. package/dist/services/server/policy.mjs.map +1 -1
  622. package/dist/services/server/register-middlewares.js +68 -61
  623. package/dist/services/server/register-middlewares.js.map +1 -1
  624. package/dist/services/server/register-middlewares.mjs +67 -63
  625. package/dist/services/server/register-middlewares.mjs.map +1 -1
  626. package/dist/services/server/register-routes.js +90 -67
  627. package/dist/services/server/register-routes.js.map +1 -1
  628. package/dist/services/server/register-routes.mjs +89 -67
  629. package/dist/services/server/register-routes.mjs.map +1 -1
  630. package/dist/services/server/routing.js +94 -81
  631. package/dist/services/server/routing.js.map +1 -1
  632. package/dist/services/server/routing.mjs +93 -81
  633. package/dist/services/server/routing.mjs.map +1 -1
  634. package/dist/services/utils/dynamic-zones.js +13 -14
  635. package/dist/services/utils/dynamic-zones.js.map +1 -1
  636. package/dist/services/utils/dynamic-zones.mjs +12 -16
  637. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  638. package/dist/services/webhook-runner.js +124 -122
  639. package/dist/services/webhook-runner.js.map +1 -1
  640. package/dist/services/webhook-runner.mjs +123 -121
  641. package/dist/services/webhook-runner.mjs.map +1 -1
  642. package/dist/services/webhook-store.js +132 -99
  643. package/dist/services/webhook-store.js.map +1 -1
  644. package/dist/services/webhook-store.mjs +131 -101
  645. package/dist/services/webhook-store.mjs.map +1 -1
  646. package/dist/services/worker-queue.js +44 -49
  647. package/dist/services/worker-queue.js.map +1 -1
  648. package/dist/services/worker-queue.mjs +43 -49
  649. package/dist/services/worker-queue.mjs.map +1 -1
  650. package/dist/utils/convert-custom-field-type.js +17 -20
  651. package/dist/utils/convert-custom-field-type.js.map +1 -1
  652. package/dist/utils/convert-custom-field-type.mjs +16 -21
  653. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  654. package/dist/utils/cron.js +64 -30
  655. package/dist/utils/cron.js.map +1 -1
  656. package/dist/utils/cron.mjs +63 -31
  657. package/dist/utils/cron.mjs.map +1 -1
  658. package/dist/utils/fetch.js +24 -18
  659. package/dist/utils/fetch.js.map +1 -1
  660. package/dist/utils/fetch.mjs +23 -19
  661. package/dist/utils/fetch.mjs.map +1 -1
  662. package/dist/utils/filepath-to-prop-path.js +20 -28
  663. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  664. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  665. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  666. package/dist/utils/is-initialized.js +21 -12
  667. package/dist/utils/is-initialized.js.map +1 -1
  668. package/dist/utils/is-initialized.mjs +20 -13
  669. package/dist/utils/is-initialized.mjs.map +1 -1
  670. package/dist/utils/lifecycles.js +6 -5
  671. package/dist/utils/lifecycles.js.map +1 -1
  672. package/dist/utils/lifecycles.mjs +5 -6
  673. package/dist/utils/lifecycles.mjs.map +1 -1
  674. package/dist/utils/load-config-file.js +40 -38
  675. package/dist/utils/load-config-file.js.map +1 -1
  676. package/dist/utils/load-config-file.mjs +39 -36
  677. package/dist/utils/load-config-file.mjs.map +1 -1
  678. package/dist/utils/load-files.js +40 -35
  679. package/dist/utils/load-files.js.map +1 -1
  680. package/dist/utils/load-files.mjs +39 -32
  681. package/dist/utils/load-files.mjs.map +1 -1
  682. package/dist/utils/open-browser.js +8 -8
  683. package/dist/utils/open-browser.js.map +1 -1
  684. package/dist/utils/open-browser.mjs +7 -7
  685. package/dist/utils/open-browser.mjs.map +1 -1
  686. package/dist/utils/resolve-working-dirs.js +23 -10
  687. package/dist/utils/resolve-working-dirs.js.map +1 -1
  688. package/dist/utils/resolve-working-dirs.mjs +22 -9
  689. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  690. package/dist/utils/signals.js +20 -14
  691. package/dist/utils/signals.js.map +1 -1
  692. package/dist/utils/signals.mjs +19 -15
  693. package/dist/utils/signals.mjs.map +1 -1
  694. package/dist/utils/startup-logger.d.ts.map +1 -1
  695. package/dist/utils/startup-logger.js +107 -78
  696. package/dist/utils/startup-logger.js.map +1 -1
  697. package/dist/utils/startup-logger.mjs +106 -75
  698. package/dist/utils/startup-logger.mjs.map +1 -1
  699. package/dist/utils/transform-content-types-to-models.d.ts +353 -21
  700. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  701. package/dist/utils/transform-content-types-to-models.js +350 -261
  702. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  703. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  704. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  705. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  706. package/dist/utils/update-notifier/index.js +68 -73
  707. package/dist/utils/update-notifier/index.js.map +1 -1
  708. package/dist/utils/update-notifier/index.mjs +67 -67
  709. package/dist/utils/update-notifier/index.mjs.map +1 -1
  710. package/package.json +27 -28
@@ -1,78 +1,123 @@
1
- import { async } from "@strapi/utils";
2
- const encodeKey = (obj) => {
3
- const keys = Object.keys(obj).sort();
4
- return keys.map((key) => `${key}:::${obj[key]}`).join("&&");
1
+ import { async, contentTypes } from '@strapi/utils';
2
+
3
+ const hasDraftAndPublish = (uid)=>{
4
+ const model = strapi.getModel(uid);
5
+ return contentTypes.hasDraftAndPublish(model);
5
6
  };
6
- const createIdMap = ({ strapi }) => {
7
- const loadedIds = /* @__PURE__ */ new Map();
8
- const toLoadIds = /* @__PURE__ */ new Map();
9
- return {
10
- loadedIds,
11
- toLoadIds,
12
- /**
7
+ /**
8
+ * TODO: Find a better way to encode keys than this
9
+ * This converts an object into a string by joining its keys and values,
10
+ * so it can be used as a key in a Map.
11
+ *
12
+ * @example
13
+ * const obj = { a: 1, b: 2 };
14
+ * const key = encodeKey(obj);
15
+ * ^ "a:::1&&b:::2"
16
+ */ const encodeKey = (obj)=>{
17
+ // Ignore status field for models without draft and publish
18
+ if (!hasDraftAndPublish(obj.uid)) {
19
+ delete obj.status;
20
+ }
21
+ // Sort keys to always keep the same order when encoding
22
+ const keys = Object.keys(obj).sort();
23
+ return keys.map((key)=>`${key}:::${obj[key]}`).join('&&');
24
+ };
25
+ /**
26
+ * Holds a registry of document ids and their corresponding entity ids.
27
+ */ const createIdMap = ({ strapi: strapi1 })=>{
28
+ const loadedIds = new Map();
29
+ const toLoadIds = new Map();
30
+ return {
31
+ loadedIds,
32
+ toLoadIds,
33
+ /**
13
34
  * Register a new document id and its corresponding entity id.
14
- */
15
- add(keyFields) {
16
- const key = encodeKey({ status: "published", locale: null, ...keyFields });
17
- if (loadedIds.has(key))
18
- return;
19
- if (toLoadIds.has(key))
20
- return;
21
- toLoadIds.set(key, keyFields);
22
- },
23
- /**
24
- * Load all ids from the registry.
25
- */
26
- async load() {
27
- const loadIdValues = Array.from(toLoadIds.values());
28
- const idsByUidAndLocale = loadIdValues.reduce((acc, { documentId, ...rest }) => {
29
- const key = encodeKey(rest);
30
- const ids = acc[key] || { ...rest, documentIds: [] };
31
- ids.documentIds.push(documentId);
32
- return { ...acc, [key]: ids };
33
- }, {});
34
- await async.map(
35
- Object.values(idsByUidAndLocale),
36
- async ({ uid, locale, documentIds, status }) => {
37
- const findParams = {
38
- select: ["id", "documentId", "locale", "publishedAt"],
39
- where: {
40
- documentId: { $in: documentIds },
41
- locale: locale || null,
42
- publishedAt: status === "draft" ? null : { $ne: null }
43
- }
44
- };
45
- const result = await strapi?.db?.query(uid).findMany(findParams);
46
- result?.forEach(({ documentId, id, locale: locale2, publishedAt }) => {
35
+ */ add (keyFields) {
47
36
  const key = encodeKey({
48
- documentId,
49
- uid,
50
- locale: locale2,
51
- status: publishedAt ? "published" : "draft"
37
+ status: 'published',
38
+ locale: null,
39
+ ...keyFields
52
40
  });
53
- loadedIds.set(key, id);
54
- });
55
- }
56
- );
57
- toLoadIds.clear();
58
- },
59
- /**
41
+ // If the id is already loaded, do nothing
42
+ if (loadedIds.has(key)) return;
43
+ // If the id is already in the toLoadIds, do nothing
44
+ if (toLoadIds.has(key)) return;
45
+ // Add the id to the toLoadIds
46
+ toLoadIds.set(key, keyFields);
47
+ },
48
+ /**
49
+ * Load all ids from the registry.
50
+ */ async load () {
51
+ // Document Id to Entry Id queries are batched by its uid and locale
52
+ // TODO: Add publication state too
53
+ const loadIdValues = Array.from(toLoadIds.values());
54
+ // 1. Group ids to query together
55
+ const idsByUidAndLocale = loadIdValues.reduce((acc, { documentId, ...rest })=>{
56
+ const key = encodeKey(rest);
57
+ const ids = acc[key] || {
58
+ ...rest,
59
+ documentIds: []
60
+ };
61
+ ids.documentIds.push(documentId);
62
+ return {
63
+ ...acc,
64
+ [key]: ids
65
+ };
66
+ }, {});
67
+ // 2. Query ids
68
+ await async.map(Object.values(idsByUidAndLocale), async ({ uid, locale, documentIds, status })=>{
69
+ const findParams = {
70
+ select: [
71
+ 'id',
72
+ 'documentId',
73
+ 'locale',
74
+ 'publishedAt'
75
+ ],
76
+ where: {
77
+ documentId: {
78
+ $in: documentIds
79
+ },
80
+ locale: locale || null
81
+ }
82
+ };
83
+ if (hasDraftAndPublish(uid)) {
84
+ findParams.where.publishedAt = status === 'draft' ? null : {
85
+ $ne: null
86
+ };
87
+ }
88
+ const result = await strapi1?.db?.query(uid).findMany(findParams);
89
+ // 3. Store result in loadedIds
90
+ result?.forEach(({ documentId, id, locale, publishedAt })=>{
91
+ const key = encodeKey({
92
+ documentId,
93
+ uid,
94
+ locale,
95
+ status: publishedAt ? 'published' : 'draft'
96
+ });
97
+ loadedIds.set(key, id);
98
+ });
99
+ });
100
+ // 4. Clear toLoadIds
101
+ toLoadIds.clear();
102
+ },
103
+ /**
60
104
  * Get the entity id for a given document id.
61
- */
62
- get(keys) {
63
- const key = encodeKey({ status: "published", locale: null, ...keys });
64
- return loadedIds.get(key);
65
- },
66
- /**
105
+ */ get (keys) {
106
+ const key = encodeKey({
107
+ status: 'published',
108
+ locale: null,
109
+ ...keys
110
+ });
111
+ return loadedIds.get(key);
112
+ },
113
+ /**
67
114
  * Clear the registry.
68
- */
69
- clear() {
70
- loadedIds.clear();
71
- toLoadIds.clear();
72
- }
73
- };
74
- };
75
- export {
76
- createIdMap
115
+ */ clear () {
116
+ loadedIds.clear();
117
+ toLoadIds.clear();
118
+ }
119
+ };
77
120
  };
121
+
122
+ export { createIdMap };
78
123
  //# sourceMappingURL=id-map.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-map.mjs","sources":["../../../../src/services/document-service/transform/id-map.ts"],"sourcesContent":["import { Core, Data } from '@strapi/types';\nimport { async } from '@strapi/utils';\n\n/**\n * TODO: Find a better way to encode keys than this\n * This converts an object into a string by joining its keys and values,\n * so it can be used as a key in a Map.\n *\n * @example\n * const obj = { a: 1, b: 2 };\n * const key = encodeKey(obj);\n * ^ \"a:::1&&b:::2\"\n */\nconst encodeKey = (obj: any) => {\n // Sort keys to always keep the same order when encoding\n const keys = Object.keys(obj).sort();\n return keys.map((key) => `${key}:::${obj[key]}`).join('&&');\n};\n\ninterface KeyFields {\n uid: string;\n documentId: Data.ID;\n locale?: string | null;\n status?: 'draft' | 'published';\n}\n\nexport interface IdMap {\n loadedIds: Map<string, string>;\n toLoadIds: Map<string, KeyFields>;\n // Make the Keys type to be the params of add\n add(keys: KeyFields): void;\n load(): Promise<void>;\n get(keys: KeyFields): string | undefined;\n clear(): void;\n}\n\n/**\n * Holds a registry of document ids and their corresponding entity ids.\n */\nconst createIdMap = ({ strapi }: { strapi: Core.Strapi }): IdMap => {\n const loadedIds = new Map();\n const toLoadIds = new Map();\n\n return {\n loadedIds,\n toLoadIds,\n /**\n * Register a new document id and its corresponding entity id.\n */\n add(keyFields: KeyFields) {\n const key = encodeKey({ status: 'published', locale: null, ...keyFields });\n\n // If the id is already loaded, do nothing\n if (loadedIds.has(key)) return;\n // If the id is already in the toLoadIds, do nothing\n if (toLoadIds.has(key)) return;\n\n // Add the id to the toLoadIds\n toLoadIds.set(key, keyFields);\n },\n\n /**\n * Load all ids from the registry.\n */\n async load() {\n // Document Id to Entry Id queries are batched by its uid and locale\n // TODO: Add publication state too\n const loadIdValues = Array.from(toLoadIds.values());\n\n // 1. Group ids to query together\n const idsByUidAndLocale = loadIdValues.reduce((acc, { documentId, ...rest }) => {\n const key = encodeKey(rest);\n const ids = acc[key] || { ...rest, documentIds: [] };\n ids.documentIds.push(documentId);\n return { ...acc, [key]: ids };\n }, {});\n\n // 2. Query ids\n await async.map(\n Object.values(idsByUidAndLocale),\n async ({ uid, locale, documentIds, status }: any) => {\n const findParams = {\n select: ['id', 'documentId', 'locale', 'publishedAt'],\n where: {\n documentId: { $in: documentIds },\n locale: locale || null,\n publishedAt: status === 'draft' ? null : { $ne: null },\n },\n } as any;\n\n const result = await strapi?.db?.query(uid).findMany(findParams);\n\n // 3. Store result in loadedIds\n result?.forEach(({ documentId, id, locale, publishedAt }: any) => {\n const key = encodeKey({\n documentId,\n uid,\n locale,\n status: publishedAt ? 'published' : 'draft',\n });\n loadedIds.set(key, id);\n });\n }\n );\n\n // 4. Clear toLoadIds\n toLoadIds.clear();\n },\n\n /**\n * Get the entity id for a given document id.\n */\n get(keys: KeyFields) {\n const key = encodeKey({ status: 'published', locale: null, ...keys });\n return loadedIds.get(key);\n },\n\n /**\n * Clear the registry.\n */\n clear() {\n loadedIds.clear();\n toLoadIds.clear();\n },\n };\n};\n\nexport { createIdMap };\n"],"names":["locale"],"mappings":";AAaA,MAAM,YAAY,CAAC,QAAa;AAE9B,QAAM,OAAO,OAAO,KAAK,GAAG,EAAE,KAAK;AACnC,SAAO,KAAK,IAAI,CAAC,QAAQ,GAAG,GAAG,MAAM,IAAI,GAAG,CAAC,EAAE,EAAE,KAAK,IAAI;AAC5D;AAsBA,MAAM,cAAc,CAAC,EAAE,aAA6C;AAC5D,QAAA,gCAAgB;AAChB,QAAA,gCAAgB;AAEf,SAAA;AAAA,IACL;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,IAIA,IAAI,WAAsB;AAClB,YAAA,MAAM,UAAU,EAAE,QAAQ,aAAa,QAAQ,MAAM,GAAG,UAAA,CAAW;AAGrE,UAAA,UAAU,IAAI,GAAG;AAAG;AAEpB,UAAA,UAAU,IAAI,GAAG;AAAG;AAGd,gBAAA,IAAI,KAAK,SAAS;AAAA,IAC9B;AAAA;AAAA;AAAA;AAAA,IAKA,MAAM,OAAO;AAGX,YAAM,eAAe,MAAM,KAAK,UAAU,OAAQ,CAAA;AAG5C,YAAA,oBAAoB,aAAa,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,WAAW;AACxE,cAAA,MAAM,UAAU,IAAI;AACpB,cAAA,MAAM,IAAI,GAAG,KAAK,EAAE,GAAG,MAAM,aAAa,CAAA;AAC5C,YAAA,YAAY,KAAK,UAAU;AAC/B,eAAO,EAAE,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI;AAAA,MAC9B,GAAG,CAAE,CAAA;AAGL,YAAM,MAAM;AAAA,QACV,OAAO,OAAO,iBAAiB;AAAA,QAC/B,OAAO,EAAE,KAAK,QAAQ,aAAa,aAAkB;AACnD,gBAAM,aAAa;AAAA,YACjB,QAAQ,CAAC,MAAM,cAAc,UAAU,aAAa;AAAA,YACpD,OAAO;AAAA,cACL,YAAY,EAAE,KAAK,YAAY;AAAA,cAC/B,QAAQ,UAAU;AAAA,cAClB,aAAa,WAAW,UAAU,OAAO,EAAE,KAAK,KAAK;AAAA,YACvD;AAAA,UAAA;AAGI,gBAAA,SAAS,MAAM,QAAQ,IAAI,MAAM,GAAG,EAAE,SAAS,UAAU;AAGvD,kBAAA,QAAQ,CAAC,EAAE,YAAY,IAAI,QAAAA,SAAQ,kBAAuB;AAChE,kBAAM,MAAM,UAAU;AAAA,cACpB;AAAA,cACA;AAAA,cACA,QAAAA;AAAAA,cACA,QAAQ,cAAc,cAAc;AAAA,YAAA,CACrC;AACS,sBAAA,IAAI,KAAK,EAAE;AAAA,UAAA,CACtB;AAAA,QACH;AAAA,MAAA;AAIF,gBAAU,MAAM;AAAA,IAClB;AAAA;AAAA;AAAA;AAAA,IAKA,IAAI,MAAiB;AACb,YAAA,MAAM,UAAU,EAAE,QAAQ,aAAa,QAAQ,MAAM,GAAG,KAAA,CAAM;AAC7D,aAAA,UAAU,IAAI,GAAG;AAAA,IAC1B;AAAA;AAAA;AAAA;AAAA,IAKA,QAAQ;AACN,gBAAU,MAAM;AAChB,gBAAU,MAAM;AAAA,IAClB;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"id-map.mjs","sources":["../../../../src/services/document-service/transform/id-map.ts"],"sourcesContent":["import type { Core, Data, UID } from '@strapi/types';\nimport { async, contentTypes } from '@strapi/utils';\n\nconst hasDraftAndPublish = (uid: UID.CollectionType) => {\n const model = strapi.getModel(uid);\n return contentTypes.hasDraftAndPublish(model);\n};\n\n/**\n * TODO: Find a better way to encode keys than this\n * This converts an object into a string by joining its keys and values,\n * so it can be used as a key in a Map.\n *\n * @example\n * const obj = { a: 1, b: 2 };\n * const key = encodeKey(obj);\n * ^ \"a:::1&&b:::2\"\n */\nconst encodeKey = (obj: any) => {\n // Ignore status field for models without draft and publish\n if (!hasDraftAndPublish(obj.uid)) {\n delete obj.status;\n }\n\n // Sort keys to always keep the same order when encoding\n const keys = Object.keys(obj).sort();\n return keys.map((key) => `${key}:::${obj[key]}`).join('&&');\n};\n\ninterface KeyFields {\n uid: string;\n documentId: Data.ID;\n locale?: string | null;\n status?: 'draft' | 'published';\n}\n\nexport interface IdMap {\n loadedIds: Map<string, string>;\n toLoadIds: Map<string, KeyFields>;\n // Make the Keys type to be the params of add\n add(keys: KeyFields): void;\n load(): Promise<void>;\n get(keys: KeyFields): string | undefined;\n clear(): void;\n}\n\n/**\n * Holds a registry of document ids and their corresponding entity ids.\n */\nconst createIdMap = ({ strapi }: { strapi: Core.Strapi }): IdMap => {\n const loadedIds = new Map();\n const toLoadIds = new Map();\n\n return {\n loadedIds,\n toLoadIds,\n /**\n * Register a new document id and its corresponding entity id.\n */\n add(keyFields: KeyFields) {\n const key = encodeKey({ status: 'published', locale: null, ...keyFields });\n\n // If the id is already loaded, do nothing\n if (loadedIds.has(key)) return;\n // If the id is already in the toLoadIds, do nothing\n if (toLoadIds.has(key)) return;\n\n // Add the id to the toLoadIds\n toLoadIds.set(key, keyFields);\n },\n\n /**\n * Load all ids from the registry.\n */\n async load() {\n // Document Id to Entry Id queries are batched by its uid and locale\n // TODO: Add publication state too\n const loadIdValues = Array.from(toLoadIds.values());\n\n // 1. Group ids to query together\n const idsByUidAndLocale = loadIdValues.reduce((acc, { documentId, ...rest }) => {\n const key = encodeKey(rest);\n const ids = acc[key] || { ...rest, documentIds: [] };\n ids.documentIds.push(documentId);\n return { ...acc, [key]: ids };\n }, {});\n\n // 2. Query ids\n await async.map(\n Object.values(idsByUidAndLocale),\n async ({ uid, locale, documentIds, status }: any) => {\n const findParams = {\n select: ['id', 'documentId', 'locale', 'publishedAt'],\n where: {\n documentId: { $in: documentIds },\n locale: locale || null,\n },\n } as any;\n\n if (hasDraftAndPublish(uid)) {\n findParams.where.publishedAt = status === 'draft' ? null : { $ne: null };\n }\n\n const result = await strapi?.db?.query(uid).findMany(findParams);\n\n // 3. Store result in loadedIds\n result?.forEach(({ documentId, id, locale, publishedAt }: any) => {\n const key = encodeKey({\n documentId,\n uid,\n locale,\n status: publishedAt ? 'published' : 'draft',\n });\n loadedIds.set(key, id);\n });\n }\n );\n\n // 4. Clear toLoadIds\n toLoadIds.clear();\n },\n\n /**\n * Get the entity id for a given document id.\n */\n get(keys: KeyFields) {\n const key = encodeKey({ status: 'published', locale: null, ...keys });\n return loadedIds.get(key);\n },\n\n /**\n * Clear the registry.\n */\n clear() {\n loadedIds.clear();\n toLoadIds.clear();\n },\n };\n};\n\nexport { createIdMap };\n"],"names":["hasDraftAndPublish","uid","model","strapi","getModel","contentTypes","encodeKey","obj","status","keys","Object","sort","map","key","join","createIdMap","loadedIds","Map","toLoadIds","add","keyFields","locale","has","set","load","loadIdValues","Array","from","values","idsByUidAndLocale","reduce","acc","documentId","rest","ids","documentIds","push","async","findParams","select","where","$in","publishedAt","$ne","result","db","query","findMany","forEach","id","clear","get"],"mappings":";;AAGA,MAAMA,qBAAqB,CAACC,GAAAA,GAAAA;IAC1B,MAAMC,KAAAA,GAAQC,MAAOC,CAAAA,QAAQ,CAACH,GAAAA,CAAAA;IAC9B,OAAOI,YAAAA,CAAaL,kBAAkB,CAACE,KAAAA,CAAAA;AACzC,CAAA;AAEA;;;;;;;;;IAUA,MAAMI,YAAY,CAACC,GAAAA,GAAAA;;AAEjB,IAAA,IAAI,CAACP,kBAAAA,CAAmBO,GAAIN,CAAAA,GAAG,CAAG,EAAA;AAChC,QAAA,OAAOM,IAAIC,MAAM;AACnB;;AAGA,IAAA,MAAMC,IAAOC,GAAAA,MAAAA,CAAOD,IAAI,CAACF,KAAKI,IAAI,EAAA;AAClC,IAAA,OAAOF,KAAKG,GAAG,CAAC,CAACC,GAAAA,GAAQ,CAAC,EAAEA,GAAAA,CAAI,GAAG,EAAEN,GAAG,CAACM,GAAAA,CAAI,CAAC,CAAC,CAAA,CAAEC,IAAI,CAAC,IAAA,CAAA;AACxD,CAAA;AAmBA;;AAEC,UACKC,WAAc,GAAA,CAAC,EAAEZ,MAAAA,EAAAA,OAAM,EAA2B,GAAA;AACtD,IAAA,MAAMa,YAAY,IAAIC,GAAAA,EAAAA;AACtB,IAAA,MAAMC,YAAY,IAAID,GAAAA,EAAAA;IAEtB,OAAO;AACLD,QAAAA,SAAAA;AACAE,QAAAA,SAAAA;AACA;;AAEC,QACDC,KAAIC,SAAoB,EAAA;AACtB,YAAA,MAAMP,MAAMP,SAAU,CAAA;gBAAEE,MAAQ,EAAA,WAAA;gBAAaa,MAAQ,EAAA,IAAA;AAAM,gBAAA,GAAGD;AAAU,aAAA,CAAA;;YAGxE,IAAIJ,SAAAA,CAAUM,GAAG,CAACT,GAAM,CAAA,EAAA;;YAExB,IAAIK,SAAAA,CAAUI,GAAG,CAACT,GAAM,CAAA,EAAA;;YAGxBK,SAAUK,CAAAA,GAAG,CAACV,GAAKO,EAAAA,SAAAA,CAAAA;AACrB,SAAA;AAEA;;AAEC,QACD,MAAMI,IAAAA,CAAAA,GAAAA;;;AAGJ,YAAA,MAAMC,YAAeC,GAAAA,KAAAA,CAAMC,IAAI,CAACT,UAAUU,MAAM,EAAA,CAAA;;YAGhD,MAAMC,iBAAAA,GAAoBJ,YAAaK,CAAAA,MAAM,CAAC,CAACC,KAAK,EAAEC,UAAU,EAAE,GAAGC,IAAM,EAAA,GAAA;AACzE,gBAAA,MAAMpB,MAAMP,SAAU2B,CAAAA,IAAAA,CAAAA;AACtB,gBAAA,MAAMC,GAAMH,GAAAA,GAAG,CAAClB,GAAAA,CAAI,IAAI;AAAE,oBAAA,GAAGoB,IAAI;AAAEE,oBAAAA,WAAAA,EAAa;AAAG,iBAAA;gBACnDD,GAAIC,CAAAA,WAAW,CAACC,IAAI,CAACJ,UAAAA,CAAAA;gBACrB,OAAO;AAAE,oBAAA,GAAGD,GAAG;AAAE,oBAAA,CAAClB,MAAMqB;AAAI,iBAAA;AAC9B,aAAA,EAAG,EAAC,CAAA;;AAGJ,YAAA,MAAMG,MAAMzB,GAAG,CACbF,MAAOkB,CAAAA,MAAM,CAACC,iBACd,CAAA,EAAA,OAAO,EAAE5B,GAAG,EAAEoB,MAAM,EAAEc,WAAW,EAAE3B,MAAM,EAAO,GAAA;AAC9C,gBAAA,MAAM8B,UAAa,GAAA;oBACjBC,MAAQ,EAAA;AAAC,wBAAA,IAAA;AAAM,wBAAA,YAAA;AAAc,wBAAA,QAAA;AAAU,wBAAA;AAAc,qBAAA;oBACrDC,KAAO,EAAA;wBACLR,UAAY,EAAA;4BAAES,GAAKN,EAAAA;AAAY,yBAAA;AAC/Bd,wBAAAA,MAAAA,EAAQA,MAAU,IAAA;AACpB;AACF,iBAAA;AAEA,gBAAA,IAAIrB,mBAAmBC,GAAM,CAAA,EAAA;AAC3BqC,oBAAAA,UAAAA,CAAWE,KAAK,CAACE,WAAW,GAAGlC,MAAAA,KAAW,UAAU,IAAO,GAAA;wBAAEmC,GAAK,EAAA;AAAK,qBAAA;AACzE;AAEA,gBAAA,MAAMC,SAAS,MAAMzC,OAAAA,EAAQ0C,EAAIC,EAAAA,KAAAA,CAAM7C,KAAK8C,QAAST,CAAAA,UAAAA,CAAAA;;gBAGrDM,MAAQI,EAAAA,OAAAA,CAAQ,CAAC,EAAEhB,UAAU,EAAEiB,EAAE,EAAE5B,MAAM,EAAEqB,WAAW,EAAO,GAAA;AAC3D,oBAAA,MAAM7B,MAAMP,SAAU,CAAA;AACpB0B,wBAAAA,UAAAA;AACA/B,wBAAAA,GAAAA;AACAoB,wBAAAA,MAAAA;AACAb,wBAAAA,MAAAA,EAAQkC,cAAc,WAAc,GAAA;AACtC,qBAAA,CAAA;oBACA1B,SAAUO,CAAAA,GAAG,CAACV,GAAKoC,EAAAA,EAAAA,CAAAA;AACrB,iBAAA,CAAA;AACF,aAAA,CAAA;;AAIF/B,YAAAA,SAAAA,CAAUgC,KAAK,EAAA;AACjB,SAAA;AAEA;;AAEC,QACDC,KAAI1C,IAAe,EAAA;AACjB,YAAA,MAAMI,MAAMP,SAAU,CAAA;gBAAEE,MAAQ,EAAA,WAAA;gBAAaa,MAAQ,EAAA,IAAA;AAAM,gBAAA,GAAGZ;AAAK,aAAA,CAAA;YACnE,OAAOO,SAAAA,CAAUmC,GAAG,CAACtC,GAAAA,CAAAA;AACvB,SAAA;AAEA;;QAGAqC,KAAAA,CAAAA,GAAAA;AACElC,YAAAA,SAAAA,CAAUkC,KAAK,EAAA;AACfhC,YAAAA,SAAAA,CAAUgC,KAAK,EAAA;AACjB;AACF,KAAA;AACF;;;;"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="lodash" />
2
- import { UID, Modules } from '@strapi/types';
2
+ import type { UID, Modules } from '@strapi/types';
3
3
  declare const curriedTransformParamsDocumentId: import("lodash").CurriedFunction2<UID.Schema, Modules.Documents.Params.All, Promise<Modules.Documents.Params.All>>;
4
4
  export { curriedTransformParamsDocumentId as transformParamsDocumentId };
5
5
  //# sourceMappingURL=id-transform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-transform.d.ts","sourceRoot":"","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA0C7C,QAAA,MAAM,gCAAgC,oHAAmC,CAAC;AAE1E,OAAO,EAAE,gCAAgC,IAAI,yBAAyB,EAAE,CAAC"}
1
+ {"version":3,"file":"id-transform.d.ts","sourceRoot":"","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AA0ClD,QAAA,MAAM,gCAAgC,oHAAmC,CAAC;AAE1E,OAAO,EAAE,gCAAgC,IAAI,yBAAyB,EAAE,CAAC"}
@@ -1,33 +1,41 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const fp = require("lodash/fp");
4
- const data = require("./data.js");
5
- const fields = require("./fields.js");
6
- const populate = require("./populate.js");
7
- async function transformParamsDocumentId(uid, query) {
8
- let data$1 = query.data;
9
- if (query.data) {
10
- data$1 = await data.transformData(query.data, {
11
- locale: query.locale,
12
- status: query.status,
13
- uid
14
- });
15
- }
16
- let fields$1 = query.fields;
17
- if (query.fields) {
18
- fields$1 = fields.transformFields(query.fields);
19
- }
20
- let populate$1 = query.populate;
21
- if (query.populate) {
22
- populate$1 = await populate.transformPopulate(query.populate, { uid });
23
- }
24
- return {
25
- ...query,
26
- data: data$1,
27
- fields: fields$1,
28
- populate: populate$1
29
- };
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+ var data = require('./data.js');
5
+ var fields = require('./fields.js');
6
+ var populate = require('./populate.js');
7
+
8
+ /**
9
+ * Transform input of a query to map document ids to entity ids.
10
+ */ async function transformParamsDocumentId(uid, query) {
11
+ // Transform relational documentIds to entity ids
12
+ let data$1 = query.data;
13
+ if (query.data) {
14
+ data$1 = await data.transformData(query.data, {
15
+ locale: query.locale,
16
+ status: query.status,
17
+ uid
18
+ });
19
+ }
20
+ // Make sure documentId is always present in the response
21
+ let fields$1 = query.fields;
22
+ if (query.fields) {
23
+ fields$1 = fields.transformFields(query.fields);
24
+ }
25
+ let populate$1 = query.populate;
26
+ if (query.populate) {
27
+ populate$1 = await populate.transformPopulate(query.populate, {
28
+ uid
29
+ });
30
+ }
31
+ return {
32
+ ...query,
33
+ data: data$1,
34
+ fields: fields$1,
35
+ populate: populate$1
36
+ };
30
37
  }
31
38
  const curriedTransformParamsDocumentId = fp.curry(transformParamsDocumentId);
39
+
32
40
  exports.transformParamsDocumentId = curriedTransformParamsDocumentId;
33
41
  //# sourceMappingURL=id-transform.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-transform.js","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport { UID, Modules } from '@strapi/types';\n\nimport { transformData } from './data';\nimport { transformFields } from './fields';\nimport { transformPopulate } from './populate';\n\n/**\n * Transform input of a query to map document ids to entity ids.\n */\nasync function transformParamsDocumentId(\n uid: UID.Schema,\n query: Modules.Documents.Params.All\n): Promise<Modules.Documents.Params.All> {\n // Transform relational documentIds to entity ids\n let data = query.data;\n if (query.data) {\n data = await transformData(query.data, {\n locale: query.locale,\n status: query.status,\n uid,\n });\n }\n\n // Make sure documentId is always present in the response\n let fields = query.fields;\n if (query.fields) {\n fields = transformFields(query.fields) as typeof query.fields;\n }\n\n let populate = query.populate;\n if (query.populate) {\n populate = (await transformPopulate(query.populate, { uid })) as typeof query.populate;\n }\n\n return {\n ...query,\n data,\n fields,\n populate,\n };\n}\n\nconst curriedTransformParamsDocumentId = curry(transformParamsDocumentId);\n\nexport { curriedTransformParamsDocumentId as transformParamsDocumentId };\n"],"names":["data","transformData","fields","transformFields","populate","transformPopulate","curry"],"mappings":";;;;;;AAWA,eAAe,0BACb,KACA,OACuC;AAEvC,MAAIA,SAAO,MAAM;AACjB,MAAI,MAAM,MAAM;AACPA,aAAA,MAAMC,KAAAA,cAAc,MAAM,MAAM;AAAA,MACrC,QAAQ,MAAM;AAAA,MACd,QAAQ,MAAM;AAAA,MACd;AAAA,IAAA,CACD;AAAA,EACH;AAGA,MAAIC,WAAS,MAAM;AACnB,MAAI,MAAM,QAAQ;AACPA,eAAAC,OAAA,gBAAgB,MAAM,MAAM;AAAA,EACvC;AAEA,MAAIC,aAAW,MAAM;AACrB,MAAI,MAAM,UAAU;AAClBA,iBAAY,MAAMC,SAAAA,kBAAkB,MAAM,UAAU,EAAE,KAAK;AAAA,EAC7D;AAEO,SAAA;AAAA,IACL,GAAG;AAAA,IAAA,MACHL;AAAAA,IAAA,QACAE;AAAAA,IAAA,UACAE;AAAAA,EAAA;AAEJ;AAEM,MAAA,mCAAmCE,SAAM,yBAAyB;;"}
1
+ {"version":3,"file":"id-transform.js","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport type { UID, Modules } from '@strapi/types';\n\nimport { transformData } from './data';\nimport { transformFields } from './fields';\nimport { transformPopulate } from './populate';\n\n/**\n * Transform input of a query to map document ids to entity ids.\n */\nasync function transformParamsDocumentId(\n uid: UID.Schema,\n query: Modules.Documents.Params.All\n): Promise<Modules.Documents.Params.All> {\n // Transform relational documentIds to entity ids\n let data = query.data;\n if (query.data) {\n data = await transformData(query.data, {\n locale: query.locale,\n status: query.status,\n uid,\n });\n }\n\n // Make sure documentId is always present in the response\n let fields = query.fields;\n if (query.fields) {\n fields = transformFields(query.fields) as typeof query.fields;\n }\n\n let populate = query.populate;\n if (query.populate) {\n populate = (await transformPopulate(query.populate, { uid })) as typeof query.populate;\n }\n\n return {\n ...query,\n data,\n fields,\n populate,\n };\n}\n\nconst curriedTransformParamsDocumentId = curry(transformParamsDocumentId);\n\nexport { curriedTransformParamsDocumentId as transformParamsDocumentId };\n"],"names":["transformParamsDocumentId","uid","query","data","transformData","locale","status","fields","transformFields","populate","transformPopulate","curriedTransformParamsDocumentId","curry"],"mappings":";;;;;;;AAQA;;AAEC,IACD,eAAeA,yBAAAA,CACbC,GAAe,EACfC,KAAmC,EAAA;;IAGnC,IAAIC,MAAAA,GAAOD,MAAMC,IAAI;IACrB,IAAID,KAAAA,CAAMC,IAAI,EAAE;AACdA,QAAAA,MAAAA,GAAO,MAAMC,kBAAAA,CAAcF,KAAMC,CAAAA,IAAI,EAAE;AACrCE,YAAAA,MAAAA,EAAQH,MAAMG,MAAM;AACpBC,YAAAA,MAAAA,EAAQJ,MAAMI,MAAM;AACpBL,YAAAA;AACF,SAAA,CAAA;AACF;;IAGA,IAAIM,QAAAA,GAASL,MAAMK,MAAM;IACzB,IAAIL,KAAAA,CAAMK,MAAM,EAAE;QAChBA,QAASC,GAAAA,sBAAAA,CAAgBN,MAAMK,MAAM,CAAA;AACvC;IAEA,IAAIE,UAAAA,GAAWP,MAAMO,QAAQ;IAC7B,IAAIP,KAAAA,CAAMO,QAAQ,EAAE;AAClBA,QAAAA,UAAAA,GAAY,MAAMC,0BAAAA,CAAkBR,KAAMO,CAAAA,QAAQ,EAAE;AAAER,YAAAA;AAAI,SAAA,CAAA;AAC5D;IAEA,OAAO;AACL,QAAA,GAAGC,KAAK;AACRC,cAAAA,MAAAA;AACAI,gBAAAA,QAAAA;AACAE,kBAAAA;AACF,KAAA;AACF;AAEA,MAAME,mCAAmCC,QAAMZ,CAAAA,yBAAAA;;;;"}
@@ -1,33 +1,39 @@
1
- import { curry } from "lodash/fp";
2
- import { transformData } from "./data.mjs";
3
- import { transformFields } from "./fields.mjs";
4
- import { transformPopulate } from "./populate.mjs";
5
- async function transformParamsDocumentId(uid, query) {
6
- let data = query.data;
7
- if (query.data) {
8
- data = await transformData(query.data, {
9
- locale: query.locale,
10
- status: query.status,
11
- uid
12
- });
13
- }
14
- let fields = query.fields;
15
- if (query.fields) {
16
- fields = transformFields(query.fields);
17
- }
18
- let populate = query.populate;
19
- if (query.populate) {
20
- populate = await transformPopulate(query.populate, { uid });
21
- }
22
- return {
23
- ...query,
24
- data,
25
- fields,
26
- populate
27
- };
1
+ import { curry } from 'lodash/fp';
2
+ import { transformData } from './data.mjs';
3
+ import { transformFields } from './fields.mjs';
4
+ import { transformPopulate } from './populate.mjs';
5
+
6
+ /**
7
+ * Transform input of a query to map document ids to entity ids.
8
+ */ async function transformParamsDocumentId(uid, query) {
9
+ // Transform relational documentIds to entity ids
10
+ let data = query.data;
11
+ if (query.data) {
12
+ data = await transformData(query.data, {
13
+ locale: query.locale,
14
+ status: query.status,
15
+ uid
16
+ });
17
+ }
18
+ // Make sure documentId is always present in the response
19
+ let fields = query.fields;
20
+ if (query.fields) {
21
+ fields = transformFields(query.fields);
22
+ }
23
+ let populate = query.populate;
24
+ if (query.populate) {
25
+ populate = await transformPopulate(query.populate, {
26
+ uid
27
+ });
28
+ }
29
+ return {
30
+ ...query,
31
+ data,
32
+ fields,
33
+ populate
34
+ };
28
35
  }
29
36
  const curriedTransformParamsDocumentId = curry(transformParamsDocumentId);
30
- export {
31
- curriedTransformParamsDocumentId as transformParamsDocumentId
32
- };
37
+
38
+ export { curriedTransformParamsDocumentId as transformParamsDocumentId };
33
39
  //# sourceMappingURL=id-transform.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"id-transform.mjs","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport { UID, Modules } from '@strapi/types';\n\nimport { transformData } from './data';\nimport { transformFields } from './fields';\nimport { transformPopulate } from './populate';\n\n/**\n * Transform input of a query to map document ids to entity ids.\n */\nasync function transformParamsDocumentId(\n uid: UID.Schema,\n query: Modules.Documents.Params.All\n): Promise<Modules.Documents.Params.All> {\n // Transform relational documentIds to entity ids\n let data = query.data;\n if (query.data) {\n data = await transformData(query.data, {\n locale: query.locale,\n status: query.status,\n uid,\n });\n }\n\n // Make sure documentId is always present in the response\n let fields = query.fields;\n if (query.fields) {\n fields = transformFields(query.fields) as typeof query.fields;\n }\n\n let populate = query.populate;\n if (query.populate) {\n populate = (await transformPopulate(query.populate, { uid })) as typeof query.populate;\n }\n\n return {\n ...query,\n data,\n fields,\n populate,\n };\n}\n\nconst curriedTransformParamsDocumentId = curry(transformParamsDocumentId);\n\nexport { curriedTransformParamsDocumentId as transformParamsDocumentId };\n"],"names":[],"mappings":";;;;AAWA,eAAe,0BACb,KACA,OACuC;AAEvC,MAAI,OAAO,MAAM;AACjB,MAAI,MAAM,MAAM;AACP,WAAA,MAAM,cAAc,MAAM,MAAM;AAAA,MACrC,QAAQ,MAAM;AAAA,MACd,QAAQ,MAAM;AAAA,MACd;AAAA,IAAA,CACD;AAAA,EACH;AAGA,MAAI,SAAS,MAAM;AACnB,MAAI,MAAM,QAAQ;AACP,aAAA,gBAAgB,MAAM,MAAM;AAAA,EACvC;AAEA,MAAI,WAAW,MAAM;AACrB,MAAI,MAAM,UAAU;AAClB,eAAY,MAAM,kBAAkB,MAAM,UAAU,EAAE,KAAK;AAAA,EAC7D;AAEO,SAAA;AAAA,IACL,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EAAA;AAEJ;AAEM,MAAA,mCAAmC,MAAM,yBAAyB;"}
1
+ {"version":3,"file":"id-transform.mjs","sources":["../../../../src/services/document-service/transform/id-transform.ts"],"sourcesContent":["import { curry } from 'lodash/fp';\n\nimport type { UID, Modules } from '@strapi/types';\n\nimport { transformData } from './data';\nimport { transformFields } from './fields';\nimport { transformPopulate } from './populate';\n\n/**\n * Transform input of a query to map document ids to entity ids.\n */\nasync function transformParamsDocumentId(\n uid: UID.Schema,\n query: Modules.Documents.Params.All\n): Promise<Modules.Documents.Params.All> {\n // Transform relational documentIds to entity ids\n let data = query.data;\n if (query.data) {\n data = await transformData(query.data, {\n locale: query.locale,\n status: query.status,\n uid,\n });\n }\n\n // Make sure documentId is always present in the response\n let fields = query.fields;\n if (query.fields) {\n fields = transformFields(query.fields) as typeof query.fields;\n }\n\n let populate = query.populate;\n if (query.populate) {\n populate = (await transformPopulate(query.populate, { uid })) as typeof query.populate;\n }\n\n return {\n ...query,\n data,\n fields,\n populate,\n };\n}\n\nconst curriedTransformParamsDocumentId = curry(transformParamsDocumentId);\n\nexport { curriedTransformParamsDocumentId as transformParamsDocumentId };\n"],"names":["transformParamsDocumentId","uid","query","data","transformData","locale","status","fields","transformFields","populate","transformPopulate","curriedTransformParamsDocumentId","curry"],"mappings":";;;;;AAQA;;AAEC,IACD,eAAeA,yBAAAA,CACbC,GAAe,EACfC,KAAmC,EAAA;;IAGnC,IAAIC,IAAAA,GAAOD,MAAMC,IAAI;IACrB,IAAID,KAAAA,CAAMC,IAAI,EAAE;AACdA,QAAAA,IAAAA,GAAO,MAAMC,aAAAA,CAAcF,KAAMC,CAAAA,IAAI,EAAE;AACrCE,YAAAA,MAAAA,EAAQH,MAAMG,MAAM;AACpBC,YAAAA,MAAAA,EAAQJ,MAAMI,MAAM;AACpBL,YAAAA;AACF,SAAA,CAAA;AACF;;IAGA,IAAIM,MAAAA,GAASL,MAAMK,MAAM;IACzB,IAAIL,KAAAA,CAAMK,MAAM,EAAE;QAChBA,MAASC,GAAAA,eAAAA,CAAgBN,MAAMK,MAAM,CAAA;AACvC;IAEA,IAAIE,QAAAA,GAAWP,MAAMO,QAAQ;IAC7B,IAAIP,KAAAA,CAAMO,QAAQ,EAAE;AAClBA,QAAAA,QAAAA,GAAY,MAAMC,iBAAAA,CAAkBR,KAAMO,CAAAA,QAAQ,EAAE;AAAER,YAAAA;AAAI,SAAA,CAAA;AAC5D;IAEA,OAAO;AACL,QAAA,GAAGC,KAAK;AACRC,QAAAA,IAAAA;AACAI,QAAAA,MAAAA;AACAE,QAAAA;AACF,KAAA;AACF;AAEA,MAAME,mCAAmCC,KAAMZ,CAAAA,yBAAAA;;;;"}
@@ -1,21 +1,26 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const strapiUtils = require("@strapi/utils");
4
- const fields = require("./fields.js");
5
- const transformPopulate = async (data, opts) => {
6
- return strapiUtils.traverse.traverseQueryPopulate(
7
- async ({ attribute, key, value }, { set }) => {
8
- if (!value || typeof value !== "object" || attribute?.type !== "relation") {
9
- return;
10
- }
11
- if ("fields" in value && Array.isArray(value.fields)) {
12
- value.fields = fields.transformFields(value.fields);
13
- }
14
- set(key, value);
15
- },
16
- { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },
17
- data
18
- );
1
+ 'use strict';
2
+
3
+ var strapiUtils = require('@strapi/utils');
4
+ var fields = require('./fields.js');
5
+
6
+ const transformPopulate = async (data, opts)=>{
7
+ return strapiUtils.traverse.traverseQueryPopulate(async ({ attribute, key, value }, { set })=>{
8
+ if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {
9
+ return;
10
+ }
11
+ /*
12
+ If the attribute is a relation
13
+ Look for fields in the value
14
+ and apply the relevant transformation to these objects
15
+ */ if ('fields' in value && Array.isArray(value.fields)) {
16
+ value.fields = fields.transformFields(value.fields);
17
+ }
18
+ set(key, value);
19
+ }, {
20
+ schema: strapi.getModel(opts.uid),
21
+ getModel: strapi.getModel.bind(strapi)
22
+ }, data);
19
23
  };
24
+
20
25
  exports.transformPopulate = transformPopulate;
21
26
  //# sourceMappingURL=populate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"populate.js","sources":["../../../../src/services/document-service/transform/populate.ts"],"sourcesContent":["import { traverse } from '@strapi/utils';\nimport type { UID } from '@strapi/types';\n\nimport { type Data } from './types';\nimport { transformFields } from './fields';\n\nexport const transformPopulate = async (data: Data, opts: { uid: UID.Schema }) => {\n return traverse.traverseQueryPopulate(\n async ({ attribute, key, value }, { set }) => {\n if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {\n return;\n }\n\n /*\n If the attribute is a relation\n Look for fields in the value\n and apply the relevant transformation to these objects\n */\n if ('fields' in value && Array.isArray(value.fields)) {\n value.fields = transformFields(value.fields);\n }\n\n set(key, value);\n },\n { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },\n data\n );\n};\n"],"names":["traverse","transformFields"],"mappings":";;;;AAMa,MAAA,oBAAoB,OAAO,MAAY,SAA8B;AAChF,SAAOA,YAAS,SAAA;AAAA,IACd,OAAO,EAAE,WAAW,KAAK,SAAS,EAAE,UAAU;AAC5C,UAAI,CAAC,SAAS,OAAO,UAAU,YAAY,WAAW,SAAS,YAAY;AACzE;AAAA,MACF;AAOA,UAAI,YAAY,SAAS,MAAM,QAAQ,MAAM,MAAM,GAAG;AAC9C,cAAA,SAASC,OAAAA,gBAAgB,MAAM,MAAM;AAAA,MAC7C;AAEA,UAAI,KAAK,KAAK;AAAA,IAChB;AAAA,IACA,EAAE,QAAQ,OAAO,SAAS,KAAK,GAAG,GAAG,UAAU,OAAO,SAAS,KAAK,MAAM,EAAE;AAAA,IAC5E;AAAA,EAAA;AAEJ;;"}
1
+ {"version":3,"file":"populate.js","sources":["../../../../src/services/document-service/transform/populate.ts"],"sourcesContent":["import { traverse } from '@strapi/utils';\nimport type { UID } from '@strapi/types';\n\nimport { type Data } from './types';\nimport { transformFields } from './fields';\n\nexport const transformPopulate = async (data: Data, opts: { uid: UID.Schema }) => {\n return traverse.traverseQueryPopulate(\n async ({ attribute, key, value }, { set }) => {\n if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {\n return;\n }\n\n /*\n If the attribute is a relation\n Look for fields in the value\n and apply the relevant transformation to these objects\n */\n if ('fields' in value && Array.isArray(value.fields)) {\n value.fields = transformFields(value.fields);\n }\n\n set(key, value);\n },\n { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },\n data\n );\n};\n"],"names":["transformPopulate","data","opts","traverse","traverseQueryPopulate","attribute","key","value","set","type","Array","isArray","fields","transformFields","schema","strapi","getModel","uid","bind"],"mappings":";;;;;AAMO,MAAMA,iBAAoB,GAAA,OAAOC,IAAYC,EAAAA,IAAAA,GAAAA;AAClD,IAAA,OAAOC,oBAASC,CAAAA,qBAAqB,CACnC,OAAO,EAAEC,SAAS,EAAEC,GAAG,EAAEC,KAAK,EAAE,EAAE,EAAEC,GAAG,EAAE,GAAA;AACvC,QAAA,IAAI,CAACD,KAAS,IAAA,OAAOA,UAAU,QAAYF,IAAAA,SAAAA,EAAWI,SAAS,UAAY,EAAA;AACzE,YAAA;AACF;AAEA;;;;SAKA,IAAI,YAAYF,KAASG,IAAAA,KAAAA,CAAMC,OAAO,CAACJ,KAAAA,CAAMK,MAAM,CAAG,EAAA;AACpDL,YAAAA,KAAAA,CAAMK,MAAM,GAAGC,sBAAgBN,CAAAA,KAAAA,CAAMK,MAAM,CAAA;AAC7C;AAEAJ,QAAAA,GAAAA,CAAIF,GAAKC,EAAAA,KAAAA,CAAAA;KAEX,EAAA;AAAEO,QAAAA,MAAAA,EAAQC,MAAOC,CAAAA,QAAQ,CAACd,IAAAA,CAAKe,GAAG,CAAA;AAAGD,QAAAA,QAAAA,EAAUD,MAAOC,CAAAA,QAAQ,CAACE,IAAI,CAACH,MAAAA;KACpEd,EAAAA,IAAAA,CAAAA;AAEJ;;;;"}
@@ -1,21 +1,24 @@
1
- import { traverse } from "@strapi/utils";
2
- import { transformFields } from "./fields.mjs";
3
- const transformPopulate = async (data, opts) => {
4
- return traverse.traverseQueryPopulate(
5
- async ({ attribute, key, value }, { set }) => {
6
- if (!value || typeof value !== "object" || attribute?.type !== "relation") {
7
- return;
8
- }
9
- if ("fields" in value && Array.isArray(value.fields)) {
10
- value.fields = transformFields(value.fields);
11
- }
12
- set(key, value);
13
- },
14
- { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },
15
- data
16
- );
17
- };
18
- export {
19
- transformPopulate
1
+ import { traverse } from '@strapi/utils';
2
+ import { transformFields } from './fields.mjs';
3
+
4
+ const transformPopulate = async (data, opts)=>{
5
+ return traverse.traverseQueryPopulate(async ({ attribute, key, value }, { set })=>{
6
+ if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {
7
+ return;
8
+ }
9
+ /*
10
+ If the attribute is a relation
11
+ Look for fields in the value
12
+ and apply the relevant transformation to these objects
13
+ */ if ('fields' in value && Array.isArray(value.fields)) {
14
+ value.fields = transformFields(value.fields);
15
+ }
16
+ set(key, value);
17
+ }, {
18
+ schema: strapi.getModel(opts.uid),
19
+ getModel: strapi.getModel.bind(strapi)
20
+ }, data);
20
21
  };
22
+
23
+ export { transformPopulate };
21
24
  //# sourceMappingURL=populate.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"populate.mjs","sources":["../../../../src/services/document-service/transform/populate.ts"],"sourcesContent":["import { traverse } from '@strapi/utils';\nimport type { UID } from '@strapi/types';\n\nimport { type Data } from './types';\nimport { transformFields } from './fields';\n\nexport const transformPopulate = async (data: Data, opts: { uid: UID.Schema }) => {\n return traverse.traverseQueryPopulate(\n async ({ attribute, key, value }, { set }) => {\n if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {\n return;\n }\n\n /*\n If the attribute is a relation\n Look for fields in the value\n and apply the relevant transformation to these objects\n */\n if ('fields' in value && Array.isArray(value.fields)) {\n value.fields = transformFields(value.fields);\n }\n\n set(key, value);\n },\n { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },\n data\n );\n};\n"],"names":[],"mappings":";;AAMa,MAAA,oBAAoB,OAAO,MAAY,SAA8B;AAChF,SAAO,SAAS;AAAA,IACd,OAAO,EAAE,WAAW,KAAK,SAAS,EAAE,UAAU;AAC5C,UAAI,CAAC,SAAS,OAAO,UAAU,YAAY,WAAW,SAAS,YAAY;AACzE;AAAA,MACF;AAOA,UAAI,YAAY,SAAS,MAAM,QAAQ,MAAM,MAAM,GAAG;AAC9C,cAAA,SAAS,gBAAgB,MAAM,MAAM;AAAA,MAC7C;AAEA,UAAI,KAAK,KAAK;AAAA,IAChB;AAAA,IACA,EAAE,QAAQ,OAAO,SAAS,KAAK,GAAG,GAAG,UAAU,OAAO,SAAS,KAAK,MAAM,EAAE;AAAA,IAC5E;AAAA,EAAA;AAEJ;"}
1
+ {"version":3,"file":"populate.mjs","sources":["../../../../src/services/document-service/transform/populate.ts"],"sourcesContent":["import { traverse } from '@strapi/utils';\nimport type { UID } from '@strapi/types';\n\nimport { type Data } from './types';\nimport { transformFields } from './fields';\n\nexport const transformPopulate = async (data: Data, opts: { uid: UID.Schema }) => {\n return traverse.traverseQueryPopulate(\n async ({ attribute, key, value }, { set }) => {\n if (!value || typeof value !== 'object' || attribute?.type !== 'relation') {\n return;\n }\n\n /*\n If the attribute is a relation\n Look for fields in the value\n and apply the relevant transformation to these objects\n */\n if ('fields' in value && Array.isArray(value.fields)) {\n value.fields = transformFields(value.fields);\n }\n\n set(key, value);\n },\n { schema: strapi.getModel(opts.uid), getModel: strapi.getModel.bind(strapi) },\n data\n );\n};\n"],"names":["transformPopulate","data","opts","traverse","traverseQueryPopulate","attribute","key","value","set","type","Array","isArray","fields","transformFields","schema","strapi","getModel","uid","bind"],"mappings":";;;AAMO,MAAMA,iBAAoB,GAAA,OAAOC,IAAYC,EAAAA,IAAAA,GAAAA;AAClD,IAAA,OAAOC,QAASC,CAAAA,qBAAqB,CACnC,OAAO,EAAEC,SAAS,EAAEC,GAAG,EAAEC,KAAK,EAAE,EAAE,EAAEC,GAAG,EAAE,GAAA;AACvC,QAAA,IAAI,CAACD,KAAS,IAAA,OAAOA,UAAU,QAAYF,IAAAA,SAAAA,EAAWI,SAAS,UAAY,EAAA;AACzE,YAAA;AACF;AAEA;;;;SAKA,IAAI,YAAYF,KAASG,IAAAA,KAAAA,CAAMC,OAAO,CAACJ,KAAAA,CAAMK,MAAM,CAAG,EAAA;AACpDL,YAAAA,KAAAA,CAAMK,MAAM,GAAGC,eAAgBN,CAAAA,KAAAA,CAAMK,MAAM,CAAA;AAC7C;AAEAJ,QAAAA,GAAAA,CAAIF,GAAKC,EAAAA,KAAAA,CAAAA;KAEX,EAAA;AAAEO,QAAAA,MAAAA,EAAQC,MAAOC,CAAAA,QAAQ,CAACd,IAAAA,CAAKe,GAAG,CAAA;AAAGD,QAAAA,QAAAA,EAAUD,MAAOC,CAAAA,QAAQ,CAACE,IAAI,CAACH,MAAAA;KACpEd,EAAAA,IAAAA,CAAAA;AAEJ;;;;"}
@@ -1,9 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const fp = require("lodash/fp");
4
- const transformParamsToQuery = fp.curry((uid, params) => {
5
- const query = strapi.get("query-params").transform(uid, params);
6
- return fp.assoc("where", { ...params?.lookup, ...query.where }, query);
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+
5
+ const transformParamsToQuery = fp.curry((uid, params)=>{
6
+ const query = strapi.get('query-params').transform(uid, params);
7
+ return fp.assoc('where', {
8
+ ...params?.lookup,
9
+ ...query.where
10
+ }, query);
7
11
  });
12
+
8
13
  exports.transformParamsToQuery = transformParamsToQuery;
9
14
  //# sourceMappingURL=query.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.js","sources":["../../../../src/services/document-service/transform/query.ts"],"sourcesContent":["import type { UID } from '@strapi/types';\n\nimport { curry, assoc } from 'lodash/fp';\n\nconst transformParamsToQuery = curry((uid: UID.Schema, params: any) => {\n const query = strapi.get('query-params').transform(uid, params);\n\n return assoc('where', { ...params?.lookup, ...query.where }, query);\n});\n\nexport { transformParamsToQuery };\n"],"names":["curry","assoc"],"mappings":";;;AAIA,MAAM,yBAAyBA,GAAA,MAAM,CAAC,KAAiB,WAAgB;AACrE,QAAM,QAAQ,OAAO,IAAI,cAAc,EAAE,UAAU,KAAK,MAAM;AAEvD,SAAAC,GAAA,MAAM,SAAS,EAAE,GAAG,QAAQ,QAAQ,GAAG,MAAM,SAAS,KAAK;AACpE,CAAC;;"}
1
+ {"version":3,"file":"query.js","sources":["../../../../src/services/document-service/transform/query.ts"],"sourcesContent":["import type { UID } from '@strapi/types';\n\nimport { curry, assoc } from 'lodash/fp';\n\nconst transformParamsToQuery = curry((uid: UID.Schema, params: any) => {\n const query = strapi.get('query-params').transform(uid, params);\n\n return assoc('where', { ...params?.lookup, ...query.where }, query);\n});\n\nexport { transformParamsToQuery };\n"],"names":["transformParamsToQuery","curry","uid","params","query","strapi","get","transform","assoc","lookup","where"],"mappings":";;;;AAIMA,MAAAA,sBAAAA,GAAyBC,QAAM,CAAA,CAACC,GAAiBC,EAAAA,MAAAA,GAAAA;AACrD,IAAA,MAAMC,QAAQC,MAAOC,CAAAA,GAAG,CAAC,cAAgBC,CAAAA,CAAAA,SAAS,CAACL,GAAKC,EAAAA,MAAAA,CAAAA;AAExD,IAAA,OAAOK,SAAM,OAAS,EAAA;AAAE,QAAA,GAAGL,QAAQM,MAAM;AAAE,QAAA,GAAGL,MAAMM;KAASN,EAAAA,KAAAA,CAAAA;AAC/D,CAAA;;;;"}
@@ -1,9 +1,12 @@
1
- import { curry, assoc } from "lodash/fp";
2
- const transformParamsToQuery = curry((uid, params) => {
3
- const query = strapi.get("query-params").transform(uid, params);
4
- return assoc("where", { ...params?.lookup, ...query.where }, query);
1
+ import { curry, assoc } from 'lodash/fp';
2
+
3
+ const transformParamsToQuery = curry((uid, params)=>{
4
+ const query = strapi.get('query-params').transform(uid, params);
5
+ return assoc('where', {
6
+ ...params?.lookup,
7
+ ...query.where
8
+ }, query);
5
9
  });
6
- export {
7
- transformParamsToQuery
8
- };
10
+
11
+ export { transformParamsToQuery };
9
12
  //# sourceMappingURL=query.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.mjs","sources":["../../../../src/services/document-service/transform/query.ts"],"sourcesContent":["import type { UID } from '@strapi/types';\n\nimport { curry, assoc } from 'lodash/fp';\n\nconst transformParamsToQuery = curry((uid: UID.Schema, params: any) => {\n const query = strapi.get('query-params').transform(uid, params);\n\n return assoc('where', { ...params?.lookup, ...query.where }, query);\n});\n\nexport { transformParamsToQuery };\n"],"names":[],"mappings":";AAIA,MAAM,yBAAyB,MAAM,CAAC,KAAiB,WAAgB;AACrE,QAAM,QAAQ,OAAO,IAAI,cAAc,EAAE,UAAU,KAAK,MAAM;AAEvD,SAAA,MAAM,SAAS,EAAE,GAAG,QAAQ,QAAQ,GAAG,MAAM,SAAS,KAAK;AACpE,CAAC;"}
1
+ {"version":3,"file":"query.mjs","sources":["../../../../src/services/document-service/transform/query.ts"],"sourcesContent":["import type { UID } from '@strapi/types';\n\nimport { curry, assoc } from 'lodash/fp';\n\nconst transformParamsToQuery = curry((uid: UID.Schema, params: any) => {\n const query = strapi.get('query-params').transform(uid, params);\n\n return assoc('where', { ...params?.lookup, ...query.where }, query);\n});\n\nexport { transformParamsToQuery };\n"],"names":["transformParamsToQuery","curry","uid","params","query","strapi","get","transform","assoc","lookup","where"],"mappings":";;AAIMA,MAAAA,sBAAAA,GAAyBC,KAAM,CAAA,CAACC,GAAiBC,EAAAA,MAAAA,GAAAA;AACrD,IAAA,MAAMC,QAAQC,MAAOC,CAAAA,GAAG,CAAC,cAAgBC,CAAAA,CAAAA,SAAS,CAACL,GAAKC,EAAAA,MAAAA,CAAAA;AAExD,IAAA,OAAOK,MAAM,OAAS,EAAA;AAAE,QAAA,GAAGL,QAAQM,MAAM;AAAE,QAAA,GAAGL,MAAMM;KAASN,EAAAA,KAAAA,CAAAA;AAC/D,CAAA;;;;"}
@@ -1,4 +1,4 @@
1
- import { UID } from '@strapi/types';
1
+ import type { UID } from '@strapi/types';
2
2
  import { IdMap } from '../../id-map';
3
3
  interface Options {
4
4
  uid: UID.Schema;