@rakun-kit/core 1.3.11 → 1.4.0
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.
- package/README.md +130 -4
- package/dist/cjs/api/hooks/context.js +16 -0
- package/dist/cjs/api/hooks/context.js.map +1 -0
- package/dist/cjs/api/hooks/runContentHooks.js +173 -0
- package/dist/cjs/api/hooks/runContentHooks.js.map +1 -0
- package/dist/cjs/api/operations/manager-contract.js +87 -0
- package/dist/cjs/api/operations/manager-contract.js.map +1 -1
- package/dist/cjs/api/operations/manager-manifest.js +291 -0
- package/dist/cjs/api/operations/manager-manifest.js.map +1 -0
- package/dist/cjs/api/operations/manager.js +47 -3
- package/dist/cjs/api/operations/manager.js.map +1 -1
- package/dist/cjs/api/routes/manager/apiOperations.js +1 -1
- package/dist/cjs/api/routes/manager/apiOperations.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/login.js +19 -3
- package/dist/cjs/api/routes/manager/auth/login.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/markTourSeen.js +3 -1
- package/dist/cjs/api/routes/manager/auth/markTourSeen.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/totp/verifyTotp.js +11 -1
- package/dist/cjs/api/routes/manager/auth/totp/verifyTotp.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/updateAccount.js +6 -1
- package/dist/cjs/api/routes/manager/auth/updateAccount.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/updatePassword.js +13 -3
- package/dist/cjs/api/routes/manager/auth/updatePassword.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/updateTutorialPreferences.js +3 -1
- package/dist/cjs/api/routes/manager/auth/updateTutorialPreferences.js.map +1 -1
- package/dist/cjs/api/routes/manager/auth/webauthn/webauthnAuthVerify.js +11 -1
- package/dist/cjs/api/routes/manager/auth/webauthn/webauthnAuthVerify.js.map +1 -1
- package/dist/cjs/api/routes/manager/backups/create.js +1 -1
- package/dist/cjs/api/routes/manager/backups/create.js.map +1 -1
- package/dist/cjs/api/routes/manager/backups/list.js +1 -1
- package/dist/cjs/api/routes/manager/backups/list.js.map +1 -1
- package/dist/cjs/api/routes/manager/backups/restore.js +1 -1
- package/dist/cjs/api/routes/manager/backups/restore.js.map +1 -1
- package/dist/cjs/api/routes/manager/comments.js +209 -0
- package/dist/cjs/api/routes/manager/comments.js.map +1 -0
- package/dist/cjs/api/routes/manager/contentType.js +19 -0
- package/dist/cjs/api/routes/manager/contentType.js.map +1 -0
- package/dist/cjs/api/routes/manager/create.js +10 -11
- package/dist/cjs/api/routes/manager/create.js.map +1 -1
- package/dist/cjs/api/routes/manager/delete.js +10 -3
- package/dist/cjs/api/routes/manager/delete.js.map +1 -1
- package/dist/cjs/api/routes/manager/favorites.js +137 -0
- package/dist/cjs/api/routes/manager/favorites.js.map +1 -0
- package/dist/cjs/api/routes/manager/get.js +3 -2
- package/dist/cjs/api/routes/manager/get.js.map +1 -1
- package/dist/cjs/api/routes/manager/list.js +23 -8
- package/dist/cjs/api/routes/manager/list.js.map +1 -1
- package/dist/cjs/api/routes/manager/literals/list.js +1 -1
- package/dist/cjs/api/routes/manager/literals/list.js.map +1 -1
- package/dist/cjs/api/routes/manager/literals/upsert.js +1 -1
- package/dist/cjs/api/routes/manager/literals/upsert.js.map +1 -1
- package/dist/cjs/api/routes/manager/localeVariants.js +300 -0
- package/dist/cjs/api/routes/manager/localeVariants.js.map +1 -0
- package/dist/cjs/api/routes/manager/media/finalizeUpload.js +24 -1
- package/dist/cjs/api/routes/manager/media/finalizeUpload.js.map +1 -1
- package/dist/cjs/api/routes/manager/media/getMediaUrl.js +33 -1
- package/dist/cjs/api/routes/manager/media/getMediaUrl.js.map +1 -1
- package/dist/cjs/api/routes/manager/media/prepareUpload.js +12 -1
- package/dist/cjs/api/routes/manager/media/prepareUpload.js.map +1 -1
- package/dist/cjs/api/routes/manager/media/uploadBinary.js +70 -4
- package/dist/cjs/api/routes/manager/media/uploadBinary.js.map +1 -1
- package/dist/cjs/api/routes/manager/migrations/list.js +1 -1
- package/dist/cjs/api/routes/manager/migrations/list.js.map +1 -1
- package/dist/cjs/api/routes/manager/permissions.js +1 -1
- package/dist/cjs/api/routes/manager/permissions.js.map +1 -1
- package/dist/cjs/api/routes/manager/preview/create.js +5 -1
- package/dist/cjs/api/routes/manager/preview/create.js.map +1 -1
- package/dist/cjs/api/routes/manager/regenerateRoutes.js +1 -1
- package/dist/cjs/api/routes/manager/regenerateRoutes.js.map +1 -1
- package/dist/cjs/api/routes/manager/setDefaultLanguage.js +7 -2
- package/dist/cjs/api/routes/manager/setDefaultLanguage.js.map +1 -1
- package/dist/cjs/api/routes/manager/translateDocument.js +1 -9
- package/dist/cjs/api/routes/manager/translateDocument.js.map +1 -1
- package/dist/cjs/api/routes/manager/trash.js +7 -2
- package/dist/cjs/api/routes/manager/trash.js.map +1 -1
- package/dist/cjs/api/routes/manager/update.js +5 -10
- package/dist/cjs/api/routes/manager/update.js.map +1 -1
- package/dist/cjs/api/routes/manager/users.js +38 -0
- package/dist/cjs/api/routes/manager/users.js.map +1 -0
- package/dist/cjs/api/routes/manager/versions/get.js +1 -1
- package/dist/cjs/api/routes/manager/versions/get.js.map +1 -1
- package/dist/cjs/api/routes/manager/versions/list.js +1 -1
- package/dist/cjs/api/routes/manager/versions/list.js.map +1 -1
- package/dist/cjs/api/routes/manager/versions/restore.js +1 -1
- package/dist/cjs/api/routes/manager/versions/restore.js.map +1 -1
- package/dist/cjs/api/routes/web/page.js +170 -121
- package/dist/cjs/api/routes/web/page.js.map +1 -1
- package/dist/cjs/api/routes/web/robots.js +10 -8
- package/dist/cjs/api/routes/web/robots.js.map +1 -1
- package/dist/cjs/api/sessionCookie.js +13 -3
- package/dist/cjs/api/sessionCookie.js.map +1 -1
- package/dist/cjs/api/utils/authRateLimit.js +43 -0
- package/dist/cjs/api/utils/authRateLimit.js.map +1 -0
- package/dist/cjs/api/utils/checkOwnership.js +10 -7
- package/dist/cjs/api/utils/checkOwnership.js.map +1 -1
- package/dist/cjs/api/utils/dynamicData.js +319 -0
- package/dist/cjs/api/utils/dynamicData.js.map +1 -0
- package/dist/cjs/api/utils/getLanguages.js +8 -1
- package/dist/cjs/api/utils/getLanguages.js.map +1 -1
- package/dist/cjs/api/utils/getLink.js +24 -6
- package/dist/cjs/api/utils/getLink.js.map +1 -1
- package/dist/cjs/api/utils/getUser.js +7 -1
- package/dist/cjs/api/utils/getUser.js.map +1 -1
- package/dist/cjs/api/utils/index.js +7 -1
- package/dist/cjs/api/utils/index.js.map +1 -1
- package/dist/cjs/api/utils/localeVariants.js +45 -0
- package/dist/cjs/api/utils/localeVariants.js.map +1 -0
- package/dist/cjs/api/utils/mediaUploadToken.js +49 -0
- package/dist/cjs/api/utils/mediaUploadToken.js.map +1 -0
- package/dist/cjs/api/utils/passwords.js +25 -1
- package/dist/cjs/api/utils/passwords.js.map +1 -1
- package/dist/cjs/api/utils/populates/populateLinks.js +12 -3
- package/dist/cjs/api/utils/populates/populateLinks.js.map +1 -1
- package/dist/cjs/api/utils/populates/populateRelations.js +23 -4
- package/dist/cjs/api/utils/populates/populateRelations.js.map +1 -1
- package/dist/cjs/api/utils/routes/routeDefinitions.js.map +1 -1
- package/dist/cjs/api/utils/routes/routeMapHelpers.js +133 -24
- package/dist/cjs/api/utils/routes/routeMapHelpers.js.map +1 -1
- package/dist/cjs/api/utils/routes/syncConfiguredRoutes.js +0 -1
- package/dist/cjs/api/utils/routes/syncConfiguredRoutes.js.map +1 -1
- package/dist/cjs/api/utils/routes/updateRoutesMap.js +66 -25
- package/dist/cjs/api/utils/routes/updateRoutesMap.js.map +1 -1
- package/dist/cjs/api/utils/safeManagerQuery.js +229 -0
- package/dist/cjs/api/utils/safeManagerQuery.js.map +1 -0
- package/dist/cjs/api/utils/sanitizeManagerOutput.js +39 -0
- package/dist/cjs/api/utils/sanitizeManagerOutput.js.map +1 -0
- package/dist/cjs/bootstrapState.js.map +1 -1
- package/dist/cjs/client.js +16 -1
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/contracts.js +5 -0
- package/dist/cjs/contracts.js.map +1 -1
- package/dist/cjs/index.js +60 -15
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal-content-types/ApiOperation.js +23 -0
- package/dist/cjs/internal-content-types/ApiOperation.js.map +1 -0
- package/dist/cjs/internal-content-types/Backup.js +1 -0
- package/dist/cjs/internal-content-types/Backup.js.map +1 -1
- package/dist/cjs/internal-content-types/BackupDocument.js +1 -0
- package/dist/cjs/internal-content-types/BackupDocument.js.map +1 -1
- package/dist/cjs/internal-content-types/ContentComment.js +22 -0
- package/dist/cjs/internal-content-types/ContentComment.js.map +1 -0
- package/dist/cjs/internal-content-types/ContentVersion.js +1 -0
- package/dist/cjs/internal-content-types/ContentVersion.js.map +1 -1
- package/dist/cjs/internal-content-types/Language.js +1 -0
- package/dist/cjs/internal-content-types/Language.js.map +1 -1
- package/dist/cjs/internal-content-types/LiteralTranslation.js +1 -0
- package/dist/cjs/internal-content-types/LiteralTranslation.js.map +1 -1
- package/dist/cjs/internal-content-types/ManagerFavorite.js +20 -0
- package/dist/cjs/internal-content-types/ManagerFavorite.js.map +1 -0
- package/dist/cjs/internal-content-types/ManagerRole.js +2 -4
- package/dist/cjs/internal-content-types/ManagerRole.js.map +1 -1
- package/dist/cjs/internal-content-types/ManagerUser.js +2 -0
- package/dist/cjs/internal-content-types/ManagerUser.js.map +1 -1
- package/dist/cjs/internal-content-types/ManagerUserHooks.js +42 -0
- package/dist/cjs/internal-content-types/ManagerUserHooks.js.map +1 -0
- package/dist/cjs/internal-content-types/Media.js +1 -0
- package/dist/cjs/internal-content-types/Media.js.map +1 -1
- package/dist/cjs/internal-content-types/MediaFolder.js +1 -0
- package/dist/cjs/internal-content-types/MediaFolder.js.map +1 -1
- package/dist/cjs/internal-content-types/Migration.js +4 -0
- package/dist/cjs/internal-content-types/Migration.js.map +1 -1
- package/dist/cjs/internal-content-types/MigrationLock.js +1 -0
- package/dist/cjs/internal-content-types/MigrationLock.js.map +1 -1
- package/dist/cjs/internal-content-types/Page.js +7 -8
- package/dist/cjs/internal-content-types/Page.js.map +1 -1
- package/dist/cjs/internal-content-types/Redirect.js +1 -0
- package/dist/cjs/internal-content-types/Redirect.js.map +1 -1
- package/dist/cjs/internal-content-types/RobotsRule.js +1 -0
- package/dist/cjs/internal-content-types/RobotsRule.js.map +1 -1
- package/dist/cjs/internal-content-types/Route.js +1 -1
- package/dist/cjs/internal-content-types/Route.js.map +1 -1
- package/dist/cjs/internal-content-types/RouteLayoutModule.js +1 -0
- package/dist/cjs/internal-content-types/RouteLayoutModule.js.map +1 -1
- package/dist/cjs/internal-content-types/RouteLayoutModuleOverride.js +1 -0
- package/dist/cjs/internal-content-types/RouteLayoutModuleOverride.js.map +1 -1
- package/dist/cjs/internal-content-types/RouteLocaleVariant.js +23 -0
- package/dist/cjs/internal-content-types/RouteLocaleVariant.js.map +1 -0
- package/dist/cjs/internal-content-types/RouteMap.js +5 -0
- package/dist/cjs/internal-content-types/RouteMap.js.map +1 -1
- package/dist/cjs/internal-content-types/RouteSettings.js +1 -0
- package/dist/cjs/internal-content-types/RouteSettings.js.map +1 -1
- package/dist/cjs/internal-content-types/SchemaState.js +4 -0
- package/dist/cjs/internal-content-types/SchemaState.js.map +1 -1
- package/dist/cjs/internal-content-types/Seo.js +4 -2
- package/dist/cjs/internal-content-types/Seo.js.map +1 -1
- package/dist/cjs/internal-content-types/SeoSettings.js +2 -2
- package/dist/cjs/internal-content-types/SeoSettings.js.map +1 -1
- package/dist/cjs/internal-content-types/index.js +4 -0
- package/dist/cjs/internal-content-types/index.js.map +1 -1
- package/dist/cjs/lib/ContentType.js +185 -8
- package/dist/cjs/lib/ContentType.js.map +1 -1
- package/dist/cjs/lib/Permissions.js +69 -77
- package/dist/cjs/lib/Permissions.js.map +1 -1
- package/dist/cjs/lib/Registry.js +9 -0
- package/dist/cjs/lib/Registry.js.map +1 -1
- package/dist/cjs/lib/dynamicData.js +53 -0
- package/dist/cjs/lib/dynamicData.js.map +1 -0
- package/dist/cjs/lib/errors/throwAppError.js +27 -3
- package/dist/cjs/lib/errors/throwAppError.js.map +1 -1
- package/dist/cjs/lib/fields/Field.js +26 -0
- package/dist/cjs/lib/fields/Field.js.map +1 -1
- package/dist/cjs/lib/fields/List.js +25 -4
- package/dist/cjs/lib/fields/List.js.map +1 -1
- package/dist/cjs/lib/fields/Relation.js +3 -0
- package/dist/cjs/lib/fields/Relation.js.map +1 -1
- package/dist/cjs/lib/hooks.js +3 -0
- package/dist/cjs/lib/hooks.js.map +1 -0
- package/dist/cjs/lib/localeVariants.js +20 -0
- package/dist/cjs/lib/localeVariants.js.map +1 -0
- package/dist/cjs/lib/routeableContent.js +18 -0
- package/dist/cjs/lib/routeableContent.js.map +1 -0
- package/dist/cjs/lib/systemFields.js +6 -0
- package/dist/cjs/lib/systemFields.js.map +1 -0
- package/dist/cjs/manager.js +4 -9
- package/dist/cjs/manager.js.map +1 -1
- package/dist/cjs/media/mediaService.js +2 -1
- package/dist/cjs/media/mediaService.js.map +1 -1
- package/dist/cjs/orm/createIndexes.js +23 -7
- package/dist/cjs/orm/createIndexes.js.map +1 -1
- package/dist/cjs/orm/index.js +7 -6
- package/dist/cjs/orm/index.js.map +1 -1
- package/dist/cjs/orm/operations/create.js +25 -8
- package/dist/cjs/orm/operations/create.js.map +1 -1
- package/dist/cjs/orm/operations/delete.js +22 -2
- package/dist/cjs/orm/operations/delete.js.map +1 -1
- package/dist/cjs/orm/operations/findDependencies.js +75 -53
- package/dist/cjs/orm/operations/findDependencies.js.map +1 -1
- package/dist/cjs/orm/operations/update.js +43 -17
- package/dist/cjs/orm/operations/update.js.map +1 -1
- package/dist/cjs/orm/operations/updateMany.js +24 -7
- package/dist/cjs/orm/operations/updateMany.js.map +1 -1
- package/dist/cjs/orm/operations/upsert.js +3 -3
- package/dist/cjs/orm/operations/upsert.js.map +1 -1
- package/dist/cjs/plugins.js +113 -0
- package/dist/cjs/plugins.js.map +1 -0
- package/dist/cjs/schemas/manager/auth/accountInfo.js +1 -0
- package/dist/cjs/schemas/manager/auth/accountInfo.js.map +1 -1
- package/dist/cjs/schemas/manager/auth/login.js +1 -0
- package/dist/cjs/schemas/manager/auth/login.js.map +1 -1
- package/dist/cjs/schemas/manager/auth/totp/verifyTotp.js +1 -0
- package/dist/cjs/schemas/manager/auth/totp/verifyTotp.js.map +1 -1
- package/dist/cjs/schemas/manager/auth/webauthn/webauthnAuthVerify.js +1 -0
- package/dist/cjs/schemas/manager/auth/webauthn/webauthnAuthVerify.js.map +1 -1
- package/dist/cjs/schemas/manager/comments.js +48 -0
- package/dist/cjs/schemas/manager/comments.js.map +1 -0
- package/dist/cjs/schemas/manager/contentType.js +11 -0
- package/dist/cjs/schemas/manager/contentType.js.map +1 -0
- package/dist/cjs/schemas/manager/favorites.js +37 -0
- package/dist/cjs/schemas/manager/favorites.js.map +1 -0
- package/dist/cjs/schemas/manager/localeVariants.js +62 -0
- package/dist/cjs/schemas/manager/localeVariants.js.map +1 -0
- package/dist/cjs/schemas/manager/media/finalizeUpload.js +1 -0
- package/dist/cjs/schemas/manager/media/finalizeUpload.js.map +1 -1
- package/dist/cjs/schemas/manager/media/getMediaUrl.js +1 -1
- package/dist/cjs/schemas/manager/media/getMediaUrl.js.map +1 -1
- package/dist/cjs/schemas/manager/media/prepareUpload.js +1 -0
- package/dist/cjs/schemas/manager/media/prepareUpload.js.map +1 -1
- package/dist/cjs/schemas/manager/users.js +21 -0
- package/dist/cjs/schemas/manager/users.js.map +1 -0
- package/dist/esm/api/hooks/context.d.ts +4 -0
- package/dist/esm/api/hooks/context.d.ts.map +1 -0
- package/dist/esm/api/hooks/context.js +12 -0
- package/dist/esm/api/hooks/context.js.map +1 -0
- package/dist/esm/api/hooks/runContentHooks.d.ts +80 -0
- package/dist/esm/api/hooks/runContentHooks.d.ts.map +1 -0
- package/dist/esm/api/hooks/runContentHooks.js +159 -0
- package/dist/esm/api/hooks/runContentHooks.js.map +1 -0
- package/dist/esm/api/operations/index.d.ts +530 -4
- package/dist/esm/api/operations/index.d.ts.map +1 -1
- package/dist/esm/api/operations/manager-contract.d.ts +521 -4
- package/dist/esm/api/operations/manager-contract.d.ts.map +1 -1
- package/dist/esm/api/operations/manager-contract.js +88 -1
- package/dist/esm/api/operations/manager-contract.js.map +1 -1
- package/dist/esm/api/operations/manager-manifest.d.ts +288 -0
- package/dist/esm/api/operations/manager-manifest.d.ts.map +1 -0
- package/dist/esm/api/operations/manager-manifest.js +288 -0
- package/dist/esm/api/operations/manager-manifest.js.map +1 -0
- package/dist/esm/api/operations/manager.d.ts +520 -4
- package/dist/esm/api/operations/manager.d.ts.map +1 -1
- package/dist/esm/api/operations/manager.js +47 -3
- package/dist/esm/api/operations/manager.js.map +1 -1
- package/dist/esm/api/operations/web-contract.d.ts +11 -0
- package/dist/esm/api/operations/web-contract.d.ts.map +1 -1
- package/dist/esm/api/operations/web.d.ts +10 -0
- package/dist/esm/api/operations/web.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/apiOperations.js +1 -1
- package/dist/esm/api/routes/manager/apiOperations.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/getSession.d.ts +6 -1
- package/dist/esm/api/routes/manager/auth/getSession.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/login.d.ts +3 -1
- package/dist/esm/api/routes/manager/auth/login.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/login.js +20 -4
- package/dist/esm/api/routes/manager/auth/login.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/markTourSeen.d.ts +6 -1
- package/dist/esm/api/routes/manager/auth/markTourSeen.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/markTourSeen.js +3 -1
- package/dist/esm/api/routes/manager/auth/markTourSeen.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/totp/verifyTotp.d.ts +2 -0
- package/dist/esm/api/routes/manager/auth/totp/verifyTotp.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/totp/verifyTotp.js +11 -1
- package/dist/esm/api/routes/manager/auth/totp/verifyTotp.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/updateAccount.d.ts +6 -1
- package/dist/esm/api/routes/manager/auth/updateAccount.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/updateAccount.js +6 -1
- package/dist/esm/api/routes/manager/auth/updateAccount.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/updatePassword.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/updatePassword.js +15 -5
- package/dist/esm/api/routes/manager/auth/updatePassword.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.d.ts +6 -1
- package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.js +3 -1
- package/dist/esm/api/routes/manager/auth/updateTutorialPreferences.js.map +1 -1
- package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.d.ts +1 -0
- package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.js +11 -1
- package/dist/esm/api/routes/manager/auth/webauthn/webauthnAuthVerify.js.map +1 -1
- package/dist/esm/api/routes/manager/backups/create.js +1 -1
- package/dist/esm/api/routes/manager/backups/create.js.map +1 -1
- package/dist/esm/api/routes/manager/backups/list.js +1 -1
- package/dist/esm/api/routes/manager/backups/list.js.map +1 -1
- package/dist/esm/api/routes/manager/backups/restore.js +1 -1
- package/dist/esm/api/routes/manager/backups/restore.js.map +1 -1
- package/dist/esm/api/routes/manager/comments.d.ts +15 -0
- package/dist/esm/api/routes/manager/comments.d.ts.map +1 -0
- package/dist/esm/api/routes/manager/comments.js +203 -0
- package/dist/esm/api/routes/manager/comments.js.map +1 -0
- package/dist/esm/api/routes/manager/contentType.d.ts +52 -0
- package/dist/esm/api/routes/manager/contentType.d.ts.map +1 -0
- package/dist/esm/api/routes/manager/contentType.js +15 -0
- package/dist/esm/api/routes/manager/contentType.js.map +1 -0
- package/dist/esm/api/routes/manager/contentTypes.d.ts +17 -0
- package/dist/esm/api/routes/manager/contentTypes.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/create.d.ts +3 -0
- package/dist/esm/api/routes/manager/create.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/create.js +10 -11
- package/dist/esm/api/routes/manager/create.js.map +1 -1
- package/dist/esm/api/routes/manager/delete.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/delete.js +11 -4
- package/dist/esm/api/routes/manager/delete.js.map +1 -1
- package/dist/esm/api/routes/manager/duplicate.d.ts +2 -0
- package/dist/esm/api/routes/manager/duplicate.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/favorites.d.ts +11 -0
- package/dist/esm/api/routes/manager/favorites.d.ts.map +1 -0
- package/dist/esm/api/routes/manager/favorites.js +132 -0
- package/dist/esm/api/routes/manager/favorites.js.map +1 -0
- package/dist/esm/api/routes/manager/get.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/get.js +3 -2
- package/dist/esm/api/routes/manager/get.js.map +1 -1
- package/dist/esm/api/routes/manager/languages.d.ts +2 -0
- package/dist/esm/api/routes/manager/languages.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/list.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/list.js +24 -9
- package/dist/esm/api/routes/manager/list.js.map +1 -1
- package/dist/esm/api/routes/manager/literals/list.js +1 -1
- package/dist/esm/api/routes/manager/literals/list.js.map +1 -1
- package/dist/esm/api/routes/manager/literals/upsert.js +1 -1
- package/dist/esm/api/routes/manager/literals/upsert.js.map +1 -1
- package/dist/esm/api/routes/manager/localeVariants.d.ts +133 -0
- package/dist/esm/api/routes/manager/localeVariants.d.ts.map +1 -0
- package/dist/esm/api/routes/manager/localeVariants.js +293 -0
- package/dist/esm/api/routes/manager/localeVariants.js.map +1 -0
- package/dist/esm/api/routes/manager/media/finalizeUpload.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/media/finalizeUpload.js +24 -1
- package/dist/esm/api/routes/manager/media/finalizeUpload.js.map +1 -1
- package/dist/esm/api/routes/manager/media/getMediaUrl.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/media/getMediaUrl.js +34 -2
- package/dist/esm/api/routes/manager/media/getMediaUrl.js.map +1 -1
- package/dist/esm/api/routes/manager/media/prepareUpload.d.ts +2 -1
- package/dist/esm/api/routes/manager/media/prepareUpload.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/media/prepareUpload.js +12 -1
- package/dist/esm/api/routes/manager/media/prepareUpload.js.map +1 -1
- package/dist/esm/api/routes/manager/media/uploadBinary.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/media/uploadBinary.js +71 -5
- package/dist/esm/api/routes/manager/media/uploadBinary.js.map +1 -1
- package/dist/esm/api/routes/manager/migrations/list.js +1 -1
- package/dist/esm/api/routes/manager/migrations/list.js.map +1 -1
- package/dist/esm/api/routes/manager/permissions.js +1 -1
- package/dist/esm/api/routes/manager/permissions.js.map +1 -1
- package/dist/esm/api/routes/manager/preview/create.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/preview/create.js +5 -1
- package/dist/esm/api/routes/manager/preview/create.js.map +1 -1
- package/dist/esm/api/routes/manager/regenerateRoutes.js +1 -1
- package/dist/esm/api/routes/manager/regenerateRoutes.js.map +1 -1
- package/dist/esm/api/routes/manager/setDefaultLanguage.d.ts +2 -2
- package/dist/esm/api/routes/manager/setDefaultLanguage.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/setDefaultLanguage.js +7 -2
- package/dist/esm/api/routes/manager/setDefaultLanguage.js.map +1 -1
- package/dist/esm/api/routes/manager/translateDocument.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/translateDocument.js +1 -9
- package/dist/esm/api/routes/manager/translateDocument.js.map +1 -1
- package/dist/esm/api/routes/manager/trash.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/trash.js +7 -2
- package/dist/esm/api/routes/manager/trash.js.map +1 -1
- package/dist/esm/api/routes/manager/update.d.ts +3 -0
- package/dist/esm/api/routes/manager/update.d.ts.map +1 -1
- package/dist/esm/api/routes/manager/update.js +5 -10
- package/dist/esm/api/routes/manager/update.js.map +1 -1
- package/dist/esm/api/routes/manager/users.d.ts +16 -0
- package/dist/esm/api/routes/manager/users.d.ts.map +1 -0
- package/dist/esm/api/routes/manager/users.js +32 -0
- package/dist/esm/api/routes/manager/users.js.map +1 -0
- package/dist/esm/api/routes/manager/versions/get.js +1 -1
- package/dist/esm/api/routes/manager/versions/get.js.map +1 -1
- package/dist/esm/api/routes/manager/versions/list.js +1 -1
- package/dist/esm/api/routes/manager/versions/list.js.map +1 -1
- package/dist/esm/api/routes/manager/versions/restore.js +1 -1
- package/dist/esm/api/routes/manager/versions/restore.js.map +1 -1
- package/dist/esm/api/routes/web/page.d.ts +2 -1
- package/dist/esm/api/routes/web/page.d.ts.map +1 -1
- package/dist/esm/api/routes/web/page.js +170 -121
- package/dist/esm/api/routes/web/page.js.map +1 -1
- package/dist/esm/api/routes/web/previewPage.d.ts +4 -0
- package/dist/esm/api/routes/web/previewPage.d.ts.map +1 -1
- package/dist/esm/api/routes/web/robots.d.ts.map +1 -1
- package/dist/esm/api/routes/web/robots.js +10 -8
- package/dist/esm/api/routes/web/robots.js.map +1 -1
- package/dist/esm/api/sessionCookie.d.ts +1 -0
- package/dist/esm/api/sessionCookie.d.ts.map +1 -1
- package/dist/esm/api/sessionCookie.js +12 -2
- package/dist/esm/api/sessionCookie.js.map +1 -1
- package/dist/esm/api/utils/authRateLimit.d.ts +9 -0
- package/dist/esm/api/utils/authRateLimit.d.ts.map +1 -0
- package/dist/esm/api/utils/authRateLimit.js +37 -0
- package/dist/esm/api/utils/authRateLimit.js.map +1 -0
- package/dist/esm/api/utils/checkOwnership.d.ts.map +1 -1
- package/dist/esm/api/utils/checkOwnership.js +10 -7
- package/dist/esm/api/utils/checkOwnership.js.map +1 -1
- package/dist/esm/api/utils/dynamicData.d.ts +23 -0
- package/dist/esm/api/utils/dynamicData.d.ts.map +1 -0
- package/dist/esm/api/utils/dynamicData.js +312 -0
- package/dist/esm/api/utils/dynamicData.js.map +1 -0
- package/dist/esm/api/utils/getLanguages.d.ts +3 -19
- package/dist/esm/api/utils/getLanguages.d.ts.map +1 -1
- package/dist/esm/api/utils/getLanguages.js +8 -1
- package/dist/esm/api/utils/getLanguages.js.map +1 -1
- package/dist/esm/api/utils/getLink.d.ts +2 -2
- package/dist/esm/api/utils/getLink.d.ts.map +1 -1
- package/dist/esm/api/utils/getLink.js +24 -6
- package/dist/esm/api/utils/getLink.js.map +1 -1
- package/dist/esm/api/utils/getUser.d.ts +6 -1
- package/dist/esm/api/utils/getUser.d.ts.map +1 -1
- package/dist/esm/api/utils/getUser.js +7 -1
- package/dist/esm/api/utils/getUser.js.map +1 -1
- package/dist/esm/api/utils/index.d.ts +2 -1
- package/dist/esm/api/utils/index.d.ts.map +1 -1
- package/dist/esm/api/utils/index.js +2 -1
- package/dist/esm/api/utils/index.js.map +1 -1
- package/dist/esm/api/utils/localeVariants.d.ts +8 -0
- package/dist/esm/api/utils/localeVariants.d.ts.map +1 -0
- package/dist/esm/api/utils/localeVariants.js +41 -0
- package/dist/esm/api/utils/localeVariants.js.map +1 -0
- package/dist/esm/api/utils/mediaUploadToken.d.ts +13 -0
- package/dist/esm/api/utils/mediaUploadToken.d.ts.map +1 -0
- package/dist/esm/api/utils/mediaUploadToken.js +44 -0
- package/dist/esm/api/utils/mediaUploadToken.js.map +1 -0
- package/dist/esm/api/utils/passwords.d.ts +5 -0
- package/dist/esm/api/utils/passwords.d.ts.map +1 -1
- package/dist/esm/api/utils/passwords.js +22 -0
- package/dist/esm/api/utils/passwords.js.map +1 -1
- package/dist/esm/api/utils/populates/populateLinks.d.ts.map +1 -1
- package/dist/esm/api/utils/populates/populateLinks.js +12 -3
- package/dist/esm/api/utils/populates/populateLinks.js.map +1 -1
- package/dist/esm/api/utils/populates/populateRelations.d.ts +6 -2
- package/dist/esm/api/utils/populates/populateRelations.d.ts.map +1 -1
- package/dist/esm/api/utils/populates/populateRelations.js +23 -4
- package/dist/esm/api/utils/populates/populateRelations.js.map +1 -1
- package/dist/esm/api/utils/routes/routeDefinitions.d.ts +0 -1
- package/dist/esm/api/utils/routes/routeDefinitions.d.ts.map +1 -1
- package/dist/esm/api/utils/routes/routeDefinitions.js.map +1 -1
- package/dist/esm/api/utils/routes/routeMapHelpers.d.ts +11 -4
- package/dist/esm/api/utils/routes/routeMapHelpers.d.ts.map +1 -1
- package/dist/esm/api/utils/routes/routeMapHelpers.js +130 -23
- package/dist/esm/api/utils/routes/routeMapHelpers.js.map +1 -1
- package/dist/esm/api/utils/routes/syncConfiguredRoutes.d.ts.map +1 -1
- package/dist/esm/api/utils/routes/syncConfiguredRoutes.js +0 -1
- package/dist/esm/api/utils/routes/syncConfiguredRoutes.js.map +1 -1
- package/dist/esm/api/utils/routes/updateRoutesMap.d.ts.map +1 -1
- package/dist/esm/api/utils/routes/updateRoutesMap.js +68 -27
- package/dist/esm/api/utils/routes/updateRoutesMap.js.map +1 -1
- package/dist/esm/api/utils/safeManagerQuery.d.ts +4 -0
- package/dist/esm/api/utils/safeManagerQuery.d.ts.map +1 -0
- package/dist/esm/api/utils/safeManagerQuery.js +225 -0
- package/dist/esm/api/utils/safeManagerQuery.js.map +1 -0
- package/dist/esm/api/utils/sanitizeManagerOutput.d.ts +3 -0
- package/dist/esm/api/utils/sanitizeManagerOutput.d.ts.map +1 -0
- package/dist/esm/api/utils/sanitizeManagerOutput.js +35 -0
- package/dist/esm/api/utils/sanitizeManagerOutput.js.map +1 -0
- package/dist/esm/bootstrapState.d.ts +8 -4
- package/dist/esm/bootstrapState.d.ts.map +1 -1
- package/dist/esm/bootstrapState.js.map +1 -1
- package/dist/esm/client.d.ts +8 -1
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +4 -1
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/contracts.d.ts +5 -0
- package/dist/esm/contracts.d.ts.map +1 -1
- package/dist/esm/contracts.js +5 -0
- package/dist/esm/contracts.js.map +1 -1
- package/dist/esm/index.d.ts +11 -7
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +43 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal-content-types/ApiOperation.d.ts +811 -0
- package/dist/esm/internal-content-types/ApiOperation.d.ts.map +1 -0
- package/dist/esm/internal-content-types/ApiOperation.js +17 -0
- package/dist/esm/internal-content-types/ApiOperation.js.map +1 -0
- package/dist/esm/internal-content-types/Backup.d.ts +15 -1
- package/dist/esm/internal-content-types/Backup.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Backup.js +1 -0
- package/dist/esm/internal-content-types/Backup.js.map +1 -1
- package/dist/esm/internal-content-types/BackupDocument.d.ts +33 -1
- package/dist/esm/internal-content-types/BackupDocument.d.ts.map +1 -1
- package/dist/esm/internal-content-types/BackupDocument.js +1 -0
- package/dist/esm/internal-content-types/BackupDocument.js.map +1 -1
- package/dist/esm/internal-content-types/ContentComment.d.ts +4708 -0
- package/dist/esm/internal-content-types/ContentComment.d.ts.map +1 -0
- package/dist/esm/internal-content-types/ContentComment.js +16 -0
- package/dist/esm/internal-content-types/ContentComment.js.map +1 -0
- package/dist/esm/internal-content-types/ContentVersion.d.ts +39 -1
- package/dist/esm/internal-content-types/ContentVersion.d.ts.map +1 -1
- package/dist/esm/internal-content-types/ContentVersion.js +1 -0
- package/dist/esm/internal-content-types/ContentVersion.js.map +1 -1
- package/dist/esm/internal-content-types/HelloWorld.d.ts +10 -2
- package/dist/esm/internal-content-types/HelloWorld.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Language.d.ts +11 -1
- package/dist/esm/internal-content-types/Language.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Language.js +1 -0
- package/dist/esm/internal-content-types/Language.js.map +1 -1
- package/dist/esm/internal-content-types/LiteralTranslation.d.ts +17 -1
- package/dist/esm/internal-content-types/LiteralTranslation.d.ts.map +1 -1
- package/dist/esm/internal-content-types/LiteralTranslation.js +1 -0
- package/dist/esm/internal-content-types/LiteralTranslation.js.map +1 -1
- package/dist/esm/internal-content-types/ManagerFavorite.d.ts +3266 -0
- package/dist/esm/internal-content-types/ManagerFavorite.d.ts.map +1 -0
- package/dist/esm/internal-content-types/ManagerFavorite.js +14 -0
- package/dist/esm/internal-content-types/ManagerFavorite.js.map +1 -0
- package/dist/esm/internal-content-types/ManagerRole.d.ts +12 -2
- package/dist/esm/internal-content-types/ManagerRole.d.ts.map +1 -1
- package/dist/esm/internal-content-types/ManagerRole.js +2 -4
- package/dist/esm/internal-content-types/ManagerRole.js.map +1 -1
- package/dist/esm/internal-content-types/ManagerUser.d.ts +78 -13
- package/dist/esm/internal-content-types/ManagerUser.d.ts.map +1 -1
- package/dist/esm/internal-content-types/ManagerUser.js +2 -0
- package/dist/esm/internal-content-types/ManagerUser.js.map +1 -1
- package/dist/esm/internal-content-types/ManagerUserHooks.d.ts +5 -0
- package/dist/esm/internal-content-types/ManagerUserHooks.d.ts.map +1 -0
- package/dist/esm/internal-content-types/ManagerUserHooks.js +38 -0
- package/dist/esm/internal-content-types/ManagerUserHooks.js.map +1 -0
- package/dist/esm/internal-content-types/Media.d.ts +70 -2
- package/dist/esm/internal-content-types/Media.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Media.js +1 -0
- package/dist/esm/internal-content-types/Media.js.map +1 -1
- package/dist/esm/internal-content-types/MediaFolder.d.ts +25 -1
- package/dist/esm/internal-content-types/MediaFolder.d.ts.map +1 -1
- package/dist/esm/internal-content-types/MediaFolder.js +1 -0
- package/dist/esm/internal-content-types/MediaFolder.js.map +1 -1
- package/dist/esm/internal-content-types/MfaChallenge.d.ts +225 -34
- package/dist/esm/internal-content-types/MfaChallenge.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Migration.d.ts +37 -1
- package/dist/esm/internal-content-types/Migration.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Migration.js +4 -0
- package/dist/esm/internal-content-types/Migration.js.map +1 -1
- package/dist/esm/internal-content-types/MigrationLock.d.ts +5 -1
- package/dist/esm/internal-content-types/MigrationLock.d.ts.map +1 -1
- package/dist/esm/internal-content-types/MigrationLock.js +1 -0
- package/dist/esm/internal-content-types/MigrationLock.js.map +1 -1
- package/dist/esm/internal-content-types/Page.d.ts +32 -9193
- package/dist/esm/internal-content-types/Page.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Page.js +7 -8
- package/dist/esm/internal-content-types/Page.js.map +1 -1
- package/dist/esm/internal-content-types/PreviewSnapshot.d.ts +61 -1
- package/dist/esm/internal-content-types/PreviewSnapshot.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Redirect.d.ts +41 -1
- package/dist/esm/internal-content-types/Redirect.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Redirect.js +1 -0
- package/dist/esm/internal-content-types/Redirect.js.map +1 -1
- package/dist/esm/internal-content-types/RobotsRule.d.ts +29 -1
- package/dist/esm/internal-content-types/RobotsRule.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RobotsRule.js +1 -0
- package/dist/esm/internal-content-types/RobotsRule.js.map +1 -1
- package/dist/esm/internal-content-types/Route.d.ts +36 -195
- package/dist/esm/internal-content-types/Route.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Route.js +1 -1
- package/dist/esm/internal-content-types/Route.js.map +1 -1
- package/dist/esm/internal-content-types/RouteLayoutModule.d.ts +47 -1
- package/dist/esm/internal-content-types/RouteLayoutModule.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RouteLayoutModule.js +1 -0
- package/dist/esm/internal-content-types/RouteLayoutModule.js.map +1 -1
- package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts +41 -1
- package/dist/esm/internal-content-types/RouteLayoutModuleOverride.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RouteLayoutModuleOverride.js +1 -0
- package/dist/esm/internal-content-types/RouteLayoutModuleOverride.js.map +1 -1
- package/dist/esm/internal-content-types/RouteLocaleVariant.d.ts +1215 -0
- package/dist/esm/internal-content-types/RouteLocaleVariant.d.ts.map +1 -0
- package/dist/esm/internal-content-types/RouteLocaleVariant.js +17 -0
- package/dist/esm/internal-content-types/RouteLocaleVariant.js.map +1 -0
- package/dist/esm/internal-content-types/RouteMap.d.ts +42 -1
- package/dist/esm/internal-content-types/RouteMap.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RouteMap.js +5 -0
- package/dist/esm/internal-content-types/RouteMap.js.map +1 -1
- package/dist/esm/internal-content-types/RouteSettings.d.ts +41 -9194
- package/dist/esm/internal-content-types/RouteSettings.d.ts.map +1 -1
- package/dist/esm/internal-content-types/RouteSettings.js +1 -0
- package/dist/esm/internal-content-types/RouteSettings.js.map +1 -1
- package/dist/esm/internal-content-types/SchemaState.d.ts +19 -1
- package/dist/esm/internal-content-types/SchemaState.d.ts.map +1 -1
- package/dist/esm/internal-content-types/SchemaState.js +4 -0
- package/dist/esm/internal-content-types/SchemaState.js.map +1 -1
- package/dist/esm/internal-content-types/Seo.d.ts +131 -11
- package/dist/esm/internal-content-types/Seo.d.ts.map +1 -1
- package/dist/esm/internal-content-types/Seo.js +4 -2
- package/dist/esm/internal-content-types/Seo.js.map +1 -1
- package/dist/esm/internal-content-types/SeoSettings.d.ts +349 -13
- package/dist/esm/internal-content-types/SeoSettings.d.ts.map +1 -1
- package/dist/esm/internal-content-types/SeoSettings.js +2 -2
- package/dist/esm/internal-content-types/SeoSettings.js.map +1 -1
- package/dist/esm/internal-content-types/Session.d.ts +215 -34
- package/dist/esm/internal-content-types/Session.d.ts.map +1 -1
- package/dist/esm/internal-content-types/UserMfa.d.ts +205 -34
- package/dist/esm/internal-content-types/UserMfa.d.ts.map +1 -1
- package/dist/esm/internal-content-types/WebAuthnCredential.d.ts +241 -34
- package/dist/esm/internal-content-types/WebAuthnCredential.d.ts.map +1 -1
- package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts +223 -34
- package/dist/esm/internal-content-types/WebAuthnRegChallenge.d.ts.map +1 -1
- package/dist/esm/internal-content-types/index.d.ts +4 -0
- package/dist/esm/internal-content-types/index.d.ts.map +1 -1
- package/dist/esm/internal-content-types/index.js +4 -0
- package/dist/esm/internal-content-types/index.js.map +1 -1
- package/dist/esm/lib/ContentType.d.ts +132 -18
- package/dist/esm/lib/ContentType.d.ts.map +1 -1
- package/dist/esm/lib/ContentType.js +184 -7
- package/dist/esm/lib/ContentType.js.map +1 -1
- package/dist/esm/lib/Permissions.d.ts +7 -3
- package/dist/esm/lib/Permissions.d.ts.map +1 -1
- package/dist/esm/lib/Permissions.js +66 -76
- package/dist/esm/lib/Permissions.js.map +1 -1
- package/dist/esm/lib/Registry.d.ts +37 -4
- package/dist/esm/lib/Registry.d.ts.map +1 -1
- package/dist/esm/lib/Registry.js +9 -0
- package/dist/esm/lib/Registry.js.map +1 -1
- package/dist/esm/lib/dynamicData.d.ts +88 -0
- package/dist/esm/lib/dynamicData.d.ts.map +1 -0
- package/dist/esm/lib/dynamicData.js +45 -0
- package/dist/esm/lib/dynamicData.js.map +1 -0
- package/dist/esm/lib/errors/throwAppError.d.ts.map +1 -1
- package/dist/esm/lib/errors/throwAppError.js +27 -3
- package/dist/esm/lib/errors/throwAppError.js.map +1 -1
- package/dist/esm/lib/fields/Field.d.ts +30 -1
- package/dist/esm/lib/fields/Field.d.ts.map +1 -1
- package/dist/esm/lib/fields/Field.js +25 -0
- package/dist/esm/lib/fields/Field.js.map +1 -1
- package/dist/esm/lib/fields/List.d.ts.map +1 -1
- package/dist/esm/lib/fields/List.js +25 -4
- package/dist/esm/lib/fields/List.js.map +1 -1
- package/dist/esm/lib/fields/Relation.js +3 -0
- package/dist/esm/lib/fields/Relation.js.map +1 -1
- package/dist/esm/lib/hooks.d.ts +89 -0
- package/dist/esm/lib/hooks.d.ts.map +1 -0
- package/dist/esm/lib/hooks.js +2 -0
- package/dist/esm/lib/hooks.js.map +1 -0
- package/dist/esm/lib/localeVariants.d.ts +20 -0
- package/dist/esm/lib/localeVariants.d.ts.map +1 -0
- package/dist/esm/lib/localeVariants.js +11 -0
- package/dist/esm/lib/localeVariants.js.map +1 -0
- package/dist/esm/lib/routeableContent.d.ts +5 -0
- package/dist/esm/lib/routeableContent.d.ts.map +1 -0
- package/dist/esm/lib/routeableContent.js +11 -0
- package/dist/esm/lib/routeableContent.js.map +1 -0
- package/dist/esm/lib/systemFields.d.ts +3 -0
- package/dist/esm/lib/systemFields.d.ts.map +1 -0
- package/dist/esm/lib/systemFields.js +3 -0
- package/dist/esm/lib/systemFields.js.map +1 -0
- package/dist/esm/lib/types/index.d.ts +2 -0
- package/dist/esm/lib/types/index.d.ts.map +1 -1
- package/dist/esm/manager.d.ts +283 -2879
- package/dist/esm/manager.d.ts.map +1 -1
- package/dist/esm/manager.js +2 -6
- package/dist/esm/manager.js.map +1 -1
- package/dist/esm/media/mediaService.d.ts +2 -0
- package/dist/esm/media/mediaService.d.ts.map +1 -1
- package/dist/esm/media/mediaService.js +2 -1
- package/dist/esm/media/mediaService.js.map +1 -1
- package/dist/esm/orm/createIndexes.d.ts.map +1 -1
- package/dist/esm/orm/createIndexes.js +24 -8
- package/dist/esm/orm/createIndexes.js.map +1 -1
- package/dist/esm/orm/index.d.ts.map +1 -1
- package/dist/esm/orm/index.js +7 -6
- package/dist/esm/orm/index.js.map +1 -1
- package/dist/esm/orm/operations/create.d.ts +2 -1
- package/dist/esm/orm/operations/create.d.ts.map +1 -1
- package/dist/esm/orm/operations/create.js +25 -8
- package/dist/esm/orm/operations/create.js.map +1 -1
- package/dist/esm/orm/operations/delete.d.ts +2 -2
- package/dist/esm/orm/operations/delete.d.ts.map +1 -1
- package/dist/esm/orm/operations/delete.js +23 -3
- package/dist/esm/orm/operations/delete.js.map +1 -1
- package/dist/esm/orm/operations/findDependencies.d.ts +1 -1
- package/dist/esm/orm/operations/findDependencies.d.ts.map +1 -1
- package/dist/esm/orm/operations/findDependencies.js +75 -53
- package/dist/esm/orm/operations/findDependencies.js.map +1 -1
- package/dist/esm/orm/operations/update.d.ts +2 -1
- package/dist/esm/orm/operations/update.d.ts.map +1 -1
- package/dist/esm/orm/operations/update.js +43 -17
- package/dist/esm/orm/operations/update.js.map +1 -1
- package/dist/esm/orm/operations/updateMany.d.ts +2 -1
- package/dist/esm/orm/operations/updateMany.d.ts.map +1 -1
- package/dist/esm/orm/operations/updateMany.js +24 -7
- package/dist/esm/orm/operations/updateMany.js.map +1 -1
- package/dist/esm/orm/operations/upsert.d.ts +2 -2
- package/dist/esm/orm/operations/upsert.d.ts.map +1 -1
- package/dist/esm/orm/operations/upsert.js +4 -4
- package/dist/esm/orm/operations/upsert.js.map +1 -1
- package/dist/esm/plugins.d.ts +55 -0
- package/dist/esm/plugins.d.ts.map +1 -0
- package/dist/esm/plugins.js +106 -0
- package/dist/esm/plugins.js.map +1 -0
- package/dist/esm/schemas/manager/auth/accountInfo.d.ts +1 -0
- package/dist/esm/schemas/manager/auth/accountInfo.d.ts.map +1 -1
- package/dist/esm/schemas/manager/auth/accountInfo.js +1 -0
- package/dist/esm/schemas/manager/auth/accountInfo.js.map +1 -1
- package/dist/esm/schemas/manager/auth/login.d.ts +1 -0
- package/dist/esm/schemas/manager/auth/login.d.ts.map +1 -1
- package/dist/esm/schemas/manager/auth/login.js +1 -0
- package/dist/esm/schemas/manager/auth/login.js.map +1 -1
- package/dist/esm/schemas/manager/auth/totp/verifyTotp.d.ts +1 -0
- package/dist/esm/schemas/manager/auth/totp/verifyTotp.d.ts.map +1 -1
- package/dist/esm/schemas/manager/auth/totp/verifyTotp.js +1 -0
- package/dist/esm/schemas/manager/auth/totp/verifyTotp.js.map +1 -1
- package/dist/esm/schemas/manager/auth/webauthn/webauthnAuthVerify.d.ts +1 -0
- package/dist/esm/schemas/manager/auth/webauthn/webauthnAuthVerify.d.ts.map +1 -1
- package/dist/esm/schemas/manager/auth/webauthn/webauthnAuthVerify.js +1 -0
- package/dist/esm/schemas/manager/auth/webauthn/webauthnAuthVerify.js.map +1 -1
- package/dist/esm/schemas/manager/comments.d.ts +197 -0
- package/dist/esm/schemas/manager/comments.d.ts.map +1 -0
- package/dist/esm/schemas/manager/comments.js +42 -0
- package/dist/esm/schemas/manager/comments.js.map +1 -0
- package/dist/esm/schemas/manager/contentType.d.ts +6 -0
- package/dist/esm/schemas/manager/contentType.d.ts.map +1 -0
- package/dist/esm/schemas/manager/contentType.js +5 -0
- package/dist/esm/schemas/manager/contentType.js.map +1 -0
- package/dist/esm/schemas/manager/favorites.d.ts +62 -0
- package/dist/esm/schemas/manager/favorites.d.ts.map +1 -0
- package/dist/esm/schemas/manager/favorites.js +31 -0
- package/dist/esm/schemas/manager/favorites.js.map +1 -0
- package/dist/esm/schemas/manager/localeVariants.d.ts +517 -0
- package/dist/esm/schemas/manager/localeVariants.d.ts.map +1 -0
- package/dist/esm/schemas/manager/localeVariants.js +56 -0
- package/dist/esm/schemas/manager/localeVariants.js.map +1 -0
- package/dist/esm/schemas/manager/media/finalizeUpload.d.ts +1 -0
- package/dist/esm/schemas/manager/media/finalizeUpload.d.ts.map +1 -1
- package/dist/esm/schemas/manager/media/finalizeUpload.js +1 -0
- package/dist/esm/schemas/manager/media/finalizeUpload.js.map +1 -1
- package/dist/esm/schemas/manager/media/getMediaUrl.js +1 -1
- package/dist/esm/schemas/manager/media/getMediaUrl.js.map +1 -1
- package/dist/esm/schemas/manager/media/prepareUpload.d.ts +1 -0
- package/dist/esm/schemas/manager/media/prepareUpload.d.ts.map +1 -1
- package/dist/esm/schemas/manager/media/prepareUpload.js +1 -0
- package/dist/esm/schemas/manager/media/prepareUpload.js.map +1 -1
- package/dist/esm/schemas/manager/users.d.ts +26 -0
- package/dist/esm/schemas/manager/users.d.ts.map +1 -0
- package/dist/esm/schemas/manager/users.js +15 -0
- package/dist/esm/schemas/manager/users.js.map +1 -0
- package/dist/esm/schemas/web/page.d.ts +24 -0
- package/dist/esm/schemas/web/page.d.ts.map +1 -1
- package/dist/esm/schemas/web/previewPage.d.ts +16 -0
- package/dist/esm/schemas/web/previewPage.d.ts.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +7 -1
- package/dist/cjs/api/proxies/context.js +0 -13
- package/dist/cjs/api/proxies/context.js.map +0 -1
- package/dist/cjs/api/proxies/index.js +0 -26
- package/dist/cjs/api/proxies/index.js.map +0 -1
- package/dist/cjs/internal-content-types/describeField.js +0 -9
- package/dist/cjs/internal-content-types/describeField.js.map +0 -1
- package/dist/esm/api/proxies/context.d.ts +0 -21
- package/dist/esm/api/proxies/context.d.ts.map +0 -1
- package/dist/esm/api/proxies/context.js +0 -9
- package/dist/esm/api/proxies/context.js.map +0 -1
- package/dist/esm/api/proxies/index.d.ts +0 -46
- package/dist/esm/api/proxies/index.d.ts.map +0 -1
- package/dist/esm/api/proxies/index.js +0 -19
- package/dist/esm/api/proxies/index.js.map +0 -1
- package/dist/esm/internal-content-types/describeField.d.ts +0 -4
- package/dist/esm/internal-content-types/describeField.d.ts.map +0 -1
- package/dist/esm/internal-content-types/describeField.js +0 -5
- package/dist/esm/internal-content-types/describeField.js.map +0 -1
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { throwAppError } from "../../lib/errors";
|
|
2
|
+
const attempts = new Map();
|
|
3
|
+
const cleanupExpiredAttempts = () => {
|
|
4
|
+
const now = Date.now();
|
|
5
|
+
for (const [key, bucket] of attempts.entries()) {
|
|
6
|
+
if (bucket.resetAt <= now) {
|
|
7
|
+
attempts.delete(key);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
export const getRequestRateLimitIdentifier = (ctx) => {
|
|
12
|
+
const headers = ctx?.req?.headers ?? {};
|
|
13
|
+
const forwardedFor = headers["x-forwarded-for"];
|
|
14
|
+
const realIp = headers["x-real-ip"];
|
|
15
|
+
const value = Array.isArray(forwardedFor)
|
|
16
|
+
? forwardedFor[0]
|
|
17
|
+
: forwardedFor || (Array.isArray(realIp) ? realIp[0] : realIp);
|
|
18
|
+
return String(value || "unknown").split(",")[0]?.trim() || "unknown";
|
|
19
|
+
};
|
|
20
|
+
export const assertAuthRateLimit = ({ key, limit, windowMs, }) => {
|
|
21
|
+
cleanupExpiredAttempts();
|
|
22
|
+
const now = Date.now();
|
|
23
|
+
const bucket = attempts.get(key);
|
|
24
|
+
if (bucket && bucket.resetAt > now && bucket.count >= limit) {
|
|
25
|
+
throwAppError("FORBIDDEN", {
|
|
26
|
+
reason: "RATE_LIMITED",
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
attempts.set(key, {
|
|
30
|
+
count: bucket && bucket.resetAt > now ? bucket.count + 1 : 1,
|
|
31
|
+
resetAt: bucket && bucket.resetAt > now ? bucket.resetAt : now + windowMs,
|
|
32
|
+
});
|
|
33
|
+
};
|
|
34
|
+
export const resetAuthRateLimit = (key) => {
|
|
35
|
+
attempts.delete(key);
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=authRateLimit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authRateLimit.js","sourceRoot":"","sources":["../../../../src/api/utils/authRateLimit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAOjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;AAElD,MAAM,sBAAsB,GAAG,GAAG,EAAE;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/C,IAAI,MAAM,CAAC,OAAO,IAAI,GAAG,EAAE,CAAC;YAC1B,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,GAAyB,EAAE,EAAE;IACzE,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,EAAE,OAAO,IAAI,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;QACvC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEjE,OAAO,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,GAAG,EACH,KAAK,EACL,QAAQ,GAKT,EAAE,EAAE;IACH,sBAAsB,EAAE,CAAC;IAEzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAEjC,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,IAAI,MAAM,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;QAC5D,aAAa,CAAC,WAAW,EAAE;YACzB,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;QAChB,KAAK,EAAE,MAAM,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,OAAO,EAAE,MAAM,IAAI,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ;KAC1E,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE;IAChD,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkOwnership.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/checkOwnership.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAKhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,eAAO,MAAM,cAAc,GAAU,uCAKlC;IACD,WAAW,EAAE,WAAW,CAAC;IACzB,GAAG,EAAE,mBAAmB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;CACnD,
|
|
1
|
+
{"version":3,"file":"checkOwnership.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/checkOwnership.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAKhD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGjD,eAAO,MAAM,cAAc,GAAU,uCAKlC;IACD,WAAW,EAAE,WAAW,CAAC;IACzB,GAAG,EAAE,mBAAmB,CAAC;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;CACnD,kBAqCA,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { throwAppError } from "../../lib/errors";
|
|
2
2
|
import { Logger } from "../../lib/Logger";
|
|
3
|
+
import { getContentPermission } from "../../lib/Permissions";
|
|
3
4
|
import { getMongoService } from "../../orm";
|
|
4
5
|
import { checkAnyPermissions, checkPermissions } from "./checkPermissions";
|
|
5
6
|
export const checkOwnership = async ({ ctx, contentType, id, permission, }) => {
|
|
@@ -13,16 +14,18 @@ export const checkOwnership = async ({ ctx, contentType, id, permission, }) => {
|
|
|
13
14
|
});
|
|
14
15
|
}
|
|
15
16
|
const ownsContent = search.createdBy === user._id;
|
|
17
|
+
const ownPermission = getContentPermission(contentType, "own");
|
|
18
|
+
const actionPermission = getContentPermission(contentType, permission);
|
|
16
19
|
if (ownsContent) {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
const permissions = [ownPermission, actionPermission].filter((permission) => Boolean(permission));
|
|
21
|
+
if (permissions.length > 0) {
|
|
22
|
+
checkAnyPermissions(user, permissions);
|
|
23
|
+
}
|
|
21
24
|
}
|
|
22
25
|
else {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
if (actionPermission) {
|
|
27
|
+
checkPermissions(user, [actionPermission]);
|
|
28
|
+
}
|
|
26
29
|
}
|
|
27
30
|
Logger.addTrace("ownership checked", {
|
|
28
31
|
contentType: contentType.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkOwnership.js","sourceRoot":"","sources":["../../../../src/api/utils/checkOwnership.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkOwnership.js","sourceRoot":"","sources":["../../../../src/api/utils/checkOwnership.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,GAAG,EACH,WAAW,EACX,EAAE,EACF,UAAU,GAMX,EAAE,EAAE;IACH,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAC3B,MAAM,EAAE,GAAG,MAAM,eAAe,EAAE,CAAC;IAEnC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAEtE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,aAAa,CAAC,WAAW,EAAE;YACzB,QAAQ,EAAE,WAAW,CAAC,IAAI;YAC1B,EAAE;SACH,CAAC,CAAC;IACL,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,GAAG,CAAC;IAClD,MAAM,aAAa,GAAG,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAC/D,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAEvE,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAAC,MAAM,CAC1D,CAAC,UAAU,EAAwB,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAC1D,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,gBAAgB,EAAE,CAAC;YACrB,gBAAgB,CAAC,IAAI,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE;QACnC,WAAW,EAAE,WAAW,CAAC,IAAI;QAC7B,EAAE;QACF,UAAU;QACV,KAAK,EAAE,WAAW;KACnB,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type ContentType from "../../lib/ContentType";
|
|
2
|
+
import type { DataPopulatedWithoutApiOnly } from "../../lib/types";
|
|
3
|
+
import type { DBService } from "../../orm/dbService";
|
|
4
|
+
type ResolveOptions = {
|
|
5
|
+
db: DBService;
|
|
6
|
+
contentType?: ContentType;
|
|
7
|
+
contextSource?: {
|
|
8
|
+
contentType: ContentType;
|
|
9
|
+
value: Record<string, unknown>;
|
|
10
|
+
};
|
|
11
|
+
surface: "web" | "preview";
|
|
12
|
+
};
|
|
13
|
+
export declare const mergeDynamicListItems: (currentValue: unknown, resolvedValue: unknown) => unknown[];
|
|
14
|
+
export declare const resolveDynamicData: <T>(value: T, options: ResolveOptions) => Promise<T>;
|
|
15
|
+
export declare const stripDynamicBindings: <T>(value: T) => T;
|
|
16
|
+
export declare const resolveContentOutput: <T extends ContentType>({ db, contentType, data, surface, }: {
|
|
17
|
+
db: DBService;
|
|
18
|
+
contentType: T;
|
|
19
|
+
data: DataPopulatedWithoutApiOnly<T>;
|
|
20
|
+
surface: "web" | "preview";
|
|
21
|
+
}) => Promise<(Omit<import("../../lib/types").Simplify<import("zod").infer<ReturnType<T["getPopulatedSchema"]>>> & import("../../lib/types").DBMetadata extends infer T_2 ? { [K_1 in keyof T_2]: T_2[K_1]; } : never, import("../../lib/types").ApiOnlyKeys<T["fields"]>> extends infer T_1 ? { [K in keyof T_1]: T_1[K]; } : never) | (import("../../lib/types").Simplify<import("zod").infer<ReturnType<T["getOutputSchema"]>>> & import("../../lib/types").FrontMetadata extends infer T_3 ? { [K_2 in keyof T_3]: T_3[K_2]; } : never)>;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=dynamicData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dynamicData.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/dynamicData.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,WAAW,MAAM,uBAAuB,CAAC;AASrD,OAAO,KAAK,EAAE,2BAA2B,EAAmB,MAAM,iBAAiB,CAAC;AAEpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAOrD,KAAK,cAAc,GAAG;IACpB,EAAE,EAAE,SAAS,CAAC;IACd,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,WAAW,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAChC,CAAC;IACF,OAAO,EAAE,KAAK,GAAG,SAAS,CAAC;CAC5B,CAAC;AAwSF,eAAO,MAAM,qBAAqB,GAChC,cAAc,OAAO,EACrB,eAAe,OAAO,cAkBvB,CAAC;AA4DF,eAAO,MAAM,kBAAkB,GAAU,CAAC,EACxC,OAAO,CAAC,EACR,SAAS,cAAc,KACtB,OAAO,CAAC,CAAC,CA2CX,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,CAAC,EAAE,OAAO,CAAC,KAAG,CAYlD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,CAAC,SAAS,WAAW,EAAE,qCAK/D;IACD,EAAE,EAAE,SAAS,CAAC;IACd,WAAW,EAAE,CAAC,CAAC;IACf,IAAI,EAAE,2BAA2B,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,EAAE,KAAK,GAAG,SAAS,CAAC;CAC5B,2gBAcA,CAAC"}
|
|
@@ -0,0 +1,312 @@
|
|
|
1
|
+
import { getRakunBootstrapOptions } from "../../bootstrapState";
|
|
2
|
+
import { DYNAMIC_BINDINGS_FIELD_NAME, getDynamicDocumentBindings, isDynamicDataSourceContentTypeAllowed, } from "../../lib/dynamicData";
|
|
3
|
+
import { Logger } from "../../lib/Logger";
|
|
4
|
+
import { getContentTypeByName } from "../../lib/Registry";
|
|
5
|
+
import { runOnGetHook } from "../hooks/runContentHooks";
|
|
6
|
+
import { getLink } from "./getLink";
|
|
7
|
+
import { populateLinks } from "./populates/populateLinks";
|
|
8
|
+
import { populateRelations } from "./populates/populateRelations";
|
|
9
|
+
import { parseSafeManagerQuery } from "./safeManagerQuery";
|
|
10
|
+
const isRecord = (value) => !!value && typeof value === "object" && !Array.isArray(value);
|
|
11
|
+
const getAtPath = (value, path) => {
|
|
12
|
+
if (!path)
|
|
13
|
+
return undefined;
|
|
14
|
+
return path.split(".").reduce((current, segment) => {
|
|
15
|
+
if (!isRecord(current))
|
|
16
|
+
return undefined;
|
|
17
|
+
return current[segment];
|
|
18
|
+
}, value);
|
|
19
|
+
};
|
|
20
|
+
const isPublicDocument = (value) => value._trashed !== true &&
|
|
21
|
+
value._visibility !== "draft" &&
|
|
22
|
+
value._visibility !== "trash";
|
|
23
|
+
const getAllowedSourceContentType = (sourceContentTypeName) => {
|
|
24
|
+
const contentType = getContentTypeByName(sourceContentTypeName);
|
|
25
|
+
return isDynamicDataSourceContentTypeAllowed(contentType)
|
|
26
|
+
? contentType
|
|
27
|
+
: undefined;
|
|
28
|
+
};
|
|
29
|
+
const fileSourcePaths = new Set([
|
|
30
|
+
"url",
|
|
31
|
+
"previewUrl",
|
|
32
|
+
"name",
|
|
33
|
+
"title",
|
|
34
|
+
"alt",
|
|
35
|
+
"mime",
|
|
36
|
+
"srcSet",
|
|
37
|
+
"width",
|
|
38
|
+
"height",
|
|
39
|
+
"size",
|
|
40
|
+
]);
|
|
41
|
+
const isDynamicSourcePathAllowed = (contentType, path, depth = 0) => {
|
|
42
|
+
if (!path)
|
|
43
|
+
return false;
|
|
44
|
+
const [fieldName, ...rest] = path.split(".");
|
|
45
|
+
const field = contentType.fields[fieldName];
|
|
46
|
+
if (!field || !contentType.allowsDynamicBindingForField(fieldName)) {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
if (rest.length === 0)
|
|
50
|
+
return true;
|
|
51
|
+
if (field.meta.type === "Relation" &&
|
|
52
|
+
"contentType" in field &&
|
|
53
|
+
depth < 3) {
|
|
54
|
+
return isDynamicSourcePathAllowed(field.contentType, rest.join("."), depth + 1);
|
|
55
|
+
}
|
|
56
|
+
if (field.meta.type === "File") {
|
|
57
|
+
return rest.length === 1 && fileSourcePaths.has(rest[0]);
|
|
58
|
+
}
|
|
59
|
+
return false;
|
|
60
|
+
};
|
|
61
|
+
const getRouteKeyForSource = (contentTypeName, routeKey) => {
|
|
62
|
+
if (routeKey)
|
|
63
|
+
return routeKey;
|
|
64
|
+
return getRakunBootstrapOptions()?.routes?.find((route) => route.contentType === contentTypeName && route.hasPage)?.key;
|
|
65
|
+
};
|
|
66
|
+
const resolveHref = async (source, sourceId) => {
|
|
67
|
+
const routeKey = getRouteKeyForSource(source.contentType, source.routeKey);
|
|
68
|
+
if (!routeKey)
|
|
69
|
+
return undefined;
|
|
70
|
+
return await getLink(routeKey, sourceId);
|
|
71
|
+
};
|
|
72
|
+
const loadSourceDocument = async (db, source) => {
|
|
73
|
+
if (!source.id)
|
|
74
|
+
return undefined;
|
|
75
|
+
const contentType = getContentTypeByName(source.contentType);
|
|
76
|
+
if (!contentType)
|
|
77
|
+
return undefined;
|
|
78
|
+
const item = await db.get(contentType, source.id).catch(() => undefined);
|
|
79
|
+
if (!item || !isPublicDocument(item)) {
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
return (await populateRelations(await populateLinks(item)));
|
|
83
|
+
};
|
|
84
|
+
const resolveSourceValue = async ({ db, source, currentSource, currentContentType, allowCurrentSource, contextSource, }) => {
|
|
85
|
+
const usesCurrentRecord = allowCurrentSource === true &&
|
|
86
|
+
!source.id &&
|
|
87
|
+
!!currentSource &&
|
|
88
|
+
source.contentType === currentContentType?.name;
|
|
89
|
+
const usesContextDocument = !source.id && source.contentType === contextSource?.contentType.name;
|
|
90
|
+
const sourceContentType = usesCurrentRecord
|
|
91
|
+
? currentContentType
|
|
92
|
+
: usesContextDocument
|
|
93
|
+
? contextSource?.contentType
|
|
94
|
+
: getAllowedSourceContentType(source.contentType);
|
|
95
|
+
if (!sourceContentType) {
|
|
96
|
+
return undefined;
|
|
97
|
+
}
|
|
98
|
+
const sourceDocument = usesCurrentRecord
|
|
99
|
+
? currentSource
|
|
100
|
+
: usesContextDocument
|
|
101
|
+
? contextSource?.value
|
|
102
|
+
: await loadSourceDocument(db, source);
|
|
103
|
+
if (!sourceDocument)
|
|
104
|
+
return undefined;
|
|
105
|
+
if (source.virtual === "href") {
|
|
106
|
+
const sourceId = typeof sourceDocument._id === "string" ? sourceDocument._id : source.id;
|
|
107
|
+
return sourceId ? await resolveHref(source, sourceId) : undefined;
|
|
108
|
+
}
|
|
109
|
+
if (!isDynamicSourcePathAllowed(sourceContentType, source.path)) {
|
|
110
|
+
return undefined;
|
|
111
|
+
}
|
|
112
|
+
return getAtPath(sourceDocument, source.path);
|
|
113
|
+
};
|
|
114
|
+
const addPublicContentFilter = (query) => ({
|
|
115
|
+
...query,
|
|
116
|
+
filter: {
|
|
117
|
+
...query.filter,
|
|
118
|
+
_trashed: { $ne: true },
|
|
119
|
+
_visibility: { $nin: ["draft", "trash"] },
|
|
120
|
+
},
|
|
121
|
+
});
|
|
122
|
+
const resolveListBinding = async ({ db, binding, contextSource, }) => {
|
|
123
|
+
const sourceContentType = getAllowedSourceContentType(binding.contentType);
|
|
124
|
+
if (!sourceContentType) {
|
|
125
|
+
return undefined;
|
|
126
|
+
}
|
|
127
|
+
const query = addPublicContentFilter(parseSafeManagerQuery(sourceContentType, binding.query ?? {}));
|
|
128
|
+
const sourceItems = (await db.list(sourceContentType, query)).items;
|
|
129
|
+
return await Promise.all(sourceItems.map(async (sourceItem, index) => {
|
|
130
|
+
const populated = (await populateRelations(await populateLinks(sourceItem)));
|
|
131
|
+
const mapped = Object.fromEntries(await Promise.all(Object.entries(binding.map).map(async ([targetField, source]) => [
|
|
132
|
+
targetField,
|
|
133
|
+
await resolveSourceValue({
|
|
134
|
+
db,
|
|
135
|
+
source,
|
|
136
|
+
currentSource: populated,
|
|
137
|
+
currentContentType: sourceContentType,
|
|
138
|
+
allowCurrentSource: true,
|
|
139
|
+
contextSource,
|
|
140
|
+
}),
|
|
141
|
+
])));
|
|
142
|
+
return {
|
|
143
|
+
name: binding.itemName,
|
|
144
|
+
value: {
|
|
145
|
+
_id: typeof sourceItem._id === "string"
|
|
146
|
+
? `${binding.itemName}:${sourceItem._id}`
|
|
147
|
+
: `${binding.itemName}:${index}`,
|
|
148
|
+
_type: binding.itemName,
|
|
149
|
+
...mapped,
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
}));
|
|
153
|
+
};
|
|
154
|
+
const getListTargetContentType = (field, itemName) => {
|
|
155
|
+
if (!field || (field.meta.ui !== "List" && field.meta.ui !== "Iterator")) {
|
|
156
|
+
return undefined;
|
|
157
|
+
}
|
|
158
|
+
if (!("fields" in field) || !Array.isArray(field.fields)) {
|
|
159
|
+
return undefined;
|
|
160
|
+
}
|
|
161
|
+
const entry = field.fields.find((item) => item.name === itemName);
|
|
162
|
+
if (!entry ||
|
|
163
|
+
entry.field.meta.type !== "Relation" ||
|
|
164
|
+
!("contentType" in entry.field)) {
|
|
165
|
+
return undefined;
|
|
166
|
+
}
|
|
167
|
+
return entry.field.contentType;
|
|
168
|
+
};
|
|
169
|
+
const filterListBindingMap = (contentType, fieldName, binding) => {
|
|
170
|
+
const targetContentType = getListTargetContentType(contentType.fields[fieldName], binding.itemName);
|
|
171
|
+
if (!targetContentType)
|
|
172
|
+
return binding;
|
|
173
|
+
return {
|
|
174
|
+
...binding,
|
|
175
|
+
map: Object.fromEntries(Object.entries(binding.map).filter(([targetField]) => targetContentType.allowsDynamicBindingForField(targetField))),
|
|
176
|
+
};
|
|
177
|
+
};
|
|
178
|
+
const getListItemStableKey = (item) => {
|
|
179
|
+
if (!isRecord(item))
|
|
180
|
+
return undefined;
|
|
181
|
+
const name = typeof item.name === "string" ? item.name : "";
|
|
182
|
+
const value = item.value;
|
|
183
|
+
if (isRecord(value) && typeof value._id === "string") {
|
|
184
|
+
return `${name}:${value._id}`;
|
|
185
|
+
}
|
|
186
|
+
if (isRecord(value) &&
|
|
187
|
+
isRecord(value.data) &&
|
|
188
|
+
typeof value.data._id === "string") {
|
|
189
|
+
return `${name}:${value.data._id}`;
|
|
190
|
+
}
|
|
191
|
+
return undefined;
|
|
192
|
+
};
|
|
193
|
+
export const mergeDynamicListItems = (currentValue, resolvedValue) => {
|
|
194
|
+
const currentItems = Array.isArray(currentValue) ? currentValue : [];
|
|
195
|
+
const resolvedItems = Array.isArray(resolvedValue) ? resolvedValue : [];
|
|
196
|
+
const seen = new Set();
|
|
197
|
+
const merged = [];
|
|
198
|
+
for (const item of [...resolvedItems, ...currentItems]) {
|
|
199
|
+
const key = getListItemStableKey(item);
|
|
200
|
+
if (key) {
|
|
201
|
+
if (seen.has(key))
|
|
202
|
+
continue;
|
|
203
|
+
seen.add(key);
|
|
204
|
+
}
|
|
205
|
+
merged.push(item);
|
|
206
|
+
}
|
|
207
|
+
return merged;
|
|
208
|
+
};
|
|
209
|
+
const resolveRecordBindings = async ({ db, contentType, value, contextSource, }) => {
|
|
210
|
+
const bindings = getDynamicDocumentBindings(value[DYNAMIC_BINDINGS_FIELD_NAME]);
|
|
211
|
+
if (!bindings)
|
|
212
|
+
return value;
|
|
213
|
+
const next = { ...value };
|
|
214
|
+
for (const [field, source] of Object.entries(bindings.fields ?? {})) {
|
|
215
|
+
if (!contentType.allowsDynamicBindingForField(field))
|
|
216
|
+
continue;
|
|
217
|
+
try {
|
|
218
|
+
const resolved = await resolveSourceValue({
|
|
219
|
+
db,
|
|
220
|
+
source,
|
|
221
|
+
currentSource: value,
|
|
222
|
+
currentContentType: contentType,
|
|
223
|
+
contextSource,
|
|
224
|
+
});
|
|
225
|
+
if (resolved !== undefined) {
|
|
226
|
+
next[field] = resolved;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
catch (error) {
|
|
230
|
+
Logger.error("dynamicData: field binding failed", error);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
for (const [field, binding] of Object.entries(bindings.lists ?? {})) {
|
|
234
|
+
if (!contentType.allowsDynamicBindingForField(field))
|
|
235
|
+
continue;
|
|
236
|
+
try {
|
|
237
|
+
const filteredBinding = filterListBindingMap(contentType, field, binding);
|
|
238
|
+
const resolved = await resolveListBinding({
|
|
239
|
+
db,
|
|
240
|
+
binding: filteredBinding,
|
|
241
|
+
contextSource,
|
|
242
|
+
});
|
|
243
|
+
if (resolved !== undefined) {
|
|
244
|
+
next[field] = mergeDynamicListItems(next[field], resolved);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
catch (error) {
|
|
248
|
+
Logger.error("dynamicData: list binding failed", error);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
return next;
|
|
252
|
+
};
|
|
253
|
+
export const resolveDynamicData = async (value, options) => {
|
|
254
|
+
if (Array.isArray(value)) {
|
|
255
|
+
return (await Promise.all(value.map((item) => resolveDynamicData(item, options))));
|
|
256
|
+
}
|
|
257
|
+
if (!isRecord(value))
|
|
258
|
+
return value;
|
|
259
|
+
const contentType = options.contentType ??
|
|
260
|
+
(typeof value._type === "string"
|
|
261
|
+
? getContentTypeByName(value._type)
|
|
262
|
+
: undefined);
|
|
263
|
+
const boundValue = contentType
|
|
264
|
+
? await resolveRecordBindings({
|
|
265
|
+
db: options.db,
|
|
266
|
+
contentType,
|
|
267
|
+
value,
|
|
268
|
+
contextSource: options.contextSource,
|
|
269
|
+
})
|
|
270
|
+
: value;
|
|
271
|
+
const contextSource = options.contextSource ??
|
|
272
|
+
(contentType
|
|
273
|
+
? {
|
|
274
|
+
contentType,
|
|
275
|
+
value: boundValue,
|
|
276
|
+
}
|
|
277
|
+
: undefined);
|
|
278
|
+
const entries = await Promise.all(Object.entries(boundValue).map(async ([key, item]) => [
|
|
279
|
+
key,
|
|
280
|
+
await resolveDynamicData(item, {
|
|
281
|
+
...options,
|
|
282
|
+
contextSource,
|
|
283
|
+
contentType: undefined,
|
|
284
|
+
}),
|
|
285
|
+
]));
|
|
286
|
+
return Object.fromEntries(entries);
|
|
287
|
+
};
|
|
288
|
+
export const stripDynamicBindings = (value) => {
|
|
289
|
+
if (Array.isArray(value)) {
|
|
290
|
+
return value.map((item) => stripDynamicBindings(item));
|
|
291
|
+
}
|
|
292
|
+
if (!isRecord(value))
|
|
293
|
+
return value;
|
|
294
|
+
return Object.fromEntries(Object.entries(value)
|
|
295
|
+
.filter(([key]) => key !== DYNAMIC_BINDINGS_FIELD_NAME)
|
|
296
|
+
.map(([key, item]) => [key, stripDynamicBindings(item)]));
|
|
297
|
+
};
|
|
298
|
+
export const resolveContentOutput = async ({ db, contentType, data, surface, }) => {
|
|
299
|
+
const dynamicData = await resolveDynamicData(data, {
|
|
300
|
+
db,
|
|
301
|
+
contentType,
|
|
302
|
+
surface,
|
|
303
|
+
});
|
|
304
|
+
const hooked = await runOnGetHook({
|
|
305
|
+
db,
|
|
306
|
+
contentType,
|
|
307
|
+
data: dynamicData,
|
|
308
|
+
surface,
|
|
309
|
+
});
|
|
310
|
+
return stripDynamicBindings(hooked);
|
|
311
|
+
};
|
|
312
|
+
//# sourceMappingURL=dynamicData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dynamicData.js","sourceRoot":"","sources":["../../../../src/api/utils/dynamicData.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
default: boolean;
|
|
5
|
-
_type: "Language";
|
|
6
|
-
_id: string;
|
|
7
|
-
parent?: import("../..").SelfRelationValue<string> | undefined;
|
|
8
|
-
_schemaVersion?: number | undefined;
|
|
9
|
-
_visibility?: import("../..").DocumentVisibility | undefined;
|
|
10
|
-
_visibilityBeforeTrash?: Exclude<import("../..").DocumentVisibility, "trash"> | undefined;
|
|
11
|
-
_trashed?: boolean | undefined;
|
|
12
|
-
_revision?: number | undefined;
|
|
13
|
-
trashedAt?: Date | undefined;
|
|
14
|
-
trashedBy?: string | undefined;
|
|
15
|
-
createdAt?: Date | undefined;
|
|
16
|
-
updatedAt?: Date | undefined;
|
|
17
|
-
createdBy?: string | undefined;
|
|
18
|
-
updatedBy?: string | undefined;
|
|
19
|
-
}[]>;
|
|
1
|
+
import { Language } from "../../internal-content-types";
|
|
2
|
+
import type { DBOutput } from "../../lib/types";
|
|
3
|
+
export declare const getLanguages: () => Promise<DBOutput<typeof Language>[]>;
|
|
20
4
|
//# sourceMappingURL=getLanguages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLanguages.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getLanguages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getLanguages.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getLanguages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAGhD,eAAO,MAAM,YAAY,QAAa,OAAO,CAAC,QAAQ,CAAC,OAAO,QAAQ,CAAC,EAAE,CAexE,CAAC"}
|
|
@@ -2,6 +2,13 @@ import { Language } from "../../internal-content-types";
|
|
|
2
2
|
import { getMongoService } from "../../orm";
|
|
3
3
|
export const getLanguages = async () => {
|
|
4
4
|
const db = await getMongoService();
|
|
5
|
-
|
|
5
|
+
const languages = await db.getAll(Language);
|
|
6
|
+
return languages.map((language) => {
|
|
7
|
+
if (language.parent !== null) {
|
|
8
|
+
return language;
|
|
9
|
+
}
|
|
10
|
+
const { parent: _parent, ...rest } = language;
|
|
11
|
+
return rest;
|
|
12
|
+
});
|
|
6
13
|
};
|
|
7
14
|
//# sourceMappingURL=getLanguages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLanguages.js","sourceRoot":"","sources":["../../../../src/api/utils/getLanguages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"getLanguages.js","sourceRoot":"","sources":["../../../../src/api/utils/getLanguages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,IAA0C,EAAE;IAC3E,MAAM,EAAE,GAAG,MAAM,eAAe,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChC,IAAK,QAAiC,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACvD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,QAEpC,CAAC;QAEF,OAAO,IAAiC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { TranslatableValue } from "../../lib/types";
|
|
2
|
-
import { RouteKeys } from "./routes/routeDefinitions";
|
|
1
|
+
import type { TranslatableValue } from "../../lib/types";
|
|
2
|
+
import type { RouteKeys } from "./routes/routeDefinitions";
|
|
3
3
|
export declare const getLink: (key: RouteKeys, id: string) => Promise<TranslatableValue<string>>;
|
|
4
4
|
export declare const getTranslatedLink: (key: RouteKeys, id: string, locale: string) => Promise<string>;
|
|
5
5
|
//# sourceMappingURL=getLink.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLink.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getLink.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"getLink.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getLink.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAE3D,eAAO,MAAM,OAAO,GAClB,KAAK,SAAS,EACd,IAAI,MAAM,KACT,OAAO,CAAC,iBAAiB,CAAC,MAAM,CAAC,CA4DnC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,KAAK,SAAS,EACd,IAAI,MAAM,EACV,QAAQ,MAAM,KACb,OAAO,CAAC,MAAM,CAEhB,CAAC"}
|
|
@@ -2,8 +2,12 @@ import { Route, RouteMap } from "../../internal-content-types";
|
|
|
2
2
|
import { getRakunBootstrapOptions } from "../../bootstrapState";
|
|
3
3
|
import { throwAppError } from "../../lib/errors";
|
|
4
4
|
import { getMongoService } from "../../orm";
|
|
5
|
+
import { getLanguages } from "./getLanguages";
|
|
5
6
|
export const getLink = async (key, id) => {
|
|
6
7
|
const db = await getMongoService();
|
|
8
|
+
const languages = await getLanguages();
|
|
9
|
+
const defaultLanguageCode = languages.find((language) => language.default)?.code;
|
|
10
|
+
const languageCodeById = new Map(languages.map((language) => [String(language._id), language.code]));
|
|
7
11
|
const configuredRoute = getRakunBootstrapOptions()?.routes?.find((route) => route.key === key);
|
|
8
12
|
if (!configuredRoute) {
|
|
9
13
|
throwAppError("INTERNAL", {
|
|
@@ -19,16 +23,30 @@ export const getLink = async (key, id) => {
|
|
|
19
23
|
message: `No route found for content type: ${configuredRoute.contentType} and field: ${configuredRoute.field}`,
|
|
20
24
|
});
|
|
21
25
|
}
|
|
22
|
-
const
|
|
26
|
+
const routeMapsByGroup = await db.list(RouteMap, {
|
|
23
27
|
filter: {
|
|
24
28
|
routeId: route._id,
|
|
25
|
-
|
|
29
|
+
variantGroupId: id,
|
|
26
30
|
},
|
|
27
|
-
options: { limit: "all", fields: ["path"] },
|
|
31
|
+
options: { limit: "all", fields: ["path", "languageId"] },
|
|
28
32
|
});
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
.
|
|
33
|
+
const { items } = routeMapsByGroup.items.length > 0
|
|
34
|
+
? routeMapsByGroup
|
|
35
|
+
: await db.list(RouteMap, {
|
|
36
|
+
filter: {
|
|
37
|
+
routeId: route._id,
|
|
38
|
+
contentTypeId: id,
|
|
39
|
+
},
|
|
40
|
+
options: { limit: "all", fields: ["path", "languageId"] },
|
|
41
|
+
});
|
|
42
|
+
const result = { _tag: "Translatable" };
|
|
43
|
+
for (const item of items) {
|
|
44
|
+
const code = languageCodeById.get(String(item.languageId)) ?? defaultLanguageCode;
|
|
45
|
+
if (code) {
|
|
46
|
+
result[code] = item.path;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return result;
|
|
32
50
|
};
|
|
33
51
|
export const getTranslatedLink = async (key, id, locale) => {
|
|
34
52
|
return (await getLink(key, id))[locale] || "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLink.js","sourceRoot":"","sources":["../../../../src/api/utils/getLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"getLink.js","sourceRoot":"","sources":["../../../../src/api/utils/getLink.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ export declare const getUser: (ctx: RakunRequestContext) => Promise<{
|
|
|
5
5
|
password: string;
|
|
6
6
|
role: {
|
|
7
7
|
name: string;
|
|
8
|
-
permissions: (
|
|
8
|
+
permissions: (string | undefined)[];
|
|
9
9
|
_type: "ManagerRole";
|
|
10
10
|
_id: string;
|
|
11
11
|
_schemaVersion?: number | undefined;
|
|
@@ -13,6 +13,8 @@ export declare const getUser: (ctx: RakunRequestContext) => Promise<{
|
|
|
13
13
|
_visibilityBeforeTrash?: Exclude<import("../..").DocumentVisibility, "trash"> | undefined;
|
|
14
14
|
_trashed?: boolean | undefined;
|
|
15
15
|
_revision?: number | undefined;
|
|
16
|
+
_localeVariantGroupId?: string | undefined;
|
|
17
|
+
_localeVariantRole?: import("zod").infer<typeof import("../..").LocaleVariantRole> | undefined;
|
|
16
18
|
trashedAt?: Date | undefined;
|
|
17
19
|
trashedBy?: string | undefined;
|
|
18
20
|
createdAt?: Date | undefined;
|
|
@@ -23,6 +25,7 @@ export declare const getUser: (ctx: RakunRequestContext) => Promise<{
|
|
|
23
25
|
twoFactorEnabled: boolean;
|
|
24
26
|
_type: "ManagerUser";
|
|
25
27
|
_id: string;
|
|
28
|
+
name?: string | undefined;
|
|
26
29
|
avatarId?: string | undefined;
|
|
27
30
|
avatarKey?: string | undefined;
|
|
28
31
|
avatarAccess?: "public" | "private" | undefined;
|
|
@@ -36,6 +39,8 @@ export declare const getUser: (ctx: RakunRequestContext) => Promise<{
|
|
|
36
39
|
_visibilityBeforeTrash?: Exclude<import("../..").DocumentVisibility, "trash"> | undefined;
|
|
37
40
|
_trashed?: boolean | undefined;
|
|
38
41
|
_revision?: number | undefined;
|
|
42
|
+
_localeVariantGroupId?: string | undefined;
|
|
43
|
+
_localeVariantRole?: import("zod").infer<typeof import("../..").LocaleVariantRole> | undefined;
|
|
39
44
|
trashedAt?: Date | undefined;
|
|
40
45
|
trashedBy?: string | undefined;
|
|
41
46
|
createdAt?: Date | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getUser.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAMjD,eAAO,MAAM,OAAO,GAAU,KAAK,mBAAmB
|
|
1
|
+
{"version":3,"file":"getUser.d.ts","sourceRoot":"","sources":["../../../../src/api/utils/getUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAMjD,eAAO,MAAM,OAAO,GAAU,KAAK,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAwBrD,CAAC"}
|