@rakun-kit/core 1.5.13 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (881) hide show
  1. package/README.md +107 -21
  2. package/dist/cjs/api/operations/manager-contract.js +8 -0
  3. package/dist/cjs/api/operations/manager-contract.js.map +1 -1
  4. package/dist/cjs/api/operations/manager-manifest.js +5 -0
  5. package/dist/cjs/api/operations/manager-manifest.js.map +1 -1
  6. package/dist/cjs/api/operations/manager.js +4 -0
  7. package/dist/cjs/api/operations/manager.js.map +1 -1
  8. package/dist/cjs/api/routes/manager/auth/markTourSeen.js +4 -1
  9. package/dist/cjs/api/routes/manager/auth/markTourSeen.js.map +1 -1
  10. package/dist/cjs/api/routes/manager/localeVariants.js +20 -14
  11. package/dist/cjs/api/routes/manager/localeVariants.js.map +1 -1
  12. package/dist/cjs/api/routes/manager/media/deleteMediaStorage.js +14 -9
  13. package/dist/cjs/api/routes/manager/media/deleteMediaStorage.js.map +1 -1
  14. package/dist/cjs/api/routes/manager/media/finalizeUpload.js +4 -0
  15. package/dist/cjs/api/routes/manager/media/finalizeUpload.js.map +1 -1
  16. package/dist/cjs/api/routes/manager/media/reimportMedia.js +20 -10
  17. package/dist/cjs/api/routes/manager/media/reimportMedia.js.map +1 -1
  18. package/dist/cjs/api/routes/manager/media/replaceMedia.js +224 -0
  19. package/dist/cjs/api/routes/manager/media/replaceMedia.js.map +1 -0
  20. package/dist/cjs/api/routes/manager/media/resolveMediaRecordUrls.js +14 -12
  21. package/dist/cjs/api/routes/manager/media/resolveMediaRecordUrls.js.map +1 -1
  22. package/dist/cjs/api/routes/manager/media/uploadBinary.js +112 -39
  23. package/dist/cjs/api/routes/manager/media/uploadBinary.js.map +1 -1
  24. package/dist/cjs/api/routes/manager/uiLocales.js +35 -5
  25. package/dist/cjs/api/routes/manager/uiLocales.js.map +1 -1
  26. package/dist/cjs/api/routes/web/llms.js +53 -52
  27. package/dist/cjs/api/routes/web/llms.js.map +1 -1
  28. package/dist/cjs/api/routes/web/page.js +47 -14
  29. package/dist/cjs/api/routes/web/page.js.map +1 -1
  30. package/dist/cjs/api/routes/web/sitemap.js +12 -2
  31. package/dist/cjs/api/routes/web/sitemap.js.map +1 -1
  32. package/dist/cjs/api/routes/web/staticPaths.js +4 -2
  33. package/dist/cjs/api/routes/web/staticPaths.js.map +1 -1
  34. package/dist/cjs/api/utils/dynamicData.js +193 -130
  35. package/dist/cjs/api/utils/dynamicData.js.map +1 -1
  36. package/dist/cjs/api/utils/index.js +2 -1
  37. package/dist/cjs/api/utils/index.js.map +1 -1
  38. package/dist/cjs/api/utils/mediaUploadKey.js +11 -1
  39. package/dist/cjs/api/utils/mediaUploadKey.js.map +1 -1
  40. package/dist/cjs/api/utils/populates/populateLinks.js +27 -55
  41. package/dist/cjs/api/utils/populates/populateLinks.js.map +1 -1
  42. package/dist/cjs/api/utils/populates/populateRelations.js +78 -43
  43. package/dist/cjs/api/utils/populates/populateRelations.js.map +1 -1
  44. package/dist/cjs/api/utils/routes/routeMapHelpers.js +44 -10
  45. package/dist/cjs/api/utils/routes/routeMapHelpers.js.map +1 -1
  46. package/dist/cjs/api/utils/routes/updateRoutesMap.js +12 -7
  47. package/dist/cjs/api/utils/routes/updateRoutesMap.js.map +1 -1
  48. package/dist/cjs/client.js +1 -0
  49. package/dist/cjs/client.js.map +1 -1
  50. package/dist/cjs/contracts.js +1 -0
  51. package/dist/cjs/contracts.js.map +1 -1
  52. package/dist/cjs/index.js +2 -2
  53. package/dist/cjs/index.js.map +1 -1
  54. package/dist/cjs/internal-content-types/Backup.js +3 -3
  55. package/dist/cjs/internal-content-types/Backup.js.map +1 -1
  56. package/dist/cjs/internal-content-types/ContentComment.js +2 -2
  57. package/dist/cjs/internal-content-types/ContentComment.js.map +1 -1
  58. package/dist/cjs/internal-content-types/ContentReview.js +31 -18
  59. package/dist/cjs/internal-content-types/ContentReview.js.map +1 -1
  60. package/dist/cjs/internal-content-types/ContentReviewDecision.js +1 -1
  61. package/dist/cjs/internal-content-types/ContentReviewDecision.js.map +1 -1
  62. package/dist/cjs/internal-content-types/ContentReviewPolicy.js +2 -2
  63. package/dist/cjs/internal-content-types/ContentReviewPolicy.js.map +1 -1
  64. package/dist/cjs/internal-content-types/ContentVersion.js +4 -4
  65. package/dist/cjs/internal-content-types/ContentVersion.js.map +1 -1
  66. package/dist/cjs/internal-content-types/Language.js +1 -1
  67. package/dist/cjs/internal-content-types/Language.js.map +1 -1
  68. package/dist/cjs/internal-content-types/LlmsSettings.js +8 -9
  69. package/dist/cjs/internal-content-types/LlmsSettings.js.map +1 -1
  70. package/dist/cjs/internal-content-types/LoginIpBlock.js +1 -1
  71. package/dist/cjs/internal-content-types/LoginIpBlock.js.map +1 -1
  72. package/dist/cjs/internal-content-types/ManagerNotification.js +2 -2
  73. package/dist/cjs/internal-content-types/ManagerNotification.js.map +1 -1
  74. package/dist/cjs/internal-content-types/ManagerUser.js +9 -9
  75. package/dist/cjs/internal-content-types/ManagerUser.js.map +1 -1
  76. package/dist/cjs/internal-content-types/Media.js +18 -17
  77. package/dist/cjs/internal-content-types/Media.js.map +1 -1
  78. package/dist/cjs/internal-content-types/MediaFolder.js +2 -2
  79. package/dist/cjs/internal-content-types/MediaFolder.js.map +1 -1
  80. package/dist/cjs/internal-content-types/MfaChallenge.js +2 -2
  81. package/dist/cjs/internal-content-types/MfaChallenge.js.map +1 -1
  82. package/dist/cjs/internal-content-types/Migration.js +5 -5
  83. package/dist/cjs/internal-content-types/Migration.js.map +1 -1
  84. package/dist/cjs/internal-content-types/PasswordResetToken.js +1 -1
  85. package/dist/cjs/internal-content-types/PasswordResetToken.js.map +1 -1
  86. package/dist/cjs/internal-content-types/PreviewSnapshot.js +2 -2
  87. package/dist/cjs/internal-content-types/PreviewSnapshot.js.map +1 -1
  88. package/dist/cjs/internal-content-types/Redirect.js +4 -4
  89. package/dist/cjs/internal-content-types/Redirect.js.map +1 -1
  90. package/dist/cjs/internal-content-types/RobotsRule.js +3 -3
  91. package/dist/cjs/internal-content-types/RobotsRule.js.map +1 -1
  92. package/dist/cjs/internal-content-types/Route.js +2 -2
  93. package/dist/cjs/internal-content-types/Route.js.map +1 -1
  94. package/dist/cjs/internal-content-types/RouteLayoutModule.js +1 -1
  95. package/dist/cjs/internal-content-types/RouteLayoutModule.js.map +1 -1
  96. package/dist/cjs/internal-content-types/RouteLayoutModuleOverride.js +1 -1
  97. package/dist/cjs/internal-content-types/RouteLayoutModuleOverride.js.map +1 -1
  98. package/dist/cjs/internal-content-types/RouteMap.js +2 -2
  99. package/dist/cjs/internal-content-types/RouteMap.js.map +1 -1
  100. package/dist/cjs/internal-content-types/RouteSettings.js +1 -1
  101. package/dist/cjs/internal-content-types/RouteSettings.js.map +1 -1
  102. package/dist/cjs/internal-content-types/Seo.js +34 -20
  103. package/dist/cjs/internal-content-types/Seo.js.map +1 -1
  104. package/dist/cjs/internal-content-types/SeoAudit.js +29 -0
  105. package/dist/cjs/internal-content-types/SeoAudit.js.map +1 -0
  106. package/dist/cjs/internal-content-types/SeoSettings.js +5 -5
  107. package/dist/cjs/internal-content-types/SeoSettings.js.map +1 -1
  108. package/dist/cjs/internal-content-types/StructuredData.js +102 -0
  109. package/dist/cjs/internal-content-types/StructuredData.js.map +1 -0
  110. package/dist/cjs/internal-content-types/UserMfa.js +6 -6
  111. package/dist/cjs/internal-content-types/UserMfa.js.map +1 -1
  112. package/dist/cjs/internal-content-types/WebAuthnRegChallenge.js +1 -1
  113. package/dist/cjs/internal-content-types/WebAuthnRegChallenge.js.map +1 -1
  114. package/dist/cjs/internal-content-types/index.js +2 -0
  115. package/dist/cjs/internal-content-types/index.js.map +1 -1
  116. package/dist/cjs/lib/ContentType.js +11 -3
  117. package/dist/cjs/lib/ContentType.js.map +1 -1
  118. package/dist/cjs/lib/Registry.js +1 -0
  119. package/dist/cjs/lib/Registry.js.map +1 -1
  120. package/dist/cjs/lib/fields/Boolean.js +5 -1
  121. package/dist/cjs/lib/fields/Boolean.js.map +1 -1
  122. package/dist/cjs/lib/fields/Breadcrums.js +5 -1
  123. package/dist/cjs/lib/fields/Breadcrums.js.map +1 -1
  124. package/dist/cjs/lib/fields/ContentReference.js +22 -6
  125. package/dist/cjs/lib/fields/ContentReference.js.map +1 -1
  126. package/dist/cjs/lib/fields/Date.js +11 -5
  127. package/dist/cjs/lib/fields/Date.js.map +1 -1
  128. package/dist/cjs/lib/fields/Field.js +71 -45
  129. package/dist/cjs/lib/fields/Field.js.map +1 -1
  130. package/dist/cjs/lib/fields/Fields.js +2 -0
  131. package/dist/cjs/lib/fields/Fields.js.map +1 -1
  132. package/dist/cjs/lib/fields/File.js +74 -25
  133. package/dist/cjs/lib/fields/File.js.map +1 -1
  134. package/dist/cjs/lib/fields/Iterator.js +1 -1
  135. package/dist/cjs/lib/fields/Iterator.js.map +1 -1
  136. package/dist/cjs/lib/fields/Link.js +26 -15
  137. package/dist/cjs/lib/fields/Link.js.map +1 -1
  138. package/dist/cjs/lib/fields/List.js +34 -12
  139. package/dist/cjs/lib/fields/List.js.map +1 -1
  140. package/dist/cjs/lib/fields/Menu.js +56 -0
  141. package/dist/cjs/lib/fields/Menu.js.map +1 -0
  142. package/dist/cjs/lib/fields/Number.js +3 -2
  143. package/dist/cjs/lib/fields/Number.js.map +1 -1
  144. package/dist/cjs/lib/fields/Relation.js +17 -15
  145. package/dist/cjs/lib/fields/Relation.js.map +1 -1
  146. package/dist/cjs/lib/fields/Select.js +20 -4
  147. package/dist/cjs/lib/fields/Select.js.map +1 -1
  148. package/dist/cjs/lib/fields/SelfRelation.js +4 -3
  149. package/dist/cjs/lib/fields/SelfRelation.js.map +1 -1
  150. package/dist/cjs/lib/fields/SimpleList.js +38 -14
  151. package/dist/cjs/lib/fields/SimpleList.js.map +1 -1
  152. package/dist/cjs/lib/fields/String.js +34 -36
  153. package/dist/cjs/lib/fields/String.js.map +1 -1
  154. package/dist/cjs/lib/fields/index.js +1 -0
  155. package/dist/cjs/lib/fields/index.js.map +1 -1
  156. package/dist/cjs/media/imageOptimization.js.map +1 -1
  157. package/dist/cjs/media/mediaOptimization.js +18 -0
  158. package/dist/cjs/media/mediaOptimization.js.map +1 -0
  159. package/dist/cjs/media/videoOptimization.js +142 -0
  160. package/dist/cjs/media/videoOptimization.js.map +1 -0
  161. package/dist/cjs/orm/createIndexes.js +4 -0
  162. package/dist/cjs/orm/createIndexes.js.map +1 -1
  163. package/dist/cjs/schemas/manager/media/finalizeUpload.js +10 -1
  164. package/dist/cjs/schemas/manager/media/finalizeUpload.js.map +1 -1
  165. package/dist/cjs/schemas/manager/media/reimportMedia.js.map +1 -1
  166. package/dist/cjs/schemas/manager/media/replaceMedia.js +21 -0
  167. package/dist/cjs/schemas/manager/media/replaceMedia.js.map +1 -0
  168. package/dist/cjs/schemas/manager/uiLocales.js +1 -0
  169. package/dist/cjs/schemas/manager/uiLocales.js.map +1 -1
  170. package/dist/cjs/schemas/web/page.js +2 -3
  171. package/dist/cjs/schemas/web/page.js.map +1 -1
  172. package/dist/cjs/web/page.js +1 -1
  173. package/dist/cjs/web/page.js.map +1 -1
  174. package/dist/docs/index.md +119 -19
  175. package/dist/esm/api/context.d.ts +1 -1
  176. package/dist/esm/api/context.js +3 -3
  177. package/dist/esm/api/hooks/context.d.ts +1 -1
  178. package/dist/esm/api/hooks/runContentHooks.d.ts +4 -4
  179. package/dist/esm/api/hooks/runContentHooks.js +1 -1
  180. package/dist/esm/api/operations/apiEventLog.d.ts +3 -3
  181. package/dist/esm/api/operations/apiEventLog.js +3 -3
  182. package/dist/esm/api/operations/catalog.d.ts +2 -2
  183. package/dist/esm/api/operations/catalog.js +1 -1
  184. package/dist/esm/api/operations/custom.d.ts +1 -1
  185. package/dist/esm/api/operations/custom.js +1 -1
  186. package/dist/esm/api/operations/index.d.ts +354 -225
  187. package/dist/esm/api/operations/index.d.ts.map +1 -1
  188. package/dist/esm/api/operations/index.js +9 -9
  189. package/dist/esm/api/operations/manager-contract.d.ts +273 -172
  190. package/dist/esm/api/operations/manager-contract.d.ts.map +1 -1
  191. package/dist/esm/api/operations/manager-contract.js +15 -7
  192. package/dist/esm/api/operations/manager-contract.js.map +1 -1
  193. package/dist/esm/api/operations/manager-manifest.d.ts +5 -0
  194. package/dist/esm/api/operations/manager-manifest.d.ts.map +1 -1
  195. package/dist/esm/api/operations/manager-manifest.js +5 -0
  196. package/dist/esm/api/operations/manager-manifest.js.map +1 -1
  197. package/dist/esm/api/operations/manager.d.ts +274 -173
  198. package/dist/esm/api/operations/manager.d.ts.map +1 -1
  199. package/dist/esm/api/operations/manager.js +76 -72
  200. package/dist/esm/api/operations/manager.js.map +1 -1
  201. package/dist/esm/api/operations/tracing.d.ts +1 -1
  202. package/dist/esm/api/operations/tracing.js +2 -2
  203. package/dist/esm/api/operations/types.d.ts +1 -1
  204. package/dist/esm/api/operations/web-contract.d.ts +72 -44
  205. package/dist/esm/api/operations/web-contract.d.ts.map +1 -1
  206. package/dist/esm/api/operations/web-contract.js +3 -3
  207. package/dist/esm/api/operations/web.d.ts +73 -45
  208. package/dist/esm/api/operations/web.d.ts.map +1 -1
  209. package/dist/esm/api/operations/web.js +11 -11
  210. package/dist/esm/api/routes/manager/apiOperations.d.ts +3 -3
  211. package/dist/esm/api/routes/manager/apiOperations.js +5 -5
  212. package/dist/esm/api/routes/manager/auth/accountInfo.d.ts +2 -2
  213. package/dist/esm/api/routes/manager/auth/accountInfo.js +3 -3
  214. package/dist/esm/api/routes/manager/auth/deleteSession.d.ts +2 -2
  215. package/dist/esm/api/routes/manager/auth/deleteSession.js +3 -3
  216. package/dist/esm/api/routes/manager/auth/externalLogin.d.ts +2 -2
  217. package/dist/esm/api/routes/manager/auth/externalLogin.js +7 -7
  218. package/dist/esm/api/routes/manager/auth/getSession.d.ts +9 -9
  219. package/dist/esm/api/routes/manager/auth/login.d.ts +2 -2
  220. package/dist/esm/api/routes/manager/auth/login.js +9 -9
  221. package/dist/esm/api/routes/manager/auth/logout.d.ts +1 -1
  222. package/dist/esm/api/routes/manager/auth/logout.js +3 -3
  223. package/dist/esm/api/routes/manager/auth/markTourSeen.d.ts +11 -11
  224. package/dist/esm/api/routes/manager/auth/markTourSeen.d.ts.map +1 -1
  225. package/dist/esm/api/routes/manager/auth/markTourSeen.js +7 -4
  226. package/dist/esm/api/routes/manager/auth/markTourSeen.js.map +1 -1
  227. package/dist/esm/api/routes/manager/auth/mfa/regenerateRecoveryCodes.d.ts +2 -2
  228. package/dist/esm/api/routes/manager/auth/mfa/regenerateRecoveryCodes.js +6 -6
  229. package/dist/esm/api/routes/manager/auth/mfa/verifyRecoveryCode.d.ts +2 -2
  230. package/dist/esm/api/routes/manager/auth/mfa/verifyRecoveryCode.js +7 -7
  231. package/dist/esm/api/routes/manager/auth/passwordIpBlocks.d.ts +2 -2
  232. package/dist/esm/api/routes/manager/auth/passwordIpBlocks.js +8 -8
  233. package/dist/esm/api/routes/manager/auth/passwordRecovery.d.ts +2 -2
  234. package/dist/esm/api/routes/manager/auth/passwordRecovery.js +10 -10
  235. package/dist/esm/api/routes/manager/auth/totp/confirmTotp.d.ts +2 -2
  236. package/dist/esm/api/routes/manager/auth/totp/confirmTotp.js +4 -4
  237. package/dist/esm/api/routes/manager/auth/totp/enrollTotp.d.ts +1 -1
  238. package/dist/esm/api/routes/manager/auth/totp/enrollTotp.js +3 -3
  239. package/dist/esm/api/routes/manager/auth/totp/verifyTotp.d.ts +1 -1
  240. package/dist/esm/api/routes/manager/auth/totp/verifyTotp.js +5 -5
  241. package/dist/esm/api/routes/manager/auth/updateAccount.d.ts +10 -10
  242. package/dist/esm/api/routes/manager/auth/updateAccount.js +3 -3
  243. package/dist/esm/api/routes/manager/auth/updatePassword.d.ts +2 -2
  244. package/dist/esm/api/routes/manager/auth/updatePassword.js +5 -5
  245. package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.d.ts +10 -10
  246. package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.js +3 -3
  247. package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthOptions.js +4 -4
  248. package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.js +6 -6
  249. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterOptions.d.ts +2 -2
  250. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterOptions.js +3 -3
  251. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterVerify.d.ts +1 -1
  252. package/dist/esm/api/routes/manager/auth/webauthn/webauthnRegisterVerify.js +6 -6
  253. package/dist/esm/api/routes/manager/backups/create.d.ts +2 -2
  254. package/dist/esm/api/routes/manager/backups/create.js +2 -2
  255. package/dist/esm/api/routes/manager/backups/list.d.ts +2 -2
  256. package/dist/esm/api/routes/manager/backups/list.js +2 -2
  257. package/dist/esm/api/routes/manager/backups/restore.d.ts +2 -2
  258. package/dist/esm/api/routes/manager/backups/restore.js +4 -4
  259. package/dist/esm/api/routes/manager/comments.d.ts +2 -2
  260. package/dist/esm/api/routes/manager/comments.js +8 -8
  261. package/dist/esm/api/routes/manager/contentType.d.ts +16 -16
  262. package/dist/esm/api/routes/manager/contentType.js +3 -3
  263. package/dist/esm/api/routes/manager/contentTypes.d.ts +14 -14
  264. package/dist/esm/api/routes/manager/contentTypes.js +1 -1
  265. package/dist/esm/api/routes/manager/contentVersions.d.ts +2 -2
  266. package/dist/esm/api/routes/manager/contentVersions.js +13 -13
  267. package/dist/esm/api/routes/manager/create.d.ts +5 -5
  268. package/dist/esm/api/routes/manager/create.js +11 -11
  269. package/dist/esm/api/routes/manager/delete.d.ts +2 -2
  270. package/dist/esm/api/routes/manager/delete.js +12 -12
  271. package/dist/esm/api/routes/manager/duplicate.d.ts +5 -5
  272. package/dist/esm/api/routes/manager/duplicate.js +6 -6
  273. package/dist/esm/api/routes/manager/favorites.d.ts +2 -2
  274. package/dist/esm/api/routes/manager/favorites.js +5 -5
  275. package/dist/esm/api/routes/manager/get.d.ts +2 -2
  276. package/dist/esm/api/routes/manager/get.js +10 -10
  277. package/dist/esm/api/routes/manager/languages.d.ts +4 -4
  278. package/dist/esm/api/routes/manager/languages.js +1 -1
  279. package/dist/esm/api/routes/manager/list.d.ts +2 -2
  280. package/dist/esm/api/routes/manager/list.js +15 -15
  281. package/dist/esm/api/routes/manager/literals/list.d.ts +2 -2
  282. package/dist/esm/api/routes/manager/literals/list.js +5 -5
  283. package/dist/esm/api/routes/manager/literals/upsert.d.ts +2 -2
  284. package/dist/esm/api/routes/manager/literals/upsert.js +6 -6
  285. package/dist/esm/api/routes/manager/localeVariants.d.ts +49 -49
  286. package/dist/esm/api/routes/manager/localeVariants.js +19 -19
  287. package/dist/esm/api/routes/manager/logs/cleanup.d.ts +2 -2
  288. package/dist/esm/api/routes/manager/logs/cleanup.js +3 -3
  289. package/dist/esm/api/routes/manager/logs/list.d.ts +2 -2
  290. package/dist/esm/api/routes/manager/logs/list.js +2 -2
  291. package/dist/esm/api/routes/manager/media/createFolder.d.ts +2 -2
  292. package/dist/esm/api/routes/manager/media/createFolder.js +7 -7
  293. package/dist/esm/api/routes/manager/media/deleteFolder.d.ts +2 -2
  294. package/dist/esm/api/routes/manager/media/deleteFolder.js +7 -7
  295. package/dist/esm/api/routes/manager/media/deleteMediaStorage.d.ts +1 -0
  296. package/dist/esm/api/routes/manager/media/deleteMediaStorage.d.ts.map +1 -1
  297. package/dist/esm/api/routes/manager/media/deleteMediaStorage.js +16 -11
  298. package/dist/esm/api/routes/manager/media/deleteMediaStorage.js.map +1 -1
  299. package/dist/esm/api/routes/manager/media/finalizeUpload.d.ts +2 -2
  300. package/dist/esm/api/routes/manager/media/finalizeUpload.d.ts.map +1 -1
  301. package/dist/esm/api/routes/manager/media/finalizeUpload.js +16 -12
  302. package/dist/esm/api/routes/manager/media/finalizeUpload.js.map +1 -1
  303. package/dist/esm/api/routes/manager/media/getMediaUrl.d.ts +2 -2
  304. package/dist/esm/api/routes/manager/media/getMediaUrl.js +6 -6
  305. package/dist/esm/api/routes/manager/media/listFolders.d.ts +2 -2
  306. package/dist/esm/api/routes/manager/media/listFolders.js +4 -4
  307. package/dist/esm/api/routes/manager/media/prepareUpload.d.ts +3 -3
  308. package/dist/esm/api/routes/manager/media/prepareUpload.js +5 -5
  309. package/dist/esm/api/routes/manager/media/reimportMedia.d.ts +16 -7
  310. package/dist/esm/api/routes/manager/media/reimportMedia.d.ts.map +1 -1
  311. package/dist/esm/api/routes/manager/media/reimportMedia.js +27 -17
  312. package/dist/esm/api/routes/manager/media/reimportMedia.js.map +1 -1
  313. package/dist/esm/api/routes/manager/media/replaceMedia.d.ts +32 -0
  314. package/dist/esm/api/routes/manager/media/replaceMedia.d.ts.map +1 -0
  315. package/dist/esm/api/routes/manager/media/replaceMedia.js +218 -0
  316. package/dist/esm/api/routes/manager/media/replaceMedia.js.map +1 -0
  317. package/dist/esm/api/routes/manager/media/resolveMediaRecordUrls.d.ts.map +1 -1
  318. package/dist/esm/api/routes/manager/media/resolveMediaRecordUrls.js +15 -13
  319. package/dist/esm/api/routes/manager/media/resolveMediaRecordUrls.js.map +1 -1
  320. package/dist/esm/api/routes/manager/media/uploadBinary.d.ts +1 -1
  321. package/dist/esm/api/routes/manager/media/uploadBinary.d.ts.map +1 -1
  322. package/dist/esm/api/routes/manager/media/uploadBinary.js +119 -46
  323. package/dist/esm/api/routes/manager/media/uploadBinary.js.map +1 -1
  324. package/dist/esm/api/routes/manager/migrations/list.d.ts +2 -2
  325. package/dist/esm/api/routes/manager/migrations/list.js +2 -2
  326. package/dist/esm/api/routes/manager/notifications.d.ts +2 -2
  327. package/dist/esm/api/routes/manager/notifications.js +6 -6
  328. package/dist/esm/api/routes/manager/permissions.d.ts +1 -1
  329. package/dist/esm/api/routes/manager/permissions.js +2 -2
  330. package/dist/esm/api/routes/manager/preview/create.d.ts +2 -2
  331. package/dist/esm/api/routes/manager/preview/create.js +15 -15
  332. package/dist/esm/api/routes/manager/previewSlugRedirects.d.ts +2 -2
  333. package/dist/esm/api/routes/manager/previewSlugRedirects.js +3 -3
  334. package/dist/esm/api/routes/manager/regenerateRoutes.d.ts +1 -1
  335. package/dist/esm/api/routes/manager/regenerateRoutes.js +2 -2
  336. package/dist/esm/api/routes/manager/reviewPolicies.d.ts +2 -2
  337. package/dist/esm/api/routes/manager/reviewPolicies.js +7 -7
  338. package/dist/esm/api/routes/manager/reviews.d.ts +2 -2
  339. package/dist/esm/api/routes/manager/reviews.js +8 -8
  340. package/dist/esm/api/routes/manager/routeLayout.d.ts +2 -2
  341. package/dist/esm/api/routes/manager/routeLayout.js +6 -6
  342. package/dist/esm/api/routes/manager/setDefaultLanguage.d.ts +2 -2
  343. package/dist/esm/api/routes/manager/setDefaultLanguage.js +5 -5
  344. package/dist/esm/api/routes/manager/template.d.ts +3 -3
  345. package/dist/esm/api/routes/manager/template.js +10 -10
  346. package/dist/esm/api/routes/manager/translateDocument.d.ts +2 -2
  347. package/dist/esm/api/routes/manager/translateDocument.js +11 -11
  348. package/dist/esm/api/routes/manager/trash.d.ts +3 -3
  349. package/dist/esm/api/routes/manager/trash.js +9 -9
  350. package/dist/esm/api/routes/manager/uiLocales.d.ts +2 -1
  351. package/dist/esm/api/routes/manager/uiLocales.d.ts.map +1 -1
  352. package/dist/esm/api/routes/manager/uiLocales.js +36 -7
  353. package/dist/esm/api/routes/manager/uiLocales.js.map +1 -1
  354. package/dist/esm/api/routes/manager/update.d.ts +5 -5
  355. package/dist/esm/api/routes/manager/update.js +14 -14
  356. package/dist/esm/api/routes/manager/users.d.ts +2 -2
  357. package/dist/esm/api/routes/manager/users.js +2 -2
  358. package/dist/esm/api/routes/manager/versions/get.d.ts +2 -2
  359. package/dist/esm/api/routes/manager/versions/get.js +2 -2
  360. package/dist/esm/api/routes/manager/versions/list.d.ts +2 -2
  361. package/dist/esm/api/routes/manager/versions/list.js +2 -2
  362. package/dist/esm/api/routes/manager/versions/restore.d.ts +2 -2
  363. package/dist/esm/api/routes/manager/versions/restore.js +8 -8
  364. package/dist/esm/api/routes/web/llms.d.ts +1 -1
  365. package/dist/esm/api/routes/web/llms.d.ts.map +1 -1
  366. package/dist/esm/api/routes/web/llms.js +43 -50
  367. package/dist/esm/api/routes/web/llms.js.map +1 -1
  368. package/dist/esm/api/routes/web/page.d.ts +7 -5
  369. package/dist/esm/api/routes/web/page.d.ts.map +1 -1
  370. package/dist/esm/api/routes/web/page.js +64 -33
  371. package/dist/esm/api/routes/web/page.js.map +1 -1
  372. package/dist/esm/api/routes/web/previewPage.d.ts +31 -17
  373. package/dist/esm/api/routes/web/previewPage.d.ts.map +1 -1
  374. package/dist/esm/api/routes/web/previewPage.js +9 -9
  375. package/dist/esm/api/routes/web/robots.d.ts +1 -1
  376. package/dist/esm/api/routes/web/robots.js +2 -2
  377. package/dist/esm/api/routes/web/seo.d.ts +1 -1
  378. package/dist/esm/api/routes/web/sitemap.d.ts +1 -1
  379. package/dist/esm/api/routes/web/sitemap.d.ts.map +1 -1
  380. package/dist/esm/api/routes/web/sitemap.js +15 -5
  381. package/dist/esm/api/routes/web/sitemap.js.map +1 -1
  382. package/dist/esm/api/routes/web/staticPaths.d.ts +3 -3
  383. package/dist/esm/api/routes/web/staticPaths.d.ts.map +1 -1
  384. package/dist/esm/api/routes/web/staticPaths.js +7 -5
  385. package/dist/esm/api/routes/web/staticPaths.js.map +1 -1
  386. package/dist/esm/api/sessionCookie.d.ts +1 -1
  387. package/dist/esm/api/utils/authEvents.d.ts +2 -2
  388. package/dist/esm/api/utils/authEvents.js +2 -2
  389. package/dist/esm/api/utils/authRateLimit.d.ts +1 -1
  390. package/dist/esm/api/utils/authRateLimit.js +1 -1
  391. package/dist/esm/api/utils/breadcrums.d.ts +5 -5
  392. package/dist/esm/api/utils/breadcrums.js +3 -3
  393. package/dist/esm/api/utils/checkFailureCase.d.ts +1 -1
  394. package/dist/esm/api/utils/checkFailureCase.js +1 -1
  395. package/dist/esm/api/utils/checkOwnership.d.ts +2 -2
  396. package/dist/esm/api/utils/checkOwnership.js +5 -5
  397. package/dist/esm/api/utils/checkPermissions.d.ts +2 -2
  398. package/dist/esm/api/utils/checkPermissions.js +3 -3
  399. package/dist/esm/api/utils/contentTemplate.d.ts +2 -2
  400. package/dist/esm/api/utils/contentTemplate.js +7 -7
  401. package/dist/esm/api/utils/dynamicData.d.ts +7 -6
  402. package/dist/esm/api/utils/dynamicData.d.ts.map +1 -1
  403. package/dist/esm/api/utils/dynamicData.js +202 -140
  404. package/dist/esm/api/utils/dynamicData.js.map +1 -1
  405. package/dist/esm/api/utils/getLanguages.d.ts +2 -2
  406. package/dist/esm/api/utils/getLanguages.js +2 -2
  407. package/dist/esm/api/utils/getLink.d.ts +2 -2
  408. package/dist/esm/api/utils/getLink.js +5 -5
  409. package/dist/esm/api/utils/getUser.d.ts +9 -9
  410. package/dist/esm/api/utils/getUser.js +4 -4
  411. package/dist/esm/api/utils/index.d.ts +25 -25
  412. package/dist/esm/api/utils/index.d.ts.map +1 -1
  413. package/dist/esm/api/utils/index.js +25 -25
  414. package/dist/esm/api/utils/index.js.map +1 -1
  415. package/dist/esm/api/utils/iteratorVisibility.d.ts +1 -1
  416. package/dist/esm/api/utils/localeVariants.d.ts +1 -1
  417. package/dist/esm/api/utils/localeVariants.js +8 -8
  418. package/dist/esm/api/utils/managerNotifications.d.ts +5 -5
  419. package/dist/esm/api/utils/managerNotifications.js +3 -3
  420. package/dist/esm/api/utils/mediaUploadKey.d.ts +2 -0
  421. package/dist/esm/api/utils/mediaUploadKey.d.ts.map +1 -1
  422. package/dist/esm/api/utils/mediaUploadKey.js +9 -0
  423. package/dist/esm/api/utils/mediaUploadKey.js.map +1 -1
  424. package/dist/esm/api/utils/mediaUploadToken.d.ts +1 -1
  425. package/dist/esm/api/utils/parseId.d.ts +1 -1
  426. package/dist/esm/api/utils/parseId.js +1 -1
  427. package/dist/esm/api/utils/passwords.js +1 -1
  428. package/dist/esm/api/utils/populates/populateLinks.d.ts +4 -2
  429. package/dist/esm/api/utils/populates/populateLinks.d.ts.map +1 -1
  430. package/dist/esm/api/utils/populates/populateLinks.js +30 -58
  431. package/dist/esm/api/utils/populates/populateLinks.js.map +1 -1
  432. package/dist/esm/api/utils/populates/populateRelations.d.ts +2 -2
  433. package/dist/esm/api/utils/populates/populateRelations.d.ts.map +1 -1
  434. package/dist/esm/api/utils/populates/populateRelations.js +85 -50
  435. package/dist/esm/api/utils/populates/populateRelations.js.map +1 -1
  436. package/dist/esm/api/utils/redirects/createSlugChangeRedirects.d.ts +2 -2
  437. package/dist/esm/api/utils/redirects/createSlugChangeRedirects.js +6 -6
  438. package/dist/esm/api/utils/redirects/resolveRedirect.js +2 -2
  439. package/dist/esm/api/utils/redirects/slugPathChanges.d.ts +1 -1
  440. package/dist/esm/api/utils/redirects/slugPathChanges.js +4 -4
  441. package/dist/esm/api/utils/requireContentType.d.ts +1 -1
  442. package/dist/esm/api/utils/requireContentType.js +2 -2
  443. package/dist/esm/api/utils/reviews.d.ts +14 -14
  444. package/dist/esm/api/utils/reviews.js +4 -4
  445. package/dist/esm/api/utils/routes/revalidatePath.js +5 -5
  446. package/dist/esm/api/utils/routes/routeDefinitions.d.ts +1 -1
  447. package/dist/esm/api/utils/routes/routeMapHelpers.d.ts +10 -7
  448. package/dist/esm/api/utils/routes/routeMapHelpers.d.ts.map +1 -1
  449. package/dist/esm/api/utils/routes/routeMapHelpers.js +50 -17
  450. package/dist/esm/api/utils/routes/routeMapHelpers.js.map +1 -1
  451. package/dist/esm/api/utils/routes/syncConfiguredRoutes.d.ts +2 -2
  452. package/dist/esm/api/utils/routes/syncConfiguredRoutes.js +5 -5
  453. package/dist/esm/api/utils/routes/updateRoutesMap.d.ts +2 -2
  454. package/dist/esm/api/utils/routes/updateRoutesMap.d.ts.map +1 -1
  455. package/dist/esm/api/utils/routes/updateRoutesMap.js +17 -12
  456. package/dist/esm/api/utils/routes/updateRoutesMap.js.map +1 -1
  457. package/dist/esm/api/utils/safeManagerQuery.d.ts +2 -2
  458. package/dist/esm/api/utils/safeManagerQuery.js +1 -1
  459. package/dist/esm/api/utils/sanitizeManagerOutput.d.ts +1 -1
  460. package/dist/esm/api/utils/sanitizeManagerOutput.js +1 -1
  461. package/dist/esm/api/utils/transformObjectIdsToStrings.js +1 -1
  462. package/dist/esm/api/utils/transformStringToObjectIds.js +1 -1
  463. package/dist/esm/api/utils/translate.d.ts +1 -1
  464. package/dist/esm/api/utils/translate.js +3 -3
  465. package/dist/esm/api/utils/validateModule.d.ts +1 -1
  466. package/dist/esm/api/utils/validateModule.js +2 -2
  467. package/dist/esm/auth/accountRecovery.d.ts +1 -1
  468. package/dist/esm/auth/completePrimaryAuthentication.d.ts +1 -1
  469. package/dist/esm/auth/completePrimaryAuthentication.js +3 -3
  470. package/dist/esm/auth/loginAdapters.d.ts +1 -1
  471. package/dist/esm/auth/passwordFail2ban.d.ts +2 -2
  472. package/dist/esm/auth/passwordFail2ban.js +4 -4
  473. package/dist/esm/auth/passwordResetMailTemplate.d.ts +2 -2
  474. package/dist/esm/auth/passwordResetMailTemplate.js +1 -1
  475. package/dist/esm/bootstrapState.d.ts +14 -14
  476. package/dist/esm/client.d.ts +62 -60
  477. package/dist/esm/client.d.ts.map +1 -1
  478. package/dist/esm/client.js +33 -32
  479. package/dist/esm/client.js.map +1 -1
  480. package/dist/esm/contracts.d.ts +60 -59
  481. package/dist/esm/contracts.d.ts.map +1 -1
  482. package/dist/esm/contracts.js +60 -59
  483. package/dist/esm/contracts.js.map +1 -1
  484. package/dist/esm/eventLog/index.d.ts +6 -6
  485. package/dist/esm/eventLog/index.js +4 -4
  486. package/dist/esm/eventLog/mongo.d.ts +1 -1
  487. package/dist/esm/eventLog/mongo.js +2 -2
  488. package/dist/esm/eventLog/service.d.ts +1 -1
  489. package/dist/esm/index.d.ts +52 -51
  490. package/dist/esm/index.d.ts.map +1 -1
  491. package/dist/esm/index.js +54 -54
  492. package/dist/esm/index.js.map +1 -1
  493. package/dist/esm/internal-content-types/ApiOperation.d.ts +198 -158
  494. package/dist/esm/internal-content-types/ApiOperation.d.ts.map +1 -1
  495. package/dist/esm/internal-content-types/ApiOperation.js +2 -2
  496. package/dist/esm/internal-content-types/Backup.d.ts +1055 -110
  497. package/dist/esm/internal-content-types/Backup.d.ts.map +1 -1
  498. package/dist/esm/internal-content-types/Backup.js +5 -5
  499. package/dist/esm/internal-content-types/Backup.js.map +1 -1
  500. package/dist/esm/internal-content-types/BackupDocument.d.ts +198 -158
  501. package/dist/esm/internal-content-types/BackupDocument.d.ts.map +1 -1
  502. package/dist/esm/internal-content-types/BackupDocument.js +2 -2
  503. package/dist/esm/internal-content-types/ContentComment.d.ts +7230 -2011
  504. package/dist/esm/internal-content-types/ContentComment.d.ts.map +1 -1
  505. package/dist/esm/internal-content-types/ContentComment.js +5 -5
  506. package/dist/esm/internal-content-types/ContentComment.js.map +1 -1
  507. package/dist/esm/internal-content-types/ContentCommentReadState.d.ts +4876 -1388
  508. package/dist/esm/internal-content-types/ContentCommentReadState.d.ts.map +1 -1
  509. package/dist/esm/internal-content-types/ContentCommentReadState.js +3 -3
  510. package/dist/esm/internal-content-types/ContentReview.d.ts +34417 -10570
  511. package/dist/esm/internal-content-types/ContentReview.d.ts.map +1 -1
  512. package/dist/esm/internal-content-types/ContentReview.js +35 -22
  513. package/dist/esm/internal-content-types/ContentReview.js.map +1 -1
  514. package/dist/esm/internal-content-types/ContentReviewDecision.d.ts +5203 -1340
  515. package/dist/esm/internal-content-types/ContentReviewDecision.d.ts.map +1 -1
  516. package/dist/esm/internal-content-types/ContentReviewDecision.js +4 -4
  517. package/dist/esm/internal-content-types/ContentReviewDecision.js.map +1 -1
  518. package/dist/esm/internal-content-types/ContentReviewPolicy.d.ts +1777 -270
  519. package/dist/esm/internal-content-types/ContentReviewPolicy.d.ts.map +1 -1
  520. package/dist/esm/internal-content-types/ContentReviewPolicy.js +5 -5
  521. package/dist/esm/internal-content-types/ContentReviewPolicy.js.map +1 -1
  522. package/dist/esm/internal-content-types/ContentTemplate.d.ts +131 -105
  523. package/dist/esm/internal-content-types/ContentTemplate.d.ts.map +1 -1
  524. package/dist/esm/internal-content-types/ContentTemplate.js +2 -2
  525. package/dist/esm/internal-content-types/ContentVersion.d.ts +1315 -195
  526. package/dist/esm/internal-content-types/ContentVersion.d.ts.map +1 -1
  527. package/dist/esm/internal-content-types/ContentVersion.js +6 -6
  528. package/dist/esm/internal-content-types/ContentVersion.js.map +1 -1
  529. package/dist/esm/internal-content-types/HelloWorld.d.ts +51 -41
  530. package/dist/esm/internal-content-types/HelloWorld.d.ts.map +1 -1
  531. package/dist/esm/internal-content-types/HelloWorld.js +2 -2
  532. package/dist/esm/internal-content-types/Language.d.ts +154 -54
  533. package/dist/esm/internal-content-types/Language.d.ts.map +1 -1
  534. package/dist/esm/internal-content-types/Language.js +3 -3
  535. package/dist/esm/internal-content-types/Language.js.map +1 -1
  536. package/dist/esm/internal-content-types/LiteralTranslation.d.ts +101 -81
  537. package/dist/esm/internal-content-types/LiteralTranslation.d.ts.map +1 -1
  538. package/dist/esm/internal-content-types/LiteralTranslation.js +2 -2
  539. package/dist/esm/internal-content-types/LlmsSettings.d.ts +2676 -1239
  540. package/dist/esm/internal-content-types/LlmsSettings.d.ts.map +1 -1
  541. package/dist/esm/internal-content-types/LlmsSettings.js +10 -11
  542. package/dist/esm/internal-content-types/LlmsSettings.js.map +1 -1
  543. package/dist/esm/internal-content-types/LoginIpBlock.d.ts +191 -85
  544. package/dist/esm/internal-content-types/LoginIpBlock.d.ts.map +1 -1
  545. package/dist/esm/internal-content-types/LoginIpBlock.js +3 -3
  546. package/dist/esm/internal-content-types/LoginIpBlock.js.map +1 -1
  547. package/dist/esm/internal-content-types/ManagerFavorite.d.ts +4919 -1441
  548. package/dist/esm/internal-content-types/ManagerFavorite.d.ts.map +1 -1
  549. package/dist/esm/internal-content-types/ManagerFavorite.js +3 -3
  550. package/dist/esm/internal-content-types/ManagerNotification.d.ts +10508 -3073
  551. package/dist/esm/internal-content-types/ManagerNotification.d.ts.map +1 -1
  552. package/dist/esm/internal-content-types/ManagerNotification.js +5 -5
  553. package/dist/esm/internal-content-types/ManagerNotification.js.map +1 -1
  554. package/dist/esm/internal-content-types/ManagerRole.d.ts +56 -44
  555. package/dist/esm/internal-content-types/ManagerRole.d.ts.map +1 -1
  556. package/dist/esm/internal-content-types/ManagerRole.js +2 -2
  557. package/dist/esm/internal-content-types/ManagerRoleHooks.d.ts +2 -2
  558. package/dist/esm/internal-content-types/ManagerRoleHooks.js +3 -3
  559. package/dist/esm/internal-content-types/ManagerUser.d.ts +2009 -282
  560. package/dist/esm/internal-content-types/ManagerUser.d.ts.map +1 -1
  561. package/dist/esm/internal-content-types/ManagerUser.js +12 -12
  562. package/dist/esm/internal-content-types/ManagerUser.js.map +1 -1
  563. package/dist/esm/internal-content-types/ManagerUserHooks.d.ts +2 -2
  564. package/dist/esm/internal-content-types/ManagerUserHooks.js +3 -3
  565. package/dist/esm/internal-content-types/Media.d.ts +6386 -1059
  566. package/dist/esm/internal-content-types/Media.d.ts.map +1 -1
  567. package/dist/esm/internal-content-types/Media.js +21 -20
  568. package/dist/esm/internal-content-types/Media.js.map +1 -1
  569. package/dist/esm/internal-content-types/MediaFolder.d.ts +508 -121
  570. package/dist/esm/internal-content-types/MediaFolder.d.ts.map +1 -1
  571. package/dist/esm/internal-content-types/MediaFolder.js +4 -4
  572. package/dist/esm/internal-content-types/MediaFolder.js.map +1 -1
  573. package/dist/esm/internal-content-types/MfaChallenge.d.ts +5361 -1402
  574. package/dist/esm/internal-content-types/MfaChallenge.d.ts.map +1 -1
  575. package/dist/esm/internal-content-types/MfaChallenge.js +5 -5
  576. package/dist/esm/internal-content-types/MfaChallenge.js.map +1 -1
  577. package/dist/esm/internal-content-types/Migration.d.ts +1321 -180
  578. package/dist/esm/internal-content-types/Migration.d.ts.map +1 -1
  579. package/dist/esm/internal-content-types/Migration.js +7 -7
  580. package/dist/esm/internal-content-types/Migration.js.map +1 -1
  581. package/dist/esm/internal-content-types/MigrationLock.d.ts +24 -20
  582. package/dist/esm/internal-content-types/MigrationLock.d.ts.map +1 -1
  583. package/dist/esm/internal-content-types/MigrationLock.js +2 -2
  584. package/dist/esm/internal-content-types/Page.d.ts +148 -118
  585. package/dist/esm/internal-content-types/Page.d.ts.map +1 -1
  586. package/dist/esm/internal-content-types/Page.js +3 -3
  587. package/dist/esm/internal-content-types/PasswordResetToken.d.ts +4886 -1328
  588. package/dist/esm/internal-content-types/PasswordResetToken.d.ts.map +1 -1
  589. package/dist/esm/internal-content-types/PasswordResetToken.js +5 -5
  590. package/dist/esm/internal-content-types/PasswordResetToken.js.map +1 -1
  591. package/dist/esm/internal-content-types/PreviewSnapshot.d.ts +907 -295
  592. package/dist/esm/internal-content-types/PreviewSnapshot.d.ts.map +1 -1
  593. package/dist/esm/internal-content-types/PreviewSnapshot.js +4 -4
  594. package/dist/esm/internal-content-types/PreviewSnapshot.js.map +1 -1
  595. package/dist/esm/internal-content-types/Redirect.d.ts +1599 -233
  596. package/dist/esm/internal-content-types/Redirect.d.ts.map +1 -1
  597. package/dist/esm/internal-content-types/Redirect.js +6 -6
  598. package/dist/esm/internal-content-types/Redirect.js.map +1 -1
  599. package/dist/esm/internal-content-types/RobotsRule.d.ts +976 -137
  600. package/dist/esm/internal-content-types/RobotsRule.d.ts.map +1 -1
  601. package/dist/esm/internal-content-types/RobotsRule.js +5 -5
  602. package/dist/esm/internal-content-types/RobotsRule.js.map +1 -1
  603. package/dist/esm/internal-content-types/Route.d.ts +565 -168
  604. package/dist/esm/internal-content-types/Route.d.ts.map +1 -1
  605. package/dist/esm/internal-content-types/Route.js +4 -4
  606. package/dist/esm/internal-content-types/Route.js.map +1 -1
  607. package/dist/esm/internal-content-types/RouteLayoutModule.d.ts +548 -223
  608. package/dist/esm/internal-content-types/RouteLayoutModule.d.ts.map +1 -1
  609. package/dist/esm/internal-content-types/RouteLayoutModule.js +3 -3
  610. package/dist/esm/internal-content-types/RouteLayoutModule.js.map +1 -1
  611. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts +517 -198
  612. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts.map +1 -1
  613. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.js +3 -3
  614. package/dist/esm/internal-content-types/RouteLayoutModuleOverride.js.map +1 -1
  615. package/dist/esm/internal-content-types/RouteLocaleVariant.d.ts +296 -236
  616. package/dist/esm/internal-content-types/RouteLocaleVariant.d.ts.map +1 -1
  617. package/dist/esm/internal-content-types/RouteLocaleVariant.js +2 -2
  618. package/dist/esm/internal-content-types/RouteMap.d.ts +604 -199
  619. package/dist/esm/internal-content-types/RouteMap.d.ts.map +1 -1
  620. package/dist/esm/internal-content-types/RouteMap.js +4 -4
  621. package/dist/esm/internal-content-types/RouteMap.js.map +1 -1
  622. package/dist/esm/internal-content-types/RouteSettings.d.ts +1662 -586
  623. package/dist/esm/internal-content-types/RouteSettings.d.ts.map +1 -1
  624. package/dist/esm/internal-content-types/RouteSettings.js +4 -4
  625. package/dist/esm/internal-content-types/RouteSettings.js.map +1 -1
  626. package/dist/esm/internal-content-types/SchemaState.d.ts +104 -84
  627. package/dist/esm/internal-content-types/SchemaState.d.ts.map +1 -1
  628. package/dist/esm/internal-content-types/SchemaState.js +2 -2
  629. package/dist/esm/internal-content-types/Seo.d.ts +3728 -1145
  630. package/dist/esm/internal-content-types/Seo.d.ts.map +1 -1
  631. package/dist/esm/internal-content-types/Seo.js +36 -22
  632. package/dist/esm/internal-content-types/Seo.js.map +1 -1
  633. package/dist/esm/internal-content-types/SeoAudit.d.ts +2724 -0
  634. package/dist/esm/internal-content-types/SeoAudit.d.ts.map +1 -0
  635. package/dist/esm/internal-content-types/SeoAudit.js +23 -0
  636. package/dist/esm/internal-content-types/SeoAudit.js.map +1 -0
  637. package/dist/esm/internal-content-types/SeoSettings.d.ts +16199 -4240
  638. package/dist/esm/internal-content-types/SeoSettings.d.ts.map +1 -1
  639. package/dist/esm/internal-content-types/SeoSettings.js +8 -8
  640. package/dist/esm/internal-content-types/SeoSettings.js.map +1 -1
  641. package/dist/esm/internal-content-types/Session.d.ts +4892 -1420
  642. package/dist/esm/internal-content-types/Session.d.ts.map +1 -1
  643. package/dist/esm/internal-content-types/Session.js +3 -3
  644. package/dist/esm/internal-content-types/StructuredData.d.ts +6095 -0
  645. package/dist/esm/internal-content-types/StructuredData.d.ts.map +1 -0
  646. package/dist/esm/internal-content-types/StructuredData.js +96 -0
  647. package/dist/esm/internal-content-types/StructuredData.js.map +1 -0
  648. package/dist/esm/internal-content-types/TemplateContent.d.ts +1 -1
  649. package/dist/esm/internal-content-types/TemplateContent.js +1 -1
  650. package/dist/esm/internal-content-types/UserMfa.d.ts +5607 -1225
  651. package/dist/esm/internal-content-types/UserMfa.d.ts.map +1 -1
  652. package/dist/esm/internal-content-types/UserMfa.js +10 -10
  653. package/dist/esm/internal-content-types/UserMfa.js.map +1 -1
  654. package/dist/esm/internal-content-types/WebAuthnCredential.d.ts +4956 -1452
  655. package/dist/esm/internal-content-types/WebAuthnCredential.d.ts.map +1 -1
  656. package/dist/esm/internal-content-types/WebAuthnCredential.js +3 -3
  657. package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts +4935 -1367
  658. package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts.map +1 -1
  659. package/dist/esm/internal-content-types/WebAuthnRegChallenge.js +4 -4
  660. package/dist/esm/internal-content-types/WebAuthnRegChallenge.js.map +1 -1
  661. package/dist/esm/internal-content-types/index.d.ts +45 -43
  662. package/dist/esm/internal-content-types/index.d.ts.map +1 -1
  663. package/dist/esm/internal-content-types/index.js +45 -43
  664. package/dist/esm/internal-content-types/index.js.map +1 -1
  665. package/dist/esm/internal-content-types/syncAdminRole.d.ts +5 -5
  666. package/dist/esm/internal-content-types/syncAdminRole.js +4 -4
  667. package/dist/esm/lib/ContentType.d.ts +7 -7
  668. package/dist/esm/lib/ContentType.d.ts.map +1 -1
  669. package/dist/esm/lib/ContentType.js +16 -8
  670. package/dist/esm/lib/ContentType.js.map +1 -1
  671. package/dist/esm/lib/Permissions.d.ts +2 -2
  672. package/dist/esm/lib/Permissions.js +4 -4
  673. package/dist/esm/lib/Registry.d.ts +6 -6
  674. package/dist/esm/lib/Registry.d.ts.map +1 -1
  675. package/dist/esm/lib/Registry.js +5 -4
  676. package/dist/esm/lib/Registry.js.map +1 -1
  677. package/dist/esm/lib/errors/AppError.d.ts +1 -1
  678. package/dist/esm/lib/errors/AppError.js +1 -1
  679. package/dist/esm/lib/errors/index.d.ts +4 -4
  680. package/dist/esm/lib/errors/index.js +3 -3
  681. package/dist/esm/lib/errors/throwAppError.d.ts +1 -1
  682. package/dist/esm/lib/errors/throwAppError.js +3 -3
  683. package/dist/esm/lib/fields/Boolean.d.ts +4 -3
  684. package/dist/esm/lib/fields/Boolean.d.ts.map +1 -1
  685. package/dist/esm/lib/fields/Boolean.js +7 -3
  686. package/dist/esm/lib/fields/Boolean.js.map +1 -1
  687. package/dist/esm/lib/fields/Breadcrums.d.ts +2 -1
  688. package/dist/esm/lib/fields/Breadcrums.d.ts.map +1 -1
  689. package/dist/esm/lib/fields/Breadcrums.js +6 -2
  690. package/dist/esm/lib/fields/Breadcrums.js.map +1 -1
  691. package/dist/esm/lib/fields/ContentReference.d.ts +12 -5
  692. package/dist/esm/lib/fields/ContentReference.d.ts.map +1 -1
  693. package/dist/esm/lib/fields/ContentReference.js +25 -9
  694. package/dist/esm/lib/fields/ContentReference.js.map +1 -1
  695. package/dist/esm/lib/fields/Date.d.ts +5 -4
  696. package/dist/esm/lib/fields/Date.d.ts.map +1 -1
  697. package/dist/esm/lib/fields/Date.js +13 -7
  698. package/dist/esm/lib/fields/Date.js.map +1 -1
  699. package/dist/esm/lib/fields/Field.d.ts +105 -46
  700. package/dist/esm/lib/fields/Field.d.ts.map +1 -1
  701. package/dist/esm/lib/fields/Field.js +71 -45
  702. package/dist/esm/lib/fields/Field.js.map +1 -1
  703. package/dist/esm/lib/fields/Fields.d.ts +17 -14
  704. package/dist/esm/lib/fields/Fields.d.ts.map +1 -1
  705. package/dist/esm/lib/fields/Fields.js +16 -14
  706. package/dist/esm/lib/fields/Fields.js.map +1 -1
  707. package/dist/esm/lib/fields/File.d.ts +32 -6
  708. package/dist/esm/lib/fields/File.d.ts.map +1 -1
  709. package/dist/esm/lib/fields/File.js +76 -27
  710. package/dist/esm/lib/fields/File.js.map +1 -1
  711. package/dist/esm/lib/fields/Iterator.d.ts +4 -3
  712. package/dist/esm/lib/fields/Iterator.d.ts.map +1 -1
  713. package/dist/esm/lib/fields/Iterator.js +4 -4
  714. package/dist/esm/lib/fields/Iterator.js.map +1 -1
  715. package/dist/esm/lib/fields/Link.d.ts +32 -9
  716. package/dist/esm/lib/fields/Link.d.ts.map +1 -1
  717. package/dist/esm/lib/fields/Link.js +28 -18
  718. package/dist/esm/lib/fields/Link.js.map +1 -1
  719. package/dist/esm/lib/fields/List.d.ts +11 -10
  720. package/dist/esm/lib/fields/List.d.ts.map +1 -1
  721. package/dist/esm/lib/fields/List.js +37 -15
  722. package/dist/esm/lib/fields/List.js.map +1 -1
  723. package/dist/esm/lib/fields/Menu.d.ts +26 -0
  724. package/dist/esm/lib/fields/Menu.d.ts.map +1 -0
  725. package/dist/esm/lib/fields/Menu.js +49 -0
  726. package/dist/esm/lib/fields/Menu.js.map +1 -0
  727. package/dist/esm/lib/fields/Number.d.ts +4 -3
  728. package/dist/esm/lib/fields/Number.d.ts.map +1 -1
  729. package/dist/esm/lib/fields/Number.js +5 -4
  730. package/dist/esm/lib/fields/Number.js.map +1 -1
  731. package/dist/esm/lib/fields/Relation.d.ts +14 -13
  732. package/dist/esm/lib/fields/Relation.d.ts.map +1 -1
  733. package/dist/esm/lib/fields/Relation.js +21 -19
  734. package/dist/esm/lib/fields/Relation.js.map +1 -1
  735. package/dist/esm/lib/fields/Select.d.ts +10 -3
  736. package/dist/esm/lib/fields/Select.d.ts.map +1 -1
  737. package/dist/esm/lib/fields/Select.js +22 -6
  738. package/dist/esm/lib/fields/Select.js.map +1 -1
  739. package/dist/esm/lib/fields/SelfRelation.d.ts +5 -4
  740. package/dist/esm/lib/fields/SelfRelation.d.ts.map +1 -1
  741. package/dist/esm/lib/fields/SelfRelation.js +7 -6
  742. package/dist/esm/lib/fields/SelfRelation.js.map +1 -1
  743. package/dist/esm/lib/fields/SimpleList.d.ts +11 -4
  744. package/dist/esm/lib/fields/SimpleList.d.ts.map +1 -1
  745. package/dist/esm/lib/fields/SimpleList.js +40 -16
  746. package/dist/esm/lib/fields/SimpleList.js.map +1 -1
  747. package/dist/esm/lib/fields/String.d.ts +6 -5
  748. package/dist/esm/lib/fields/String.d.ts.map +1 -1
  749. package/dist/esm/lib/fields/String.js +38 -40
  750. package/dist/esm/lib/fields/String.js.map +1 -1
  751. package/dist/esm/lib/fields/index.d.ts +17 -16
  752. package/dist/esm/lib/fields/index.d.ts.map +1 -1
  753. package/dist/esm/lib/fields/index.js +17 -16
  754. package/dist/esm/lib/fields/index.js.map +1 -1
  755. package/dist/esm/lib/hooks.d.ts +4 -4
  756. package/dist/esm/lib/routeableContent.js +1 -1
  757. package/dist/esm/lib/types/index.d.ts +2 -2
  758. package/dist/esm/lib/utils/getListField.d.ts +1 -1
  759. package/dist/esm/lib/utils/getSchemas.d.ts +1 -1
  760. package/dist/esm/lib/utils/getTranslation.d.ts +2 -2
  761. package/dist/esm/lib/utils/getTranslation.js +1 -1
  762. package/dist/esm/lib/utils/isTranslatableObject.d.ts +1 -1
  763. package/dist/esm/lib/utils/translateObject.d.ts +2 -2
  764. package/dist/esm/lib/utils/translateObject.js +3 -3
  765. package/dist/esm/literals/definitions.d.ts +1 -1
  766. package/dist/esm/literals/definitions.js +1 -1
  767. package/dist/esm/literals/index.d.ts +2 -2
  768. package/dist/esm/literals/index.js +2 -2
  769. package/dist/esm/mail/index.d.ts +6 -6
  770. package/dist/esm/mail/index.js +5 -5
  771. package/dist/esm/mail/mailService.d.ts +2 -2
  772. package/dist/esm/mail/mailService.js +1 -1
  773. package/dist/esm/mail/templates.d.ts +1 -1
  774. package/dist/esm/mail/templates.js +2 -2
  775. package/dist/esm/manager.d.ts +8 -3
  776. package/dist/esm/manager.d.ts.map +1 -1
  777. package/dist/esm/manager.js +1 -1
  778. package/dist/esm/media/imageOptimization.d.ts +8 -2
  779. package/dist/esm/media/imageOptimization.d.ts.map +1 -1
  780. package/dist/esm/media/imageOptimization.js +2 -2
  781. package/dist/esm/media/imageOptimization.js.map +1 -1
  782. package/dist/esm/media/index.d.ts +4 -4
  783. package/dist/esm/media/index.js +3 -3
  784. package/dist/esm/media/mediaOptimization.d.ts +12 -0
  785. package/dist/esm/media/mediaOptimization.d.ts.map +1 -0
  786. package/dist/esm/media/mediaOptimization.js +15 -0
  787. package/dist/esm/media/mediaOptimization.js.map +1 -0
  788. package/dist/esm/media/mediaService.d.ts +1 -1
  789. package/dist/esm/media/videoOptimization.d.ts +19 -0
  790. package/dist/esm/media/videoOptimization.d.ts.map +1 -0
  791. package/dist/esm/media/videoOptimization.js +136 -0
  792. package/dist/esm/media/videoOptimization.js.map +1 -0
  793. package/dist/esm/orm/backups.js +5 -5
  794. package/dist/esm/orm/createIndexes.d.ts.map +1 -1
  795. package/dist/esm/orm/createIndexes.js +8 -4
  796. package/dist/esm/orm/createIndexes.js.map +1 -1
  797. package/dist/esm/orm/database.js +3 -3
  798. package/dist/esm/orm/dbService.d.ts +6 -6
  799. package/dist/esm/orm/index.d.ts +2 -2
  800. package/dist/esm/orm/index.js +16 -16
  801. package/dist/esm/orm/migrations.d.ts +1 -1
  802. package/dist/esm/orm/migrations.js +4 -4
  803. package/dist/esm/orm/mongodbPeer.js +1 -1
  804. package/dist/esm/orm/operations/clear.d.ts +2 -2
  805. package/dist/esm/orm/operations/clear.js +1 -1
  806. package/dist/esm/orm/operations/create.d.ts +4 -4
  807. package/dist/esm/orm/operations/create.js +7 -7
  808. package/dist/esm/orm/operations/delete.d.ts +3 -3
  809. package/dist/esm/orm/operations/delete.js +5 -5
  810. package/dist/esm/orm/operations/find.d.ts +2 -2
  811. package/dist/esm/orm/operations/find.js +3 -3
  812. package/dist/esm/orm/operations/findDependencies.d.ts +2 -2
  813. package/dist/esm/orm/operations/findDependencies.js +4 -4
  814. package/dist/esm/orm/operations/get.d.ts +3 -3
  815. package/dist/esm/orm/operations/get.js +3 -3
  816. package/dist/esm/orm/operations/getAll.d.ts +2 -2
  817. package/dist/esm/orm/operations/getAll.js +2 -2
  818. package/dist/esm/orm/operations/list.d.ts +2 -2
  819. package/dist/esm/orm/operations/list.js +3 -3
  820. package/dist/esm/orm/operations/update.d.ts +5 -5
  821. package/dist/esm/orm/operations/update.js +8 -8
  822. package/dist/esm/orm/operations/updateMany.d.ts +4 -4
  823. package/dist/esm/orm/operations/updateMany.js +4 -4
  824. package/dist/esm/orm/operations/upsert.d.ts +3 -3
  825. package/dist/esm/orm/operations/upsert.js +4 -4
  826. package/dist/esm/orm/utils/deepDeleteNulls.js +1 -1
  827. package/dist/esm/orm/utils/parseId.d.ts +1 -1
  828. package/dist/esm/orm/utils/parseId.js +1 -1
  829. package/dist/esm/orm/utils/transformObjectIdsToStrings.js +1 -1
  830. package/dist/esm/orm/utils/transformStringToObjectIds.js +1 -1
  831. package/dist/esm/orm/versions.d.ts +1 -1
  832. package/dist/esm/orm/versions.js +7 -7
  833. package/dist/esm/plugins.d.ts +11 -11
  834. package/dist/esm/schemas/manager/auth/externalLogin.js +1 -1
  835. package/dist/esm/schemas/manager/comments.js +1 -1
  836. package/dist/esm/schemas/manager/contentVersions.d.ts +64 -64
  837. package/dist/esm/schemas/manager/contentVersions.js +3 -3
  838. package/dist/esm/schemas/manager/literals/upsert.js +1 -1
  839. package/dist/esm/schemas/manager/localeVariants.d.ts +96 -96
  840. package/dist/esm/schemas/manager/localeVariants.js +1 -1
  841. package/dist/esm/schemas/manager/media/finalizeUpload.d.ts +43 -0
  842. package/dist/esm/schemas/manager/media/finalizeUpload.d.ts.map +1 -1
  843. package/dist/esm/schemas/manager/media/finalizeUpload.js +10 -1
  844. package/dist/esm/schemas/manager/media/finalizeUpload.js.map +1 -1
  845. package/dist/esm/schemas/manager/media/getMediaUrl.js +1 -1
  846. package/dist/esm/schemas/manager/media/listFolders.js +1 -1
  847. package/dist/esm/schemas/manager/media/reimportMedia.d.ts +17 -1
  848. package/dist/esm/schemas/manager/media/reimportMedia.d.ts.map +1 -1
  849. package/dist/esm/schemas/manager/media/reimportMedia.js +2 -2
  850. package/dist/esm/schemas/manager/media/reimportMedia.js.map +1 -1
  851. package/dist/esm/schemas/manager/media/replaceMedia.d.ts +107 -0
  852. package/dist/esm/schemas/manager/media/replaceMedia.d.ts.map +1 -0
  853. package/dist/esm/schemas/manager/media/replaceMedia.js +15 -0
  854. package/dist/esm/schemas/manager/media/replaceMedia.js.map +1 -0
  855. package/dist/esm/schemas/manager/notifications.js +1 -1
  856. package/dist/esm/schemas/manager/reviews.js +1 -1
  857. package/dist/esm/schemas/manager/uiLocales.d.ts +1 -0
  858. package/dist/esm/schemas/manager/uiLocales.d.ts.map +1 -1
  859. package/dist/esm/schemas/manager/uiLocales.js +2 -1
  860. package/dist/esm/schemas/manager/uiLocales.js.map +1 -1
  861. package/dist/esm/schemas/web/page.d.ts +187 -46
  862. package/dist/esm/schemas/web/page.d.ts.map +1 -1
  863. package/dist/esm/schemas/web/page.js +3 -4
  864. package/dist/esm/schemas/web/page.js.map +1 -1
  865. package/dist/esm/schemas/web/previewPage.d.ts +103 -34
  866. package/dist/esm/schemas/web/previewPage.d.ts.map +1 -1
  867. package/dist/esm/schemas/web/previewPage.js +1 -1
  868. package/dist/esm/translation/document.d.ts +3 -3
  869. package/dist/esm/translation/index.d.ts +4 -4
  870. package/dist/esm/translation/index.js +3 -3
  871. package/dist/esm/translation/translationService.d.ts +1 -1
  872. package/dist/esm/web/client.d.ts +1 -1
  873. package/dist/esm/web/client.js +1 -1
  874. package/dist/esm/web/index.d.ts +2 -2
  875. package/dist/esm/web/index.js +2 -2
  876. package/dist/esm/web/page.d.ts +8 -8
  877. package/dist/esm/web/page.d.ts.map +1 -1
  878. package/dist/esm/web/page.js +1 -1
  879. package/dist/esm/web/page.js.map +1 -1
  880. package/dist/tsconfig.build.tsbuildinfo +1 -1
  881. package/package.json +140 -138
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.resolveContentOutput = exports.stripDynamicBindings = exports.resolveDynamicData = exports.mergeDynamicListItems = exports.getDynamicListItemContentTypeName = exports.resolveRelatedCollectionValue = void 0;
3
+ exports.resolveContentOutput = exports.stripDynamicBindings = exports.resolveDynamicData = exports.mergeDynamicArrayItems = exports.mergeDynamicListItems = exports.getDynamicListItemContentTypeName = exports.resolveRelatedCollectionValue = void 0;
4
4
  const bootstrapState_1 = require("../../bootstrapState");
