@strapi/core 0.0.0-experimental.f6c00790e260ea5a9b6b86abac5fea02b05d569c → 0.0.0-experimental.f6dac3be63e884d904fb13337e7f4492716b827e

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

Potentially problematic release.


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

Files changed (840) hide show
  1. package/dist/Strapi.d.ts +1 -0
  2. package/dist/Strapi.d.ts.map +1 -1
  3. package/dist/Strapi.js +448 -403
  4. package/dist/Strapi.js.map +1 -1
  5. package/dist/Strapi.mjs +447 -402
  6. package/dist/Strapi.mjs.map +1 -1
  7. package/dist/compile.js +23 -14
  8. package/dist/compile.js.map +1 -1
  9. package/dist/compile.mjs +22 -14
  10. package/dist/compile.mjs.map +1 -1
  11. package/dist/configuration/config-loader.js +110 -97
  12. package/dist/configuration/config-loader.js.map +1 -1
  13. package/dist/configuration/config-loader.mjs +109 -96
  14. package/dist/configuration/config-loader.mjs.map +1 -1
  15. package/dist/configuration/get-dirs.js +31 -29
  16. package/dist/configuration/get-dirs.js.map +1 -1
  17. package/dist/configuration/get-dirs.mjs +30 -30
  18. package/dist/configuration/get-dirs.mjs.map +1 -1
  19. package/dist/configuration/index.d.ts +1 -0
  20. package/dist/configuration/index.d.ts.map +1 -1
  21. package/dist/configuration/index.js +85 -73
  22. package/dist/configuration/index.js.map +1 -1
  23. package/dist/configuration/index.mjs +84 -69
  24. package/dist/configuration/index.mjs.map +1 -1
  25. package/dist/configuration/urls.d.ts.map +1 -1
  26. package/dist/configuration/urls.js +74 -61
  27. package/dist/configuration/urls.js.map +1 -1
  28. package/dist/configuration/urls.mjs +73 -62
  29. package/dist/configuration/urls.mjs.map +1 -1
  30. package/dist/constants.d.ts +3 -0
  31. package/dist/constants.d.ts.map +1 -0
  32. package/dist/constants.js +6 -0
  33. package/dist/constants.js.map +1 -0
  34. package/dist/constants.mjs +4 -0
  35. package/dist/constants.mjs.map +1 -0
  36. package/dist/container.js +27 -23
  37. package/dist/container.js.map +1 -1
  38. package/dist/container.mjs +26 -24
  39. package/dist/container.mjs.map +1 -1
  40. package/dist/core-api/controller/collection-type.js +77 -76
  41. package/dist/core-api/controller/collection-type.js.map +1 -1
  42. package/dist/core-api/controller/collection-type.mjs +76 -77
  43. package/dist/core-api/controller/collection-type.mjs.map +1 -1
  44. package/dist/core-api/controller/index.d.ts.map +1 -1
  45. package/dist/core-api/controller/index.js +64 -48
  46. package/dist/core-api/controller/index.js.map +1 -1
  47. package/dist/core-api/controller/index.mjs +63 -49
  48. package/dist/core-api/controller/index.mjs.map +1 -1
  49. package/dist/core-api/controller/single-type.js +41 -40
  50. package/dist/core-api/controller/single-type.js.map +1 -1
  51. package/dist/core-api/controller/single-type.mjs +40 -41
  52. package/dist/core-api/controller/single-type.mjs.map +1 -1
  53. package/dist/core-api/controller/transform.d.ts +3 -2
  54. package/dist/core-api/controller/transform.d.ts.map +1 -1
  55. package/dist/core-api/controller/transform.js +83 -64
  56. package/dist/core-api/controller/transform.js.map +1 -1
  57. package/dist/core-api/controller/transform.mjs +82 -65
  58. package/dist/core-api/controller/transform.mjs.map +1 -1
  59. package/dist/core-api/routes/index.d.ts +4 -22
  60. package/dist/core-api/routes/index.d.ts.map +1 -1
  61. package/dist/core-api/routes/index.js +205 -61
  62. package/dist/core-api/routes/index.js.map +1 -1
  63. package/dist/core-api/routes/index.mjs +185 -62
  64. package/dist/core-api/routes/index.mjs.map +1 -1
  65. package/dist/core-api/routes/validation/attributes.d.ts +244 -0
  66. package/dist/core-api/routes/validation/attributes.d.ts.map +1 -0
  67. package/dist/core-api/routes/validation/attributes.js +560 -0
  68. package/dist/core-api/routes/validation/attributes.js.map +1 -0
  69. package/dist/core-api/routes/validation/attributes.mjs +521 -0
  70. package/dist/core-api/routes/validation/attributes.mjs.map +1 -0
  71. package/dist/core-api/routes/validation/common.d.ts +105 -0
  72. package/dist/core-api/routes/validation/common.d.ts.map +1 -0
  73. package/dist/core-api/routes/validation/common.js +116 -0
  74. package/dist/core-api/routes/validation/common.js.map +1 -0
  75. package/dist/core-api/routes/validation/common.mjs +95 -0
  76. package/dist/core-api/routes/validation/common.mjs.map +1 -0
  77. package/dist/core-api/routes/validation/component.d.ts +34 -0
  78. package/dist/core-api/routes/validation/component.d.ts.map +1 -0
  79. package/dist/core-api/routes/validation/component.js +45 -0
  80. package/dist/core-api/routes/validation/component.js.map +1 -0
  81. package/dist/core-api/routes/validation/component.mjs +43 -0
  82. package/dist/core-api/routes/validation/component.mjs.map +1 -0
  83. package/dist/core-api/routes/validation/constants.d.ts +8 -0
  84. package/dist/core-api/routes/validation/constants.d.ts.map +1 -0
  85. package/dist/core-api/routes/validation/constants.js +18 -0
  86. package/dist/core-api/routes/validation/constants.js.map +1 -0
  87. package/dist/core-api/routes/validation/constants.mjs +16 -0
  88. package/dist/core-api/routes/validation/constants.mjs.map +1 -0
  89. package/dist/core-api/routes/validation/content-type.d.ts +128 -0
  90. package/dist/core-api/routes/validation/content-type.d.ts.map +1 -0
  91. package/dist/core-api/routes/validation/content-type.js +201 -0
  92. package/dist/core-api/routes/validation/content-type.js.map +1 -0
  93. package/dist/core-api/routes/validation/content-type.mjs +180 -0
  94. package/dist/core-api/routes/validation/content-type.mjs.map +1 -0
  95. package/dist/core-api/routes/validation/index.d.ts +5 -0
  96. package/dist/core-api/routes/validation/index.d.ts.map +1 -0
  97. package/dist/core-api/routes/validation/mappers.d.ts +105 -0
  98. package/dist/core-api/routes/validation/mappers.d.ts.map +1 -0
  99. package/dist/core-api/routes/validation/mappers.js +273 -0
  100. package/dist/core-api/routes/validation/mappers.js.map +1 -0
  101. package/dist/core-api/routes/validation/mappers.mjs +249 -0
  102. package/dist/core-api/routes/validation/mappers.mjs.map +1 -0
  103. package/dist/core-api/routes/validation/utils.d.ts +47 -0
  104. package/dist/core-api/routes/validation/utils.d.ts.map +1 -0
  105. package/dist/core-api/routes/validation/utils.js +128 -0
  106. package/dist/core-api/routes/validation/utils.js.map +1 -0
  107. package/dist/core-api/routes/validation/utils.mjs +106 -0
  108. package/dist/core-api/routes/validation/utils.mjs.map +1 -0
  109. package/dist/core-api/service/collection-type.js +73 -60
  110. package/dist/core-api/service/collection-type.js.map +1 -1
  111. package/dist/core-api/service/collection-type.mjs +72 -62
  112. package/dist/core-api/service/collection-type.mjs.map +1 -1
  113. package/dist/core-api/service/core-service.js +9 -8
  114. package/dist/core-api/service/core-service.js.map +1 -1
  115. package/dist/core-api/service/core-service.mjs +8 -9
  116. package/dist/core-api/service/core-service.mjs.map +1 -1
  117. package/dist/core-api/service/index.js +13 -13
  118. package/dist/core-api/service/index.js.map +1 -1
  119. package/dist/core-api/service/index.mjs +12 -14
  120. package/dist/core-api/service/index.mjs.map +1 -1
  121. package/dist/core-api/service/pagination.js +69 -43
  122. package/dist/core-api/service/pagination.js.map +1 -1
  123. package/dist/core-api/service/pagination.mjs +68 -47
  124. package/dist/core-api/service/pagination.mjs.map +1 -1
  125. package/dist/core-api/service/single-type.js +43 -39
  126. package/dist/core-api/service/single-type.js.map +1 -1
  127. package/dist/core-api/service/single-type.mjs +42 -41
  128. package/dist/core-api/service/single-type.mjs.map +1 -1
  129. package/dist/domain/content-type/index.d.ts.map +1 -1
  130. package/dist/domain/content-type/index.js +110 -99
  131. package/dist/domain/content-type/index.js.map +1 -1
  132. package/dist/domain/content-type/index.mjs +109 -99
  133. package/dist/domain/content-type/index.mjs.map +1 -1
  134. package/dist/domain/content-type/validator.js +84 -69
  135. package/dist/domain/content-type/validator.js.map +1 -1
  136. package/dist/domain/content-type/validator.mjs +83 -68
  137. package/dist/domain/content-type/validator.mjs.map +1 -1
  138. package/dist/domain/module/index.d.ts.map +1 -1
  139. package/dist/domain/module/index.js +112 -100
  140. package/dist/domain/module/index.js.map +1 -1
  141. package/dist/domain/module/index.mjs +111 -99
  142. package/dist/domain/module/index.mjs.map +1 -1
  143. package/dist/domain/module/validation.js +25 -20
  144. package/dist/domain/module/validation.js.map +1 -1
  145. package/dist/domain/module/validation.mjs +24 -21
  146. package/dist/domain/module/validation.mjs.map +1 -1
  147. package/dist/ee/index.d.ts +7 -0
  148. package/dist/ee/index.d.ts.map +1 -1
  149. package/dist/ee/index.js +197 -132
  150. package/dist/ee/index.js.map +1 -1
  151. package/dist/ee/index.mjs +196 -134
  152. package/dist/ee/index.mjs.map +1 -1
  153. package/dist/ee/license.d.ts +3 -1
  154. package/dist/ee/license.d.ts.map +1 -1
  155. package/dist/ee/license.js +105 -75
  156. package/dist/ee/license.js.map +1 -1
  157. package/dist/ee/license.mjs +103 -76
  158. package/dist/ee/license.mjs.map +1 -1
  159. package/dist/factories.d.ts +3 -1
  160. package/dist/factories.d.ts.map +1 -1
  161. package/dist/factories.js +80 -67
  162. package/dist/factories.js.map +1 -1
  163. package/dist/factories.mjs +77 -70
  164. package/dist/factories.mjs.map +1 -1
  165. package/dist/index.js +29 -26
  166. package/dist/index.js.map +1 -1
  167. package/dist/index.mjs +29 -29
  168. package/dist/index.mjs.map +1 -1
  169. package/dist/loaders/admin.d.ts.map +1 -1
  170. package/dist/loaders/admin.js +21 -20
  171. package/dist/loaders/admin.js.map +1 -1
  172. package/dist/loaders/admin.mjs +20 -20
  173. package/dist/loaders/admin.mjs.map +1 -1
  174. package/dist/loaders/apis.js +143 -120
  175. package/dist/loaders/apis.js.map +1 -1
  176. package/dist/loaders/apis.mjs +142 -119
  177. package/dist/loaders/apis.mjs.map +1 -1
  178. package/dist/loaders/components.js +33 -34
  179. package/dist/loaders/components.js.map +1 -1
  180. package/dist/loaders/components.mjs +32 -34
  181. package/dist/loaders/components.mjs.map +1 -1
  182. package/dist/loaders/index.js +22 -20
  183. package/dist/loaders/index.js.map +1 -1
  184. package/dist/loaders/index.mjs +21 -21
  185. package/dist/loaders/index.mjs.map +1 -1
  186. package/dist/loaders/middlewares.js +29 -25
  187. package/dist/loaders/middlewares.js.map +1 -1
  188. package/dist/loaders/middlewares.mjs +28 -25
  189. package/dist/loaders/middlewares.mjs.map +1 -1
  190. package/dist/loaders/plugins/get-enabled-plugins.d.ts.map +1 -1
  191. package/dist/loaders/plugins/get-enabled-plugins.js +125 -127
  192. package/dist/loaders/plugins/get-enabled-plugins.js.map +1 -1
  193. package/dist/loaders/plugins/get-enabled-plugins.mjs +124 -104
  194. package/dist/loaders/plugins/get-enabled-plugins.mjs.map +1 -1
  195. package/dist/loaders/plugins/get-user-plugins-config.js +25 -24
  196. package/dist/loaders/plugins/get-user-plugins-config.js.map +1 -1
  197. package/dist/loaders/plugins/get-user-plugins-config.mjs +24 -23
  198. package/dist/loaders/plugins/get-user-plugins-config.mjs.map +1 -1
  199. package/dist/loaders/plugins/index.d.ts.map +1 -1
  200. package/dist/loaders/plugins/index.js +141 -104
  201. package/dist/loaders/plugins/index.js.map +1 -1
  202. package/dist/loaders/plugins/index.mjs +121 -104
  203. package/dist/loaders/plugins/index.mjs.map +1 -1
  204. package/dist/loaders/policies.js +24 -20
  205. package/dist/loaders/policies.js.map +1 -1
  206. package/dist/loaders/policies.mjs +23 -20
  207. package/dist/loaders/policies.mjs.map +1 -1
  208. package/dist/loaders/sanitizers.js +10 -4
  209. package/dist/loaders/sanitizers.js.map +1 -1
  210. package/dist/loaders/sanitizers.mjs +9 -6
  211. package/dist/loaders/sanitizers.mjs.map +1 -1
  212. package/dist/loaders/src-index.js +35 -27
  213. package/dist/loaders/src-index.js.map +1 -1
  214. package/dist/loaders/src-index.mjs +34 -29
  215. package/dist/loaders/src-index.mjs.map +1 -1
  216. package/dist/loaders/validators.js +9 -4
  217. package/dist/loaders/validators.js.map +1 -1
  218. package/dist/loaders/validators.mjs +8 -6
  219. package/dist/loaders/validators.mjs.map +1 -1
  220. package/dist/middlewares/body.d.ts.map +1 -1
  221. package/dist/middlewares/body.js +58 -54
  222. package/dist/middlewares/body.js.map +1 -1
  223. package/dist/middlewares/body.mjs +57 -51
  224. package/dist/middlewares/body.mjs.map +1 -1
  225. package/dist/middlewares/compression.js +6 -6
  226. package/dist/middlewares/compression.js.map +1 -1
  227. package/dist/middlewares/compression.mjs +5 -5
  228. package/dist/middlewares/compression.mjs.map +1 -1
  229. package/dist/middlewares/cors.d.ts +9 -1
  230. package/dist/middlewares/cors.d.ts.map +1 -1
  231. package/dist/middlewares/cors.js +81 -48
  232. package/dist/middlewares/cors.js.map +1 -1
  233. package/dist/middlewares/cors.mjs +78 -46
  234. package/dist/middlewares/cors.mjs.map +1 -1
  235. package/dist/middlewares/errors.js +32 -30
  236. package/dist/middlewares/errors.js.map +1 -1
  237. package/dist/middlewares/errors.mjs +31 -31
  238. package/dist/middlewares/errors.mjs.map +1 -1
  239. package/dist/middlewares/favicon.js +27 -17
  240. package/dist/middlewares/favicon.js.map +1 -1
  241. package/dist/middlewares/favicon.mjs +26 -16
  242. package/dist/middlewares/favicon.mjs.map +1 -1
  243. package/dist/middlewares/index.js +32 -30
  244. package/dist/middlewares/index.js.map +1 -1
  245. package/dist/middlewares/index.mjs +31 -31
  246. package/dist/middlewares/index.mjs.map +1 -1
  247. package/dist/middlewares/ip.js +6 -6
  248. package/dist/middlewares/ip.js.map +1 -1
  249. package/dist/middlewares/ip.mjs +5 -5
  250. package/dist/middlewares/ip.mjs.map +1 -1
  251. package/dist/middlewares/logger.js +10 -9
  252. package/dist/middlewares/logger.js.map +1 -1
  253. package/dist/middlewares/logger.mjs +9 -10
  254. package/dist/middlewares/logger.mjs.map +1 -1
  255. package/dist/middlewares/powered-by.js +13 -9
  256. package/dist/middlewares/powered-by.js.map +1 -1
  257. package/dist/middlewares/powered-by.mjs +12 -10
  258. package/dist/middlewares/powered-by.mjs.map +1 -1
  259. package/dist/middlewares/public.js +33 -29
  260. package/dist/middlewares/public.js.map +1 -1
  261. package/dist/middlewares/public.mjs +32 -28
  262. package/dist/middlewares/public.mjs.map +1 -1
  263. package/dist/middlewares/query.js +35 -32
  264. package/dist/middlewares/query.js.map +1 -1
  265. package/dist/middlewares/query.mjs +34 -31
  266. package/dist/middlewares/query.mjs.map +1 -1
  267. package/dist/middlewares/response-time.js +10 -9
  268. package/dist/middlewares/response-time.js.map +1 -1
  269. package/dist/middlewares/response-time.mjs +9 -10
  270. package/dist/middlewares/response-time.mjs.map +1 -1
  271. package/dist/middlewares/responses.js +14 -12
  272. package/dist/middlewares/responses.js.map +1 -1
  273. package/dist/middlewares/responses.mjs +13 -13
  274. package/dist/middlewares/responses.mjs.map +1 -1
  275. package/dist/middlewares/security.d.ts.map +1 -1
  276. package/dist/middlewares/security.js +96 -71
  277. package/dist/middlewares/security.js.map +1 -1
  278. package/dist/middlewares/security.mjs +95 -70
  279. package/dist/middlewares/security.mjs.map +1 -1
  280. package/dist/middlewares/session.js +26 -25
  281. package/dist/middlewares/session.js.map +1 -1
  282. package/dist/middlewares/session.mjs +25 -24
  283. package/dist/middlewares/session.mjs.map +1 -1
  284. package/dist/migrations/database/5.0.0-discard-drafts.d.ts +2 -2
  285. package/dist/migrations/database/5.0.0-discard-drafts.d.ts.map +1 -1
  286. package/dist/migrations/database/5.0.0-discard-drafts.js +154 -75
  287. package/dist/migrations/database/5.0.0-discard-drafts.js.map +1 -1
  288. package/dist/migrations/database/5.0.0-discard-drafts.mjs +153 -77
  289. package/dist/migrations/database/5.0.0-discard-drafts.mjs.map +1 -1
  290. package/dist/migrations/draft-publish.d.ts +2 -2
  291. package/dist/migrations/draft-publish.d.ts.map +1 -1
  292. package/dist/migrations/draft-publish.js +61 -34
  293. package/dist/migrations/draft-publish.js.map +1 -1
  294. package/dist/migrations/draft-publish.mjs +60 -36
  295. package/dist/migrations/draft-publish.mjs.map +1 -1
  296. package/dist/migrations/first-published-at.d.ts +4 -0
  297. package/dist/migrations/first-published-at.d.ts.map +1 -0
  298. package/dist/migrations/first-published-at.js +51 -0
  299. package/dist/migrations/first-published-at.js.map +1 -0
  300. package/dist/migrations/first-published-at.mjs +49 -0
  301. package/dist/migrations/first-published-at.mjs.map +1 -0
  302. package/dist/migrations/i18n.d.ts +5 -0
  303. package/dist/migrations/i18n.d.ts.map +1 -0
  304. package/dist/migrations/i18n.js +71 -0
  305. package/dist/migrations/i18n.js.map +1 -0
  306. package/dist/migrations/i18n.mjs +68 -0
  307. package/dist/migrations/i18n.mjs.map +1 -0
  308. package/dist/migrations/index.d.ts +5 -0
  309. package/dist/migrations/index.d.ts.map +1 -0
  310. package/dist/migrations/index.js +34 -0
  311. package/dist/migrations/index.js.map +1 -0
  312. package/dist/migrations/index.mjs +31 -0
  313. package/dist/migrations/index.mjs.map +1 -0
  314. package/dist/package.json.js +187 -0
  315. package/dist/package.json.js.map +1 -0
  316. package/dist/package.json.mjs +164 -0
  317. package/dist/package.json.mjs.map +1 -0
  318. package/dist/providers/admin.d.ts.map +1 -1
  319. package/dist/providers/admin.js +27 -17
  320. package/dist/providers/admin.js.map +1 -1
  321. package/dist/providers/admin.mjs +26 -19
  322. package/dist/providers/admin.mjs.map +1 -1
  323. package/dist/providers/coreStore.js +13 -8
  324. package/dist/providers/coreStore.js.map +1 -1
  325. package/dist/providers/coreStore.mjs +12 -10
  326. package/dist/providers/coreStore.mjs.map +1 -1
  327. package/dist/providers/cron.js +19 -16
  328. package/dist/providers/cron.js.map +1 -1
  329. package/dist/providers/cron.mjs +18 -18
  330. package/dist/providers/cron.mjs.map +1 -1
  331. package/dist/providers/index.d.ts.map +1 -1
  332. package/dist/providers/index.js +20 -9
  333. package/dist/providers/index.js.map +1 -1
  334. package/dist/providers/index.mjs +19 -10
  335. package/dist/providers/index.mjs.map +1 -1
  336. package/dist/providers/provider.js +4 -3
  337. package/dist/providers/provider.js.map +1 -1
  338. package/dist/providers/provider.mjs +3 -4
  339. package/dist/providers/provider.mjs.map +1 -1
  340. package/dist/providers/registries.js +37 -32
  341. package/dist/providers/registries.js.map +1 -1
  342. package/dist/providers/registries.mjs +36 -34
  343. package/dist/providers/registries.mjs.map +1 -1
  344. package/dist/providers/session-manager.d.ts +3 -0
  345. package/dist/providers/session-manager.d.ts.map +1 -0
  346. package/dist/providers/session-manager.js +23 -0
  347. package/dist/providers/session-manager.js.map +1 -0
  348. package/dist/providers/session-manager.mjs +21 -0
  349. package/dist/providers/session-manager.mjs.map +1 -0
  350. package/dist/providers/telemetry.js +19 -16
  351. package/dist/providers/telemetry.js.map +1 -1
  352. package/dist/providers/telemetry.mjs +18 -18
  353. package/dist/providers/telemetry.mjs.map +1 -1
  354. package/dist/providers/webhooks.js +28 -26
  355. package/dist/providers/webhooks.js.map +1 -1
  356. package/dist/providers/webhooks.mjs +27 -28
  357. package/dist/providers/webhooks.mjs.map +1 -1
  358. package/dist/registries/apis.js +23 -20
  359. package/dist/registries/apis.js.map +1 -1
  360. package/dist/registries/apis.mjs +22 -22
  361. package/dist/registries/apis.mjs.map +1 -1
  362. package/dist/registries/components.js +35 -37
  363. package/dist/registries/components.js.map +1 -1
  364. package/dist/registries/components.mjs +34 -39
  365. package/dist/registries/components.mjs.map +1 -1
  366. package/dist/registries/content-types.js +54 -59
  367. package/dist/registries/content-types.js.map +1 -1
  368. package/dist/registries/content-types.mjs +53 -61
  369. package/dist/registries/content-types.mjs.map +1 -1
  370. package/dist/registries/controllers.js +70 -71
  371. package/dist/registries/controllers.js.map +1 -1
  372. package/dist/registries/controllers.mjs +69 -73
  373. package/dist/registries/controllers.mjs.map +1 -1
  374. package/dist/registries/custom-fields.js +75 -65
  375. package/dist/registries/custom-fields.js.map +1 -1
  376. package/dist/registries/custom-fields.mjs +74 -67
  377. package/dist/registries/custom-fields.mjs.map +1 -1
  378. package/dist/registries/hooks.js +46 -49
  379. package/dist/registries/hooks.js.map +1 -1
  380. package/dist/registries/hooks.mjs +45 -51
  381. package/dist/registries/hooks.mjs.map +1 -1
  382. package/dist/registries/middlewares.js +49 -51
  383. package/dist/registries/middlewares.js.map +1 -1
  384. package/dist/registries/middlewares.mjs +48 -53
  385. package/dist/registries/middlewares.mjs.map +1 -1
  386. package/dist/registries/models.js +14 -13
  387. package/dist/registries/models.js.map +1 -1
  388. package/dist/registries/models.mjs +13 -14
  389. package/dist/registries/models.mjs.map +1 -1
  390. package/dist/registries/modules.js +39 -36
  391. package/dist/registries/modules.js.map +1 -1
  392. package/dist/registries/modules.mjs +38 -38
  393. package/dist/registries/modules.mjs.map +1 -1
  394. package/dist/registries/namespace.js +21 -20
  395. package/dist/registries/namespace.js.map +1 -1
  396. package/dist/registries/namespace.mjs +20 -23
  397. package/dist/registries/namespace.mjs.map +1 -1
  398. package/dist/registries/plugins.js +23 -20
  399. package/dist/registries/plugins.js.map +1 -1
  400. package/dist/registries/plugins.mjs +22 -22
  401. package/dist/registries/plugins.mjs.map +1 -1
  402. package/dist/registries/policies.js +103 -96
  403. package/dist/registries/policies.js.map +1 -1
  404. package/dist/registries/policies.mjs +102 -98
  405. package/dist/registries/policies.mjs.map +1 -1
  406. package/dist/registries/sanitizers.js +23 -22
  407. package/dist/registries/sanitizers.js.map +1 -1
  408. package/dist/registries/sanitizers.mjs +22 -22
  409. package/dist/registries/sanitizers.mjs.map +1 -1
  410. package/dist/registries/services.js +71 -71
  411. package/dist/registries/services.js.map +1 -1
  412. package/dist/registries/services.mjs +70 -73
  413. package/dist/registries/services.mjs.map +1 -1
  414. package/dist/registries/validators.js +23 -22
  415. package/dist/registries/validators.js.map +1 -1
  416. package/dist/registries/validators.mjs +22 -22
  417. package/dist/registries/validators.mjs.map +1 -1
  418. package/dist/services/auth/index.js +74 -74
  419. package/dist/services/auth/index.js.map +1 -1
  420. package/dist/services/auth/index.mjs +73 -74
  421. package/dist/services/auth/index.mjs.map +1 -1
  422. package/dist/services/config.js +47 -43
  423. package/dist/services/config.js.map +1 -1
  424. package/dist/services/config.mjs +46 -44
  425. package/dist/services/config.mjs.map +1 -1
  426. package/dist/services/content-api/index.d.ts +1 -1
  427. package/dist/services/content-api/index.d.ts.map +1 -1
  428. package/dist/services/content-api/index.js +80 -79
  429. package/dist/services/content-api/index.js.map +1 -1
  430. package/dist/services/content-api/index.mjs +79 -79
  431. package/dist/services/content-api/index.mjs.map +1 -1
  432. package/dist/services/content-api/permissions/engine.js +8 -5
  433. package/dist/services/content-api/permissions/engine.js.map +1 -1
  434. package/dist/services/content-api/permissions/engine.mjs +7 -5
  435. package/dist/services/content-api/permissions/engine.mjs.map +1 -1
  436. package/dist/services/content-api/permissions/index.js +101 -81
  437. package/dist/services/content-api/permissions/index.js.map +1 -1
  438. package/dist/services/content-api/permissions/index.mjs +100 -81
  439. package/dist/services/content-api/permissions/index.mjs.map +1 -1
  440. package/dist/services/content-api/permissions/providers/action.js +17 -14
  441. package/dist/services/content-api/permissions/providers/action.js.map +1 -1
  442. package/dist/services/content-api/permissions/providers/action.mjs +16 -16
  443. package/dist/services/content-api/permissions/providers/action.mjs.map +1 -1
  444. package/dist/services/content-api/permissions/providers/condition.js +17 -14
  445. package/dist/services/content-api/permissions/providers/condition.js.map +1 -1
  446. package/dist/services/content-api/permissions/providers/condition.mjs +16 -16
  447. package/dist/services/content-api/permissions/providers/condition.mjs.map +1 -1
  448. package/dist/services/content-source-maps.d.ts +13 -0
  449. package/dist/services/content-source-maps.d.ts.map +1 -0
  450. package/dist/services/content-source-maps.js +108 -0
  451. package/dist/services/content-source-maps.js.map +1 -0
  452. package/dist/services/content-source-maps.mjs +106 -0
  453. package/dist/services/content-source-maps.mjs.map +1 -0
  454. package/dist/services/core-store.d.ts +2 -2
  455. package/dist/services/core-store.d.ts.map +1 -1
  456. package/dist/services/core-store.js +115 -95
  457. package/dist/services/core-store.js.map +1 -1
  458. package/dist/services/core-store.mjs +114 -97
  459. package/dist/services/core-store.mjs.map +1 -1
  460. package/dist/services/cron.js +74 -60
  461. package/dist/services/cron.js.map +1 -1
  462. package/dist/services/cron.mjs +73 -62
  463. package/dist/services/cron.mjs.map +1 -1
  464. package/dist/services/custom-fields.js +9 -7
  465. package/dist/services/custom-fields.js.map +1 -1
  466. package/dist/services/custom-fields.mjs +8 -9
  467. package/dist/services/custom-fields.mjs.map +1 -1
  468. package/dist/services/document-service/attributes/index.js +23 -18
  469. package/dist/services/document-service/attributes/index.js.map +1 -1
  470. package/dist/services/document-service/attributes/index.mjs +22 -19
  471. package/dist/services/document-service/attributes/index.mjs.map +1 -1
  472. package/dist/services/document-service/attributes/transforms.js +16 -15
  473. package/dist/services/document-service/attributes/transforms.js.map +1 -1
  474. package/dist/services/document-service/attributes/transforms.mjs +15 -15
  475. package/dist/services/document-service/attributes/transforms.mjs.map +1 -1
  476. package/dist/services/document-service/common.d.ts +1 -1
  477. package/dist/services/document-service/common.d.ts.map +1 -1
  478. package/dist/services/document-service/common.js +5 -4
  479. package/dist/services/document-service/common.js.map +1 -1
  480. package/dist/services/document-service/common.mjs +4 -5
  481. package/dist/services/document-service/common.mjs.map +1 -1
  482. package/dist/services/document-service/components.d.ts +31 -1
  483. package/dist/services/document-service/components.d.ts.map +1 -1
  484. package/dist/services/document-service/components.js +363 -256
  485. package/dist/services/document-service/components.js.map +1 -1
  486. package/dist/services/document-service/components.mjs +359 -261
  487. package/dist/services/document-service/components.mjs.map +1 -1
  488. package/dist/services/document-service/draft-and-publish.d.ts +1 -1
  489. package/dist/services/document-service/draft-and-publish.d.ts.map +1 -1
  490. package/dist/services/document-service/draft-and-publish.js +88 -48
  491. package/dist/services/document-service/draft-and-publish.js.map +1 -1
  492. package/dist/services/document-service/draft-and-publish.mjs +87 -54
  493. package/dist/services/document-service/draft-and-publish.mjs.map +1 -1
  494. package/dist/services/document-service/entries.d.ts +2 -2
  495. package/dist/services/document-service/entries.d.ts.map +1 -1
  496. package/dist/services/document-service/entries.js +151 -92
  497. package/dist/services/document-service/entries.js.map +1 -1
  498. package/dist/services/document-service/entries.mjs +150 -93
  499. package/dist/services/document-service/entries.mjs.map +1 -1
  500. package/dist/services/document-service/events.d.ts +1 -1
  501. package/dist/services/document-service/events.d.ts.map +1 -1
  502. package/dist/services/document-service/events.js +52 -40
  503. package/dist/services/document-service/events.js.map +1 -1
  504. package/dist/services/document-service/events.mjs +51 -41
  505. package/dist/services/document-service/events.mjs.map +1 -1
  506. package/dist/services/document-service/first-published-at.d.ts +7 -0
  507. package/dist/services/document-service/first-published-at.d.ts.map +1 -0
  508. package/dist/services/document-service/first-published-at.js +31 -0
  509. package/dist/services/document-service/first-published-at.js.map +1 -0
  510. package/dist/services/document-service/first-published-at.mjs +28 -0
  511. package/dist/services/document-service/first-published-at.mjs.map +1 -0
  512. package/dist/services/document-service/index.d.ts +2 -1
  513. package/dist/services/document-service/index.d.ts.map +1 -1
  514. package/dist/services/document-service/index.js +53 -32
  515. package/dist/services/document-service/index.js.map +1 -1
  516. package/dist/services/document-service/index.mjs +52 -33
  517. package/dist/services/document-service/index.mjs.map +1 -1
  518. package/dist/services/document-service/internationalization.d.ts +6 -1
  519. package/dist/services/document-service/internationalization.d.ts.map +1 -1
  520. package/dist/services/document-service/internationalization.js +94 -46
  521. package/dist/services/document-service/internationalization.js.map +1 -1
  522. package/dist/services/document-service/internationalization.mjs +92 -50
  523. package/dist/services/document-service/internationalization.mjs.map +1 -1
  524. package/dist/services/document-service/middlewares/errors.js +23 -19
  525. package/dist/services/document-service/middlewares/errors.js.map +1 -1
  526. package/dist/services/document-service/middlewares/errors.mjs +22 -20
  527. package/dist/services/document-service/middlewares/errors.mjs.map +1 -1
  528. package/dist/services/document-service/middlewares/middleware-manager.js +46 -44
  529. package/dist/services/document-service/middlewares/middleware-manager.js.map +1 -1
  530. package/dist/services/document-service/middlewares/middleware-manager.mjs +45 -45
  531. package/dist/services/document-service/middlewares/middleware-manager.mjs.map +1 -1
  532. package/dist/services/document-service/params.js +11 -5
  533. package/dist/services/document-service/params.js.map +1 -1
  534. package/dist/services/document-service/params.mjs +10 -6
  535. package/dist/services/document-service/params.mjs.map +1 -1
  536. package/dist/services/document-service/repository.d.ts.map +1 -1
  537. package/dist/services/document-service/repository.js +362 -304
  538. package/dist/services/document-service/repository.js.map +1 -1
  539. package/dist/services/document-service/repository.mjs +361 -305
  540. package/dist/services/document-service/repository.mjs.map +1 -1
  541. package/dist/services/document-service/transform/data.js +22 -12
  542. package/dist/services/document-service/transform/data.js.map +1 -1
  543. package/dist/services/document-service/transform/data.mjs +21 -13
  544. package/dist/services/document-service/transform/data.mjs.map +1 -1
  545. package/dist/services/document-service/transform/fields.js +26 -17
  546. package/dist/services/document-service/transform/fields.js.map +1 -1
  547. package/dist/services/document-service/transform/fields.mjs +25 -18
  548. package/dist/services/document-service/transform/fields.mjs.map +1 -1
  549. package/dist/services/document-service/transform/id-map.d.ts +1 -1
  550. package/dist/services/document-service/transform/id-map.d.ts.map +1 -1
  551. package/dist/services/document-service/transform/id-map.js +116 -69
  552. package/dist/services/document-service/transform/id-map.js.map +1 -1
  553. package/dist/services/document-service/transform/id-map.mjs +115 -70
  554. package/dist/services/document-service/transform/id-map.mjs.map +1 -1
  555. package/dist/services/document-service/transform/id-transform.d.ts +1 -1
  556. package/dist/services/document-service/transform/id-transform.d.ts.map +1 -1
  557. package/dist/services/document-service/transform/id-transform.js +37 -29
  558. package/dist/services/document-service/transform/id-transform.js.map +1 -1
  559. package/dist/services/document-service/transform/id-transform.mjs +36 -30
  560. package/dist/services/document-service/transform/id-transform.mjs.map +1 -1
  561. package/dist/services/document-service/transform/populate.js +23 -18
  562. package/dist/services/document-service/transform/populate.js.map +1 -1
  563. package/dist/services/document-service/transform/populate.mjs +22 -19
  564. package/dist/services/document-service/transform/populate.mjs.map +1 -1
  565. package/dist/services/document-service/transform/query.js +11 -6
  566. package/dist/services/document-service/transform/query.js.map +1 -1
  567. package/dist/services/document-service/transform/query.mjs +10 -7
  568. package/dist/services/document-service/transform/query.mjs.map +1 -1
  569. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts +1 -1
  570. package/dist/services/document-service/transform/relations/extract/data-ids.d.ts.map +1 -1
  571. package/dist/services/document-service/transform/relations/extract/data-ids.js +71 -48
  572. package/dist/services/document-service/transform/relations/extract/data-ids.js.map +1 -1
  573. package/dist/services/document-service/transform/relations/extract/data-ids.mjs +70 -49
  574. package/dist/services/document-service/transform/relations/extract/data-ids.mjs.map +1 -1
  575. package/dist/services/document-service/transform/relations/transform/data-ids.d.ts.map +1 -1
  576. package/dist/services/document-service/transform/relations/transform/data-ids.js +97 -63
  577. package/dist/services/document-service/transform/relations/transform/data-ids.js.map +1 -1
  578. package/dist/services/document-service/transform/relations/transform/data-ids.mjs +96 -64
  579. package/dist/services/document-service/transform/relations/transform/data-ids.mjs.map +1 -1
  580. package/dist/services/document-service/transform/relations/transform/default-locale.js +47 -29
  581. package/dist/services/document-service/transform/relations/transform/default-locale.js.map +1 -1
  582. package/dist/services/document-service/transform/relations/transform/default-locale.mjs +46 -30
  583. package/dist/services/document-service/transform/relations/transform/default-locale.mjs.map +1 -1
  584. package/dist/services/document-service/transform/relations/utils/dp.d.ts +1 -1
  585. package/dist/services/document-service/transform/relations/utils/dp.d.ts.map +1 -1
  586. package/dist/services/document-service/transform/relations/utils/dp.js +52 -26
  587. package/dist/services/document-service/transform/relations/utils/dp.js.map +1 -1
  588. package/dist/services/document-service/transform/relations/utils/dp.mjs +51 -27
  589. package/dist/services/document-service/transform/relations/utils/dp.mjs.map +1 -1
  590. package/dist/services/document-service/transform/relations/utils/i18n.d.ts +1 -1
  591. package/dist/services/document-service/transform/relations/utils/i18n.d.ts.map +1 -1
  592. package/dist/services/document-service/transform/relations/utils/i18n.js +20 -18
  593. package/dist/services/document-service/transform/relations/utils/i18n.js.map +1 -1
  594. package/dist/services/document-service/transform/relations/utils/i18n.mjs +19 -21
  595. package/dist/services/document-service/transform/relations/utils/i18n.mjs.map +1 -1
  596. package/dist/services/document-service/transform/relations/utils/map-relation.d.ts.map +1 -1
  597. package/dist/services/document-service/transform/relations/utils/map-relation.js +116 -77
  598. package/dist/services/document-service/transform/relations/utils/map-relation.js.map +1 -1
  599. package/dist/services/document-service/transform/relations/utils/map-relation.mjs +115 -79
  600. package/dist/services/document-service/transform/relations/utils/map-relation.mjs.map +1 -1
  601. package/dist/services/document-service/utils/bidirectional-relations.d.ts +95 -0
  602. package/dist/services/document-service/utils/bidirectional-relations.d.ts.map +1 -0
  603. package/dist/services/document-service/utils/bidirectional-relations.js +148 -0
  604. package/dist/services/document-service/utils/bidirectional-relations.js.map +1 -0
  605. package/dist/services/document-service/utils/bidirectional-relations.mjs +145 -0
  606. package/dist/services/document-service/utils/bidirectional-relations.mjs.map +1 -0
  607. package/dist/services/document-service/utils/clean-component-join-table.d.ts +7 -0
  608. package/dist/services/document-service/utils/clean-component-join-table.d.ts.map +1 -0
  609. package/dist/services/document-service/utils/populate.d.ts +1 -1
  610. package/dist/services/document-service/utils/populate.d.ts.map +1 -1
  611. package/dist/services/document-service/utils/populate.js +67 -41
  612. package/dist/services/document-service/utils/populate.js.map +1 -1
  613. package/dist/services/document-service/utils/populate.mjs +66 -42
  614. package/dist/services/document-service/utils/populate.mjs.map +1 -1
  615. package/dist/services/document-service/utils/unidirectional-relations.d.ts +29 -9
  616. package/dist/services/document-service/utils/unidirectional-relations.d.ts.map +1 -1
  617. package/dist/services/document-service/utils/unidirectional-relations.js +125 -52
  618. package/dist/services/document-service/utils/unidirectional-relations.js.map +1 -1
  619. package/dist/services/document-service/utils/unidirectional-relations.mjs +124 -54
  620. package/dist/services/document-service/utils/unidirectional-relations.mjs.map +1 -1
  621. package/dist/services/entity-service/index.js +230 -161
  622. package/dist/services/entity-service/index.js.map +1 -1
  623. package/dist/services/entity-service/index.mjs +229 -160
  624. package/dist/services/entity-service/index.mjs.map +1 -1
  625. package/dist/services/entity-validator/blocks-validator.js +135 -103
  626. package/dist/services/entity-validator/blocks-validator.js.map +1 -1
  627. package/dist/services/entity-validator/blocks-validator.mjs +134 -104
  628. package/dist/services/entity-validator/blocks-validator.mjs.map +1 -1
  629. package/dist/services/entity-validator/index.d.ts +1 -1
  630. package/dist/services/entity-validator/index.d.ts.map +1 -1
  631. package/dist/services/entity-validator/index.js +370 -362
  632. package/dist/services/entity-validator/index.js.map +1 -1
  633. package/dist/services/entity-validator/index.mjs +366 -359
  634. package/dist/services/entity-validator/index.mjs.map +1 -1
  635. package/dist/services/entity-validator/validators.d.ts +1 -0
  636. package/dist/services/entity-validator/validators.d.ts.map +1 -1
  637. package/dist/services/entity-validator/validators.js +270 -209
  638. package/dist/services/entity-validator/validators.js.map +1 -1
  639. package/dist/services/entity-validator/validators.mjs +269 -215
  640. package/dist/services/entity-validator/validators.mjs.map +1 -1
  641. package/dist/services/errors.js +65 -65
  642. package/dist/services/errors.js.map +1 -1
  643. package/dist/services/errors.mjs +64 -66
  644. package/dist/services/errors.mjs.map +1 -1
  645. package/dist/services/event-hub.js +82 -69
  646. package/dist/services/event-hub.js.map +1 -1
  647. package/dist/services/event-hub.mjs +81 -71
  648. package/dist/services/event-hub.mjs.map +1 -1
  649. package/dist/services/features.js +19 -14
  650. package/dist/services/features.js.map +1 -1
  651. package/dist/services/features.mjs +18 -15
  652. package/dist/services/features.mjs.map +1 -1
  653. package/dist/services/fs.js +41 -40
  654. package/dist/services/fs.js.map +1 -1
  655. package/dist/services/fs.mjs +40 -39
  656. package/dist/services/fs.mjs.map +1 -1
  657. package/dist/services/metrics/admin-user-hash.d.ts.map +1 -1
  658. package/dist/services/metrics/admin-user-hash.js +13 -11
  659. package/dist/services/metrics/admin-user-hash.js.map +1 -1
  660. package/dist/services/metrics/admin-user-hash.mjs +12 -10
  661. package/dist/services/metrics/admin-user-hash.mjs.map +1 -1
  662. package/dist/services/metrics/index.d.ts +1 -1
  663. package/dist/services/metrics/index.d.ts.map +1 -1
  664. package/dist/services/metrics/index.js +48 -40
  665. package/dist/services/metrics/index.js.map +1 -1
  666. package/dist/services/metrics/index.mjs +47 -42
  667. package/dist/services/metrics/index.mjs.map +1 -1
  668. package/dist/services/metrics/is-truthy.js +13 -6
  669. package/dist/services/metrics/is-truthy.js.map +1 -1
  670. package/dist/services/metrics/is-truthy.mjs +12 -6
  671. package/dist/services/metrics/is-truthy.mjs.map +1 -1
  672. package/dist/services/metrics/middleware.d.ts +2 -1
  673. package/dist/services/metrics/middleware.d.ts.map +1 -1
  674. package/dist/services/metrics/middleware.js +37 -22
  675. package/dist/services/metrics/middleware.js.map +1 -1
  676. package/dist/services/metrics/middleware.mjs +36 -24
  677. package/dist/services/metrics/middleware.mjs.map +1 -1
  678. package/dist/services/metrics/rate-limiter.d.ts.map +1 -1
  679. package/dist/services/metrics/rate-limiter.js +24 -19
  680. package/dist/services/metrics/rate-limiter.js.map +1 -1
  681. package/dist/services/metrics/rate-limiter.mjs +23 -21
  682. package/dist/services/metrics/rate-limiter.mjs.map +1 -1
  683. package/dist/services/metrics/sender.d.ts.map +1 -1
  684. package/dist/services/metrics/sender.js +79 -69
  685. package/dist/services/metrics/sender.js.map +1 -1
  686. package/dist/services/metrics/sender.mjs +78 -64
  687. package/dist/services/metrics/sender.mjs.map +1 -1
  688. package/dist/services/query-params.js +13 -10
  689. package/dist/services/query-params.js.map +1 -1
  690. package/dist/services/query-params.mjs +12 -12
  691. package/dist/services/query-params.mjs.map +1 -1
  692. package/dist/services/reloader.js +35 -32
  693. package/dist/services/reloader.js.map +1 -1
  694. package/dist/services/reloader.mjs +34 -33
  695. package/dist/services/reloader.mjs.map +1 -1
  696. package/dist/services/request-context.js +11 -8
  697. package/dist/services/request-context.js.map +1 -1
  698. package/dist/services/request-context.mjs +10 -10
  699. package/dist/services/request-context.mjs.map +1 -1
  700. package/dist/services/server/admin-api.js +11 -10
  701. package/dist/services/server/admin-api.js.map +1 -1
  702. package/dist/services/server/admin-api.mjs +10 -11
  703. package/dist/services/server/admin-api.mjs.map +1 -1
  704. package/dist/services/server/api.js +33 -27
  705. package/dist/services/server/api.js.map +1 -1
  706. package/dist/services/server/api.mjs +32 -26
  707. package/dist/services/server/api.mjs.map +1 -1
  708. package/dist/services/server/compose-endpoint.js +116 -105
  709. package/dist/services/server/compose-endpoint.js.map +1 -1
  710. package/dist/services/server/compose-endpoint.mjs +115 -105
  711. package/dist/services/server/compose-endpoint.mjs.map +1 -1
  712. package/dist/services/server/content-api.js +11 -9
  713. package/dist/services/server/content-api.js.map +1 -1
  714. package/dist/services/server/content-api.mjs +10 -10
  715. package/dist/services/server/content-api.mjs.map +1 -1
  716. package/dist/services/server/http-server.js +48 -44
  717. package/dist/services/server/http-server.js.map +1 -1
  718. package/dist/services/server/http-server.mjs +47 -43
  719. package/dist/services/server/http-server.mjs.map +1 -1
  720. package/dist/services/server/index.js +85 -82
  721. package/dist/services/server/index.js.map +1 -1
  722. package/dist/services/server/index.mjs +84 -81
  723. package/dist/services/server/index.mjs.map +1 -1
  724. package/dist/services/server/koa.js +49 -47
  725. package/dist/services/server/koa.js.map +1 -1
  726. package/dist/services/server/koa.mjs +48 -44
  727. package/dist/services/server/koa.mjs.map +1 -1
  728. package/dist/services/server/middleware.js +86 -82
  729. package/dist/services/server/middleware.js.map +1 -1
  730. package/dist/services/server/middleware.mjs +85 -82
  731. package/dist/services/server/middleware.mjs.map +1 -1
  732. package/dist/services/server/policy.js +24 -17
  733. package/dist/services/server/policy.js.map +1 -1
  734. package/dist/services/server/policy.mjs +23 -18
  735. package/dist/services/server/policy.mjs.map +1 -1
  736. package/dist/services/server/register-middlewares.js +68 -61
  737. package/dist/services/server/register-middlewares.js.map +1 -1
  738. package/dist/services/server/register-middlewares.mjs +67 -63
  739. package/dist/services/server/register-middlewares.mjs.map +1 -1
  740. package/dist/services/server/register-routes.js +109 -66
  741. package/dist/services/server/register-routes.js.map +1 -1
  742. package/dist/services/server/register-routes.mjs +108 -66
  743. package/dist/services/server/register-routes.mjs.map +1 -1
  744. package/dist/services/server/routing.d.ts +10 -0
  745. package/dist/services/server/routing.d.ts.map +1 -1
  746. package/dist/services/server/routing.js +100 -81
  747. package/dist/services/server/routing.js.map +1 -1
  748. package/dist/services/server/routing.mjs +99 -81
  749. package/dist/services/server/routing.mjs.map +1 -1
  750. package/dist/services/session-manager.d.ts +167 -0
  751. package/dist/services/session-manager.d.ts.map +1 -0
  752. package/dist/services/session-manager.js +529 -0
  753. package/dist/services/session-manager.js.map +1 -0
  754. package/dist/services/session-manager.mjs +526 -0
  755. package/dist/services/session-manager.mjs.map +1 -0
  756. package/dist/services/utils/conditional-fields.d.ts +3 -0
  757. package/dist/services/utils/conditional-fields.d.ts.map +1 -0
  758. package/dist/services/utils/conditional-fields.js +22 -0
  759. package/dist/services/utils/conditional-fields.js.map +1 -0
  760. package/dist/services/utils/conditional-fields.mjs +20 -0
  761. package/dist/services/utils/conditional-fields.mjs.map +1 -0
  762. package/dist/services/utils/dynamic-zones.js +13 -14
  763. package/dist/services/utils/dynamic-zones.js.map +1 -1
  764. package/dist/services/utils/dynamic-zones.mjs +12 -16
  765. package/dist/services/utils/dynamic-zones.mjs.map +1 -1
  766. package/dist/services/webhook-runner.js +124 -122
  767. package/dist/services/webhook-runner.js.map +1 -1
  768. package/dist/services/webhook-runner.mjs +123 -121
  769. package/dist/services/webhook-runner.mjs.map +1 -1
  770. package/dist/services/webhook-store.js +132 -99
  771. package/dist/services/webhook-store.js.map +1 -1
  772. package/dist/services/webhook-store.mjs +131 -101
  773. package/dist/services/webhook-store.mjs.map +1 -1
  774. package/dist/services/worker-queue.js +44 -49
  775. package/dist/services/worker-queue.js.map +1 -1
  776. package/dist/services/worker-queue.mjs +43 -49
  777. package/dist/services/worker-queue.mjs.map +1 -1
  778. package/dist/utils/convert-custom-field-type.js +17 -20
  779. package/dist/utils/convert-custom-field-type.js.map +1 -1
  780. package/dist/utils/convert-custom-field-type.mjs +16 -21
  781. package/dist/utils/convert-custom-field-type.mjs.map +1 -1
  782. package/dist/utils/cron.js +64 -30
  783. package/dist/utils/cron.js.map +1 -1
  784. package/dist/utils/cron.mjs +63 -31
  785. package/dist/utils/cron.mjs.map +1 -1
  786. package/dist/utils/fetch.d.ts +5 -1
  787. package/dist/utils/fetch.d.ts.map +1 -1
  788. package/dist/utils/fetch.js +28 -18
  789. package/dist/utils/fetch.js.map +1 -1
  790. package/dist/utils/fetch.mjs +27 -19
  791. package/dist/utils/fetch.mjs.map +1 -1
  792. package/dist/utils/filepath-to-prop-path.js +20 -28
  793. package/dist/utils/filepath-to-prop-path.js.map +1 -1
  794. package/dist/utils/filepath-to-prop-path.mjs +19 -26
  795. package/dist/utils/filepath-to-prop-path.mjs.map +1 -1
  796. package/dist/utils/is-initialized.js +21 -12
  797. package/dist/utils/is-initialized.js.map +1 -1
  798. package/dist/utils/is-initialized.mjs +20 -13
  799. package/dist/utils/is-initialized.mjs.map +1 -1
  800. package/dist/utils/lifecycles.js +6 -5
  801. package/dist/utils/lifecycles.js.map +1 -1
  802. package/dist/utils/lifecycles.mjs +5 -6
  803. package/dist/utils/lifecycles.mjs.map +1 -1
  804. package/dist/utils/load-config-file.js +40 -38
  805. package/dist/utils/load-config-file.js.map +1 -1
  806. package/dist/utils/load-config-file.mjs +39 -36
  807. package/dist/utils/load-config-file.mjs.map +1 -1
  808. package/dist/utils/load-files.js +40 -35
  809. package/dist/utils/load-files.js.map +1 -1
  810. package/dist/utils/load-files.mjs +39 -32
  811. package/dist/utils/load-files.mjs.map +1 -1
  812. package/dist/utils/open-browser.js +8 -8
  813. package/dist/utils/open-browser.js.map +1 -1
  814. package/dist/utils/open-browser.mjs +7 -7
  815. package/dist/utils/open-browser.mjs.map +1 -1
  816. package/dist/utils/resolve-working-dirs.js +23 -10
  817. package/dist/utils/resolve-working-dirs.js.map +1 -1
  818. package/dist/utils/resolve-working-dirs.mjs +22 -9
  819. package/dist/utils/resolve-working-dirs.mjs.map +1 -1
  820. package/dist/utils/signals.js +20 -14
  821. package/dist/utils/signals.js.map +1 -1
  822. package/dist/utils/signals.mjs +19 -15
  823. package/dist/utils/signals.mjs.map +1 -1
  824. package/dist/utils/startup-logger.d.ts.map +1 -1
  825. package/dist/utils/startup-logger.js +107 -78
  826. package/dist/utils/startup-logger.js.map +1 -1
  827. package/dist/utils/startup-logger.mjs +106 -75
  828. package/dist/utils/startup-logger.mjs.map +1 -1
  829. package/dist/utils/transform-content-types-to-models.d.ts +550 -21
  830. package/dist/utils/transform-content-types-to-models.d.ts.map +1 -1
  831. package/dist/utils/transform-content-types-to-models.js +350 -261
  832. package/dist/utils/transform-content-types-to-models.js.map +1 -1
  833. package/dist/utils/transform-content-types-to-models.mjs +349 -269
  834. package/dist/utils/transform-content-types-to-models.mjs.map +1 -1
  835. package/dist/utils/update-notifier/index.d.ts.map +1 -1
  836. package/dist/utils/update-notifier/index.js +68 -73
  837. package/dist/utils/update-notifier/index.js.map +1 -1
  838. package/dist/utils/update-notifier/index.mjs +67 -67
  839. package/dist/utils/update-notifier/index.mjs.map +1 -1
  840. package/package.json +34 -29
@@ -1 +1 @@
1
- {"version":3,"file":"id-map.js","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":["async","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,YAAMA,YAAM,MAAA;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,QAAAC,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.js","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,wBAAAA,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,kBAAMzB,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,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":"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"}
@@ -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