@comet/cms-api 9.0.0-beta.1 → 9.0.0-beta.3
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/lib/access-log/access-log.interceptor.d.ts.map +1 -1
- package/lib/access-log/access-log.interceptor.js +6 -6
- package/lib/access-log/access-log.interceptor.js.map +1 -1
- package/lib/auth/guards/comet.guard.d.ts.map +1 -1
- package/lib/auth/guards/comet.guard.js +48 -58
- package/lib/auth/guards/comet.guard.js.map +1 -1
- package/lib/auth/resolver/auth.resolver.js +16 -31
- package/lib/auth/resolver/auth.resolver.js.map +1 -1
- package/lib/auth/services/basic.auth-service.d.ts.map +1 -1
- package/lib/auth/services/basic.auth-service.js +11 -7
- package/lib/auth/services/basic.auth-service.js.map +1 -1
- package/lib/auth/services/jwt.auth-service.d.ts.map +1 -1
- package/lib/auth/services/jwt.auth-service.js +51 -73
- package/lib/auth/services/jwt.auth-service.js.map +1 -1
- package/lib/auth/services/site-preview.auth-service.d.ts.map +1 -1
- package/lib/auth/services/site-preview.auth-service.js +23 -33
- package/lib/auth/services/site-preview.auth-service.js.map +1 -1
- package/lib/auth/util/auth-guard.providers.d.ts +2 -2
- package/lib/auth/util/auth-guard.providers.d.ts.map +1 -1
- package/lib/auth/util/auth-service.interface.d.ts +2 -2
- package/lib/auth/util/auth-service.interface.d.ts.map +1 -1
- package/lib/blob-storage/backends/azure/blob-storage-azure.storage.d.ts +3 -2
- package/lib/blob-storage/backends/azure/blob-storage-azure.storage.d.ts.map +1 -1
- package/lib/blob-storage/backends/azure/blob-storage-azure.storage.js +73 -94
- package/lib/blob-storage/backends/azure/blob-storage-azure.storage.js.map +1 -1
- package/lib/blob-storage/backends/blob-storage-backend.interface.d.ts +2 -1
- package/lib/blob-storage/backends/blob-storage-backend.interface.d.ts.map +1 -1
- package/lib/blob-storage/backends/blob-storage-backend.service.d.ts +5 -2
- package/lib/blob-storage/backends/blob-storage-backend.service.d.ts.map +1 -1
- package/lib/blob-storage/backends/blob-storage-backend.service.js +79 -79
- package/lib/blob-storage/backends/blob-storage-backend.service.js.map +1 -1
- package/lib/blob-storage/backends/file/blob-storage-file.storage.d.ts +3 -2
- package/lib/blob-storage/backends/file/blob-storage-file.storage.d.ts.map +1 -1
- package/lib/blob-storage/backends/file/blob-storage-file.storage.js +77 -95
- package/lib/blob-storage/backends/file/blob-storage-file.storage.js.map +1 -1
- package/lib/blob-storage/backends/s3/blob-storage-s3.config.d.ts +1 -1
- package/lib/blob-storage/backends/s3/blob-storage-s3.config.d.ts.map +1 -1
- package/lib/blob-storage/backends/s3/blob-storage-s3.storage.d.ts +3 -2
- package/lib/blob-storage/backends/s3/blob-storage-s3.storage.d.ts.map +1 -1
- package/lib/blob-storage/backends/s3/blob-storage-s3.storage.js +112 -116
- package/lib/blob-storage/backends/s3/blob-storage-s3.storage.js.map +1 -1
- package/lib/blob-storage/blob-storage.config.d.ts +3 -3
- package/lib/blob-storage/blob-storage.config.d.ts.map +1 -1
- package/lib/blob-storage/cache/dto/file-cache.interface.d.ts +1 -1
- package/lib/blob-storage/cache/dto/file-cache.interface.d.ts.map +1 -1
- package/lib/blob-storage/cache/scaled-images-cache.service.js +38 -53
- package/lib/blob-storage/cache/scaled-images-cache.service.js.map +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo1.d.ts +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo1.d.ts.map +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo1.js +4 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo1.js.map +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo2.d.ts +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo2.d.ts.map +1 -1
- package/lib/blocks/SpaceBlock/migrations/MigrationTo2.js +1 -12
- package/lib/blocks/SpaceBlock/migrations/MigrationTo2.js.map +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.d.ts +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.d.ts.map +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.js +2 -14
- package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.js.map +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.d.ts +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.d.ts.map +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.js +1 -1
- package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.js.map +1 -1
- package/lib/blocks/block-migrate.service.d.ts.map +1 -1
- package/lib/blocks/block-migrate.service.js +64 -73
- package/lib/blocks/block-migrate.service.js.map +1 -1
- package/lib/blocks/block.d.ts +4 -4
- package/lib/blocks/block.d.ts.map +1 -1
- package/lib/blocks/block.js +5 -18
- package/lib/blocks/block.js.map +1 -1
- package/lib/blocks/blocks-meta.service.js +14 -25
- package/lib/blocks/blocks-meta.service.js.map +1 -1
- package/lib/blocks/blocks-transformer-middleware.factory.d.ts +1 -1
- package/lib/blocks/blocks-transformer-middleware.factory.d.ts.map +1 -1
- package/lib/blocks/blocks-transformer-middleware.factory.js +3 -12
- package/lib/blocks/blocks-transformer-middleware.factory.js.map +1 -1
- package/lib/blocks/blocks-transformer.d.ts +1 -1
- package/lib/blocks/blocks-transformer.d.ts.map +1 -1
- package/lib/blocks/blocks-transformer.js +30 -43
- package/lib/blocks/blocks-transformer.js.map +1 -1
- package/lib/blocks/blocks-transformer.service.js +3 -14
- package/lib/blocks/blocks-transformer.service.js.map +1 -1
- package/lib/blocks/create-block-index-views.command.js +2 -13
- package/lib/blocks/create-block-index-views.command.js.map +1 -1
- package/lib/blocks/decorators/child-block-input.js +2 -2
- package/lib/blocks/decorators/child-block-input.js.map +1 -1
- package/lib/blocks/decorators/child-block.js +1 -1
- package/lib/blocks/decorators/child-block.js.map +1 -1
- package/lib/blocks/decorators/field.js +1 -2
- package/lib/blocks/decorators/field.js.map +1 -1
- package/lib/blocks/decorators/root-block-entity.d.ts +1 -1
- package/lib/blocks/decorators/root-block-entity.d.ts.map +1 -1
- package/lib/blocks/decorators/root-block.d.ts +1 -1
- package/lib/blocks/decorators/root-block.d.ts.map +1 -1
- package/lib/blocks/factories/columns-block.factory.js +13 -18
- package/lib/blocks/factories/columns-block.factory.js.map +1 -1
- package/lib/blocks/factories/createBlocksBlock.js +14 -35
- package/lib/blocks/factories/createBlocksBlock.js.map +1 -1
- package/lib/blocks/factories/createListBlock.js +16 -33
- package/lib/blocks/factories/createListBlock.js.map +1 -1
- package/lib/blocks/factories/createOneOfBlock.js +20 -35
- package/lib/blocks/factories/createOneOfBlock.js.map +1 -1
- package/lib/blocks/factories/createOptionalBlock.js +5 -16
- package/lib/blocks/factories/createOptionalBlock.js.map +1 -1
- package/lib/blocks/factories/createRichTextBlock.js +33 -31
- package/lib/blocks/factories/createRichTextBlock.js.map +1 -1
- package/lib/blocks/factories/createSeoBlock.js +14 -25
- package/lib/blocks/factories/createSeoBlock.js.map +1 -1
- package/lib/blocks/factories/createTableBlock.js +5 -1
- package/lib/blocks/factories/createTableBlock.js.map +1 -1
- package/lib/blocks/factories/types.d.ts +1 -1
- package/lib/blocks/factories/types.d.ts.map +1 -1
- package/lib/blocks/flat-blocks/flat-blocks.d.ts +1 -1
- package/lib/blocks/flat-blocks/flat-blocks.d.ts.map +1 -1
- package/lib/blocks/flat-blocks/visit-blocks-breadth-first.d.ts +1 -1
- package/lib/blocks/flat-blocks/visit-blocks-breadth-first.d.ts.map +1 -1
- package/lib/blocks/flat-blocks/visit-blocks-breadth-first.js +3 -3
- package/lib/blocks/flat-blocks/visit-blocks-breadth-first.js.map +1 -1
- package/lib/blocks/flat-blocks/visit-blocks-depth-first.d.ts +2 -2
- package/lib/blocks/flat-blocks/visit-blocks-depth-first.d.ts.map +1 -1
- package/lib/blocks/flat-blocks/visit-blocks-depth-first.js +3 -3
- package/lib/blocks/flat-blocks/visit-blocks-depth-first.js.map +1 -1
- package/lib/blocks/get-preview-image-url-templates.d.ts +1 -1
- package/lib/blocks/get-preview-image-url-templates.d.ts.map +1 -1
- package/lib/blocks/get-preview-image-url-templates.js +13 -26
- package/lib/blocks/get-preview-image-url-templates.js.map +1 -1
- package/lib/blocks/helpers/composeBlocks.js +10 -17
- package/lib/blocks/helpers/composeBlocks.js.map +1 -1
- package/lib/blocks/migrate-blocks.command.d.ts +5 -1
- package/lib/blocks/migrate-blocks.command.d.ts.map +1 -1
- package/lib/blocks/migrate-blocks.command.js +17 -13
- package/lib/blocks/migrate-blocks.command.js.map +1 -1
- package/lib/blocks/migrations/BlockMigration.d.ts +1 -1
- package/lib/blocks/migrations/BlockMigration.d.ts.map +1 -1
- package/lib/blocks/migrations/BlockMigration.js +5 -13
- package/lib/blocks/migrations/BlockMigration.js.map +1 -1
- package/lib/blocks/migrations/applyMigrations.d.ts +1 -1
- package/lib/blocks/migrations/applyMigrations.d.ts.map +1 -1
- package/lib/blocks/migrations/createAppliedMigrationsBlockDataFactoryDecorator.d.ts +2 -2
- package/lib/blocks/migrations/createAppliedMigrationsBlockDataFactoryDecorator.d.ts.map +1 -1
- package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.d.ts +1 -1
- package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.d.ts.map +1 -1
- package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.js +11 -19
- package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.js.map +1 -1
- package/lib/blocks/migrations/typeSafeBlockMigrationPipe.d.ts +1 -1
- package/lib/blocks/migrations/typeSafeBlockMigrationPipe.d.ts.map +1 -1
- package/lib/blocks/refresh-block-index-views.command.js +2 -13
- package/lib/blocks/refresh-block-index-views.command.js.map +1 -1
- package/lib/blocks/rootBlocks/root-block-data.scalar.d.ts +1 -1
- package/lib/blocks/rootBlocks/root-block-data.scalar.d.ts.map +1 -1
- package/lib/blocks/rootBlocks/root-block-data.scalar.js +5 -1
- package/lib/blocks/rootBlocks/root-block-data.scalar.js.map +1 -1
- package/lib/blocks/rootBlocks/root-block-input.scalar.d.ts +1 -1
- package/lib/blocks/rootBlocks/root-block-input.scalar.d.ts.map +1 -1
- package/lib/blocks/rootBlocks/root-block-input.scalar.js +5 -1
- package/lib/blocks/rootBlocks/root-block-input.scalar.js.map +1 -1
- package/lib/blocks/search/get-search-text.d.ts +3 -1
- package/lib/blocks/search/get-search-text.d.ts.map +1 -1
- package/lib/blocks/search/get-search-text.js +26 -0
- package/lib/blocks/search/get-search-text.js.map +1 -1
- package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.d.ts +1 -1
- package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.d.ts.map +1 -1
- package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.js +1 -1
- package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.js.map +1 -1
- package/lib/builds/build-templates.resolver.js +7 -21
- package/lib/builds/build-templates.resolver.js.map +1 -1
- package/lib/builds/build-templates.service.js +6 -20
- package/lib/builds/build-templates.service.js.map +1 -1
- package/lib/builds/builds.resolver.js +16 -32
- package/lib/builds/builds.resolver.js.map +1 -1
- package/lib/builds/builds.service.js +106 -142
- package/lib/builds/builds.service.js.map +1 -1
- package/lib/builds/changes-checker.command.js +17 -28
- package/lib/builds/changes-checker.command.js.map +1 -1
- package/lib/builds/changes-checker.interceptor.js +34 -45
- package/lib/builds/changes-checker.interceptor.js.map +1 -1
- package/lib/common/decorators/crud-generator.decorator.d.ts +4 -4
- package/lib/common/decorators/crud-generator.decorator.d.ts.map +1 -1
- package/lib/common/decorators/request-context.decorator.d.ts +1 -1
- package/lib/common/decorators/request-context.decorator.d.ts.map +1 -1
- package/lib/common/decorators/utils.d.ts +1 -1
- package/lib/common/decorators/utils.d.ts.map +1 -1
- package/lib/common/errors/validation.exception-factory.d.ts +1 -1
- package/lib/common/errors/validation.exception-factory.d.ts.map +1 -1
- package/lib/common/errors/validation.exception.d.ts +1 -1
- package/lib/common/errors/validation.exception.d.ts.map +1 -1
- package/lib/common/filter/mikro-orm.d.ts +1 -1
- package/lib/common/filter/mikro-orm.d.ts.map +1 -1
- package/lib/common/filter/mikro-orm.js +5 -7
- package/lib/common/filter/mikro-orm.js.map +1 -1
- package/lib/common/graphql/extract-graphql-fields.d.ts +1 -1
- package/lib/common/graphql/extract-graphql-fields.d.ts.map +1 -1
- package/lib/common/graphql/extract-graphql-fields.js +2 -1
- package/lib/common/graphql/extract-graphql-fields.js.map +1 -1
- package/lib/common/helper/crud-generator.helper.d.ts +1 -1
- package/lib/common/helper/crud-generator.helper.d.ts.map +1 -1
- package/lib/common/helper/crud-generator.helper.js +2 -3
- package/lib/common/helper/crud-generator.helper.js.map +1 -1
- package/lib/common/helper/is-injectable-service.helper.d.ts +1 -1
- package/lib/common/helper/is-injectable-service.helper.d.ts.map +1 -1
- package/lib/common/helper/partial-type.helper.d.ts +2 -2
- package/lib/common/helper/partial-type.helper.d.ts.map +1 -1
- package/lib/common/helper/partial-type.helper.js +8 -8
- package/lib/common/helper/partial-type.helper.js.map +1 -1
- package/lib/common/test/get-error.js +3 -12
- package/lib/common/test/get-error.js.map +1 -1
- package/lib/common/validators/is-slug.js +3 -14
- package/lib/common/validators/is-slug.js.map +1 -1
- package/lib/content-generation/azure-open-ai/azure-open-ai-content-generation.service.js +94 -113
- package/lib/content-generation/azure-open-ai/azure-open-ai-content-generation.service.js.map +1 -1
- package/lib/content-generation/generate-alt-text.resolver.d.ts.map +1 -1
- package/lib/content-generation/generate-alt-text.resolver.js +6 -17
- package/lib/content-generation/generate-alt-text.resolver.js.map +1 -1
- package/lib/content-generation/generate-image-title.resolver.d.ts.map +1 -1
- package/lib/content-generation/generate-image-title.resolver.js +6 -17
- package/lib/content-generation/generate-image-title.resolver.js.map +1 -1
- package/lib/content-generation/generate-seo-tags.resolver.d.ts.map +1 -1
- package/lib/content-generation/generate-seo-tags.resolver.js +6 -17
- package/lib/content-generation/generate-seo-tags.resolver.js.map +1 -1
- package/lib/cron-jobs/cron-jobs.resolver.js +37 -54
- package/lib/cron-jobs/cron-jobs.resolver.js.map +1 -1
- package/lib/cron-jobs/cron-jobs.service.js +6 -7
- package/lib/cron-jobs/cron-jobs.service.js.map +1 -1
- package/lib/cron-jobs/jobs.resolver.js +22 -37
- package/lib/cron-jobs/jobs.resolver.js.map +1 -1
- package/lib/cron-jobs/jobs.service.js +5 -6
- package/lib/cron-jobs/jobs.service.js.map +1 -1
- package/lib/dam/blocks/dam-file-download-link-block-transformer.service.js +28 -33
- package/lib/dam/blocks/dam-file-download-link-block-transformer.service.js.map +1 -1
- package/lib/dam/blocks/dam-file-download-link.block.js +2 -13
- package/lib/dam/blocks/dam-file-download-link.block.js.map +1 -1
- package/lib/dam/blocks/pixel-image-block-transformer.service.js +35 -46
- package/lib/dam/blocks/pixel-image-block-transformer.service.js.map +1 -1
- package/lib/dam/blocks/pixel-image.block.js +11 -24
- package/lib/dam/blocks/pixel-image.block.js.map +1 -1
- package/lib/dam/blocks/svg-image-block-transformer.service.js +23 -34
- package/lib/dam/blocks/svg-image-block-transformer.service.js.map +1 -1
- package/lib/dam/blocks/svg-image.block.js +2 -13
- package/lib/dam/blocks/svg-image.block.js.map +1 -1
- package/lib/dam/blocks/video/dam-video-block-transformer.service.js +34 -45
- package/lib/dam/blocks/video/dam-video-block-transformer.service.js.map +1 -1
- package/lib/dam/blocks/video/dam-video.block.js +2 -13
- package/lib/dam/blocks/video/dam-video.block.js.map +1 -1
- package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.d.ts +1 -1
- package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.d.ts.map +1 -1
- package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.js +1 -1
- package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.js.map +1 -1
- package/lib/dam/common/decorators/has-valid-filename.decorator.js +23 -35
- package/lib/dam/common/decorators/has-valid-filename.decorator.js.map +1 -1
- package/lib/dam/dam.module.js +8 -18
- package/lib/dam/dam.module.js.map +1 -1
- package/lib/dam/files/dam-items.resolver.js +7 -20
- package/lib/dam/files/dam-items.resolver.js.map +1 -1
- package/lib/dam/files/dam-items.service.js +50 -76
- package/lib/dam/files/dam-items.service.js.map +1 -1
- package/lib/dam/files/dam-media-alternatives/dam-media-alternative.resolver.js +74 -102
- package/lib/dam/files/dam-media-alternatives/dam-media-alternative.resolver.js.map +1 -1
- package/lib/dam/files/dam-media-alternatives/entities/dam-media-alternative.entity.js +3 -13
- package/lib/dam/files/dam-media-alternatives/entities/dam-media-alternative.entity.js.map +1 -1
- package/lib/dam/files/dam-upload-file.interceptor.js +10 -21
- package/lib/dam/files/dam-upload-file.interceptor.js.map +1 -1
- package/lib/dam/files/file-image.resolver.js +8 -19
- package/lib/dam/files/file-image.resolver.js.map +1 -1
- package/lib/dam/files/file-warning.service.d.ts.map +1 -1
- package/lib/dam/files/file-warning.service.js +64 -90
- package/lib/dam/files/file-warning.service.js.map +1 -1
- package/lib/dam/files/files.controller.d.ts.map +1 -1
- package/lib/dam/files/files.controller.js +182 -210
- package/lib/dam/files/files.controller.js.map +1 -1
- package/lib/dam/files/files.resolver.d.ts.map +1 -1
- package/lib/dam/files/files.resolver.js +84 -168
- package/lib/dam/files/files.resolver.js.map +1 -1
- package/lib/dam/files/files.service.d.ts +1 -0
- package/lib/dam/files/files.service.d.ts.map +1 -1
- package/lib/dam/files/files.service.js +429 -437
- package/lib/dam/files/files.service.js.map +1 -1
- package/lib/dam/files/folders.controller.js +13 -24
- package/lib/dam/files/folders.controller.js.map +1 -1
- package/lib/dam/files/folders.resolver.js +25 -52
- package/lib/dam/files/folders.resolver.js.map +1 -1
- package/lib/dam/files/folders.service.d.ts.map +1 -1
- package/lib/dam/files/folders.service.js +201 -240
- package/lib/dam/files/folders.service.js.map +1 -1
- package/lib/dam/images/calculateDominantImageColor.command.js +14 -45
- package/lib/dam/images/calculateDominantImageColor.command.js.map +1 -1
- package/lib/dam/images/dto/image.interface.d.ts +2 -2
- package/lib/dam/images/dto/image.interface.d.ts.map +1 -1
- package/lib/dam/images/images.controller.js +134 -165
- package/lib/dam/images/images.controller.js.map +1 -1
- package/lib/dam/images/images.util.d.ts +2 -3
- package/lib/dam/images/images.util.d.ts.map +1 -1
- package/lib/dam/images/images.util.js +0 -4
- package/lib/dam/images/images.util.js.map +1 -1
- package/lib/dam/images/validators/is-valid-aspect-ratio.validator.js +16 -28
- package/lib/dam/images/validators/is-valid-aspect-ratio.validator.js.map +1 -1
- package/lib/dependencies/dependencies.resolver.factory.js +2 -13
- package/lib/dependencies/dependencies.resolver.factory.js.map +1 -1
- package/lib/dependencies/dependencies.service.d.ts +3 -1
- package/lib/dependencies/dependencies.service.d.ts.map +1 -1
- package/lib/dependencies/dependencies.service.js +189 -211
- package/lib/dependencies/dependencies.service.js.map +1 -1
- package/lib/dependencies/dependents.resolver.factory.js +2 -13
- package/lib/dependencies/dependents.resolver.factory.js.map +1 -1
- package/lib/dependencies/discover.service.d.ts +1 -1
- package/lib/dependencies/discover.service.d.ts.map +1 -1
- package/lib/dependencies/discover.service.js +2 -4
- package/lib/dependencies/discover.service.js.map +1 -1
- package/lib/document/dto/save-document.d.ts +1 -1
- package/lib/document/dto/save-document.d.ts.map +1 -1
- package/lib/document/validateNotModified.d.ts +1 -1
- package/lib/document/validateNotModified.d.ts.map +1 -1
- package/lib/document/validateNotModified.js +1 -1
- package/lib/document/validateNotModified.js.map +1 -1
- package/lib/entity-info/entity-info.decorator.d.ts +1 -1
- package/lib/entity-info/entity-info.decorator.d.ts.map +1 -1
- package/lib/entity-info/entity-info.service.js +48 -64
- package/lib/entity-info/entity-info.service.js.map +1 -1
- package/lib/file-uploads/file-upload-expiration.subscriber.js +5 -16
- package/lib/file-uploads/file-upload-expiration.subscriber.js.map +1 -1
- package/lib/file-uploads/file-uploads-download.controller.js +122 -150
- package/lib/file-uploads/file-uploads-download.controller.js.map +1 -1
- package/lib/file-uploads/file-uploads-file.interceptor.js +10 -21
- package/lib/file-uploads/file-uploads-file.interceptor.js.map +1 -1
- package/lib/file-uploads/file-uploads-upload.controller.js +17 -25
- package/lib/file-uploads/file-uploads-upload.controller.js.map +1 -1
- package/lib/file-uploads/file-uploads.module.js +3 -4
- package/lib/file-uploads/file-uploads.module.js.map +1 -1
- package/lib/file-uploads/file-uploads.resolver.js +1 -2
- package/lib/file-uploads/file-uploads.resolver.js.map +1 -1
- package/lib/file-uploads/file-uploads.service.js +53 -90
- package/lib/file-uploads/file-uploads.service.js.map +1 -1
- package/lib/file-utils/file-validation.service.d.ts +1 -1
- package/lib/file-utils/file-validation.service.d.ts.map +1 -1
- package/lib/file-utils/file-validation.service.js +14 -28
- package/lib/file-utils/file-validation.service.js.map +1 -1
- package/lib/file-utils/files.utils.d.ts +1 -1
- package/lib/file-utils/files.utils.d.ts.map +1 -1
- package/lib/file-utils/files.utils.js +33 -45
- package/lib/file-utils/files.utils.js.map +1 -1
- package/lib/file-utils/images.util.d.ts.map +1 -1
- package/lib/file-utils/images.util.js +10 -6
- package/lib/file-utils/images.util.js.map +1 -1
- package/lib/imgproxy/imgproxy.builder.d.ts.map +1 -1
- package/lib/imgproxy/imgproxy.builder.js +2 -1
- package/lib/imgproxy/imgproxy.builder.js.map +1 -1
- package/lib/importer/data-streams/file-data-stream.d.ts +3 -3
- package/lib/importer/data-streams/file-data-stream.d.ts.map +1 -1
- package/lib/importer/data-streams/local-file-data-stream.js +28 -76
- package/lib/importer/data-streams/local-file-data-stream.js.map +1 -1
- package/lib/importer/decorators/csv-column.decorator.d.ts +1 -1
- package/lib/importer/decorators/csv-column.decorator.d.ts.map +1 -1
- package/lib/importer/pipes/end.pipe.d.ts +1 -1
- package/lib/importer/pipes/end.pipe.d.ts.map +1 -1
- package/lib/importer/pipes/importer-pipe.type.d.ts +3 -3
- package/lib/importer/pipes/importer-pipe.type.d.ts.map +1 -1
- package/lib/importer/pipes/parsers/csv-parser-and-transform.composite-pipe.d.ts +5 -5
- package/lib/importer/pipes/parsers/csv-parser-and-transform.composite-pipe.d.ts.map +1 -1
- package/lib/importer/pipes/parsers/csv-parser.pipe.d.ts +3 -3
- package/lib/importer/pipes/parsers/csv-parser.pipe.d.ts.map +1 -1
- package/lib/importer/pipes/parsers/csv-parser.pipe.js +10 -5
- package/lib/importer/pipes/parsers/csv-parser.pipe.js.map +1 -1
- package/lib/importer/pipes/parsers/data-transformer.pipe.d.ts +3 -3
- package/lib/importer/pipes/parsers/data-transformer.pipe.d.ts.map +1 -1
- package/lib/importer/pipes/parsers/data-transformer.pipe.js +13 -24
- package/lib/importer/pipes/parsers/data-transformer.pipe.js.map +1 -1
- package/lib/importer/pipes/parsers/data-validator.pipe.d.ts +2 -2
- package/lib/importer/pipes/parsers/data-validator.pipe.d.ts.map +1 -1
- package/lib/importer/pipes/parsers/data-validator.pipe.js +26 -37
- package/lib/importer/pipes/parsers/data-validator.pipe.js.map +1 -1
- package/lib/index.d.ts +3 -6
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +9 -10
- package/lib/index.js.map +1 -1
- package/lib/kubernetes/kubernetes.service.js +70 -109
- package/lib/kubernetes/kubernetes.service.js.map +1 -1
- package/lib/mail-templates/mail-template.command.js +5 -16
- package/lib/mail-templates/mail-template.command.js.map +1 -1
- package/lib/mail-templates/mail-template.decorator.d.ts +1 -1
- package/lib/mail-templates/mail-template.decorator.d.ts.map +1 -1
- package/lib/mail-templates/mail-template.service.d.ts.map +1 -1
- package/lib/mail-templates/mail-template.service.js +20 -30
- package/lib/mail-templates/mail-template.service.js.map +1 -1
- package/lib/mailer/mailer.module.js +1 -13
- package/lib/mailer/mailer.module.js.map +1 -1
- package/lib/mailer/mailer.service.d.ts.map +1 -1
- package/lib/mailer/mailer.service.js +48 -62
- package/lib/mailer/mailer.service.js.map +1 -1
- package/lib/mailer/send-test-mail.command.js +15 -26
- package/lib/mailer/send-test-mail.command.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127085859.js +3 -14
- package/lib/mikro-orm/migrations/Migration20220127085859.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127085946.js +3 -14
- package/lib/mikro-orm/migrations/Migration20220127085946.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127091538.js +3 -14
- package/lib/mikro-orm/migrations/Migration20220127091538.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127091751.js +6 -17
- package/lib/mikro-orm/migrations/Migration20220127091751.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127111301.js +15 -26
- package/lib/mikro-orm/migrations/Migration20220127111301.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220127142112.js +4 -15
- package/lib/mikro-orm/migrations/Migration20220127142112.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220620124134.js +19 -32
- package/lib/mikro-orm/migrations/Migration20220620124134.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20220905145606.js +8 -21
- package/lib/mikro-orm/migrations/Migration20220905145606.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230209111818.js +3 -14
- package/lib/mikro-orm/migrations/Migration20230209111818.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230302145445.js +6 -19
- package/lib/mikro-orm/migrations/Migration20230302145445.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230613150332.js +3 -14
- package/lib/mikro-orm/migrations/Migration20230613150332.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230802124224.js +5 -18
- package/lib/mikro-orm/migrations/Migration20230802124224.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230808085034.js +2 -13
- package/lib/mikro-orm/migrations/Migration20230808085034.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20230821090303.js +8 -21
- package/lib/mikro-orm/migrations/Migration20230821090303.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20231204140305.js +8 -21
- package/lib/mikro-orm/migrations/Migration20231204140305.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20231206123505.js +7 -20
- package/lib/mikro-orm/migrations/Migration20231206123505.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20231215103630.js +6 -19
- package/lib/mikro-orm/migrations/Migration20231215103630.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20231218092313.js +7 -20
- package/lib/mikro-orm/migrations/Migration20231218092313.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20231222090009.js +7 -20
- package/lib/mikro-orm/migrations/Migration20231222090009.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240702123233.js +28 -40
- package/lib/mikro-orm/migrations/Migration20240702123233.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240725071750.js +2 -13
- package/lib/mikro-orm/migrations/Migration20240725071750.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240814090503.js +7 -18
- package/lib/mikro-orm/migrations/Migration20240814090503.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240814090541.js +3 -14
- package/lib/mikro-orm/migrations/Migration20240814090541.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20240814090653.js +3 -14
- package/lib/mikro-orm/migrations/Migration20240814090653.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250403134629.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250403134629.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250531565156.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250531565156.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250531565157.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250531565157.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250612134629.js +3 -14
- package/lib/mikro-orm/migrations/Migration20250612134629.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250623085054.js +2 -13
- package/lib/mikro-orm/migrations/Migration20250623085054.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20250623113026.js +4 -15
- package/lib/mikro-orm/migrations/Migration20250623113026.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20251013081751.js +2 -13
- package/lib/mikro-orm/migrations/Migration20251013081751.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20251118143418.js +3 -14
- package/lib/mikro-orm/migrations/Migration20251118143418.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20251126093305.js +4 -17
- package/lib/mikro-orm/migrations/Migration20251126093305.js.map +1 -1
- package/lib/mikro-orm/migrations/Migration20260413072931.d.ts +6 -0
- package/lib/mikro-orm/migrations/Migration20260413072931.d.ts.map +1 -0
- package/lib/mikro-orm/migrations/Migration20260413072931.js +16 -0
- package/lib/mikro-orm/migrations/Migration20260413072931.js.map +1 -0
- package/lib/mikro-orm/mikro-orm.module.d.ts.map +1 -1
- package/lib/mikro-orm/mikro-orm.module.js +18 -19
- package/lib/mikro-orm/mikro-orm.module.js.map +1 -1
- package/lib/page-tree/attached-document-loader.service.d.ts.map +1 -1
- package/lib/page-tree/attached-document-loader.service.js +9 -17
- package/lib/page-tree/attached-document-loader.service.js.map +1 -1
- package/lib/page-tree/blocks/internal-link-block-transformer.service.js +18 -29
- package/lib/page-tree/blocks/internal-link-block-transformer.service.js.map +1 -1
- package/lib/page-tree/blocks/internal-link-block-warnings.service.js +14 -25
- package/lib/page-tree/blocks/internal-link-block-warnings.service.js.map +1 -1
- package/lib/page-tree/blocks/internal-link.block.js +2 -13
- package/lib/page-tree/blocks/internal-link.block.js.map +1 -1
- package/lib/page-tree/createPageTreeResolver.d.ts +2 -1
- package/lib/page-tree/createPageTreeResolver.d.ts.map +1 -1
- package/lib/page-tree/createPageTreeResolver.js +195 -247
- package/lib/page-tree/createPageTreeResolver.js.map +1 -1
- package/lib/page-tree/document-subscriber.js +19 -30
- package/lib/page-tree/document-subscriber.js.map +1 -1
- package/lib/page-tree/dto/paginated-page-tree-nodes.factory.d.ts +8 -0
- package/lib/page-tree/dto/paginated-page-tree-nodes.factory.d.ts.map +1 -0
- package/lib/page-tree/dto/paginated-page-tree-nodes.factory.js +23 -0
- package/lib/page-tree/dto/paginated-page-tree-nodes.factory.js.map +1 -0
- package/lib/page-tree/entities/page-tree-node-base.entity.d.ts +1 -0
- package/lib/page-tree/entities/page-tree-node-base.entity.d.ts.map +1 -1
- package/lib/page-tree/entities/page-tree-node-base.entity.js +15 -1
- package/lib/page-tree/entities/page-tree-node-base.entity.js.map +1 -1
- package/lib/page-tree/fullText/createFullTextResolver.d.ts +8 -0
- package/lib/page-tree/fullText/createFullTextResolver.d.ts.map +1 -0
- package/lib/page-tree/fullText/createFullTextResolver.js +74 -0
- package/lib/page-tree/fullText/createFullTextResolver.js.map +1 -0
- package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.d.ts +7 -0
- package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.d.ts.map +1 -0
- package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.js +36 -0
- package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.js.map +1 -0
- package/lib/page-tree/fullText/page-tree-full-text.service.d.ts +17 -0
- package/lib/page-tree/fullText/page-tree-full-text.service.d.ts.map +1 -0
- package/lib/page-tree/fullText/page-tree-full-text.service.js +135 -0
- package/lib/page-tree/fullText/page-tree-full-text.service.js.map +1 -0
- package/lib/page-tree/page-tree-node-document-entity-scope.service.js +7 -19
- package/lib/page-tree/page-tree-node-document-entity-scope.service.js.map +1 -1
- package/lib/page-tree/page-tree-read-api.d.ts +2 -1
- package/lib/page-tree/page-tree-read-api.d.ts.map +1 -1
- package/lib/page-tree/page-tree-read-api.js +195 -196
- package/lib/page-tree/page-tree-read-api.js.map +1 -1
- package/lib/page-tree/page-tree-read-api.service.d.ts +1 -0
- package/lib/page-tree/page-tree-read-api.service.d.ts.map +1 -1
- package/lib/page-tree/page-tree-read-api.service.js +31 -65
- package/lib/page-tree/page-tree-read-api.service.js.map +1 -1
- package/lib/page-tree/page-tree.constants.d.ts +1 -0
- package/lib/page-tree/page-tree.constants.d.ts.map +1 -1
- package/lib/page-tree/page-tree.constants.js +2 -1
- package/lib/page-tree/page-tree.constants.js.map +1 -1
- package/lib/page-tree/page-tree.module.d.ts +1 -0
- package/lib/page-tree/page-tree.module.d.ts.map +1 -1
- package/lib/page-tree/page-tree.module.js +23 -13
- package/lib/page-tree/page-tree.module.js.map +1 -1
- package/lib/page-tree/page-tree.service.d.ts.map +1 -1
- package/lib/page-tree/page-tree.service.js +273 -312
- package/lib/page-tree/page-tree.service.js.map +1 -1
- package/lib/page-tree/site-preview.resolver.js +25 -38
- package/lib/page-tree/site-preview.resolver.js.map +1 -1
- package/lib/page-tree/types.d.ts +2 -2
- package/lib/page-tree/types.d.ts.map +1 -1
- package/lib/page-tree/validators/page-exists.validator.js +3 -14
- package/lib/page-tree/validators/page-exists.validator.js.map +1 -1
- package/lib/redirects/dto/redirect-input.factory.d.ts +2 -2
- package/lib/redirects/dto/redirect-input.factory.d.ts.map +1 -1
- package/lib/redirects/dto/redirect-input.factory.js +2 -2
- package/lib/redirects/dto/redirect-input.factory.js.map +1 -1
- package/lib/redirects/dto/redirects.filter.d.ts.map +1 -1
- package/lib/redirects/dto/redirects.filter.js +1 -1
- package/lib/redirects/dto/redirects.filter.js.map +1 -1
- package/lib/redirects/entities/redirect-entity.factory.d.ts +2 -2
- package/lib/redirects/entities/redirect-entity.factory.d.ts.map +1 -1
- package/lib/redirects/entities/redirect-entity.factory.js +2 -2
- package/lib/redirects/entities/redirect-entity.factory.js.map +1 -1
- package/lib/redirects/import-redirects.command.js +109 -121
- package/lib/redirects/import-redirects.command.js.map +1 -1
- package/lib/redirects/redirect-target-url.service.js +17 -28
- package/lib/redirects/redirect-target-url.service.js.map +1 -1
- package/lib/redirects/redirects.enum.d.ts +1 -1
- package/lib/redirects/redirects.enum.d.ts.map +1 -1
- package/lib/redirects/redirects.enum.js +7 -7
- package/lib/redirects/redirects.enum.js.map +1 -1
- package/lib/redirects/redirects.module.js +2 -2
- package/lib/redirects/redirects.module.js.map +1 -1
- package/lib/redirects/redirects.resolver.js +114 -137
- package/lib/redirects/redirects.resolver.js.map +1 -1
- package/lib/redirects/redirects.service.d.ts.map +1 -1
- package/lib/redirects/redirects.service.js +40 -47
- package/lib/redirects/redirects.service.js.map +1 -1
- package/lib/redirects/redirects.util.d.ts +2 -2
- package/lib/redirects/redirects.util.d.ts.map +1 -1
- package/lib/redirects/redirects.util.js +2 -3
- package/lib/redirects/redirects.util.js.map +1 -1
- package/lib/redirects/validators/isValidRedirectSource.js +8 -19
- package/lib/redirects/validators/isValidRedirectSource.js.map +1 -1
- package/lib/sentry/sentry.interceptor.js +30 -42
- package/lib/sentry/sentry.interceptor.js.map +1 -1
- package/lib/sentry/sentry.module.js +15 -36
- package/lib/sentry/sentry.module.js.map +1 -1
- package/lib/translation/azure-ai-translator.resolver.js +19 -30
- package/lib/translation/azure-ai-translator.resolver.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/lib/user-permissions/access-control.service.d.ts.map +1 -1
- package/lib/user-permissions/access-control.service.js +6 -3
- package/lib/user-permissions/access-control.service.js.map +1 -1
- package/lib/user-permissions/auth/user-permissions.guard.d.ts.map +1 -1
- package/lib/user-permissions/auth/user-permissions.guard.js +56 -61
- package/lib/user-permissions/auth/user-permissions.guard.js.map +1 -1
- package/lib/user-permissions/content-scope.service.d.ts.map +1 -1
- package/lib/user-permissions/content-scope.service.js +86 -97
- package/lib/user-permissions/content-scope.service.js.map +1 -1
- package/lib/user-permissions/decorators/affected-entity.decorator.d.ts +1 -1
- package/lib/user-permissions/decorators/affected-entity.decorator.d.ts.map +1 -1
- package/lib/user-permissions/decorators/affected-scope.decorator.d.ts +1 -1
- package/lib/user-permissions/decorators/affected-scope.decorator.d.ts.map +1 -1
- package/lib/user-permissions/decorators/required-permission.decorator.d.ts +1 -1
- package/lib/user-permissions/decorators/required-permission.decorator.d.ts.map +1 -1
- package/lib/user-permissions/decorators/scoped-entity.decorator.d.ts +2 -2
- package/lib/user-permissions/decorators/scoped-entity.decorator.d.ts.map +1 -1
- package/lib/user-permissions/user-content-scopes.resolver.js +18 -33
- package/lib/user-permissions/user-content-scopes.resolver.js.map +1 -1
- package/lib/user-permissions/user-permission.resolver.d.ts.map +1 -1
- package/lib/user-permissions/user-permission.resolver.js +42 -66
- package/lib/user-permissions/user-permission.resolver.js.map +1 -1
- package/lib/user-permissions/user-permissions.module.js +6 -27
- package/lib/user-permissions/user-permissions.module.js.map +1 -1
- package/lib/user-permissions/user-permissions.public.service.js +6 -21
- package/lib/user-permissions/user-permissions.public.service.js.map +1 -1
- package/lib/user-permissions/user-permissions.service.d.ts.map +1 -1
- package/lib/user-permissions/user-permissions.service.js +168 -191
- package/lib/user-permissions/user-permissions.service.js.map +1 -1
- package/lib/user-permissions/user-permissions.types.d.ts +6 -6
- package/lib/user-permissions/user-permissions.types.d.ts.map +1 -1
- package/lib/user-permissions/user-permissions.types.js +3 -1
- package/lib/user-permissions/user-permissions.types.js.map +1 -1
- package/lib/user-permissions/user.resolver.js +71 -95
- package/lib/user-permissions/user.resolver.js.map +1 -1
- package/lib/warnings/decorators/create-warnings.decorator.d.ts +3 -3
- package/lib/warnings/decorators/create-warnings.decorator.d.ts.map +1 -1
- package/lib/warnings/dto/warning-data.d.ts +1 -1
- package/lib/warnings/dto/warning-data.d.ts.map +1 -1
- package/lib/warnings/warning-checker.command.js +123 -156
- package/lib/warnings/warning-checker.command.js.map +1 -1
- package/lib/warnings/warning-event-subscriber.js +92 -107
- package/lib/warnings/warning-event-subscriber.js.map +1 -1
- package/lib/warnings/warning.resolver.js +56 -72
- package/lib/warnings/warning.resolver.js.map +1 -1
- package/lib/warnings/warning.service.js +19 -32
- package/lib/warnings/warning.service.js.map +1 -1
- package/package.json +19 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-control.service.d.ts","sourceRoot":"","sources":["../../src/user-permissions/access-control.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAErF,8BACsB,4BAA6B,YAAW,6BAA6B;IACvF,OAAO,CAAC,iBAAiB;IAczB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO;
|
|
1
|
+
{"version":3,"file":"access-control.service.d.ts","sourceRoot":"","sources":["../../src/user-permissions/access-control.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,6BAA6B,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAErF,8BACsB,4BAA6B,YAAW,6BAA6B;IACvF,OAAO,CAAC,iBAAiB;IAczB,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO;IAM1F,MAAM,CAAC,wBAAwB,CAAC,WAAW,EAAE,qBAAqB,EAAE,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,GAAG,OAAO;CAc7H"}
|
|
@@ -24,18 +24,21 @@ let AbstractAccessControlService = class AbstractAccessControlService {
|
|
|
24
24
|
}));
|
|
25
25
|
}
|
|
26
26
|
isAllowed(user, permission, contentScope) {
|
|
27
|
-
if (!user.permissions)
|
|
27
|
+
if (!user.permissions) {
|
|
28
28
|
return false;
|
|
29
|
+
}
|
|
29
30
|
return user.permissions.some((p) => p.permission === permission && (!contentScope || this.checkContentScope(p.contentScopes, contentScope)));
|
|
30
31
|
}
|
|
31
32
|
static isEqualOrMorePermissions(permissions, targetPermissions) {
|
|
32
33
|
for (const permission of targetPermissions) {
|
|
33
34
|
const currentUserPermission = permissions.find((p) => p.permission === permission.permission);
|
|
34
|
-
if (!currentUserPermission)
|
|
35
|
+
if (!currentUserPermission) {
|
|
35
36
|
return false;
|
|
37
|
+
}
|
|
36
38
|
for (const contentScope of permission.contentScopes) {
|
|
37
|
-
if (!currentUserPermission.contentScopes.find((cs) => (0, lodash_isequal_1.default)(cs, contentScope)))
|
|
39
|
+
if (!currentUserPermission.contentScopes.find((cs) => (0, lodash_isequal_1.default)(cs, contentScope))) {
|
|
38
40
|
return false;
|
|
41
|
+
}
|
|
39
42
|
}
|
|
40
43
|
}
|
|
41
44
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"access-control.service.js","sourceRoot":"","sources":["../../src/user-permissions/access-control.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oEAAqC;AAO9B,IAAe,4BAA4B,GAA3C,MAAe,4BAA4B;IACtC,iBAAiB,CAAC,iBAAiC,EAAE,kBAAgC;QACzF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAC/C,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,uBAAuB,CAAC,EAAE,EAAE;YAC9E,MAAM,qBAAqB,GAAI,gBAA4C,CAAC,SAAS,CAAC,CAAC;YAEvF,oCAAoC;YACpC,IAAI,qBAAqB,IAAI,IAAI,IAAI,uBAAuB,IAAI,IAAI,EAAE,CAAC;gBACnE,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,OAAO,qBAAqB,KAAK,uBAAuB,CAAC;QAC7D,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IACD,SAAS,CAAC,IAAiB,EAAE,UAAsB,EAAE,YAA2B;QAC5E,IAAI,CAAC,IAAI,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"access-control.service.js","sourceRoot":"","sources":["../../src/user-permissions/access-control.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,oEAAqC;AAO9B,IAAe,4BAA4B,GAA3C,MAAe,4BAA4B;IACtC,iBAAiB,CAAC,iBAAiC,EAAE,kBAAgC;QACzF,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAC/C,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,uBAAuB,CAAC,EAAE,EAAE;YAC9E,MAAM,qBAAqB,GAAI,gBAA4C,CAAC,SAAS,CAAC,CAAC;YAEvF,oCAAoC;YACpC,IAAI,qBAAqB,IAAI,IAAI,IAAI,uBAAuB,IAAI,IAAI,EAAE,CAAC;gBACnE,OAAO,IAAI,CAAC;YAChB,CAAC;YAED,OAAO,qBAAqB,KAAK,uBAAuB,CAAC;QAC7D,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IACD,SAAS,CAAC,IAAiB,EAAE,UAAsB,EAAE,YAA2B;QAC5E,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,IAAI,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACjJ,CAAC;IACD,MAAM,CAAC,wBAAwB,CAAC,WAAoC,EAAE,iBAA0C;QAC5G,KAAK,MAAM,UAAU,IAAI,iBAAiB,EAAE,CAAC;YACzC,MAAM,qBAAqB,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;YAC9F,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBACzB,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,KAAK,MAAM,YAAY,IAAI,UAAU,CAAC,aAAa,EAAE,CAAC;gBAClD,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAA,wBAAO,EAAC,EAAE,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;oBAC/E,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AAnCqB,oEAA4B;uCAA5B,4BAA4B;IADjD,IAAA,mBAAU,GAAE;GACS,4BAA4B,CAmCjD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-permissions.guard.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/auth/user-permissions.guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAsB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAKzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAK/D,OAAO,EAAE,6BAA6B,EAA0B,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAE1H,qBACa,oBAAqB,YAAW,WAAW;IAIhD,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACJ,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN9D,SAAS,CAAC,QAAQ,CAAC,MAAM,SAAyC;gBAGpD,SAAS,EAAE,SAAS,EACb,mBAAmB,EAAE,mBAAmB,EACR,oBAAoB,EAAE,6BAA6B,EACjD,OAAO,EAAE,sBAAsB;IAGhF,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"user-permissions.guard.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/auth/user-permissions.guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAsB,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAKzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAK/D,OAAO,EAAE,6BAA6B,EAA0B,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAE1H,qBACa,oBAAqB,YAAW,WAAW;IAIhD,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACJ,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAN9D,SAAS,CAAC,QAAQ,CAAC,MAAM,SAAyC;gBAGpD,SAAS,EAAE,SAAS,EACb,mBAAmB,EAAE,mBAAmB,EACR,oBAAoB,EAAE,6BAA6B,EACjD,OAAO,EAAE,sBAAsB;IAGhF,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAiF9D,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,uBAAuB;CASlC"}
|
|
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
14
|
var UserPermissionsGuard_1;
|
|
24
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
16
|
exports.UserPermissionsGuard = void 0;
|
|
@@ -39,62 +30,66 @@ let UserPermissionsGuard = UserPermissionsGuard_1 = class UserPermissionsGuard {
|
|
|
39
30
|
this.options = options;
|
|
40
31
|
this.logger = new common_1.Logger(UserPermissionsGuard_1.name);
|
|
41
32
|
}
|
|
42
|
-
canActivate(context) {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
33
|
+
async canActivate(context) {
|
|
34
|
+
const location = `${context.getClass().name}::${context.getHandler().name}()`;
|
|
35
|
+
const requiredPermission = this.getDecorator(context, required_permission_decorator_1.REQUIRED_PERMISSION_METADATA_KEY);
|
|
36
|
+
const skipScopeCheck = requiredPermission?.options?.skipScopeCheck ?? false;
|
|
37
|
+
let requiredContentScopes = [];
|
|
38
|
+
// Ignore field resolvers as they have no scopes and would overwrite the scopes of the root query.
|
|
39
|
+
if (!this.isResolvingGraphQLField(context) && !skipScopeCheck) {
|
|
40
|
+
requiredContentScopes = await this.contentScopeService.getScopesForPermissionCheck(context);
|
|
41
|
+
const request = (0, utils_1.getRequestFromExecutionContext)(context);
|
|
42
|
+
request.contentScopes = this.contentScopeService.getUniqueScopes(requiredContentScopes);
|
|
43
|
+
}
|
|
44
|
+
if (this.getDecorator(context, disable_comet_guards_decorator_1.DISABLE_COMET_GUARDS_METADATA_KEY)) {
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
const user = this.getUser(context);
|
|
48
|
+
if (!user) {
|
|
49
|
+
this.logger.debug("Could not get authenticated user. Maybe CometAuthGuard is missing?");
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
// System user authenticated via basic auth
|
|
53
|
+
if (typeof user === "string" && this.options.systemUsers?.includes(user)) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
if (!requiredPermission && this.isResolvingGraphQLField(context)) {
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
if (!requiredPermission) {
|
|
60
|
+
throw new Error(`RequiredPermission decorator is missing in ${location}`);
|
|
61
|
+
}
|
|
62
|
+
const requiredPermissions = requiredPermission.requiredPermission;
|
|
63
|
+
if (requiredPermissions.includes(required_permission_decorator_1.DisablePermissionCheck)) {
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
if (requiredPermissions.length === 0) {
|
|
67
|
+
throw new Error(`RequiredPermission decorator has empty permissions in ${location}`);
|
|
68
|
+
}
|
|
69
|
+
if (this.isResolvingGraphQLField(context) || skipScopeCheck) {
|
|
70
|
+
// At least one permission is required
|
|
71
|
+
if (requiredPermissions
|
|
72
|
+
.filter((permission) => permission !== required_permission_decorator_1.DisablePermissionCheck)
|
|
73
|
+
.some((permission) => this.accessControlService.isAllowed(user, permission))) {
|
|
56
74
|
return true;
|
|
57
|
-
const user = this.getUser(context);
|
|
58
|
-
if (!user) {
|
|
59
|
-
this.logger.debug("Could not get authenticated user. Maybe CometAuthGuard is missing?");
|
|
60
|
-
return false;
|
|
61
75
|
}
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return true;
|
|
67
|
-
if (!requiredPermission)
|
|
68
|
-
throw new Error(`RequiredPermission decorator is missing in ${location}`);
|
|
69
|
-
const requiredPermissions = requiredPermission.requiredPermission;
|
|
70
|
-
if (requiredPermissions.includes(required_permission_decorator_1.DisablePermissionCheck))
|
|
71
|
-
return true;
|
|
72
|
-
if (requiredPermissions.length === 0)
|
|
73
|
-
throw new Error(`RequiredPermission decorator has empty permissions in ${location}`);
|
|
74
|
-
if (this.isResolvingGraphQLField(context) || skipScopeCheck) {
|
|
75
|
-
// At least one permission is required
|
|
76
|
-
if (requiredPermissions
|
|
77
|
-
.filter((permission) => permission !== required_permission_decorator_1.DisablePermissionCheck)
|
|
78
|
-
.some((permission) => this.accessControlService.isAllowed(user, permission))) {
|
|
79
|
-
return true;
|
|
80
|
-
}
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
if (requiredContentScopes.length === 0) {
|
|
79
|
+
throw new Error(`Could not get content scope. Either pass a scope-argument or add an @AffectedEntity()/@AffectedScope()-decorator or enable skipScopeCheck in the @RequiredPermission()-decorator of ${location}`);
|
|
81
80
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
.filter((permission) => permission !== required_permission_decorator_1.DisablePermissionCheck)
|
|
91
|
-
.some((permission) => requiredContentScopes.every((contentScopes) => contentScopes.some((contentScope) => this.accessControlService.isAllowed(user, permission, contentScope))))) {
|
|
92
|
-
return true;
|
|
93
|
-
}
|
|
81
|
+
// requiredContentScopes is an two level array of scopes
|
|
82
|
+
// The first level has to be checked with AND, the second level with OR
|
|
83
|
+
// The first level consists of submitted scopes and affected entities
|
|
84
|
+
// The only case that there is more than one scope in the second level is when the ScopedEntity returns more scopes
|
|
85
|
+
if (requiredPermissions
|
|
86
|
+
.filter((permission) => permission !== required_permission_decorator_1.DisablePermissionCheck)
|
|
87
|
+
.some((permission) => requiredContentScopes.every((contentScopes) => contentScopes.some((contentScope) => this.accessControlService.isAllowed(user, permission, contentScope))))) {
|
|
88
|
+
return true;
|
|
94
89
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
90
|
+
}
|
|
91
|
+
this.logger.debug(`User ${(typeof user === "string" ? user : user.id) ?? "unknown"} does not have required permissions for ${location}`);
|
|
92
|
+
return false;
|
|
98
93
|
}
|
|
99
94
|
getUser(context) {
|
|
100
95
|
const request = context.getType().toString() === "graphql" ? graphql_1.GqlExecutionContext.create(context).getContext().req : context.switchToHttp().getRequest();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-permissions.guard.js","sourceRoot":"","sources":["../../../src/user-permissions/auth/user-permissions.guard.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"user-permissions.guard.js","sourceRoot":"","sources":["../../../src/user-permissions/auth/user-permissions.guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-scope.service.d.ts","sourceRoot":"","sources":["../../src/user-permissions/content-scope.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAwB,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,wDAAwD,CAAC;AAKtF,qBACa,mBAAmB;IAExB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,SAAS;IACd,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAHrC,SAAS,EAAE,SAAS,EACX,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,SAAS,EACR,eAAe,CAAC,EAAE,eAAe,YAAA;IAGlE,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAQrF,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IAyBjF,+BAA+B,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIzF,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE;YAY3C,0BAA0B;
|
|
1
|
+
{"version":3,"file":"content-scope.service.d.ts","sourceRoot":"","sources":["../../src/user-permissions/content-scope.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAwB,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAKpD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,EAAE,YAAY,EAAE,MAAM,wDAAwD,CAAC;AAKtF,qBACa,mBAAmB;IAExB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,SAAS;IACd,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;gBAHrC,SAAS,EAAE,SAAS,EACX,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,SAAS,EACR,eAAe,CAAC,EAAE,eAAe,YAAA;IAGlE,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO;IAQrF,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;IAyBjF,+BAA+B,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAIzF,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,EAAE,GAAG,YAAY,EAAE;YAY3C,0BAA0B;YA4E1B,OAAO;CAQxB"}
|
|
@@ -11,15 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
11
11
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
14
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
24
15
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
25
16
|
};
|
|
@@ -48,34 +39,30 @@ let ContentScopeService = class ContentScopeService {
|
|
|
48
39
|
// - an instance of a class (e.g. DamScope)
|
|
49
40
|
// - or a plain object (from a GraphQL input)
|
|
50
41
|
// Then they are not deeply equal, although they represent the same scope
|
|
51
|
-
return (0, lodash_isequal_1.default)(
|
|
42
|
+
return (0, lodash_isequal_1.default)({ ...scope1 }, { ...scope2 });
|
|
52
43
|
}
|
|
53
|
-
getScopesForPermissionCheck(context) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return contentScopes;
|
|
73
|
-
});
|
|
44
|
+
async getScopesForPermissionCheck(context) {
|
|
45
|
+
const contentScopes = [];
|
|
46
|
+
const args = await this.getArgs(context);
|
|
47
|
+
const location = `${context.getClass().name}::${context.getHandler().name}()`;
|
|
48
|
+
// AffectedEntities
|
|
49
|
+
const affectedEntities = this.reflector.getAllAndOverride(affected_entity_decorator_1.AFFECTED_ENTITY_METADATA_KEY, [context.getHandler()]) || [];
|
|
50
|
+
for (const affectedEntity of affectedEntities) {
|
|
51
|
+
contentScopes.push(...(await this.getContentScopesFromEntity(affectedEntity, args, location)));
|
|
52
|
+
}
|
|
53
|
+
// AffectedScope
|
|
54
|
+
const affectedScope = this.reflector.getAllAndOverride(affected_scope_decorator_1.AFFECTED_SCOPE_METADATA_KEY, [context.getHandler()]) || undefined;
|
|
55
|
+
if (affectedScope) {
|
|
56
|
+
contentScopes.push([affectedScope.argsToScope(args)]);
|
|
57
|
+
}
|
|
58
|
+
// Scope arg
|
|
59
|
+
if (args.scope) {
|
|
60
|
+
contentScopes.push([args.scope]);
|
|
61
|
+
}
|
|
62
|
+
return contentScopes;
|
|
74
63
|
}
|
|
75
|
-
inferScopesFromExecutionContext(context) {
|
|
76
|
-
return
|
|
77
|
-
return this.getUniqueScopes(yield this.getScopesForPermissionCheck(context));
|
|
78
|
-
});
|
|
64
|
+
async inferScopesFromExecutionContext(context) {
|
|
65
|
+
return this.getUniqueScopes(await this.getScopesForPermissionCheck(context));
|
|
79
66
|
}
|
|
80
67
|
getUniqueScopes(scopes) {
|
|
81
68
|
const uniqueScopes = [];
|
|
@@ -86,81 +73,83 @@ let ContentScopeService = class ContentScopeService {
|
|
|
86
73
|
});
|
|
87
74
|
return uniqueScopes;
|
|
88
75
|
}
|
|
89
|
-
getContentScopesFromEntity(affectedEntity, args, location) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
if (affectedEntity.options.idArg) {
|
|
93
|
-
|
|
94
|
-
|
|
76
|
+
async getContentScopesFromEntity(affectedEntity, args, location) {
|
|
77
|
+
const contentScopes = [];
|
|
78
|
+
if (affectedEntity.options.idArg) {
|
|
79
|
+
if (!args[affectedEntity.options.idArg] && !affectedEntity.options.nullable) {
|
|
80
|
+
throw new Error(`${affectedEntity.options.idArg} arg not found`);
|
|
81
|
+
}
|
|
82
|
+
if (args[affectedEntity.options.idArg]) {
|
|
83
|
+
const repo = this.orm.em.getRepository(affectedEntity.entity);
|
|
84
|
+
const id = args[affectedEntity.options.idArg];
|
|
85
|
+
const ids = Array.isArray(id) ? id : [id];
|
|
86
|
+
if (ids.length === 0) {
|
|
87
|
+
throw new Error(`Encountered empty IDs array for argument '${affectedEntity.options.idArg}' of ${location}. Make sure to skip the operation if no IDs are provided.`);
|
|
95
88
|
}
|
|
96
|
-
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
if (ids.length === 0) {
|
|
101
|
-
throw new Error(`Encountered empty IDs array for argument '${affectedEntity.options.idArg}' of ${location}. Make sure to skip the operation if no IDs are provided.`);
|
|
89
|
+
for (const id of ids) {
|
|
90
|
+
const row = await repo.findOneOrFail(id, { filters: false }); // disable all default filters, e.g., excludeDeleted
|
|
91
|
+
if (row.scope) {
|
|
92
|
+
contentScopes.push([row.scope]);
|
|
102
93
|
}
|
|
103
|
-
|
|
104
|
-
const
|
|
105
|
-
if (
|
|
106
|
-
|
|
94
|
+
else {
|
|
95
|
+
const scoped = this.reflector.getAllAndOverride(scoped_entity_decorator_1.SCOPED_ENTITY_METADATA_KEY, [affectedEntity.entity]);
|
|
96
|
+
if (!scoped) {
|
|
97
|
+
throw new Error(`Entity ${affectedEntity.entity} is missing @ScopedEntity decorator`);
|
|
98
|
+
}
|
|
99
|
+
let scopes;
|
|
100
|
+
if ((0, is_injectable_service_helper_1.isInjectableService)(scoped)) {
|
|
101
|
+
const service = this.moduleRef.get(scoped, { strict: false });
|
|
102
|
+
scopes = await service.getEntityScope(row);
|
|
107
103
|
}
|
|
108
104
|
else {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
if ((0, is_injectable_service_helper_1.isInjectableService)(scoped)) {
|
|
114
|
-
const service = this.moduleRef.get(scoped, { strict: false });
|
|
115
|
-
scopes = yield service.getEntityScope(row);
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
scopes = yield scoped(row);
|
|
119
|
-
}
|
|
120
|
-
if (!scopes)
|
|
121
|
-
throw new Error(`@ScopedEntity function for ${affectedEntity.entity} didn't return any scopes`);
|
|
122
|
-
contentScopes.push(Array.isArray(scopes) ? scopes : [scopes]);
|
|
105
|
+
scopes = await scoped(row);
|
|
106
|
+
}
|
|
107
|
+
if (!scopes) {
|
|
108
|
+
throw new Error(`@ScopedEntity function for ${affectedEntity.entity} didn't return any scopes`);
|
|
123
109
|
}
|
|
110
|
+
contentScopes.push(Array.isArray(scopes) ? scopes : [scopes]);
|
|
124
111
|
}
|
|
125
112
|
}
|
|
126
113
|
}
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
114
|
+
}
|
|
115
|
+
else if (affectedEntity.options.pageTreeNodeIdArg) {
|
|
116
|
+
if (!args[affectedEntity.options.pageTreeNodeIdArg] && !affectedEntity.options.nullable) {
|
|
117
|
+
throw new Error(`${affectedEntity.options.pageTreeNodeIdArg} arg not found`);
|
|
118
|
+
}
|
|
119
|
+
if (args[affectedEntity.options.pageTreeNodeIdArg]) {
|
|
120
|
+
if (this.pageTreeService === undefined) {
|
|
121
|
+
throw new Error("pageTreeNodeIdArg was given but no PageTreeModule is registered");
|
|
122
|
+
}
|
|
123
|
+
const pageTreeApi = await this.pageTreeService.createReadApi({ visibility: "all" });
|
|
124
|
+
const id = args[affectedEntity.options.pageTreeNodeIdArg];
|
|
125
|
+
const ids = Array.isArray(id) ? id : [id];
|
|
126
|
+
for (const id of ids) {
|
|
127
|
+
const node = await pageTreeApi.getNode(id);
|
|
128
|
+
if (!node) {
|
|
129
|
+
throw new Error("Can't find pageTreeNode");
|
|
143
130
|
}
|
|
131
|
+
if (!node.scope) {
|
|
132
|
+
throw new Error("PageTreeNode doesn't have a scope");
|
|
133
|
+
}
|
|
134
|
+
contentScopes.push([node.scope]);
|
|
144
135
|
}
|
|
145
136
|
}
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
// TODO implement something more flexible that supports something like that: @AffectedEntity(Product, ProductEntityLoader)
|
|
140
|
+
throw new Error("idArg or pageTreeNodeIdArg is required");
|
|
141
|
+
}
|
|
142
|
+
return contentScopes;
|
|
152
143
|
}
|
|
153
144
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
154
|
-
getArgs(context) {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
}
|
|
163
|
-
});
|
|
145
|
+
async getArgs(context) {
|
|
146
|
+
if (context.getType().toString() === "graphql") {
|
|
147
|
+
return graphql_1.GqlExecutionContext.create(context).getArgs();
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
const request = context.switchToHttp().getRequest();
|
|
151
|
+
return { ...request.params, ...request.query };
|
|
152
|
+
}
|
|
164
153
|
}
|
|
165
154
|
};
|
|
166
155
|
exports.ContentScopeService = ContentScopeService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-scope.service.js","sourceRoot":"","sources":["../../src/user-permissions/content-scope.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"content-scope.service.js","sourceRoot":"","sources":["../../src/user-permissions/content-scope.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affected-entity.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/affected-entity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"affected-entity.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/affected-entity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAErE,MAAM,WAAW,qBAAqB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACtB;AACD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,qBAAqB,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,4BAA4B,qBAAqB,CAAC;AAE/D,eAAO,MAAM,cAAc,GAEvB,QAAQ,UAAU,CAAC,GAAG,CAAC,EACvB,yCAAwC,qBAAuC,KAChF,eAOF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ContentScope } from "../../user-permissions/interfaces/content-scope.interface";
|
|
2
2
|
export type AffectedScopeMeta = {
|
|
3
3
|
argsToScope: (args: Record<string, unknown>) => ContentScope;
|
|
4
4
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"affected-scope.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/affected-scope.decorator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"affected-scope.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/affected-scope.decorator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAE9F,MAAM,MAAM,iBAAiB,GAAG;IAC5B,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,YAAY,CAAC;CAChE,CAAC;AAEF,eAAO,MAAM,2BAA2B,kBAAkB,CAAC;AAE3D,eAAO,MAAM,aAAa,GAAI,CAAC,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,KAAK,YAAY,KAAG,eAEzE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"required-permission.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/required-permission.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"required-permission.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/required-permission.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAe,MAAM,gBAAgB,CAAC;AAEnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,KAAK,yBAAyB,GAAG;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEF,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,KAAK,0BAA0B,GAAG,OAAO,sBAAsB,CAAC;AAEhE,MAAM,MAAM,0BAA0B,GAAG;IACrC,kBAAkB,EAAE,KAAK,CAAC,UAAU,GAAG,0BAA0B,CAAC,CAAC;IACnE,OAAO,EAAE,yBAAyB,GAAG,SAAS,CAAC;CAClD,CAAC;AAEF,eAAO,MAAM,gCAAgC,uBAAuB,CAAC;AAErE,eAAO,MAAM,kBAAkB,GAC3B,oBAAoB,UAAU,GAAG,UAAU,EAAE,GAAG,0BAA0B,EAC1E,UAAU,yBAAyB,KACpC,eAAe,CAAC,MAAM,CAKxB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { AnyEntity } from "@mikro-orm/postgresql";
|
|
2
2
|
import { type CustomDecorator, type Type } from "@nestjs/common";
|
|
3
|
-
import {
|
|
3
|
+
import type { ContentScope } from "../../user-permissions/interfaces/content-scope.interface";
|
|
4
4
|
type EntityScopeFunction<Entity extends AnyEntity = AnyEntity> = (item: Entity) => ContentScope | ContentScope[] | Promise<ContentScope | ContentScope[]>;
|
|
5
5
|
export interface EntityScopeServiceInterface<Entity extends AnyEntity = AnyEntity> {
|
|
6
6
|
getEntityScope: EntityScopeFunction<Entity>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoped-entity.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/scoped-entity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"scoped-entity.decorator.d.ts","sourceRoot":"","sources":["../../../src/user-permissions/decorators/scoped-entity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,KAAK,eAAe,EAAe,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAE9F,KAAK,mBAAmB,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS,IAAI,CAC7D,IAAI,EAAE,MAAM,KACX,YAAY,GAAG,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,GAAG,YAAY,EAAE,CAAC,CAAC;AAC5E,MAAM,WAAW,2BAA2B,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS;IAC7E,cAAc,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;CAC/C;AAED,MAAM,MAAM,gBAAgB,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS,IAAI,mBAAmB,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC,CAAC;AAE7I,eAAO,MAAM,0BAA0B,iBAAiB,CAAC;AAEzD,wBAAgB,YAAY,CAAC,MAAM,SAAS,SAAS,GAAG,SAAS,EAAE,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAE3H"}
|