5
5
  const dynamicData_1 = require("../../lib/dynamicData");
6
6
  const Logger_1 = require("../../lib/Logger");
@@ -12,97 +12,105 @@ const populateRelations_1 = require("./populates/populateRelations");
12
12
  const safeManagerQuery_1 = require("./safeManagerQuery");
13
13
  const context_1 = require("../hooks/context");
14
14
  const breadcrums_1 = require("./breadcrums");
15
- const isRecord = (value) => !!value &&
16
- typeof value === "object" &&
17
- !Array.isArray(value) &&
18
- !(value instanceof Date);
15
+ const isRecord = (value) => !!value && typeof value === 'object' && !Array.isArray(value) && !(value instanceof Date);
19
16
  const getAtPath = (value, path) => {
20
17
  if (!path)
21
18
  return undefined;
22
- return path.split(".").reduce((current, segment) => {
19
+ return path.split('.').reduce((current, segment) => {
23
20
  if (!isRecord(current))
24
21
  return undefined;
25
22
  return current[segment];
26
23
  }, value);
27
24
  };
28
- const isPublicDocument = (value) => value._trashed !== true &&
29
- value._visibility !== "draft" &&
30
- value._visibility !== "trash";
25
+ const setAtPath = (target, path, value) => {
26
+ const segments = path.split('.');
27
+ let current = target;
28
+ for (const [index, segment] of segments.entries()) {
29
+ if (index === segments.length - 1) {
30
+ Object.defineProperty(current, segment, {
31
+ configurable: true,
32
+ enumerable: true,
33
+ value,
34
+ writable: true,
35
+ });
36
+ return;
37
+ }
38
+ const existing = current[segment];
39
+ const next = isRecord(existing) ? existing : {};
40
+ if (next !== existing) {
41
+ Object.defineProperty(current, segment, {
42
+ configurable: true,
43
+ enumerable: true,
44
+ value: next,
45
+ writable: true,
46
+ });
47
+ }
48
+ current = next;
49
+ }
50
+ };
51
+ const isPublicDocument = (value) => value._trashed !== true && value._visibility !== 'draft' && value._visibility !== 'trash';
31
52
  const getAllowedSourceContentType = (sourceContentTypeName) => {
32
53
  const contentType = (0, Registry_1.getContentTypeByName)(sourceContentTypeName);
33
- return (0, dynamicData_1.isDynamicDataSourceContentTypeAllowed)(contentType)
34
- ? contentType
54
+ return (0, dynamicData_1.isDynamicDataSourceContentTypeAllowed)(contentType) ? contentType : undefined;
55
+ };
56
+ const getDynamicTargetField = (contentType, path) => {
57
+ const [fieldName, ...rest] = path.split('.');
58
+ const field = contentType.fields[fieldName];
59
+ if (!field || !contentType.allowsDynamicBindingForField(fieldName)) {
60
+ return undefined;
61
+ }
62
+ if (rest.length === 0)
63
+ return field;
64
+ return rest.length === 1 &&
65
+ field.meta.capabilities.dynamic?.mapProperties === true &&
66
+ field.meta.capabilities.dynamic?.properties?.[rest[0]]
67
+ ? field
35
68
  : undefined;
36
69
  };
37
- const fileSourcePaths = new Set([
38
- "url",
39
- "previewUrl",
40
- "name",
41
- "title",
42
- "alt",
43
- "mime",
44
- "srcSet",
45
- "width",
46
- "height",
47
- "size",
48
- ]);
49
- const linkSourcePaths = new Set(["href", "title"]);
50
70
  const isDynamicSourcePathAllowed = (contentType, path, depth = 0) => {
51
71
  if (!path)
52
72
  return false;
53
- const [fieldName, ...rest] = path.split(".");
73
+ const [fieldName, ...rest] = path.split('.');
54
74
  const field = contentType.fields[fieldName];
55
75
  if (!field || !contentType.allowsDynamicBindingForField(fieldName)) {
56
76
  return false;
57
77
  }
58
78
  if (rest.length === 0)
59
79
  return true;
60
- if (field.meta.type === "Relation" &&
61
- "contentType" in field &&
62
- depth < 3) {
63
- return isDynamicSourcePathAllowed(field.contentType, rest.join("."), depth + 1);
64
- }
65
- if (field.meta.type === "File") {
66
- return rest.length === 1 && fileSourcePaths.has(rest[0]);
67
- }
68
- if (field.meta.type === "Link") {
69
- return rest.length === 1 && linkSourcePaths.has(rest[0]);
80
+ if (field.meta.capabilities.dynamic?.relation === true && 'contentType' in field && depth < 3) {
81
+ return isDynamicSourcePathAllowed(field.contentType, rest.join('.'), depth + 1);
70
82
  }
71
- return false;
83
+ return rest.length === 1 && !!field.meta.capabilities.dynamic?.properties?.[rest[0]];
72
84
  };
73
85
  const getDynamicSourceField = (contentType, path, depth = 0) => {
74
86
  if (!path)
75
87
  return undefined;
76
- const [fieldName, ...rest] = path.split(".");
88
+ const [fieldName, ...rest] = path.split('.');
77
89
  const field = contentType.fields[fieldName];
78
90
  if (!field || !contentType.allowsDynamicBindingForField(fieldName)) {
79
91
  return undefined;
80
92
  }
81
93
  if (rest.length === 0)
82
94
  return field;
83
- if (field.meta.type === "Relation" &&
84
- "contentType" in field &&
85
- depth < 3) {
86
- return getDynamicSourceField(field.contentType, rest.join("."), depth + 1);
95
+ if (field.meta.capabilities.dynamic?.relation === true && 'contentType' in field && depth < 3) {
96
+ return getDynamicSourceField(field.contentType, rest.join('.'), depth + 1);
87
97
  }
88
98
  return undefined;
89
99
  };
90
100
  const isArraySourceField = (field) => {
91
101
  if (!field)
92
102
  return false;
93
- if (field.meta.type === "List")
94
- return true;
95
- return "isMultiple" in field.meta && field.meta.isMultiple === true;
103
+ return field.meta.capabilities.valueKind === 'array';
96
104
  };
97
105
  const getRelationTarget = (field) => {
98
106
  if (!field || field.getIsTranslatable())
99
107
  return undefined;
100
- if (field.meta.type === "Relation" && "contentType" in field) {
108
+ if (field.meta.capabilities.dynamic?.relation === true && 'contentType' in field) {
101
109
  return field.contentType;
102
110
  }
103
- if (field.meta.ui === "SimpleList" && "field" in field) {
111
+ if (field.meta.capabilities.dynamic?.collection === 'homogeneous' && 'field' in field) {
104
112
  const itemField = field.field;
105
- if (itemField.meta.type === "Relation" && "contentType" in itemField) {
113
+ if (itemField.meta.capabilities.dynamic?.relation === true && 'contentType' in itemField) {
106
114
  return itemField.contentType;
107
115
  }
108
116
  }
@@ -112,8 +120,8 @@ const getDocumentListItemContentType = (field, itemName) => {
112
120
  if (!field || !isArraySourceField(field) || field.getIsTranslatable()) {
113
121
  return undefined;
114
122
  }
115
- if ((field.meta.ui === "List" || field.meta.ui === "Iterator") &&
116
- "fields" in field &&
123
+ if (field.meta.capabilities.dynamic?.collection === 'heterogeneous' &&
124
+ 'fields' in field &&
117
125
  Array.isArray(field.fields)) {
118
126
  if (!itemName)
119
127
  return undefined;
@@ -143,7 +151,7 @@ const loadSourceDocument = async (db, source) => {
143
151
  if (!item || !isPublicDocument(item)) {
144
152
  return undefined;
145
153
  }
146
- return (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateLinks)(item)));
154
+ return (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateFields)(item)));
147
155
  };
148
156
  const resolveSourceValue = async ({ db, source, currentSource, currentContentType, allowCurrentSource, contextSource, }) => {
149
157
  const usesCurrentRecord = allowCurrentSource === true &&
@@ -166,8 +174,8 @@ const resolveSourceValue = async ({ db, source, currentSource, currentContentTyp
166
174
  : await loadSourceDocument(db, source);
167
175
  if (!sourceDocument)
168
176
  return undefined;
169
- if (source.virtual === "href") {
170
- const sourceId = typeof sourceDocument._id === "string" ? sourceDocument._id : source.id;
177
+ if (source.virtual === 'href') {
178
+ const sourceId = typeof sourceDocument._id === 'string' ? sourceDocument._id : source.id;
171
179
  return sourceId ? await resolveHref(source, sourceId) : undefined;
172
180
  }
173
181
  if (!isDynamicSourcePathAllowed(sourceContentType, source.path)) {
@@ -175,17 +183,17 @@ const resolveSourceValue = async ({ db, source, currentSource, currentContentTyp
175
183
  }
176
184
  return getAtPath(sourceDocument, source.path);
177
185
  };
178
- const isRelatedCollectionSource = (source) => "kind" in source && source.kind === "relatedCollection";
179
- const isNestedListSource = (source) => "kind" in source && source.kind === "list";
186
+ const isRelatedCollectionSource = (source) => 'kind' in source && source.kind === 'relatedCollection';
187
+ const isNestedListSource = (source) => 'kind' in source && source.kind === 'list';
180
188
  const addPublicContentFilter = (query) => ({
181
189
  ...query,
182
190
  filter: {
183
191
  ...query.filter,
184
192
  _trashed: { $ne: true },
185
- _visibility: { $nin: ["draft", "trash"] },
193
+ _visibility: { $nin: ['draft', 'trash'] },
186
194
  },
187
195
  });
188
- const isDynamicQueryCurrentPathAllowed = (contentType, path) => path === "_id" || isDynamicSourcePathAllowed(contentType, path);
196
+ const isDynamicQueryCurrentPathAllowed = (contentType, path) => path === '_id' || isDynamicSourcePathAllowed(contentType, path);
189
197
  const resolveDynamicQueryValue = (value, currentItem, currentItemContentType, currentDocument, currentDocumentContentType) => {
190
198
  const currentValue = dynamicData_1.DynamicQueryCurrentValueSchema.safeParse(value);
191
199
  if (currentValue.success) {
@@ -194,9 +202,7 @@ const resolveDynamicQueryValue = (value, currentItem, currentItemContentType, cu
194
202
  return { success: false };
195
203
  }
196
204
  const resolved = getAtPath(currentItem, path);
197
- return resolved === undefined
198
- ? { success: false }
199
- : { success: true, value: resolved };
205
+ return resolved === undefined ? { success: false } : { success: true, value: resolved };
200
206
  }
201
207
  const documentValue = dynamicData_1.DynamicQueryDocumentValueSchema.safeParse(value);
202
208
  if (documentValue.success) {
@@ -205,9 +211,7 @@ const resolveDynamicQueryValue = (value, currentItem, currentItemContentType, cu
205
211
  return { success: false };
206
212
  }
207
213
  const resolved = getAtPath(currentDocument, path);
208
- return resolved === undefined
209
- ? { success: false }
210
- : { success: true, value: resolved };
214
+ return resolved === undefined ? { success: false } : { success: true, value: resolved };
211
215
  }
212
216
  if (Array.isArray(value)) {
213
217
  const items = [];
@@ -231,12 +235,12 @@ const resolveDynamicQueryValue = (value, currentItem, currentItemContentType, cu
231
235
  }
232
236
  return { success: true, value };
233
237
  };
234
- const resolveRelatedCollectionValue = async ({ db, source, currentSource, currentContentType, populateDocument = async (sourceItem) => (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateLinks)(sourceItem))), }) => {
238
+ const resolveRelatedCollectionValue = async ({ db, source, currentSource, currentContentType, populateDocument = async (sourceItem) => (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateFields)(sourceItem))), }) => {
235
239
  if (!(0, dynamicData_1.isDynamicDataSourceContentTypeAllowed)(currentContentType)) {
236
240
  return undefined;
237
241
  }
238
242
  const sourceId = currentSource._id;
239
- if (typeof sourceId !== "string")
243
+ if (typeof sourceId !== 'string')
240
244
  return undefined;
241
245
  const relatedContentType = getAllowedSourceContentType(source.contentType);
242
246
  if (!relatedContentType)
@@ -268,16 +272,16 @@ const resolveRelatedCollectionValue = async ({ db, source, currentSource, curren
268
272
  exports.resolveRelatedCollectionValue = resolveRelatedCollectionValue;
269
273
  const resolveListMapSourceValue = async ({ db, source, targetField, currentSource, currentContentType, contextSource, }) => {
270
274
  if (isNestedListSource(source)) {
271
- const targetContentType = getListTargetContentType(targetField, source.itemName);
272
- if (!targetContentType)
275
+ if (!targetField || !getDynamicListTarget(targetField, source.itemName)) {
273
276
  return undefined;
277
+ }
274
278
  return await resolveListBinding({
275
279
  db,
276
280
  binding: source,
277
281
  contextSource,
278
282
  currentDocument: currentSource,
279
283
  currentDocumentContentType: currentContentType,
280
- itemContentTypeName: targetContentType.name,
284
+ targetField,
281
285
  });
282
286
  }
283
287
  if (isRelatedCollectionSource(source)) {
@@ -297,7 +301,7 @@ const resolveListMapSourceValue = async ({ db, source, targetField, currentSourc
297
301
  contextSource,
298
302
  });
299
303
  };
300
- const resolveListBinding = async ({ db, binding, contextSource, currentDocument, currentDocumentContentType, itemContentTypeName, }) => {
304
+ const resolveListBinding = async ({ db, binding, contextSource, currentDocument, currentDocumentContentType, targetField, }) => {
301
305
  const documentSource = binding.source;
302
306
  const rootDocumentSource = contextSource ?? {
303
307
  contentType: currentDocumentContentType,
@@ -309,6 +313,9 @@ const resolveListBinding = async ({ db, binding, contextSource, currentDocument,
309
313
  if (!sourceContentType) {
310
314
  return undefined;
311
315
  }
316
+ const target = getDynamicListTarget(targetField, binding.itemName);
317
+ if (!target)
318
+ return undefined;
312
319
  let sourceItems;
313
320
  if (documentSource) {
314
321
  if (documentSource.contentType !== currentDocumentContentType.name) {
@@ -323,9 +330,7 @@ const resolveListBinding = async ({ db, binding, contextSource, currentDocument,
323
330
  if (!Array.isArray(value))
324
331
  return undefined;
325
332
  sourceItems = documentSource.itemName
326
- ? value.flatMap((item) => isRecord(item) &&
327
- item.name === documentSource.itemName &&
328
- "value" in item
333
+ ? value.flatMap((item) => isRecord(item) && item.name === documentSource.itemName && 'value' in item
329
334
  ? [item.value]
330
335
  : [])
331
336
  : value;
@@ -346,106 +351,148 @@ const resolveListBinding = async ({ db, binding, contextSource, currentDocument,
346
351
  return undefined;
347
352
  const populated = documentSource
348
353
  ? sourceItem
349
- : (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateLinks)(sourceItem)));
350
- const targetContentType = (0, Registry_1.getContentTypeByName)(itemContentTypeName);
351
- const mapped = Object.fromEntries(await Promise.all(Object.entries(binding.map).map(async ([targetField, source]) => [
352
- targetField,
354
+ : (await (0, populateRelations_1.populateRelations)(await (0, populateLinks_1.populateFields)(sourceItem)));
355
+ const mappedEntries = await Promise.all(Object.entries(binding.map).map(async ([targetPath, source]) => [
356
+ targetPath,
353
357
  await resolveListMapSourceValue({
354
358
  db,
355
359
  source,
356
- targetField: targetContentType?.fields[targetField],
360
+ targetField: target.kind === 'linkArray'
361
+ ? undefined
362
+ : getDynamicTargetField(target.contentType, targetPath),
357
363
  currentSource: populated,
358
364
  currentContentType: sourceContentType,
359
365
  contextSource: rootDocumentSource,
360
366
  }),
361
- ])));
367
+ ]));
368
+ const mapped = {};
369
+ mappedEntries
370
+ .sort(([left], [right]) => left.split('.').length - right.split('.').length)
371
+ .forEach(([targetPath, value]) => setAtPath(mapped, targetPath, value));
372
+ if (target.kind === 'linkArray')
373
+ return mapped;
374
+ const targetValue = {
375
+ _id: typeof sourceItem._id === 'string'
376
+ ? `${binding.itemName}:${sourceItem._id}`
377
+ : `${binding.itemName}:${index}`,
378
+ _type: target.contentType.name,
379
+ ...mapped,
380
+ };
381
+ if (target.kind === 'relationArray')
382
+ return targetValue;
362
383
  return {
363
384
  name: binding.itemName,
364
- value: {
365
- _id: typeof sourceItem._id === "string"
366
- ? `${binding.itemName}:${sourceItem._id}`
367
- : `${binding.itemName}:${index}`,
368
- _type: itemContentTypeName,
369
- ...mapped,
370
- },
385
+ value: targetValue,
371
386
  };
372
387
  }));
373
388
  return resolvedItems.filter((item) => item !== undefined);
374
389
  };
375
- const getListTargetContentType = (field, itemName) => {
376
- if (!field || (field.meta.ui !== "List" && field.meta.ui !== "Iterator")) {
390
+ const getBlocksTargetContentType = (field, itemName) => {
391
+ if (!field || field.meta.capabilities.dynamic?.collection !== 'heterogeneous') {
377
392
  return undefined;
378
393
  }
379
- if (!("fields" in field) || !Array.isArray(field.fields)) {
394
+ if (!('fields' in field) || !Array.isArray(field.fields)) {
380
395
  return undefined;
381
396
  }
382
397
  const entry = field.fields.find((item) => item.name === itemName);
383
398
  if (!entry ||
384
- entry.field.meta.type !== "Relation" ||
385
- !("contentType" in entry.field)) {
399
+ entry.field.meta.capabilities.dynamic?.relation !== true ||
400
+ !('contentType' in entry.field)) {
386
401
  return undefined;
387
402
  }
388
403
  return entry.field.contentType;
389
404
  };
390
- const getDynamicListItemContentTypeName = (field, itemName) => getListTargetContentType(field, itemName)?.name ?? itemName;
405
+ const getSimpleListItemField = (field) => {
406
+ if (!field ||
407
+ field.meta.capabilities.dynamic?.collection !== 'homogeneous' ||
408
+ !('field' in field)) {
409
+ return undefined;
410
+ }
411
+ return field.field;
412
+ };
413
+ const getDynamicListTarget = (field, itemName) => {
414
+ const blocksContentType = getBlocksTargetContentType(field, itemName);
415
+ if (blocksContentType) {
416
+ return { kind: 'blocks', contentType: blocksContentType };
417
+ }
418
+ const itemField = getSimpleListItemField(field);
419
+ if (!itemField)
420
+ return undefined;
421
+ if (itemField.meta.capabilities.dynamic?.relation === true && 'contentType' in itemField) {
422
+ const contentType = itemField.contentType;
423
+ if (itemName !== contentType.name)
424
+ return undefined;
425
+ return {
426
+ kind: 'relationArray',
427
+ contentType,
428
+ };
429
+ }
430
+ const itemTypeName = itemField.meta.editor ?? itemField.meta.type;
431
+ return itemField.meta.capabilities.dynamic?.mapProperties === true &&
432
+ itemField.meta.capabilities.dynamic?.properties &&
433
+ itemName === itemTypeName
434
+ ? { kind: 'linkArray' }
435
+ : undefined;
436
+ };
437
+ const getDynamicListItemContentTypeName = (field, itemName) => {
438
+ const target = getDynamicListTarget(field, itemName);
439
+ return target && target.kind !== 'linkArray' ? target.contentType.name : itemName;
440
+ };
391
441
  exports.getDynamicListItemContentTypeName = getDynamicListItemContentTypeName;
392
442
  const filterListBindingMap = (contentType, fieldName, binding) => {
393
- const targetContentType = getListTargetContentType(contentType.fields[fieldName], binding.itemName);
394
- if (!targetContentType)
395
- return binding;
396
- return filterListBindingForTarget(targetContentType, binding);
443
+ return filterListBindingForTarget(contentType.fields[fieldName], binding);
397
444
  };
398
- const filterListBindingForTarget = (targetContentType, binding) => {
445
+ const filterListBindingForTarget = (targetField, binding) => {
446
+ const target = getDynamicListTarget(targetField, binding.itemName);
447
+ if (!target)
448
+ return { ...binding, map: {} };
399
449
  return {
400
450
  ...binding,
401
- map: Object.fromEntries(Object.entries(binding.map).flatMap(([targetField, source]) => {
402
- if (!targetContentType.allowsDynamicBindingForField(targetField)) {
451
+ map: Object.fromEntries(Object.entries(binding.map).flatMap(([targetPath, source]) => {
452
+ if (target.kind === 'linkArray') {
453
+ return targetField &&
454
+ 'field' in targetField &&
455
+ !!targetField.field.meta.capabilities.dynamic
456
+ ?.properties?.[targetPath] &&
457
+ !isNestedListSource(source)
458
+ ? [[targetPath, source]]
459
+ : [];
460
+ }
461
+ const field = getDynamicTargetField(target.contentType, targetPath);
462
+ if (!field) {
403
463
  return [];
404
464
  }
405
465
  if (!isNestedListSource(source)) {
406
- return [[targetField, source]];
466
+ return [[targetPath, source]];
407
467
  }
408
- const nestedTargetContentType = getListTargetContentType(targetContentType.fields[targetField], source.itemName);
409
- return nestedTargetContentType
410
- ? [
411
- [
412
- targetField,
413
- filterListBindingForTarget(nestedTargetContentType, source),
414
- ],
415
- ]
416
- : [];
468
+ if (targetPath.includes('.'))
469
+ return [];
470
+ const nestedTarget = getDynamicListTarget(field, source.itemName);
471
+ return nestedTarget ? [[targetPath, filterListBindingForTarget(field, source)]] : [];
417
472
  })),
418
473
  };
419
474
  };
420
475
  const getListItemStableKey = (item) => {
421
476
  if (!isRecord(item))
422
477
  return undefined;
423
- const name = typeof item.name === "string" ? item.name : "";
478
+ const name = typeof item.name === 'string' ? item.name : '';
424
479
  const value = item.value;
425
- if (isRecord(value) && typeof value._id === "string") {
426
- const id = value._id.startsWith(`${name}:`)
427
- ? value._id.slice(name.length + 1)
428
- : value._id;
480
+ if (isRecord(value) && typeof value._id === 'string') {
481
+ const id = value._id.startsWith(`${name}:`) ? value._id.slice(name.length + 1) : value._id;
429
482
  return `${name}:${id}`;
430
483
  }
431
- if (isRecord(value) &&
432
- isRecord(value.data) &&
433
- typeof value.data._id === "string") {
484
+ if (isRecord(value) && isRecord(value.data) && typeof value.data._id === 'string') {
434
485
  return `${name}:${value.data._id}`;
435
486
  }
436
487
  return undefined;
437
488
  };
438
489
  const isListValueItem = (item) => isRecord(item) &&
439
- typeof item.name === "string" &&
440
- Object.prototype.hasOwnProperty.call(item, "value") &&
490
+ typeof item.name === 'string' &&
491
+ Object.prototype.hasOwnProperty.call(item, 'value') &&
441
492
  item.value !== undefined;
442
493
  const mergeDynamicListItems = (currentValue, resolvedValue) => {
443
- const currentItems = Array.isArray(currentValue)
444
- ? currentValue.filter(isListValueItem)
445
- : [];
446
- const resolvedItems = Array.isArray(resolvedValue)
447
- ? resolvedValue.filter(isListValueItem)
448
- : [];
494
+ const currentItems = Array.isArray(currentValue) ? currentValue.filter(isListValueItem) : [];
495
+ const resolvedItems = Array.isArray(resolvedValue) ? resolvedValue.filter(isListValueItem) : [];
449
496
  const seen = new Set();
450
497
  const merged = [];
451
498
  for (const item of [...resolvedItems, ...currentItems]) {
@@ -460,6 +507,20 @@ const mergeDynamicListItems = (currentValue, resolvedValue) => {
460
507
  return merged;
461
508
  };
462
509
  exports.mergeDynamicListItems = mergeDynamicListItems;
510
+ const mergeDynamicArrayItems = (currentValue, resolvedValue) => {
511
+ const currentItems = Array.isArray(currentValue) ? currentValue : [];
512
+ const resolvedItems = Array.isArray(resolvedValue) ? resolvedValue : [];
513
+ const seenIds = new Set();
514
+ return [...resolvedItems, ...currentItems].filter((item) => {
515
+ if (!isRecord(item) || typeof item._id !== 'string')
516
+ return true;
517
+ if (seenIds.has(item._id))
518
+ return false;
519
+ seenIds.add(item._id);
520
+ return true;
521
+ });
522
+ };
523
+ exports.mergeDynamicArrayItems = mergeDynamicArrayItems;
463
524
  const resolveRecordBindings = async ({ db, contentType, value, contextSource, }) => {
464
525
  const bindings = (0, dynamicData_1.getDynamicDocumentBindings)(value[dynamicData_1.DYNAMIC_BINDINGS_FIELD_NAME]);
465
526
  if (!bindings)
@@ -481,13 +542,14 @@ const resolveRecordBindings = async ({ db, contentType, value, contextSource, })
481
542
  }
482
543
  }
483
544
  catch (error) {
484
- Logger_1.Logger.error("dynamicData: field binding failed", error);
545
+ Logger_1.Logger.error('dynamicData: field binding failed', error);
485
546
  }
486
547
  }
487
548
  for (const [field, binding] of Object.entries(bindings.lists ?? {})) {
488
549
  if (!contentType.allowsDynamicBindingForField(field))
489
550
  continue;
490
551
  try {
552
+ const targetField = contentType.fields[field];
491
553
  const filteredBinding = filterListBindingMap(contentType, field, binding);
492
554
  const resolved = await resolveListBinding({
493
555
  db,
@@ -495,14 +557,17 @@ const resolveRecordBindings = async ({ db, contentType, value, contextSource, })
495
557
  contextSource,
496
558
  currentDocument: contextSource?.value ?? next,
497
559
  currentDocumentContentType: contextSource?.contentType ?? contentType,
498
- itemContentTypeName: (0, exports.getDynamicListItemContentTypeName)(contentType.fields[field], binding.itemName),
560
+ targetField,
499
561
  });
500
562
  if (resolved !== undefined) {
501
- next[field] = (0, exports.mergeDynamicListItems)(next[field], resolved);
563
+ next[field] =
564
+ targetField.meta.capabilities.dynamic?.collection === 'homogeneous'
565
+ ? (0, exports.mergeDynamicArrayItems)(next[field], resolved)
566
+ : (0, exports.mergeDynamicListItems)(next[field], resolved);
502
567
  }
503
568
  }
504
569
  catch (error) {
505
- Logger_1.Logger.error("dynamicData: list binding failed", error);
570
+ Logger_1.Logger.error('dynamicData: list binding failed', error);
506
571
  }
507
572
  }
508
573
  return next;
@@ -514,9 +579,7 @@ const resolveDynamicData = async (value, options) => {
514
579
  if (!isRecord(value))
515
580
  return value;
516
581
  const contentType = options.contentType ??
517
- (typeof value._type === "string"
518
- ? (0, Registry_1.getContentTypeByName)(value._type)
519
- : undefined);
582
+ (typeof value._type === 'string' ? (0, Registry_1.getContentTypeByName)(value._type) : undefined);
520
583
  const boundValue = contentType
521
584
  ? await resolveRecordBindings({
522
585
  db: options.db,