@sync-in/server 1.10.1 → 2.0.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/CHANGELOG.md +47 -0
- package/LICENSE +1 -1
- package/README.md +3 -11
- package/environment/environment.dist.min.yaml +1 -1
- package/environment/environment.dist.yaml +173 -28
- package/package.json +18 -17
- package/server/app.bootstrap.js +1 -5
- package/server/app.bootstrap.js.map +1 -1
- package/server/app.constants.js +1 -5
- package/server/app.constants.js.map +1 -1
- package/server/app.e2e-spec.js +1 -5
- package/server/app.e2e-spec.js.map +1 -1
- package/server/app.functions.js +1 -5
- package/server/app.functions.js.map +1 -1
- package/server/app.module.js +1 -5
- package/server/app.module.js.map +1 -1
- package/server/app.service.js +1 -5
- package/server/app.service.js.map +1 -1
- package/server/app.service.spec.js +2 -6
- package/server/app.service.spec.js.map +1 -1
- package/server/applications/admin/admin.module.js +1 -5
- package/server/applications/admin/admin.module.js.map +1 -1
- package/server/applications/admin/constants/routes.js +1 -5
- package/server/applications/admin/constants/routes.js.map +1 -1
- package/server/applications/admin/interfaces/check-update.interfaces.js +1 -5
- package/server/applications/admin/interfaces/check-update.interfaces.js.map +1 -1
- package/server/applications/admin/services/admin-scheduler.service.js +1 -5
- package/server/applications/admin/services/admin-scheduler.service.js.map +1 -1
- package/server/applications/admin/services/admin.service.js +13 -8
- package/server/applications/admin/services/admin.service.js.map +1 -1
- package/server/applications/admin/services/admin.service.spec.js +1 -5
- package/server/applications/admin/services/admin.service.spec.js.map +1 -1
- package/server/applications/admin/utils/check-update.js +1 -5
- package/server/applications/admin/utils/check-update.js.map +1 -1
- package/server/applications/applications.config.js +1 -5
- package/server/applications/applications.config.js.map +1 -1
- package/server/applications/applications.constants.js +5 -5
- package/server/applications/applications.constants.js.map +1 -1
- package/server/applications/applications.module.js +1 -5
- package/server/applications/applications.module.js.map +1 -1
- package/server/applications/comments/comments.controller.js +1 -5
- package/server/applications/comments/comments.controller.js.map +1 -1
- package/server/applications/comments/comments.controller.spec.js +1 -5
- package/server/applications/comments/comments.controller.spec.js.map +1 -1
- package/server/applications/comments/comments.module.js +1 -5
- package/server/applications/comments/comments.module.js.map +1 -1
- package/server/applications/comments/constants/routes.js +1 -5
- package/server/applications/comments/constants/routes.js.map +1 -1
- package/server/applications/comments/dto/comment.dto.js +1 -5
- package/server/applications/comments/dto/comment.dto.js.map +1 -1
- package/server/applications/comments/interfaces/comment-recent.interface.js +1 -5
- package/server/applications/comments/interfaces/comment-recent.interface.js.map +1 -1
- package/server/applications/comments/schemas/comment.interface.js +1 -5
- package/server/applications/comments/schemas/comment.interface.js.map +1 -1
- package/server/applications/comments/schemas/comments.schema.js +1 -5
- package/server/applications/comments/schemas/comments.schema.js.map +1 -1
- package/server/applications/comments/services/comments-manager.service.js +9 -7
- package/server/applications/comments/services/comments-manager.service.js.map +1 -1
- package/server/applications/comments/services/comments-manager.service.spec.js +10 -8
- package/server/applications/comments/services/comments-manager.service.spec.js.map +1 -1
- package/server/applications/comments/services/comments-queries.service.js +1 -5
- package/server/applications/comments/services/comments-queries.service.js.map +1 -1
- package/server/applications/files/adapters/files-indexer-mysql.service.js +29 -12
- package/server/applications/files/adapters/files-indexer-mysql.service.js.map +1 -1
- package/server/applications/files/adapters/files-indexer-mysql.service.spec.js +1 -5
- package/server/applications/files/adapters/files-indexer-mysql.service.spec.js.map +1 -1
- package/server/applications/files/constants/cache.js +1 -5
- package/server/applications/files/constants/cache.js.map +1 -1
- package/server/applications/files/constants/compress.js +1 -5
- package/server/applications/files/constants/compress.js.map +1 -1
- package/server/applications/files/constants/files.js +1 -5
- package/server/applications/files/constants/files.js.map +1 -1
- package/server/applications/files/constants/indexing.js +1 -5
- package/server/applications/files/constants/indexing.js.map +1 -1
- package/server/applications/files/constants/operations.js +1 -5
- package/server/applications/files/constants/operations.js.map +1 -1
- package/server/applications/files/constants/routes.js +1 -5
- package/server/applications/files/constants/routes.js.map +1 -1
- package/server/applications/files/constants/samples.js +1 -5
- package/server/applications/files/constants/samples.js.map +1 -1
- package/server/applications/files/dto/file-operations.dto.js +1 -5
- package/server/applications/files/dto/file-operations.dto.js.map +1 -1
- package/server/applications/files/events/file-task-event.js +1 -5
- package/server/applications/files/events/file-task-event.js.map +1 -1
- package/server/applications/files/files-tasks.controller.js +1 -5
- package/server/applications/files/files-tasks.controller.js.map +1 -1
- package/server/applications/files/files-tasks.controller.spec.js +1 -5
- package/server/applications/files/files-tasks.controller.spec.js.map +1 -1
- package/server/applications/files/files.config.js +1 -5
- package/server/applications/files/files.config.js.map +1 -1
- package/server/applications/files/files.controller.js +1 -5
- package/server/applications/files/files.controller.js.map +1 -1
- package/server/applications/files/files.controller.spec.js +1 -5
- package/server/applications/files/files.controller.spec.js.map +1 -1
- package/server/applications/files/files.module.js +1 -5
- package/server/applications/files/files.module.js.map +1 -1
- package/server/applications/files/interfaces/file-db-props.interface.js +1 -5
- package/server/applications/files/interfaces/file-db-props.interface.js.map +1 -1
- package/server/applications/files/interfaces/file-lock.interface.js +1 -5
- package/server/applications/files/interfaces/file-lock.interface.js.map +1 -1
- package/server/applications/files/interfaces/file-parse-index.js +1 -5
- package/server/applications/files/interfaces/file-parse-index.js.map +1 -1
- package/server/applications/files/interfaces/file-props.interface.js +1 -5
- package/server/applications/files/interfaces/file-props.interface.js.map +1 -1
- package/server/applications/files/interfaces/file-recent-location.interface.js +1 -5
- package/server/applications/files/interfaces/file-recent-location.interface.js.map +1 -1
- package/server/applications/files/interfaces/file-space.interface.js +1 -5
- package/server/applications/files/interfaces/file-space.interface.js.map +1 -1
- package/server/applications/files/interfaces/file-tree.interface.js +1 -5
- package/server/applications/files/interfaces/file-tree.interface.js.map +1 -1
- package/server/applications/files/models/file-error.js +1 -5
- package/server/applications/files/models/file-error.js.map +1 -1
- package/server/applications/files/models/file-lock-error.js +1 -5
- package/server/applications/files/models/file-lock-error.js.map +1 -1
- package/server/applications/files/models/file-task.js +1 -5
- package/server/applications/files/models/file-task.js.map +1 -1
- package/server/applications/files/models/files-indexer.js +1 -5
- package/server/applications/files/models/files-indexer.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online-environment.decorator.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online-environment.decorator.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online-manager.service.js +21 -10
- package/server/applications/files/modules/collabora-online/collabora-online-manager.service.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online-manager.service.spec.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online-manager.service.spec.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.config.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.config.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.constants.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.constants.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.controller.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.controller.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.controller.spec.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.controller.spec.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.dtos.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.dtos.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.guard.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.guard.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.guard.spec.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.guard.spec.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.interface.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.interface.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.module.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.module.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.routes.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.routes.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.strategy.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.strategy.js.map +1 -1
- package/server/applications/files/modules/collabora-online/collabora-online.utils.js +1 -5
- package/server/applications/files/modules/collabora-online/collabora-online.utils.js.map +1 -1
- package/server/applications/files/modules/file-editor-providers.interface.js +6 -0
- package/server/applications/files/modules/file-editor-providers.interface.js.map +1 -0
- package/server/applications/files/modules/only-office/only-office-environment.decorator.js +1 -5
- package/server/applications/files/modules/only-office/only-office-environment.decorator.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office-manager.service.js +57 -19
- package/server/applications/files/modules/only-office/only-office-manager.service.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office-manager.service.spec.js +1 -5
- package/server/applications/files/modules/only-office/only-office-manager.service.spec.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.config.js +1 -5
- package/server/applications/files/modules/only-office/only-office.config.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.constants.js +1 -5
- package/server/applications/files/modules/only-office/only-office.constants.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.controller.js +1 -5
- package/server/applications/files/modules/only-office/only-office.controller.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.controller.spec.js +1 -5
- package/server/applications/files/modules/only-office/only-office.controller.spec.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.dtos.js +1 -5
- package/server/applications/files/modules/only-office/only-office.dtos.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.guard.js +1 -5
- package/server/applications/files/modules/only-office/only-office.guard.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.guard.spec.js +1 -5
- package/server/applications/files/modules/only-office/only-office.guard.spec.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.interface.js +1 -5
- package/server/applications/files/modules/only-office/only-office.interface.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.module.js +1 -5
- package/server/applications/files/modules/only-office/only-office.module.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.routes.js +1 -5
- package/server/applications/files/modules/only-office/only-office.routes.js.map +1 -1
- package/server/applications/files/modules/only-office/only-office.strategy.js +1 -5
- package/server/applications/files/modules/only-office/only-office.strategy.js.map +1 -1
- package/server/applications/files/schemas/file-content.interface.js +1 -5
- package/server/applications/files/schemas/file-content.interface.js.map +1 -1
- package/server/applications/files/schemas/file-recent.interface.js +1 -5
- package/server/applications/files/schemas/file-recent.interface.js.map +1 -1
- package/server/applications/files/schemas/file.interface.js +1 -5
- package/server/applications/files/schemas/file.interface.js.map +1 -1
- package/server/applications/files/schemas/files-content.schema.js +1 -5
- package/server/applications/files/schemas/files-content.schema.js.map +1 -1
- package/server/applications/files/schemas/files-recents.schema.js +1 -5
- package/server/applications/files/schemas/files-recents.schema.js.map +1 -1
- package/server/applications/files/schemas/files.schema.js +1 -5
- package/server/applications/files/schemas/files.schema.js.map +1 -1
- package/server/applications/files/services/files-content-manager.service.js +45 -16
- package/server/applications/files/services/files-content-manager.service.js.map +1 -1
- package/server/applications/files/services/files-lock-manager.service.js +53 -18
- package/server/applications/files/services/files-lock-manager.service.js.map +1 -1
- package/server/applications/files/services/files-lock-manager.service.spec.js +1 -5
- package/server/applications/files/services/files-lock-manager.service.spec.js.map +1 -1
- package/server/applications/files/services/files-manager.service.js +77 -24
- package/server/applications/files/services/files-manager.service.js.map +1 -1
- package/server/applications/files/services/files-manager.service.spec.js +1 -5
- package/server/applications/files/services/files-manager.service.spec.js.map +1 -1
- package/server/applications/files/services/files-methods.service.js +5 -6
- package/server/applications/files/services/files-methods.service.js.map +1 -1
- package/server/applications/files/services/files-methods.service.spec.js +1 -5
- package/server/applications/files/services/files-methods.service.spec.js.map +1 -1
- package/server/applications/files/services/files-parser.service.js +13 -8
- package/server/applications/files/services/files-parser.service.js.map +1 -1
- package/server/applications/files/services/files-parser.service.spec.js +1 -5
- package/server/applications/files/services/files-parser.service.spec.js.map +1 -1
- package/server/applications/files/services/files-queries.service.js +29 -12
- package/server/applications/files/services/files-queries.service.js.map +1 -1
- package/server/applications/files/services/files-recents.service.js +1 -5
- package/server/applications/files/services/files-recents.service.js.map +1 -1
- package/server/applications/files/services/files-recents.service.spec.js +1 -5
- package/server/applications/files/services/files-recents.service.spec.js.map +1 -1
- package/server/applications/files/services/files-scheduler.service.js +77 -24
- package/server/applications/files/services/files-scheduler.service.js.map +1 -1
- package/server/applications/files/services/files-search-manager.service.js +9 -7
- package/server/applications/files/services/files-search-manager.service.js.map +1 -1
- package/server/applications/files/services/files-search-manager.service.spec.js +1 -5
- package/server/applications/files/services/files-search-manager.service.spec.js.map +1 -1
- package/server/applications/files/services/files-tasks-manager.service.js +77 -24
- package/server/applications/files/services/files-tasks-manager.service.js.map +1 -1
- package/server/applications/files/services/files-tasks-manager.service.spec.js +1 -5
- package/server/applications/files/services/files-tasks-manager.service.spec.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/excel.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/excel.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/html.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/html.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/open-office.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/open-office.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/pdf.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/pdf.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/power-point.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/power-point.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/text.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/text.js.map +1 -1
- package/server/applications/files/utils/doc-textify/adapters/word.js +1 -5
- package/server/applications/files/utils/doc-textify/adapters/word.js.map +1 -1
- package/server/applications/files/utils/doc-textify/doc-textify.js +1 -5
- package/server/applications/files/utils/doc-textify/doc-textify.js.map +1 -1
- package/server/applications/files/utils/doc-textify/interfaces/doc-textify.interfaces.js +1 -5
- package/server/applications/files/utils/doc-textify/interfaces/doc-textify.interfaces.js.map +1 -1
- package/server/applications/files/utils/doc-textify/utils/clean.js +1 -5
- package/server/applications/files/utils/doc-textify/utils/clean.js.map +1 -1
- package/server/applications/files/utils/files-search.js +1 -5
- package/server/applications/files/utils/files-search.js.map +1 -1
- package/server/applications/files/utils/files-tree.js +1 -5
- package/server/applications/files/utils/files-tree.js.map +1 -1
- package/server/applications/files/utils/files.js +1 -5
- package/server/applications/files/utils/files.js.map +1 -1
- package/server/applications/files/utils/send-file.js +1 -5
- package/server/applications/files/utils/send-file.js.map +1 -1
- package/server/applications/files/utils/unzip-file.js +1 -5
- package/server/applications/files/utils/unzip-file.js.map +1 -1
- package/server/applications/files/utils/url-file.js +1 -5
- package/server/applications/files/utils/url-file.js.map +1 -1
- package/server/applications/links/constants/cache.js +1 -5
- package/server/applications/links/constants/cache.js.map +1 -1
- package/server/applications/links/constants/links.js +1 -5
- package/server/applications/links/constants/links.js.map +1 -1
- package/server/applications/links/constants/routes.js +1 -5
- package/server/applications/links/constants/routes.js.map +1 -1
- package/server/applications/links/dto/create-or-update-link.dto.js +1 -5
- package/server/applications/links/dto/create-or-update-link.dto.js.map +1 -1
- package/server/applications/links/interfaces/link-guest.interface.js +1 -5
- package/server/applications/links/interfaces/link-guest.interface.js.map +1 -1
- package/server/applications/links/interfaces/link-space.interface.js +1 -5
- package/server/applications/links/interfaces/link-space.interface.js.map +1 -1
- package/server/applications/links/links.controller.js +1 -5
- package/server/applications/links/links.controller.js.map +1 -1
- package/server/applications/links/links.controller.spec.js +1 -5
- package/server/applications/links/links.controller.spec.js.map +1 -1
- package/server/applications/links/schemas/link.interface.js +1 -5
- package/server/applications/links/schemas/link.interface.js.map +1 -1
- package/server/applications/links/schemas/links.schema.js +1 -5
- package/server/applications/links/schemas/links.schema.js.map +1 -1
- package/server/applications/links/services/links-manager.service.js +55 -20
- package/server/applications/links/services/links-manager.service.js.map +1 -1
- package/server/applications/links/services/links-manager.service.spec.js +3 -7
- package/server/applications/links/services/links-manager.service.spec.js.map +1 -1
- package/server/applications/links/services/links-queries.service.js +1 -5
- package/server/applications/links/services/links-queries.service.js.map +1 -1
- package/server/applications/notifications/constants/notifications.js +1 -5
- package/server/applications/notifications/constants/notifications.js.map +1 -1
- package/server/applications/notifications/constants/routes.js +1 -5
- package/server/applications/notifications/constants/routes.js.map +1 -1
- package/server/applications/notifications/constants/websocket.js +1 -5
- package/server/applications/notifications/constants/websocket.js.map +1 -1
- package/server/applications/notifications/i18n/de.js +1 -9
- package/server/applications/notifications/i18n/de.js.map +1 -1
- package/server/applications/notifications/i18n/es.js +1 -5
- package/server/applications/notifications/i18n/es.js.map +1 -1
- package/server/applications/notifications/i18n/fr.js +1 -5
- package/server/applications/notifications/i18n/fr.js.map +1 -1
- package/server/applications/notifications/i18n/hi.js +1 -5
- package/server/applications/notifications/i18n/hi.js.map +1 -1
- package/server/applications/notifications/i18n/index.js +1 -5
- package/server/applications/notifications/i18n/index.js.map +1 -1
- package/server/applications/notifications/i18n/it.js +1 -5
- package/server/applications/notifications/i18n/it.js.map +1 -1
- package/server/applications/notifications/i18n/ja.js +1 -5
- package/server/applications/notifications/i18n/ja.js.map +1 -1
- package/server/applications/notifications/i18n/ko.js +1 -5
- package/server/applications/notifications/i18n/ko.js.map +1 -1
- package/server/applications/notifications/i18n/pl.js +1 -5
- package/server/applications/notifications/i18n/pl.js.map +1 -1
- package/server/applications/notifications/i18n/pt.js +1 -5
- package/server/applications/notifications/i18n/pt.js.map +1 -1
- package/server/applications/notifications/i18n/pt_br.js +1 -5
- package/server/applications/notifications/i18n/pt_br.js.map +1 -1
- package/server/applications/notifications/i18n/ru.js +1 -5
- package/server/applications/notifications/i18n/ru.js.map +1 -1
- package/server/applications/notifications/i18n/tr.js +1 -5
- package/server/applications/notifications/i18n/tr.js.map +1 -1
- package/server/applications/notifications/i18n/zh.js +1 -5
- package/server/applications/notifications/i18n/zh.js.map +1 -1
- package/server/applications/notifications/interfaces/notification-properties.interface.js +1 -5
- package/server/applications/notifications/interfaces/notification-properties.interface.js.map +1 -1
- package/server/applications/notifications/interfaces/user-mail-notification.interface.js +1 -5
- package/server/applications/notifications/interfaces/user-mail-notification.interface.js.map +1 -1
- package/server/applications/notifications/mails/models.js +1 -5
- package/server/applications/notifications/mails/models.js.map +1 -1
- package/server/applications/notifications/mails/templates.js +1 -5
- package/server/applications/notifications/mails/templates.js.map +1 -1
- package/server/applications/notifications/mails/urls.js +1 -5
- package/server/applications/notifications/mails/urls.js.map +1 -1
- package/server/applications/notifications/notifications.controller.js +1 -5
- package/server/applications/notifications/notifications.controller.js.map +1 -1
- package/server/applications/notifications/notifications.controller.spec.js +1 -5
- package/server/applications/notifications/notifications.controller.spec.js.map +1 -1
- package/server/applications/notifications/notifications.gateway.js +1 -5
- package/server/applications/notifications/notifications.gateway.js.map +1 -1
- package/server/applications/notifications/notifications.module.js +1 -5
- package/server/applications/notifications/notifications.module.js.map +1 -1
- package/server/applications/notifications/schemas/notification.interface.js +1 -5
- package/server/applications/notifications/schemas/notification.interface.js.map +1 -1
- package/server/applications/notifications/schemas/notifications.schema.js +1 -5
- package/server/applications/notifications/schemas/notifications.schema.js.map +1 -1
- package/server/applications/notifications/services/notifications-manager.service.js +25 -11
- package/server/applications/notifications/services/notifications-manager.service.js.map +1 -1
- package/server/applications/notifications/services/notifications-manager.service.spec.js +20 -11
- package/server/applications/notifications/services/notifications-manager.service.spec.js.map +1 -1
- package/server/applications/notifications/services/notifications-queries.service.js +1 -5
- package/server/applications/notifications/services/notifications-queries.service.js.map +1 -1
- package/server/applications/shares/constants/routes.js +1 -5
- package/server/applications/shares/constants/routes.js.map +1 -1
- package/server/applications/shares/constants/shares.js +1 -5
- package/server/applications/shares/constants/shares.js.map +1 -1
- package/server/applications/shares/dto/create-or-update-share.dto.js +1 -5
- package/server/applications/shares/dto/create-or-update-share.dto.js.map +1 -1
- package/server/applications/shares/interfaces/share-child.interface.js +1 -5
- package/server/applications/shares/interfaces/share-child.interface.js.map +1 -1
- package/server/applications/shares/interfaces/share-env.interface.js +1 -5
- package/server/applications/shares/interfaces/share-env.interface.js.map +1 -1
- package/server/applications/shares/interfaces/share-file.interface.js +1 -5
- package/server/applications/shares/interfaces/share-file.interface.js.map +1 -1
- package/server/applications/shares/interfaces/share-link.interface.js +1 -5
- package/server/applications/shares/interfaces/share-link.interface.js.map +1 -1
- package/server/applications/shares/interfaces/share-props.interface.js +1 -5
- package/server/applications/shares/interfaces/share-props.interface.js.map +1 -1
- package/server/applications/shares/models/share-child.model.js +1 -5
- package/server/applications/shares/models/share-child.model.js.map +1 -1
- package/server/applications/shares/schemas/share-members.interface.js +1 -5
- package/server/applications/shares/schemas/share-members.interface.js.map +1 -1
- package/server/applications/shares/schemas/share.interface.js +1 -5
- package/server/applications/shares/schemas/share.interface.js.map +1 -1
- package/server/applications/shares/schemas/shares-members.schema.js +1 -5
- package/server/applications/shares/schemas/shares-members.schema.js.map +1 -1
- package/server/applications/shares/schemas/shares.schema.js +1 -5
- package/server/applications/shares/schemas/shares.schema.js.map +1 -1
- package/server/applications/shares/services/shares-manager.service.js +214 -68
- package/server/applications/shares/services/shares-manager.service.js.map +1 -1
- package/server/applications/shares/services/shares-manager.service.spec.js +1 -5
- package/server/applications/shares/services/shares-manager.service.spec.js.map +1 -1
- package/server/applications/shares/services/shares-queries.service.js +49 -17
- package/server/applications/shares/services/shares-queries.service.js.map +1 -1
- package/server/applications/shares/shares.controller.js +1 -5
- package/server/applications/shares/shares.controller.js.map +1 -1
- package/server/applications/shares/shares.controller.spec.js +1 -5
- package/server/applications/shares/shares.controller.spec.js.map +1 -1
- package/server/applications/shares/shares.module.js +1 -5
- package/server/applications/shares/shares.module.js.map +1 -1
- package/server/applications/spaces/constants/cache.js +1 -5
- package/server/applications/spaces/constants/cache.js.map +1 -1
- package/server/applications/spaces/constants/routes.js +1 -5
- package/server/applications/spaces/constants/routes.js.map +1 -1
- package/server/applications/spaces/constants/spaces.js +1 -5
- package/server/applications/spaces/constants/spaces.js.map +1 -1
- package/server/applications/spaces/decorators/space-override-permission.decorator.js +1 -5
- package/server/applications/spaces/decorators/space-override-permission.decorator.js.map +1 -1
- package/server/applications/spaces/decorators/space-skip-guard.decorator.js +1 -5
- package/server/applications/spaces/decorators/space-skip-guard.decorator.js.map +1 -1
- package/server/applications/spaces/decorators/space-skip-permissions.decorator.js +1 -5
- package/server/applications/spaces/decorators/space-skip-permissions.decorator.js.map +1 -1
- package/server/applications/spaces/decorators/space.decorator.js +1 -5
- package/server/applications/spaces/decorators/space.decorator.js.map +1 -1
- package/server/applications/spaces/dto/create-or-update-space.dto.js +1 -5
- package/server/applications/spaces/dto/create-or-update-space.dto.js.map +1 -1
- package/server/applications/spaces/dto/delete-space.dto.js +1 -5
- package/server/applications/spaces/dto/delete-space.dto.js.map +1 -1
- package/server/applications/spaces/dto/search-space.dto.js +1 -5
- package/server/applications/spaces/dto/search-space.dto.js.map +1 -1
- package/server/applications/spaces/dto/space-roots.dto.js +1 -5
- package/server/applications/spaces/dto/space-roots.dto.js.map +1 -1
- package/server/applications/spaces/guards/space.guard.js +17 -9
- package/server/applications/spaces/guards/space.guard.js.map +1 -1
- package/server/applications/spaces/guards/space.guard.spec.js +1 -5
- package/server/applications/spaces/guards/space.guard.spec.js.map +1 -1
- package/server/applications/spaces/interfaces/space-diff.interface.js +1 -5
- package/server/applications/spaces/interfaces/space-diff.interface.js.map +1 -1
- package/server/applications/spaces/interfaces/space-files.interface.js +1 -5
- package/server/applications/spaces/interfaces/space-files.interface.js.map +1 -1
- package/server/applications/spaces/interfaces/space-request.interface.js +1 -5
- package/server/applications/spaces/interfaces/space-request.interface.js.map +1 -1
- package/server/applications/spaces/interfaces/space-trash.interface.js +1 -5
- package/server/applications/spaces/interfaces/space-trash.interface.js.map +1 -1
- package/server/applications/spaces/models/space-env.model.js +1 -5
- package/server/applications/spaces/models/space-env.model.js.map +1 -1
- package/server/applications/spaces/models/space-props.model.js +1 -5
- package/server/applications/spaces/models/space-props.model.js.map +1 -1
- package/server/applications/spaces/models/space-root-props.model.js +1 -5
- package/server/applications/spaces/models/space-root-props.model.js.map +1 -1
- package/server/applications/spaces/models/space.model.js +1 -5
- package/server/applications/spaces/models/space.model.js.map +1 -1
- package/server/applications/spaces/schemas/space-members.interface.js +1 -5
- package/server/applications/spaces/schemas/space-members.interface.js.map +1 -1
- package/server/applications/spaces/schemas/space-root.interface.js +1 -5
- package/server/applications/spaces/schemas/space-root.interface.js.map +1 -1
- package/server/applications/spaces/schemas/space.interface.js +1 -5
- package/server/applications/spaces/schemas/space.interface.js.map +1 -1
- package/server/applications/spaces/schemas/spaces-members.schema.js +1 -5
- package/server/applications/spaces/schemas/spaces-members.schema.js.map +1 -1
- package/server/applications/spaces/schemas/spaces-roots.schema.js +1 -5
- package/server/applications/spaces/schemas/spaces-roots.schema.js.map +1 -1
- package/server/applications/spaces/schemas/spaces.schema.js +1 -5
- package/server/applications/spaces/schemas/spaces.schema.js.map +1 -1
- package/server/applications/spaces/services/spaces-browser.service.js +77 -24
- package/server/applications/spaces/services/spaces-browser.service.js.map +1 -1
- package/server/applications/spaces/services/spaces-browser.service.spec.js +1 -5
- package/server/applications/spaces/services/spaces-browser.service.spec.js.map +1 -1
- package/server/applications/spaces/services/spaces-manager.service.js +193 -53
- package/server/applications/spaces/services/spaces-manager.service.js.map +1 -1
- package/server/applications/spaces/services/spaces-manager.service.spec.js +1 -5
- package/server/applications/spaces/services/spaces-manager.service.spec.js.map +1 -1
- package/server/applications/spaces/services/spaces-queries.service.js +65 -21
- package/server/applications/spaces/services/spaces-queries.service.js.map +1 -1
- package/server/applications/spaces/services/spaces-scheduler.service.js +49 -17
- package/server/applications/spaces/services/spaces-scheduler.service.js.map +1 -1
- package/server/applications/spaces/spaces.controller.js +1 -5
- package/server/applications/spaces/spaces.controller.js.map +1 -1
- package/server/applications/spaces/spaces.controller.spec.js +1 -5
- package/server/applications/spaces/spaces.controller.spec.js.map +1 -1
- package/server/applications/spaces/spaces.module.js +1 -5
- package/server/applications/spaces/spaces.module.js.map +1 -1
- package/server/applications/spaces/utils/paths.js +1 -5
- package/server/applications/spaces/utils/paths.js.map +1 -1
- package/server/applications/spaces/utils/permissions.js +1 -5
- package/server/applications/spaces/utils/permissions.js.map +1 -1
- package/server/applications/spaces/utils/routes.js +1 -5
- package/server/applications/spaces/utils/routes.js.map +1 -1
- package/server/applications/sync/constants/auth.js +1 -5
- package/server/applications/sync/constants/auth.js.map +1 -1
- package/server/applications/sync/constants/routes.js +6 -5
- package/server/applications/sync/constants/routes.js.map +1 -1
- package/server/applications/sync/constants/store.js +1 -9
- package/server/applications/sync/constants/store.js.map +1 -1
- package/server/applications/sync/constants/sync.js +2 -6
- package/server/applications/sync/constants/sync.js.map +1 -1
- package/server/applications/sync/decorators/sync-context.decorator.js +1 -5
- package/server/applications/sync/decorators/sync-context.decorator.js.map +1 -1
- package/server/applications/sync/decorators/sync-environment.decorator.js +1 -5
- package/server/applications/sync/decorators/sync-environment.decorator.js.map +1 -1
- package/server/applications/sync/dtos/sync-client-auth.dto.js +12 -8
- package/server/applications/sync/dtos/sync-client-auth.dto.js.map +1 -1
- package/server/applications/sync/dtos/sync-client-info.dto.js +49 -0
- package/server/applications/sync/dtos/sync-client-info.dto.js.map +1 -0
- package/server/applications/sync/dtos/sync-client-registration.dto.js +34 -11
- package/server/applications/sync/dtos/sync-client-registration.dto.js.map +1 -1
- package/server/applications/sync/dtos/sync-operations.dto.js +1 -5
- package/server/applications/sync/dtos/sync-operations.dto.js.map +1 -1
- package/server/applications/sync/dtos/sync-path.dto.js +1 -5
- package/server/applications/sync/dtos/sync-path.dto.js.map +1 -1
- package/server/applications/sync/dtos/sync-upload.dto.js +1 -5
- package/server/applications/sync/dtos/sync-upload.dto.js.map +1 -1
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.js +1 -5
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.js.map +1 -1
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.spec.js +1 -5
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.spec.js.map +1 -1
- package/server/applications/sync/interfaces/store-manifest.interface.js +1 -5
- package/server/applications/sync/interfaces/store-manifest.interface.js.map +1 -1
- package/server/applications/sync/interfaces/sync-client-auth.interface.js +1 -25
- package/server/applications/sync/interfaces/sync-client-auth.interface.js.map +1 -1
- package/server/applications/sync/interfaces/sync-client-paths.interface.js +1 -5
- package/server/applications/sync/interfaces/sync-client-paths.interface.js.map +1 -1
- package/server/applications/sync/interfaces/sync-client.interface.js +1 -5
- package/server/applications/sync/interfaces/sync-client.interface.js.map +1 -1
- package/server/applications/sync/interfaces/sync-diff.interface.js +1 -5
- package/server/applications/sync/interfaces/sync-diff.interface.js.map +1 -1
- package/server/applications/sync/interfaces/sync-path.interface.js +1 -5
- package/server/applications/sync/interfaces/sync-path.interface.js.map +1 -1
- package/server/applications/sync/schemas/sync-client.interface.js +1 -5
- package/server/applications/sync/schemas/sync-client.interface.js.map +1 -1
- package/server/applications/sync/schemas/sync-clients.schema.js +1 -5
- package/server/applications/sync/schemas/sync-clients.schema.js.map +1 -1
- package/server/applications/sync/schemas/sync-path.interface.js +1 -5
- package/server/applications/sync/schemas/sync-path.interface.js.map +1 -1
- package/server/applications/sync/schemas/sync-paths.schema.js +1 -5
- package/server/applications/sync/schemas/sync-paths.schema.js.map +1 -1
- package/server/applications/sync/services/sync-clients-manager.service.js +108 -44
- package/server/applications/sync/services/sync-clients-manager.service.js.map +1 -1
- package/server/applications/sync/services/sync-clients-manager.service.spec.js +14 -17
- package/server/applications/sync/services/sync-clients-manager.service.spec.js.map +1 -1
- package/server/applications/sync/services/sync-manager.service.js +29 -12
- package/server/applications/sync/services/sync-manager.service.js.map +1 -1
- package/server/applications/sync/services/sync-manager.service.spec.js +1 -5
- package/server/applications/sync/services/sync-manager.service.spec.js.map +1 -1
- package/server/applications/sync/services/sync-paths-manager.service.js +27 -17
- package/server/applications/sync/services/sync-paths-manager.service.js.map +1 -1
- package/server/applications/sync/services/sync-paths-manager.service.spec.js +11 -15
- package/server/applications/sync/services/sync-paths-manager.service.spec.js.map +1 -1
- package/server/applications/sync/services/sync-queries.service.js +1 -5
- package/server/applications/sync/services/sync-queries.service.js.map +1 -1
- package/server/applications/sync/sync.config.js +1 -5
- package/server/applications/sync/sync.config.js.map +1 -1
- package/server/applications/sync/sync.controller.js +21 -6
- package/server/applications/sync/sync.controller.js.map +1 -1
- package/server/applications/sync/sync.controller.spec.js +1 -5
- package/server/applications/sync/sync.controller.spec.js.map +1 -1
- package/server/applications/sync/sync.module.js +1 -5
- package/server/applications/sync/sync.module.js.map +1 -1
- package/server/applications/sync/utils/functions.js +1 -5
- package/server/applications/sync/utils/functions.js.map +1 -1
- package/server/applications/sync/utils/normalizedMap.js +1 -5
- package/server/applications/sync/utils/normalizedMap.js.map +1 -1
- package/server/applications/sync/utils/routes.js +1 -5
- package/server/applications/sync/utils/routes.js.map +1 -1
- package/server/applications/users/admin-users.controller.js +2 -6
- package/server/applications/users/admin-users.controller.js.map +1 -1
- package/server/applications/users/admin-users.controller.spec.js +6 -10
- package/server/applications/users/admin-users.controller.spec.js.map +1 -1
- package/server/applications/users/constants/group.js +1 -5
- package/server/applications/users/constants/group.js.map +1 -1
- package/server/applications/users/constants/member.js +1 -5
- package/server/applications/users/constants/member.js.map +1 -1
- package/server/applications/users/constants/routes.js +1 -5
- package/server/applications/users/constants/routes.js.map +1 -1
- package/server/applications/users/constants/user.js +1 -5
- package/server/applications/users/constants/user.js.map +1 -1
- package/server/applications/users/constants/websocket.js +1 -5
- package/server/applications/users/constants/websocket.js.map +1 -1
- package/server/applications/users/decorators/permissions.decorator.js +1 -5
- package/server/applications/users/decorators/permissions.decorator.js.map +1 -1
- package/server/applications/users/decorators/roles.decorator.js +1 -5
- package/server/applications/users/decorators/roles.decorator.js.map +1 -1
- package/server/applications/users/decorators/user.decorator.js +1 -5
- package/server/applications/users/decorators/user.decorator.js.map +1 -1
- package/server/applications/users/dto/create-or-update-group.dto.js +1 -5
- package/server/applications/users/dto/create-or-update-group.dto.js.map +1 -1
- package/server/applications/users/dto/create-or-update-user.dto.js +1 -5
- package/server/applications/users/dto/create-or-update-user.dto.js.map +1 -1
- package/server/applications/users/dto/delete-user.dto.js +1 -5
- package/server/applications/users/dto/delete-user.dto.js.map +1 -1
- package/server/applications/users/dto/search-members.dto.js +1 -5
- package/server/applications/users/dto/search-members.dto.js.map +1 -1
- package/server/applications/users/dto/user-properties.dto.js +1 -5
- package/server/applications/users/dto/user-properties.dto.js.map +1 -1
- package/server/applications/users/guards/permissions.guard.js +1 -5
- package/server/applications/users/guards/permissions.guard.js.map +1 -1
- package/server/applications/users/guards/permissions.guard.spec.js +1 -5
- package/server/applications/users/guards/permissions.guard.spec.js.map +1 -1
- package/server/applications/users/guards/roles.guard.js +1 -5
- package/server/applications/users/guards/roles.guard.js.map +1 -1
- package/server/applications/users/guards/roles.guard.spec.js +1 -5
- package/server/applications/users/guards/roles.guard.spec.js.map +1 -1
- package/server/applications/users/interfaces/admin-group.interface.js +1 -5
- package/server/applications/users/interfaces/admin-group.interface.js.map +1 -1
- package/server/applications/users/interfaces/admin-user.interface.js +1 -5
- package/server/applications/users/interfaces/admin-user.interface.js.map +1 -1
- package/server/applications/users/interfaces/group-browse.interface.js +1 -5
- package/server/applications/users/interfaces/group-browse.interface.js.map +1 -1
- package/server/applications/users/interfaces/group-member.js +1 -5
- package/server/applications/users/interfaces/group-member.js.map +1 -1
- package/server/applications/users/interfaces/guest-user.interface.js +1 -5
- package/server/applications/users/interfaces/guest-user.interface.js.map +1 -1
- package/server/applications/users/interfaces/member.interface.js +1 -5
- package/server/applications/users/interfaces/member.interface.js.map +1 -1
- package/server/applications/users/interfaces/owner.interface.js +1 -5
- package/server/applications/users/interfaces/owner.interface.js.map +1 -1
- package/server/applications/users/interfaces/user-secrets.interface.js +1 -5
- package/server/applications/users/interfaces/user-secrets.interface.js.map +1 -1
- package/server/applications/users/interfaces/websocket.interface.js +1 -5
- package/server/applications/users/interfaces/websocket.interface.js.map +1 -1
- package/server/applications/users/models/user.model.js +1 -5
- package/server/applications/users/models/user.model.js.map +1 -1
- package/server/applications/users/schemas/group.interface.js +1 -5
- package/server/applications/users/schemas/group.interface.js.map +1 -1
- package/server/applications/users/schemas/groups.schema.js +1 -5
- package/server/applications/users/schemas/groups.schema.js.map +1 -1
- package/server/applications/users/schemas/user-group.interface.js +1 -5
- package/server/applications/users/schemas/user-group.interface.js.map +1 -1
- package/server/applications/users/schemas/user.interface.js +1 -5
- package/server/applications/users/schemas/user.interface.js.map +1 -1
- package/server/applications/users/schemas/users-groups.schema.js +1 -5
- package/server/applications/users/schemas/users-groups.schema.js.map +1 -1
- package/server/applications/users/schemas/users-guests.schema.js +1 -5
- package/server/applications/users/schemas/users-guests.schema.js.map +1 -1
- package/server/applications/users/schemas/users.schema.js +1 -5
- package/server/applications/users/schemas/users.schema.js.map +1 -1
- package/server/applications/users/services/admin-users-manager.service.js +67 -23
- package/server/applications/users/services/admin-users-manager.service.js.map +1 -1
- package/server/applications/users/services/admin-users-manager.service.spec.js +3 -7
- package/server/applications/users/services/admin-users-manager.service.spec.js.map +1 -1
- package/server/applications/users/services/admin-users-queries.service.js +65 -21
- package/server/applications/users/services/admin-users-queries.service.js.map +1 -1
- package/server/applications/users/services/users-manager.service.js +81 -25
- package/server/applications/users/services/users-manager.service.js.map +1 -1
- package/server/applications/users/services/users-manager.service.spec.js +14 -12
- package/server/applications/users/services/users-manager.service.spec.js.map +1 -1
- package/server/applications/users/services/users-queries.service.js +49 -17
- package/server/applications/users/services/users-queries.service.js.map +1 -1
- package/server/applications/users/users.controller.js +2 -6
- package/server/applications/users/users.controller.js.map +1 -1
- package/server/applications/users/users.controller.spec.js +5 -9
- package/server/applications/users/users.controller.spec.js.map +1 -1
- package/server/applications/users/users.e2e-spec.js +3 -7
- package/server/applications/users/users.e2e-spec.js.map +1 -1
- package/server/applications/users/users.gateway.js +29 -12
- package/server/applications/users/users.gateway.js.map +1 -1
- package/server/applications/users/users.gateway.spec.js +1 -5
- package/server/applications/users/users.gateway.spec.js.map +1 -1
- package/server/applications/users/users.module.js +1 -5
- package/server/applications/users/users.module.js.map +1 -1
- package/server/applications/users/utils/avatar.js +1 -5
- package/server/applications/users/utils/avatar.js.map +1 -1
- package/server/applications/users/utils/test.js +1 -5
- package/server/applications/users/utils/test.js.map +1 -1
- package/server/applications/webdav/constants/routes.js +1 -5
- package/server/applications/webdav/constants/routes.js.map +1 -1
- package/server/applications/webdav/constants/webdav.js +1 -5
- package/server/applications/webdav/constants/webdav.js.map +1 -1
- package/server/applications/webdav/decorators/if-header.decorator.js +1 -5
- package/server/applications/webdav/decorators/if-header.decorator.js.map +1 -1
- package/server/applications/webdav/decorators/webdav-context.decorator.js +1 -5
- package/server/applications/webdav/decorators/webdav-context.decorator.js.map +1 -1
- package/server/applications/webdav/filters/webdav.filter.js +1 -5
- package/server/applications/webdav/filters/webdav.filter.js.map +1 -1
- package/server/applications/webdav/filters/webdav.filter.spec.js +1 -5
- package/server/applications/webdav/filters/webdav.filter.spec.js.map +1 -1
- package/server/applications/webdav/guards/webdav-protocol.guard.js +54 -20
- package/server/applications/webdav/guards/webdav-protocol.guard.js.map +1 -1
- package/server/applications/webdav/guards/webdav-protocol.guard.spec.js +54 -0
- package/server/applications/webdav/guards/webdav-protocol.guard.spec.js.map +1 -1
- package/server/applications/webdav/interfaces/if-header.interface.js +1 -5
- package/server/applications/webdav/interfaces/if-header.interface.js.map +1 -1
- package/server/applications/webdav/interfaces/webdav.interface.js +1 -5
- package/server/applications/webdav/interfaces/webdav.interface.js.map +1 -1
- package/server/applications/webdav/models/webdav-file.model.js +1 -5
- package/server/applications/webdav/models/webdav-file.model.js.map +1 -1
- package/server/applications/webdav/services/webdav-methods.service.js +74 -26
- package/server/applications/webdav/services/webdav-methods.service.js.map +1 -1
- package/server/applications/webdav/services/webdav-methods.service.spec.js +15 -18
- package/server/applications/webdav/services/webdav-methods.service.spec.js.map +1 -1
- package/server/applications/webdav/services/webdav-spaces.service.js +17 -9
- package/server/applications/webdav/services/webdav-spaces.service.js.map +1 -1
- package/server/applications/webdav/services/webdav-spaces.service.spec.js +1 -5
- package/server/applications/webdav/services/webdav-spaces.service.spec.js.map +1 -1
- package/server/applications/webdav/utils/bootstrap.js +1 -5
- package/server/applications/webdav/utils/bootstrap.js.map +1 -1
- package/server/applications/webdav/utils/if-header.js +1 -5
- package/server/applications/webdav/utils/if-header.js.map +1 -1
- package/server/applications/webdav/utils/routes.js +1 -5
- package/server/applications/webdav/utils/routes.js.map +1 -1
- package/server/applications/webdav/utils/webdav.js +1 -5
- package/server/applications/webdav/utils/webdav.js.map +1 -1
- package/server/applications/webdav/utils/xml.js +1 -5
- package/server/applications/webdav/utils/xml.js.map +1 -1
- package/server/applications/webdav/webdav.controller.js +1 -5
- package/server/applications/webdav/webdav.controller.js.map +1 -1
- package/server/applications/webdav/webdav.controller.spec.js +1 -5
- package/server/applications/webdav/webdav.controller.spec.js.map +1 -1
- package/server/applications/webdav/webdav.e2e-spec.js +1 -5
- package/server/applications/webdav/webdav.e2e-spec.js.map +1 -1
- package/server/applications/webdav/webdav.module.js +1 -5
- package/server/applications/webdav/webdav.module.js.map +1 -1
- package/server/authentication/auth.config.js +23 -123
- package/server/authentication/auth.config.js.map +1 -1
- package/server/authentication/auth.controller.js +27 -21
- package/server/authentication/auth.controller.js.map +1 -1
- package/server/authentication/auth.controller.spec.js +6 -10
- package/server/authentication/auth.controller.spec.js.map +1 -1
- package/server/authentication/auth.e2e-spec.js +1 -5
- package/server/authentication/auth.e2e-spec.js.map +1 -1
- package/server/authentication/auth.module.js +17 -20
- package/server/authentication/auth.module.js.map +1 -1
- package/server/authentication/{services/auth-manager.service.js → auth.service.js} +41 -18
- package/server/authentication/auth.service.js.map +1 -0
- package/server/authentication/{services/auth-manager.service.spec.js → auth.service.spec.js} +6 -10
- package/server/authentication/auth.service.spec.js.map +1 -0
- package/server/authentication/constants/auth.js +1 -5
- package/server/authentication/constants/auth.js.map +1 -1
- package/server/authentication/constants/routes.js +41 -30
- package/server/authentication/constants/routes.js.map +1 -1
- package/server/authentication/constants/scope.js +2 -5
- package/server/authentication/constants/scope.js.map +1 -1
- package/server/authentication/decorators/auth-token-optional.decorator.js +1 -5
- package/server/authentication/decorators/auth-token-optional.decorator.js.map +1 -1
- package/server/authentication/decorators/auth-token-skip.decorator.js +1 -5
- package/server/authentication/decorators/auth-token-skip.decorator.js.map +1 -1
- package/server/authentication/dto/login-response.dto.js +1 -10
- package/server/authentication/dto/login-response.dto.js.map +1 -1
- package/server/authentication/dto/token-response.dto.js +1 -5
- package/server/authentication/dto/token-response.dto.js.map +1 -1
- package/server/authentication/guards/auth-anonymous.guard.js +1 -5
- package/server/authentication/guards/auth-anonymous.guard.js.map +1 -1
- package/server/authentication/guards/auth-anonymous.guard.spec.js +1 -5
- package/server/authentication/guards/auth-anonymous.guard.spec.js.map +1 -1
- package/server/authentication/guards/auth-anonymous.strategy.js +1 -5
- package/server/authentication/guards/auth-anonymous.strategy.js.map +1 -1
- package/server/authentication/guards/auth-basic.guard.js +1 -5
- package/server/authentication/guards/auth-basic.guard.js.map +1 -1
- package/server/authentication/guards/auth-basic.guard.spec.js +13 -14
- package/server/authentication/guards/auth-basic.guard.spec.js.map +1 -1
- package/server/authentication/guards/auth-basic.strategy.js +10 -11
- package/server/authentication/guards/auth-basic.strategy.js.map +1 -1
- package/server/authentication/guards/auth-digest.guard.js +1 -5
- package/server/authentication/guards/auth-digest.guard.js.map +1 -1
- package/server/authentication/guards/auth-digest.strategy.js +1 -5
- package/server/authentication/guards/auth-digest.strategy.js.map +1 -1
- package/server/authentication/guards/auth-local.guard.js +1 -5
- package/server/authentication/guards/auth-local.guard.js.map +1 -1
- package/server/authentication/guards/auth-local.guard.spec.js +9 -13
- package/server/authentication/guards/auth-local.guard.spec.js.map +1 -1
- package/server/authentication/guards/auth-local.strategy.js +6 -10
- package/server/authentication/guards/auth-local.strategy.js.map +1 -1
- package/server/authentication/guards/auth-token-access.guard.js +1 -5
- package/server/authentication/guards/auth-token-access.guard.js.map +1 -1
- package/server/authentication/guards/auth-token-access.guard.spec.js +3 -7
- package/server/authentication/guards/auth-token-access.guard.spec.js.map +1 -1
- package/server/authentication/guards/auth-token-access.strategy.js +3 -7
- package/server/authentication/guards/auth-token-access.strategy.js.map +1 -1
- package/server/authentication/guards/auth-token-refresh.guard.js +1 -5
- package/server/authentication/guards/auth-token-refresh.guard.js.map +1 -1
- package/server/authentication/guards/auth-token-refresh.guard.spec.js +3 -7
- package/server/authentication/guards/auth-token-refresh.guard.spec.js.map +1 -1
- package/server/authentication/guards/auth-token-refresh.strategy.js +3 -7
- package/server/authentication/guards/auth-token-refresh.strategy.js.map +1 -1
- package/server/authentication/guards/implementations/http-basic.strategy.js +1 -5
- package/server/authentication/guards/implementations/http-basic.strategy.js.map +1 -1
- package/server/authentication/guards/implementations/http-digest.strategy.js +1 -5
- package/server/authentication/guards/implementations/http-digest.strategy.js.map +1 -1
- package/server/authentication/interfaces/auth-request.interface.js +1 -5
- package/server/authentication/interfaces/auth-request.interface.js.map +1 -1
- package/server/authentication/interfaces/jwt-payload.interface.js +1 -5
- package/server/authentication/interfaces/jwt-payload.interface.js.map +1 -1
- package/server/authentication/interfaces/token.interface.js +1 -5
- package/server/authentication/interfaces/token.interface.js.map +1 -1
- package/server/authentication/providers/auth-providers.constants.js +18 -0
- package/server/authentication/providers/auth-providers.constants.js.map +1 -0
- package/server/authentication/providers/auth-providers.models.js +14 -0
- package/server/authentication/providers/auth-providers.models.js.map +1 -0
- package/server/authentication/providers/auth-providers.utils.js +42 -0
- package/server/authentication/providers/auth-providers.utils.js.map +1 -0
- package/server/authentication/providers/ldap/auth-ldap.config.js +143 -0
- package/server/authentication/providers/ldap/auth-ldap.config.js.map +1 -0
- package/server/authentication/{constants/auth-ldap.js → providers/ldap/auth-ldap.constants.js} +12 -6
- package/server/authentication/providers/ldap/auth-ldap.constants.js.map +1 -0
- package/server/authentication/providers/ldap/auth-provider-ldap.service.js +506 -0
- package/server/authentication/providers/ldap/auth-provider-ldap.service.js.map +1 -0
- package/server/authentication/providers/ldap/auth-provider-ldap.service.spec.js +674 -0
- package/server/authentication/providers/ldap/auth-provider-ldap.service.spec.js.map +1 -0
- package/server/authentication/{services/auth-methods/auth-method-database.service.js → providers/mysql/auth-provider-mysql.service.js} +16 -14
- package/server/authentication/providers/mysql/auth-provider-mysql.service.js.map +1 -0
- package/server/authentication/{services/auth-methods/auth-method-database.service.spec.js → providers/mysql/auth-provider-mysql.service.spec.js} +15 -19
- package/server/authentication/providers/mysql/auth-provider-mysql.service.spec.js.map +1 -0
- package/server/authentication/providers/oidc/auth-oidc-desktop.constants.js +30 -0
- package/server/authentication/providers/oidc/auth-oidc-desktop.constants.js.map +1 -0
- package/server/authentication/providers/oidc/auth-oidc.config.js +149 -0
- package/server/authentication/providers/oidc/auth-oidc.config.js.map +1 -0
- package/server/authentication/providers/oidc/auth-oidc.constants.js +39 -0
- package/server/authentication/providers/oidc/auth-oidc.constants.js.map +1 -0
- package/server/authentication/providers/oidc/auth-oidc.controller.js +83 -0
- package/server/authentication/providers/oidc/auth-oidc.controller.js.map +1 -0
- package/server/authentication/providers/oidc/auth-oidc.interfaces.js +6 -0
- package/server/authentication/providers/oidc/auth-oidc.interfaces.js.map +1 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.module.js +36 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.module.js.map +1 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.service.js +373 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.service.js.map +1 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.service.spec.js +270 -0
- package/server/authentication/providers/oidc/auth-provider-oidc.service.spec.js.map +1 -0
- package/server/authentication/{services/auth-methods/auth-method-two-fa.service.js → providers/two-fa/auth-provider-two-fa.service.js} +56 -38
- package/server/authentication/providers/two-fa/auth-provider-two-fa.service.js.map +1 -0
- package/server/authentication/{services/auth-methods/auth-method-two-fa.service.spec.js → providers/two-fa/auth-provider-two-fa.service.spec.js} +6 -10
- package/server/authentication/providers/two-fa/auth-provider-two-fa.service.spec.js.map +1 -0
- package/server/authentication/{guards → providers/two-fa}/auth-two-fa-guard.js +10 -14
- package/server/authentication/providers/two-fa/auth-two-fa-guard.js.map +1 -0
- package/server/authentication/providers/two-fa/auth-two-fa.config.js +57 -0
- package/server/authentication/providers/two-fa/auth-two-fa.config.js.map +1 -0
- package/server/authentication/{dto/two-fa-verify.dto.js → providers/two-fa/auth-two-fa.dtos.js} +8 -6
- package/server/authentication/providers/two-fa/auth-two-fa.dtos.js.map +1 -0
- package/server/authentication/providers/two-fa/auth-two-fa.interfaces.js +6 -0
- package/server/authentication/providers/two-fa/auth-two-fa.interfaces.js.map +1 -0
- package/server/authentication/utils/crypt-secret.js +1 -5
- package/server/authentication/utils/crypt-secret.js.map +1 -1
- package/server/common/constants.js +1 -5
- package/server/common/constants.js.map +1 -1
- package/server/common/decorators.js +1 -5
- package/server/common/decorators.js.map +1 -1
- package/server/common/functions.js +25 -9
- package/server/common/functions.js.map +1 -1
- package/server/common/i18n.js +1 -5
- package/server/common/i18n.js.map +1 -1
- package/server/common/image.js +1 -5
- package/server/common/image.js.map +1 -1
- package/server/common/interfaces.js +1 -5
- package/server/common/interfaces.js.map +1 -1
- package/server/common/qrcode.js +1 -5
- package/server/common/qrcode.js.map +1 -1
- package/server/common/shared.js +6 -6
- package/server/common/shared.js.map +1 -1
- package/server/configuration/config.constants.js +1 -5
- package/server/configuration/config.constants.js.map +1 -1
- package/server/configuration/config.environment.js +2 -6
- package/server/configuration/config.environment.js.map +1 -1
- package/server/configuration/config.interfaces.js +1 -5
- package/server/configuration/config.interfaces.js.map +1 -1
- package/server/configuration/config.loader.js +1 -5
- package/server/configuration/config.loader.js.map +1 -1
- package/server/configuration/config.logger.js +4 -8
- package/server/configuration/config.logger.js.map +1 -1
- package/server/configuration/config.validation.js +7 -5
- package/server/configuration/config.validation.js.map +1 -1
- package/server/infrastructure/cache/adapters/mysql-cache.adapter.js +9 -7
- package/server/infrastructure/cache/adapters/mysql-cache.adapter.js.map +1 -1
- package/server/infrastructure/cache/adapters/redis-cache.adapter.js +1 -5
- package/server/infrastructure/cache/adapters/redis-cache.adapter.js.map +1 -1
- package/server/infrastructure/cache/cache.config.js +1 -5
- package/server/infrastructure/cache/cache.config.js.map +1 -1
- package/server/infrastructure/cache/cache.decorator.js +9 -7
- package/server/infrastructure/cache/cache.decorator.js.map +1 -1
- package/server/infrastructure/cache/cache.e2e-spec.js +1 -5
- package/server/infrastructure/cache/cache.e2e-spec.js.map +1 -1
- package/server/infrastructure/cache/cache.module.js +1 -5
- package/server/infrastructure/cache/cache.module.js.map +1 -1
- package/server/infrastructure/cache/schemas/mysql-cache.interface.js +1 -5
- package/server/infrastructure/cache/schemas/mysql-cache.interface.js.map +1 -1
- package/server/infrastructure/cache/schemas/mysql-cache.schema.js +1 -5
- package/server/infrastructure/cache/schemas/mysql-cache.schema.js.map +1 -1
- package/server/infrastructure/cache/services/cache.service.js +1 -5
- package/server/infrastructure/cache/services/cache.service.js.map +1 -1
- package/server/infrastructure/context/context.module.js +1 -5
- package/server/infrastructure/context/context.module.js.map +1 -1
- package/server/infrastructure/context/interceptors/context.interceptor.js +1 -5
- package/server/infrastructure/context/interceptors/context.interceptor.js.map +1 -1
- package/server/infrastructure/context/interceptors/context.interceptor.spec.js +2 -6
- package/server/infrastructure/context/interceptors/context.interceptor.spec.js.map +1 -1
- package/server/infrastructure/context/interfaces/context-store.interface.js +1 -5
- package/server/infrastructure/context/interfaces/context-store.interface.js.map +1 -1
- package/server/infrastructure/context/services/context-manager.service.js +1 -5
- package/server/infrastructure/context/services/context-manager.service.js.map +1 -1
- package/server/infrastructure/context/services/context-manager.service.spec.js +1 -5
- package/server/infrastructure/context/services/context-manager.service.spec.js.map +1 -1
- package/server/infrastructure/database/columns.js +1 -5
- package/server/infrastructure/database/columns.js.map +1 -1
- package/server/infrastructure/database/configuration.js +1 -5
- package/server/infrastructure/database/configuration.js.map +1 -1
- package/server/infrastructure/database/constants.js +2 -6
- package/server/infrastructure/database/constants.js.map +1 -1
- package/server/infrastructure/database/database.config.js +1 -5
- package/server/infrastructure/database/database.config.js.map +1 -1
- package/server/infrastructure/database/database.logger.js +1 -5
- package/server/infrastructure/database/database.logger.js.map +1 -1
- package/server/infrastructure/database/database.module.js +1 -5
- package/server/infrastructure/database/database.module.js.map +1 -1
- package/server/infrastructure/database/interfaces/database.interface.js +1 -5
- package/server/infrastructure/database/interfaces/database.interface.js.map +1 -1
- package/server/infrastructure/database/schema.js +1 -5
- package/server/infrastructure/database/schema.js.map +1 -1
- package/server/infrastructure/database/scripts/create-user.js +1 -5
- package/server/infrastructure/database/scripts/create-user.js.map +1 -1
- package/server/infrastructure/database/scripts/db.js +1 -5
- package/server/infrastructure/database/scripts/db.js.map +1 -1
- package/server/infrastructure/database/scripts/seed/main.js +1 -5
- package/server/infrastructure/database/scripts/seed/main.js.map +1 -1
- package/server/infrastructure/database/scripts/seed/usersgroups.js +1 -5
- package/server/infrastructure/database/scripts/seed/usersgroups.js.map +1 -1
- package/server/infrastructure/database/utils.js +1 -5
- package/server/infrastructure/database/utils.js.map +1 -1
- package/server/infrastructure/mailer/interfaces/mail.interface.js +1 -5
- package/server/infrastructure/mailer/interfaces/mail.interface.js.map +1 -1
- package/server/infrastructure/mailer/mailer.config.js +1 -5
- package/server/infrastructure/mailer/mailer.config.js.map +1 -1
- package/server/infrastructure/mailer/mailer.module.js +1 -5
- package/server/infrastructure/mailer/mailer.module.js.map +1 -1
- package/server/infrastructure/mailer/mailer.service.js +1 -5
- package/server/infrastructure/mailer/mailer.service.js.map +1 -1
- package/server/infrastructure/mailer/mailer.service.spec.js +2 -6
- package/server/infrastructure/mailer/mailer.service.spec.js.map +1 -1
- package/server/infrastructure/scheduler/scheduler.constants.js +1 -5
- package/server/infrastructure/scheduler/scheduler.constants.js.map +1 -1
- package/server/infrastructure/scheduler/scheduler.module.js +1 -5
- package/server/infrastructure/scheduler/scheduler.module.js.map +1 -1
- package/server/infrastructure/websocket/adapters/cluster.adapter.js +1 -5
- package/server/infrastructure/websocket/adapters/cluster.adapter.js.map +1 -1
- package/server/infrastructure/websocket/adapters/redis.adapter.js +1 -5
- package/server/infrastructure/websocket/adapters/redis.adapter.js.map +1 -1
- package/server/infrastructure/websocket/adapters/web-socket.adapter.js +1 -5
- package/server/infrastructure/websocket/adapters/web-socket.adapter.js.map +1 -1
- package/server/infrastructure/websocket/decorators/web-socket-user.decorator.js +1 -5
- package/server/infrastructure/websocket/decorators/web-socket-user.decorator.js.map +1 -1
- package/server/infrastructure/websocket/interfaces/auth-socket-io.interface.js +1 -5
- package/server/infrastructure/websocket/interfaces/auth-socket-io.interface.js.map +1 -1
- package/server/infrastructure/websocket/utils.js +1 -5
- package/server/infrastructure/websocket/utils.js.map +1 -1
- package/server/infrastructure/websocket/web-socket.config.js +1 -5
- package/server/infrastructure/websocket/web-socket.config.js.map +1 -1
- package/server/main.js +5 -0
- package/server/main.js.map +1 -1
- package/static/assets/pdfjs/build/pdf.mjs +724 -745
- package/static/assets/pdfjs/build/pdf.mjs.map +1 -1
- package/static/assets/pdfjs/build/pdf.sandbox.mjs +2 -2
- package/static/assets/pdfjs/build/pdf.worker.mjs +706 -193
- package/static/assets/pdfjs/build/pdf.worker.mjs.map +1 -1
- package/static/assets/pdfjs/version +1 -1
- package/static/assets/pdfjs/web/locale/dsb/viewer.ftl +5 -5
- package/static/assets/pdfjs/web/locale/en-US/viewer.ftl +1 -0
- package/static/assets/pdfjs/web/locale/fur/viewer.ftl +5 -0
- package/static/assets/pdfjs/web/locale/kk/viewer.ftl +28 -0
- package/static/assets/pdfjs/web/locale/ml/viewer.ftl +4 -0
- package/static/assets/pdfjs/web/locale/ru/viewer.ftl +3 -3
- package/static/assets/pdfjs/web/viewer.css +207 -65
- package/static/assets/pdfjs/web/viewer.html +11 -10
- package/static/assets/pdfjs/web/viewer.mjs +850 -270
- package/static/assets/pdfjs/web/viewer.mjs.map +1 -1
- package/static/assets/pdfjs/web/wasm/LICENSE_JBIG2 +196 -0
- package/static/assets/pdfjs/web/wasm/LICENSE_PDFJS_JBIG2 +13 -0
- package/static/assets/pdfjs/web/wasm/jbig2.wasm +0 -0
- package/static/chunk-22TZP6HW.js +1 -0
- package/static/{chunk-U5E5H2DD.js → chunk-27ATUHBH.js} +1 -1
- package/static/{chunk-HZAB6F4Q.js → chunk-2CKLZ3FM.js} +1 -1
- package/static/{chunk-XZHWESIY.js → chunk-2QZPX7LO.js} +1 -1
- package/static/{chunk-UOK3LKSX.js → chunk-2R6IBBPZ.js} +1 -1
- package/static/{chunk-DVCN3P7Q.js → chunk-4FIGEBNL.js} +1 -1
- package/static/chunk-4P3JABAP.js +13 -0
- package/static/chunk-5CZOSAMZ.js +1 -0
- package/static/{chunk-RBTLSPYJ.js → chunk-677WUBCT.js} +1 -1
- package/static/{chunk-KEZNIIFH.js → chunk-74CAHBFM.js} +1 -1
- package/static/{chunk-WRK2FTKU.js → chunk-7GWW6MJO.js} +1 -1
- package/static/{chunk-EKWB5W72.js → chunk-7WOPGQXB.js} +1 -1
- package/static/{chunk-IMFO2MI7.js → chunk-A4UGPSWX.js} +1 -1
- package/static/{chunk-KDUAB76O.js → chunk-AHO37FKW.js} +1 -1
- package/static/chunk-AQCXMKP3.js +1 -0
- package/static/chunk-B6PDYCRO.js +3 -0
- package/static/{chunk-PPJCVBJH.js → chunk-CU76ATCF.js} +1 -1
- package/static/{chunk-ARS47O5X.js → chunk-CWYHOPOP.js} +1 -1
- package/static/{chunk-CSVPAZHK.js → chunk-E5WI5725.js} +1 -1
- package/static/{chunk-XX3JPJUM.js → chunk-FC5HTKVM.js} +1 -1
- package/static/{chunk-QGHNJVJ6.js → chunk-FOSM7EYI.js} +1 -1
- package/static/{chunk-JAJ7VXMB.js → chunk-GAZO25PI.js} +1 -1
- package/static/{chunk-IHS5LSJJ.js → chunk-GB7ABR5N.js} +1 -1
- package/static/{chunk-27V66YJV.js → chunk-GEHFKZQ5.js} +2 -2
- package/static/{chunk-3QTROEHV.js → chunk-GQFMWVFD.js} +1 -1
- package/static/{chunk-FWQJ4ZCD.js → chunk-GVNTC564.js} +1 -1
- package/static/{chunk-4NIYCYRS.js → chunk-HGL3NYP2.js} +2 -2
- package/static/chunk-HLIWPWRA.js +1 -0
- package/static/{chunk-3VRUIWQG.js → chunk-HNYB3M4S.js} +1 -1
- package/static/{chunk-7HJFIMNF.js → chunk-HUXAUQMN.js} +1 -1
- package/static/chunk-I2XA6PPK.js +1 -0
- package/static/{chunk-RJULB733.js → chunk-ISV3BO6R.js} +1 -1
- package/static/{chunk-R4VYKZVJ.js → chunk-IWWBV6EM.js} +1 -1
- package/static/{chunk-TTWMFWEC.js → chunk-JV3AGU5B.js} +1 -1
- package/static/{chunk-X7NHX5C7.js → chunk-K25E7YGG.js} +1 -1
- package/static/chunk-K46PUTZB.js +1 -0
- package/static/{chunk-D2MLAO5N.js → chunk-KERFLJ56.js} +1 -7
- package/static/{chunk-LZUHREOF.js → chunk-KJD3KFF3.js} +1 -1
- package/static/chunk-KPKSI23S.js +1 -0
- package/static/{chunk-CMNMPG6Z.js → chunk-KZS7CTNR.js} +1 -1
- package/static/{chunk-RNVPQQKT.js → chunk-L5IHUVXL.js} +1 -1
- package/static/{chunk-2GXOVGTD.js → chunk-L7RRX2M3.js} +1 -1
- package/static/{chunk-WFMEUST4.js → chunk-LGWJ2WKU.js} +1 -1
- package/static/{chunk-ZOMRIN3G.js → chunk-MLC7JK2H.js} +2 -2
- package/static/{chunk-76REYAEA.js → chunk-MOHNYW2A.js} +1 -1
- package/static/{chunk-ZHUBWKA2.js → chunk-MTRXBVWZ.js} +1 -1
- package/static/{chunk-QJ22N76V.js → chunk-MZQK6LNV.js} +1 -1
- package/static/{chunk-SDJNZULP.js → chunk-NCDUOVMW.js} +1 -1
- package/static/chunk-NGUAJIGI.js +1 -0
- package/static/chunk-NIPP6JDI.js +1 -0
- package/static/{chunk-VD5JHSDS.js → chunk-NMTBMHUL.js} +1 -1
- package/static/chunk-O4XXMZFX.js +4 -0
- package/static/{chunk-WZPF4LS2.js → chunk-OANZITPM.js} +1 -1
- package/static/{chunk-JNTNMIUH.js → chunk-OGE4SAHU.js} +1 -1
- package/static/{chunk-S6H2ELRY.js → chunk-OI3ME22C.js} +1 -1
- package/static/{chunk-7KAYOR3A.js → chunk-Q3EGCMF5.js} +1 -1
- package/static/chunk-QF2NSHZA.js +1 -0
- package/static/{chunk-3ZBAQTHJ.js → chunk-QIGUDEZF.js} +1 -1
- package/static/{chunk-76M3BMK6.js → chunk-QJVC3SRJ.js} +11 -11
- package/static/{chunk-VBTZDHZ3.js → chunk-QKN6LAAA.js} +1 -1
- package/static/{chunk-JRXG43AA.js → chunk-QRFESU5O.js} +2 -2
- package/static/chunk-QVRVFYJH.js +1 -0
- package/static/{chunk-BCN4T5DO.js → chunk-RFJIPIOK.js} +2 -2
- package/static/{chunk-2RWLNKZH.js → chunk-RLL634K4.js} +1 -1
- package/static/{chunk-D5FQ72R4.js → chunk-RS2OFKWP.js} +1 -1
- package/static/{chunk-CN5YVRFT.js → chunk-RWAAC3A4.js} +1 -1
- package/static/{chunk-LWSCODLD.js → chunk-RWCNTCU5.js} +1 -1
- package/static/{chunk-FTFEQDWH.js → chunk-S5Y64DDS.js} +1 -1
- package/static/{chunk-J7474P3L.js → chunk-SLG5KDU6.js} +1 -1
- package/static/chunk-TJ4CVFEL.js +1 -0
- package/static/{chunk-KAUCN24H.js → chunk-TWCGKSYE.js} +1 -1
- package/static/{chunk-PDG7DOEF.js → chunk-UMDRE4S7.js} +1 -1
- package/static/chunk-VRIOLRYR.js +5 -0
- package/static/chunk-VS4O2XDP.js +1 -0
- package/static/{chunk-ZEJLIGAY.js → chunk-VSBFNFOM.js} +1 -1
- package/static/{chunk-XSURUW7C.js → chunk-WN4WXCVK.js} +1 -1
- package/static/{chunk-S44QIK3G.js → chunk-WX7RXW7K.js} +1 -1
- package/static/{chunk-3ZLBVUCX.js → chunk-XC4POKR3.js} +2 -2
- package/static/{chunk-TNCKNU6I.js → chunk-Y4AUYQTG.js} +1 -1
- package/static/{chunk-3MVPXC3U.js → chunk-Y67J3BOL.js} +1 -1
- package/static/{chunk-QTPIEEZW.js → chunk-YMIXHRJQ.js} +1 -7
- package/static/{chunk-VZFZUI6D.js → chunk-ZUNKFAKP.js} +1 -1
- package/static/index.html +3 -3
- package/static/main-QN4UCOC5.js +5 -0
- package/static/{styles-XLLEY5Y3.css → styles-46GLIE7Y.css} +1 -1
- package/server/authentication/constants/auth-ldap.js.map +0 -1
- package/server/authentication/dto/two-fa-verify.dto.js.map +0 -1
- package/server/authentication/guards/auth-two-fa-guard.js.map +0 -1
- package/server/authentication/interfaces/two-fa-setup.interface.js +0 -10
- package/server/authentication/interfaces/two-fa-setup.interface.js.map +0 -1
- package/server/authentication/models/auth-method.js +0 -18
- package/server/authentication/models/auth-method.js.map +0 -1
- package/server/authentication/services/auth-manager.service.js.map +0 -1
- package/server/authentication/services/auth-manager.service.spec.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-database.service.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-database.service.spec.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-ldap.service.js +0 -326
- package/server/authentication/services/auth-methods/auth-method-ldap.service.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-ldap.service.spec.js +0 -534
- package/server/authentication/services/auth-methods/auth-method-ldap.service.spec.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-two-fa.service.js.map +0 -1
- package/server/authentication/services/auth-methods/auth-method-two-fa.service.spec.js.map +0 -1
- package/static/chunk-2YQ4SX3A.js +0 -13
- package/static/chunk-46TJLPJY.js +0 -1
- package/static/chunk-6OEOADR6.js +0 -1
- package/static/chunk-AALPWGPB.js +0 -3
- package/static/chunk-CVXLHSO5.js +0 -1
- package/static/chunk-G7RZN7HN.js +0 -1
- package/static/chunk-LTJNLOX2.js +0 -1
- package/static/chunk-NIKNG2FX.js +0 -1
- package/static/chunk-NNZWSNAW.js +0 -1
- package/static/chunk-NWKBB7J4.js +0 -1
- package/static/chunk-PVYVY3GD.js +0 -1
- package/static/chunk-Q5X5TPAG.js +0 -1
- package/static/chunk-R4VMWCM5.js +0 -1
- package/static/chunk-SNOOCDJD.js +0 -1
- package/static/chunk-SPQH3ATC.js +0 -5
- package/static/chunk-ZCSHU3D7.js +0 -1
- package/static/chunk-ZU5MQTFN.js +0 -4
- package/static/main-5O3KLGIR.js +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/sync/utils/normalizedMap.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/sync/utils/normalizedMap.ts"],"sourcesContent":["export class NormalizedMap<K extends string, V> extends Map<K, V> {\n // NFC-normalized path → actual key\n private index = new Map<string, K>()\n\n constructor(entries?: readonly (readonly [K, V])[] | null) {\n super()\n if (entries) {\n for (const [k, v] of entries) {\n this.set(k, v)\n }\n }\n }\n\n private normalizeKey(key: string): string {\n return key.normalize('NFC')\n }\n\n override set(key: K, value: V): this {\n this.index.set(this.normalizeKey(key), key) // store the \"real\" key used\n return super.set(key, value)\n }\n\n getResolvedKey(input: string): K | undefined {\n return this.index.get(this.normalizeKey(input))\n }\n\n override get(key: string): V | undefined {\n const resolved = this.getResolvedKey(key)\n return resolved ? super.get(resolved) : undefined\n }\n\n override has(key: string): boolean {\n return this.index.has(this.normalizeKey(key))\n }\n\n override delete(key: string): boolean {\n const resolved = this.getResolvedKey(key)\n if (resolved) {\n this.index.delete(this.normalizeKey(resolved))\n return super.delete(resolved)\n }\n return false\n }\n}\n"],"names":["NormalizedMap","Map","normalizeKey","key","normalize","set","value","index","getResolvedKey","input","get","resolved","undefined","has","delete","entries","k","v"],"mappings":";;;;+BAAaA;;;eAAAA;;;AAAN,IAAA,AAAMA,gBAAN,MAAMA,sBAA2CC;IAa9CC,aAAaC,GAAW,EAAU;QACxC,OAAOA,IAAIC,SAAS,CAAC;IACvB;IAESC,IAAIF,GAAM,EAAEG,KAAQ,EAAQ;QACnC,IAAI,CAACC,KAAK,CAACF,GAAG,CAAC,IAAI,CAACH,YAAY,CAACC,MAAMA,MAAK,4BAA4B;QACxE,OAAO,KAAK,CAACE,IAAIF,KAAKG;IACxB;IAEAE,eAAeC,KAAa,EAAiB;QAC3C,OAAO,IAAI,CAACF,KAAK,CAACG,GAAG,CAAC,IAAI,CAACR,YAAY,CAACO;IAC1C;IAESC,IAAIP,GAAW,EAAiB;QACvC,MAAMQ,WAAW,IAAI,CAACH,cAAc,CAACL;QACrC,OAAOQ,WAAW,KAAK,CAACD,IAAIC,YAAYC;IAC1C;IAESC,IAAIV,GAAW,EAAW;QACjC,OAAO,IAAI,CAACI,KAAK,CAACM,GAAG,CAAC,IAAI,CAACX,YAAY,CAACC;IAC1C;IAESW,OAAOX,GAAW,EAAW;QACpC,MAAMQ,WAAW,IAAI,CAACH,cAAc,CAACL;QACrC,IAAIQ,UAAU;YACZ,IAAI,CAACJ,KAAK,CAACO,MAAM,CAAC,IAAI,CAACZ,YAAY,CAACS;YACpC,OAAO,KAAK,CAACG,OAAOH;QACtB;QACA,OAAO;IACT;IAtCA,YAAYI,OAA6C,CAAE;QACzD,KAAK,IAJP,mCAAmC;aAC3BR,QAAQ,IAAIN;QAIlB,IAAIc,SAAS;YACX,KAAK,MAAM,CAACC,GAAGC,EAAE,IAAIF,QAAS;gBAC5B,IAAI,CAACV,GAAG,CAACW,GAAGC;YACd;QACF;IACF;AAgCF"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/sync/utils/routes.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/sync/utils/routes.ts"],"sourcesContent":["import { PATH_TO_SPACE_SEGMENTS } from '../../spaces/utils/routes'\nimport { SYNC_PATH_REPOSITORY } from '../constants/sync'\n\nexport function SYNC_PATH_TO_SPACE_SEGMENTS(path: string): string[] {\n const urlSegments = PATH_TO_SPACE_SEGMENTS(path)\n const repository = urlSegments.shift()\n if (!(repository in SYNC_PATH_REPOSITORY)) {\n throw new Error(`Repository not found : ${repository}`)\n }\n urlSegments.unshift(...SYNC_PATH_REPOSITORY[repository])\n return urlSegments\n}\n"],"names":["SYNC_PATH_TO_SPACE_SEGMENTS","path","urlSegments","PATH_TO_SPACE_SEGMENTS","repository","shift","SYNC_PATH_REPOSITORY","Error","unshift"],"mappings":";;;;+BAGgBA;;;eAAAA;;;wBAHuB;sBACF;AAE9B,SAASA,4BAA4BC,IAAY;IACtD,MAAMC,cAAcC,IAAAA,8BAAsB,EAACF;IAC3C,MAAMG,aAAaF,YAAYG,KAAK;IACpC,IAAI,CAAED,CAAAA,cAAcE,0BAAoB,AAAD,GAAI;QACzC,MAAM,IAAIC,MAAM,CAAC,uBAAuB,EAAEH,YAAY;IACxD;IACAF,YAAYM,OAAO,IAAIF,0BAAoB,CAACF,WAAW;IACvD,OAAOF;AACT"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -14,7 +10,7 @@ Object.defineProperty(exports, "AdminUsersController", {
|
|
|
14
10
|
});
|
|
15
11
|
const _common = require("@nestjs/common");
|
|
16
12
|
const _fastify = require("fastify");
|
|
17
|
-
const _authtwofaguard = require("../../authentication/
|
|
13
|
+
const _authtwofaguard = require("../../authentication/providers/two-fa/auth-two-fa-guard");
|
|
18
14
|
const _group = require("./constants/group");
|
|
19
15
|
const _routes = require("./constants/routes");
|
|
20
16
|
const _user = require("./constants/user");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../backend/src/applications/users/admin-users.controller.ts"],"sourcesContent":["/*\n * Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>\n * This file is part of Sync-in | The open source file sync and share solution\n * See the LICENSE file for licensing details\n */\n\nimport { Body, Controller, Delete, Get, Param, ParseIntPipe, Patch, Post, Put, Res, Search, UseGuards } from '@nestjs/common'\nimport { FastifyReply } from 'fastify'\nimport { LoginResponseDto } from '../../authentication/dto/login-response.dto'\nimport { AuthTwoFaGuard, AuthTwoFaGuardWithoutPassword } from '../../authentication/guards/auth-two-fa-guard'\nimport { GROUP_TYPE } from './constants/group'\nimport { ADMIN_USERS_ROUTE } from './constants/routes'\nimport { USER_ROLE } from './constants/user'\nimport { UserHaveRole } from './decorators/roles.decorator'\nimport { GetUser } from './decorators/user.decorator'\nimport { CreateOrUpdateGroupDto } from './dto/create-or-update-group.dto'\nimport { CreateUserDto, UpdateUserDto, UpdateUserFromGroupDto } from './dto/create-or-update-user.dto'\nimport { DeleteUserDto } from './dto/delete-user.dto'\nimport { SearchMembersDto } from './dto/search-members.dto'\nimport { UserRolesGuard } from './guards/roles.guard'\nimport { AdminGroup } from './interfaces/admin-group.interface'\nimport { AdminUser } from './interfaces/admin-user.interface'\nimport { GroupBrowse } from './interfaces/group-browse.interface'\nimport { GuestUser } from './interfaces/guest-user.interface'\nimport { Member } from './interfaces/member.interface'\nimport { UserModel } from './models/user.model'\nimport { AdminUsersManager } from './services/admin-users-manager.service'\n\n@Controller(ADMIN_USERS_ROUTE.BASE)\n@UserHaveRole(USER_ROLE.ADMINISTRATOR)\n@UseGuards(UserRolesGuard)\nexport class AdminUsersController {\n constructor(private readonly adminUsersManager: AdminUsersManager) {}\n\n @Get(`${ADMIN_USERS_ROUTE.USERS}/${ADMIN_USERS_ROUTE.LIST}`)\n listUsers(): Promise<AdminUser[]> {\n return this.adminUsersManager.listUsers()\n }\n\n @Get(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n getUser(@Param('id', ParseIntPipe) userId: number): Promise<AdminUser> {\n return this.adminUsersManager.getUser(userId)\n }\n\n @Post(ADMIN_USERS_ROUTE.USERS)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n createUser(@Body() createUserDto: CreateUserDto): Promise<AdminUser> {\n return this.adminUsersManager.createUserOrGuest(\n createUserDto,\n typeof createUserDto?.role !== 'undefined' ? createUserDto.role : USER_ROLE.USER,\n true\n )\n }\n\n @Put(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n updateUser(@Param('id', ParseIntPipe) userId: number, @Body() updateUserDto: UpdateUserDto): Promise<AdminUser> {\n return this.adminUsersManager.updateUserOrGuest(userId, updateUserDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n @UseGuards(AuthTwoFaGuard)\n deleteUser(@Param('id', ParseIntPipe) userId: number, @Body() deleteUserDto: DeleteUserDto): Promise<void> {\n return this.adminUsersManager.deleteUserOrGuestFromAdmin(userId, { ...deleteUserDto, isGuest: false })\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GUESTS}/${ADMIN_USERS_ROUTE.LIST}`)\n listGuests(): Promise<AdminUser[]> {\n return this.adminUsersManager.listGuests()\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n getGuest(@Param('id', ParseIntPipe) guestId: number): Promise<AdminUser> {\n return this.adminUsersManager.getGuest(guestId)\n }\n\n @Post(ADMIN_USERS_ROUTE.GUESTS)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n createGuest(@GetUser() user: UserModel, @Body() createGuestDto: CreateUserDto): Promise<GuestUser> {\n return this.adminUsersManager.createGuest(user, createGuestDto)\n }\n\n @Put(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n updateGuest(@Param('id', ParseIntPipe) guestId: number, @Body() updateGuestDto: UpdateUserDto): Promise<GuestUser> {\n return this.adminUsersManager.updateGuest(guestId, updateGuestDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n @UseGuards(AuthTwoFaGuard)\n deleteGuest(@Param('id', ParseIntPipe) guestId: number, @Body() deleteUserDto: DeleteUserDto): Promise<void> {\n return this.adminUsersManager.deleteUserOrGuestFromAdmin(guestId, { ...deleteUserDto, isGuest: true })\n }\n\n @Search(ADMIN_USERS_ROUTE.MEMBERS)\n searchMembers(@Body() searchMembersDto: SearchMembersDto): Promise<Member[]> {\n return this.adminUsersManager.searchMembers(searchMembersDto)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GROUPS}/${ADMIN_USERS_ROUTE.BROWSE}/:name?`)\n browseGroups(@Param('name') name?: string): Promise<GroupBrowse> {\n return this.adminUsersManager.browseGroups(name)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.PGROUPS}/${ADMIN_USERS_ROUTE.BROWSE}/:name?`)\n browsePersonalGroups(@Param('name') name?: string): Promise<GroupBrowse> {\n return this.adminUsersManager.browseGroups(name, GROUP_TYPE.PERSONAL)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n getGroup(@Param('id', ParseIntPipe) groupId: number): Promise<AdminGroup> {\n return this.adminUsersManager.getGroup(groupId)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.GROUPS}`)\n createGroup(@Body() createGroupDto: CreateOrUpdateGroupDto): Promise<AdminGroup> {\n return this.adminUsersManager.createGroup(createGroupDto)\n }\n\n @Put(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n updateGroup(@Param('id', ParseIntPipe) groupId: number, @Body() updateGroupDto: CreateOrUpdateGroupDto): Promise<AdminGroup> {\n return this.adminUsersManager.updateGroup(groupId, updateGroupDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n deleteGroup(@Param('id', ParseIntPipe) groupId: number): Promise<void> {\n return this.adminUsersManager.deleteGroup(groupId)\n }\n\n @Patch(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}`)\n addUsersToGroup(@Param('groupId', ParseIntPipe) groupId: number, @Body() userIds: number[]): Promise<void> {\n return this.adminUsersManager.addUsersToGroup(groupId, userIds)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}/:userId`)\n removeUserFromGroup(@Param('groupId', ParseIntPipe) groupId: number, @Param('userId', ParseIntPipe) userId: number): Promise<void> {\n return this.adminUsersManager.removeUserFromGroup(groupId, userId)\n }\n\n @Patch(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}/:userId`)\n updateUserFromGroup(\n @Param('groupId', ParseIntPipe) groupId: number,\n @Param('userId', ParseIntPipe) userId: number,\n @Body() updateUserFromGroupDto: UpdateUserFromGroupDto\n ): Promise<void> {\n return this.adminUsersManager.updateUserFromGroup(groupId, userId, updateUserFromGroupDto)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.IMPERSONATE}/:id`)\n @UseGuards(AuthTwoFaGuard)\n impersonateUser(\n @GetUser() admin: UserModel,\n @Param('id', ParseIntPipe) userId: number,\n @Res({ passthrough: true }) res: FastifyReply\n ): Promise<LoginResponseDto> {\n return this.adminUsersManager.impersonateUser(admin, userId, res)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.IMPERSONATE}/${ADMIN_USERS_ROUTE.LOGOUT}`)\n @UserHaveRole(USER_ROLE.GUEST)\n logOutImpersonateUser(@GetUser() user: UserModel, @Res({ passthrough: true }) res: FastifyReply): Promise<LoginResponseDto> {\n return this.adminUsersManager.logoutImpersonateUser(user, res)\n }\n}\n"],"names":["AdminUsersController","listUsers","adminUsersManager","getUser","userId","createUser","createUserDto","createUserOrGuest","role","USER_ROLE","USER","updateUser","updateUserDto","updateUserOrGuest","deleteUser","deleteUserDto","deleteUserOrGuestFromAdmin","isGuest","listGuests","getGuest","guestId","createGuest","user","createGuestDto","updateGuest","updateGuestDto","deleteGuest","searchMembers","searchMembersDto","browseGroups","name","browsePersonalGroups","GROUP_TYPE","PERSONAL","getGroup","groupId","createGroup","createGroupDto","updateGroup","updateGroupDto","deleteGroup","addUsersToGroup","userIds","removeUserFromGroup","updateUserFromGroup","updateUserFromGroupDto","impersonateUser","admin","res","logOutImpersonateUser","logoutImpersonateUser","ADMIN_USERS_ROUTE","USERS","LIST","GUESTS","MEMBERS","GROUPS","BROWSE","PGROUPS","IMPERSONATE","passthrough","LOGOUT","GUEST","BASE","ADMINISTRATOR"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../backend/src/applications/users/admin-users.controller.ts"],"sourcesContent":["import { Body, Controller, Delete, Get, Param, ParseIntPipe, Patch, Post, Put, Res, Search, UseGuards } from '@nestjs/common'\nimport { FastifyReply } from 'fastify'\nimport { LoginResponseDto } from '../../authentication/dto/login-response.dto'\nimport { AuthTwoFaGuard, AuthTwoFaGuardWithoutPassword } from '../../authentication/providers/two-fa/auth-two-fa-guard'\nimport { GROUP_TYPE } from './constants/group'\nimport { ADMIN_USERS_ROUTE } from './constants/routes'\nimport { USER_ROLE } from './constants/user'\nimport { UserHaveRole } from './decorators/roles.decorator'\nimport { GetUser } from './decorators/user.decorator'\nimport { CreateOrUpdateGroupDto } from './dto/create-or-update-group.dto'\nimport { CreateUserDto, UpdateUserDto, UpdateUserFromGroupDto } from './dto/create-or-update-user.dto'\nimport { DeleteUserDto } from './dto/delete-user.dto'\nimport { SearchMembersDto } from './dto/search-members.dto'\nimport { UserRolesGuard } from './guards/roles.guard'\nimport { AdminGroup } from './interfaces/admin-group.interface'\nimport { AdminUser } from './interfaces/admin-user.interface'\nimport { GroupBrowse } from './interfaces/group-browse.interface'\nimport { GuestUser } from './interfaces/guest-user.interface'\nimport { Member } from './interfaces/member.interface'\nimport { UserModel } from './models/user.model'\nimport { AdminUsersManager } from './services/admin-users-manager.service'\n\n@Controller(ADMIN_USERS_ROUTE.BASE)\n@UserHaveRole(USER_ROLE.ADMINISTRATOR)\n@UseGuards(UserRolesGuard)\nexport class AdminUsersController {\n constructor(private readonly adminUsersManager: AdminUsersManager) {}\n\n @Get(`${ADMIN_USERS_ROUTE.USERS}/${ADMIN_USERS_ROUTE.LIST}`)\n listUsers(): Promise<AdminUser[]> {\n return this.adminUsersManager.listUsers()\n }\n\n @Get(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n getUser(@Param('id', ParseIntPipe) userId: number): Promise<AdminUser> {\n return this.adminUsersManager.getUser(userId)\n }\n\n @Post(ADMIN_USERS_ROUTE.USERS)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n createUser(@Body() createUserDto: CreateUserDto): Promise<AdminUser> {\n return this.adminUsersManager.createUserOrGuest(\n createUserDto,\n typeof createUserDto?.role !== 'undefined' ? createUserDto.role : USER_ROLE.USER,\n true\n )\n }\n\n @Put(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n updateUser(@Param('id', ParseIntPipe) userId: number, @Body() updateUserDto: UpdateUserDto): Promise<AdminUser> {\n return this.adminUsersManager.updateUserOrGuest(userId, updateUserDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.USERS}/:id`)\n @UseGuards(AuthTwoFaGuard)\n deleteUser(@Param('id', ParseIntPipe) userId: number, @Body() deleteUserDto: DeleteUserDto): Promise<void> {\n return this.adminUsersManager.deleteUserOrGuestFromAdmin(userId, { ...deleteUserDto, isGuest: false })\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GUESTS}/${ADMIN_USERS_ROUTE.LIST}`)\n listGuests(): Promise<AdminUser[]> {\n return this.adminUsersManager.listGuests()\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n getGuest(@Param('id', ParseIntPipe) guestId: number): Promise<AdminUser> {\n return this.adminUsersManager.getGuest(guestId)\n }\n\n @Post(ADMIN_USERS_ROUTE.GUESTS)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n createGuest(@GetUser() user: UserModel, @Body() createGuestDto: CreateUserDto): Promise<GuestUser> {\n return this.adminUsersManager.createGuest(user, createGuestDto)\n }\n\n @Put(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n @UseGuards(AuthTwoFaGuardWithoutPassword)\n updateGuest(@Param('id', ParseIntPipe) guestId: number, @Body() updateGuestDto: UpdateUserDto): Promise<GuestUser> {\n return this.adminUsersManager.updateGuest(guestId, updateGuestDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GUESTS}/:id`)\n @UseGuards(AuthTwoFaGuard)\n deleteGuest(@Param('id', ParseIntPipe) guestId: number, @Body() deleteUserDto: DeleteUserDto): Promise<void> {\n return this.adminUsersManager.deleteUserOrGuestFromAdmin(guestId, { ...deleteUserDto, isGuest: true })\n }\n\n @Search(ADMIN_USERS_ROUTE.MEMBERS)\n searchMembers(@Body() searchMembersDto: SearchMembersDto): Promise<Member[]> {\n return this.adminUsersManager.searchMembers(searchMembersDto)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GROUPS}/${ADMIN_USERS_ROUTE.BROWSE}/:name?`)\n browseGroups(@Param('name') name?: string): Promise<GroupBrowse> {\n return this.adminUsersManager.browseGroups(name)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.PGROUPS}/${ADMIN_USERS_ROUTE.BROWSE}/:name?`)\n browsePersonalGroups(@Param('name') name?: string): Promise<GroupBrowse> {\n return this.adminUsersManager.browseGroups(name, GROUP_TYPE.PERSONAL)\n }\n\n @Get(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n getGroup(@Param('id', ParseIntPipe) groupId: number): Promise<AdminGroup> {\n return this.adminUsersManager.getGroup(groupId)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.GROUPS}`)\n createGroup(@Body() createGroupDto: CreateOrUpdateGroupDto): Promise<AdminGroup> {\n return this.adminUsersManager.createGroup(createGroupDto)\n }\n\n @Put(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n updateGroup(@Param('id', ParseIntPipe) groupId: number, @Body() updateGroupDto: CreateOrUpdateGroupDto): Promise<AdminGroup> {\n return this.adminUsersManager.updateGroup(groupId, updateGroupDto)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GROUPS}/:id`)\n deleteGroup(@Param('id', ParseIntPipe) groupId: number): Promise<void> {\n return this.adminUsersManager.deleteGroup(groupId)\n }\n\n @Patch(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}`)\n addUsersToGroup(@Param('groupId', ParseIntPipe) groupId: number, @Body() userIds: number[]): Promise<void> {\n return this.adminUsersManager.addUsersToGroup(groupId, userIds)\n }\n\n @Delete(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}/:userId`)\n removeUserFromGroup(@Param('groupId', ParseIntPipe) groupId: number, @Param('userId', ParseIntPipe) userId: number): Promise<void> {\n return this.adminUsersManager.removeUserFromGroup(groupId, userId)\n }\n\n @Patch(`${ADMIN_USERS_ROUTE.GROUPS}/:groupId/${ADMIN_USERS_ROUTE.USERS}/:userId`)\n updateUserFromGroup(\n @Param('groupId', ParseIntPipe) groupId: number,\n @Param('userId', ParseIntPipe) userId: number,\n @Body() updateUserFromGroupDto: UpdateUserFromGroupDto\n ): Promise<void> {\n return this.adminUsersManager.updateUserFromGroup(groupId, userId, updateUserFromGroupDto)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.IMPERSONATE}/:id`)\n @UseGuards(AuthTwoFaGuard)\n impersonateUser(\n @GetUser() admin: UserModel,\n @Param('id', ParseIntPipe) userId: number,\n @Res({ passthrough: true }) res: FastifyReply\n ): Promise<LoginResponseDto> {\n return this.adminUsersManager.impersonateUser(admin, userId, res)\n }\n\n @Post(`${ADMIN_USERS_ROUTE.IMPERSONATE}/${ADMIN_USERS_ROUTE.LOGOUT}`)\n @UserHaveRole(USER_ROLE.GUEST)\n logOutImpersonateUser(@GetUser() user: UserModel, @Res({ passthrough: true }) res: FastifyReply): Promise<LoginResponseDto> {\n return this.adminUsersManager.logoutImpersonateUser(user, res)\n }\n}\n"],"names":["AdminUsersController","listUsers","adminUsersManager","getUser","userId","createUser","createUserDto","createUserOrGuest","role","USER_ROLE","USER","updateUser","updateUserDto","updateUserOrGuest","deleteUser","deleteUserDto","deleteUserOrGuestFromAdmin","isGuest","listGuests","getGuest","guestId","createGuest","user","createGuestDto","updateGuest","updateGuestDto","deleteGuest","searchMembers","searchMembersDto","browseGroups","name","browsePersonalGroups","GROUP_TYPE","PERSONAL","getGroup","groupId","createGroup","createGroupDto","updateGroup","updateGroupDto","deleteGroup","addUsersToGroup","userIds","removeUserFromGroup","updateUserFromGroup","updateUserFromGroupDto","impersonateUser","admin","res","logOutImpersonateUser","logoutImpersonateUser","ADMIN_USERS_ROUTE","USERS","LIST","GUESTS","MEMBERS","GROUPS","BROWSE","PGROUPS","IMPERSONATE","passthrough","LOGOUT","GUEST","BASE","ADMINISTRATOR"],"mappings":"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"}
|
|
@@ -1,17 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
9
5
|
const _config = require("@nestjs/config");
|
|
10
6
|
const _jwt = require("@nestjs/jwt");
|
|
11
7
|
const _testing = require("@nestjs/testing");
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
8
|
+
const _authservice = require("../../authentication/auth.service");
|
|
9
|
+
const _authprovidertwofaservice = require("../../authentication/providers/two-fa/auth-provider-two-fa.service");
|
|
10
|
+
const _authtwofaguard = require("../../authentication/providers/two-fa/auth-two-fa-guard");
|
|
15
11
|
const _configenvironment = require("../../configuration/config.environment");
|
|
16
12
|
const _cacheservice = require("../../infrastructure/cache/services/cache.service");
|
|
17
13
|
const _constants = require("../../infrastructure/database/constants");
|
|
@@ -46,7 +42,7 @@ describe(_adminuserscontroller.AdminUsersController.name, ()=>{
|
|
|
46
42
|
useValue: {}
|
|
47
43
|
},
|
|
48
44
|
{
|
|
49
|
-
provide:
|
|
45
|
+
provide: _authprovidertwofaservice.AuthProvider2FA,
|
|
50
46
|
useValue: {}
|
|
51
47
|
},
|
|
52
48
|
{
|
|
@@ -58,7 +54,7 @@ describe(_adminuserscontroller.AdminUsersController.name, ()=>{
|
|
|
58
54
|
useValue: {}
|
|
59
55
|
},
|
|
60
56
|
_jwt.JwtService,
|
|
61
|
-
|
|
57
|
+
_authservice.AuthManager,
|
|
62
58
|
_adminusersmanagerservice.AdminUsersManager,
|
|
63
59
|
_adminusersqueriesservice.AdminUsersQueries,
|
|
64
60
|
_usersmanagerservice.UsersManager,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../backend/src/applications/users/admin-users.controller.spec.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../backend/src/applications/users/admin-users.controller.spec.ts"],"sourcesContent":["import { ConfigModule } from '@nestjs/config'\nimport { JwtService } from '@nestjs/jwt'\nimport { Test, TestingModule } from '@nestjs/testing'\nimport { AuthManager } from '../../authentication/auth.service'\nimport { AuthProvider2FA } from '../../authentication/providers/two-fa/auth-provider-two-fa.service'\nimport { AuthTwoFaGuard } from '../../authentication/providers/two-fa/auth-two-fa-guard'\nimport { exportConfiguration } from '../../configuration/config.environment'\nimport { Cache } from '../../infrastructure/cache/services/cache.service'\nimport { DB_TOKEN_PROVIDER } from '../../infrastructure/database/constants'\nimport { NotificationsManager } from '../notifications/services/notifications-manager.service'\nimport { AdminUsersController } from './admin-users.controller'\nimport { AdminUsersManager } from './services/admin-users-manager.service'\nimport { AdminUsersQueries } from './services/admin-users-queries.service'\nimport { UsersManager } from './services/users-manager.service'\nimport { UsersQueries } from './services/users-queries.service'\n\ndescribe(AdminUsersController.name, () => {\n let controller: AdminUsersController\n\n beforeAll(async () => {\n const module: TestingModule = await Test.createTestingModule({\n imports: [await ConfigModule.forRoot({ load: [exportConfiguration], isGlobal: true })],\n controllers: [AdminUsersController],\n providers: [\n { provide: DB_TOKEN_PROVIDER, useValue: {} },\n {\n provide: Cache,\n useValue: {}\n },\n { provide: AuthProvider2FA, useValue: {} },\n { provide: AuthTwoFaGuard, useValue: {} },\n { provide: NotificationsManager, useValue: {} },\n JwtService,\n AuthManager,\n AdminUsersManager,\n AdminUsersQueries,\n UsersManager,\n UsersQueries\n ]\n }).compile()\n\n controller = module.get<AdminUsersController>(AdminUsersController)\n })\n\n it('should be defined', () => {\n expect(controller).toBeDefined()\n })\n})\n"],"names":["describe","AdminUsersController","name","controller","beforeAll","module","Test","createTestingModule","imports","ConfigModule","forRoot","load","exportConfiguration","isGlobal","controllers","providers","provide","DB_TOKEN_PROVIDER","useValue","Cache","AuthProvider2FA","AuthTwoFaGuard","NotificationsManager","JwtService","AuthManager","AdminUsersManager","AdminUsersQueries","UsersManager","UsersQueries","compile","get","it","expect","toBeDefined"],"mappings":";;;;wBAA6B;qBACF;yBACS;6BACR;0CACI;gCACD;mCACK;8BACd;2BACY;6CACG;sCACA;0CACH;0CACA;qCACL;qCACA;AAE7BA,SAASC,0CAAoB,CAACC,IAAI,EAAE;IAClC,IAAIC;IAEJC,UAAU;QACR,MAAMC,SAAwB,MAAMC,aAAI,CAACC,mBAAmB,CAAC;YAC3DC,SAAS;gBAAC,MAAMC,oBAAY,CAACC,OAAO,CAAC;oBAAEC,MAAM;wBAACC,sCAAmB;qBAAC;oBAAEC,UAAU;gBAAK;aAAG;YACtFC,aAAa;gBAACb,0CAAoB;aAAC;YACnCc,WAAW;gBACT;oBAAEC,SAASC,4BAAiB;oBAAEC,UAAU,CAAC;gBAAE;gBAC3C;oBACEF,SAASG,mBAAK;oBACdD,UAAU,CAAC;gBACb;gBACA;oBAAEF,SAASI,yCAAe;oBAAEF,UAAU,CAAC;gBAAE;gBACzC;oBAAEF,SAASK,8BAAc;oBAAEH,UAAU,CAAC;gBAAE;gBACxC;oBAAEF,SAASM,iDAAoB;oBAAEJ,UAAU,CAAC;gBAAE;gBAC9CK,eAAU;gBACVC,wBAAW;gBACXC,2CAAiB;gBACjBC,2CAAiB;gBACjBC,iCAAY;gBACZC,iCAAY;aACb;QACH,GAAGC,OAAO;QAEV1B,aAAaE,OAAOyB,GAAG,CAAuB7B,0CAAoB;IACpE;IAEA8B,GAAG,qBAAqB;QACtBC,OAAO7B,YAAY8B,WAAW;IAChC;AACF"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/group.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/group.ts"],"sourcesContent":["export enum GROUP_TYPE {\n USER,\n PERSONAL\n}\n\nexport enum GROUP_VISIBILITY {\n VISIBLE, // default\n PRIVATE, // non-member users cannot see this group (default for personal group type)\n ISOLATED // hidden, its members cannot see it and cannot see each other\n}\n"],"names":["GROUP_TYPE","GROUP_VISIBILITY"],"mappings":";;;;;;;;;;;QAAYA;eAAAA;;QAKAC;eAAAA;;;AALL,IAAA,AAAKD,oCAAAA;;;WAAAA;;AAKL,IAAA,AAAKC,0CAAAA;;;qEAGD,8DAA8D;WAH7DA"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/member.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/member.ts"],"sourcesContent":["export enum MEMBER_TYPE {\n USER = 'user',\n GUEST = 'guest',\n LINK = 'link',\n GROUP = 'group',\n PGROUP = 'personal group'\n}\n\nexport const MEMBER_TYPE_REVERSE = {\n user: 'user',\n guest: 'guest',\n link: 'user',\n group: 'group',\n ['personal group']: 'personal group'\n}\n"],"names":["MEMBER_TYPE","MEMBER_TYPE_REVERSE","user","guest","link","group"],"mappings":";;;;;;;;;;;QAAYA;eAAAA;;QAQCC;eAAAA;;;AARN,IAAA,AAAKD,qCAAAA;;;;;;WAAAA;;AAQL,MAAMC,sBAAsB;IACjCC,MAAM;IACNC,OAAO;IACPC,MAAM;IACNC,OAAO;IACP,CAAC,iBAAiB,EAAE;AACtB"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/routes.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/routes.ts"],"sourcesContent":["import { ADMIN_ROUTE } from '../../admin/constants/routes'\n\nexport const USERS_ROUTE = {\n BASE: '/api/users',\n ME: 'me',\n LANGUAGE: 'language',\n PASSWORD: 'password',\n APP_PASSWORDS: 'app_passwords',\n NOTIFICATION: 'notification',\n STORAGE_INDEXING: 'storage_indexing',\n AVATAR: 'avatar',\n GROUPS: 'groups',\n USERS: 'users',\n GUESTS: 'guests',\n BROWSE: 'browse',\n GROUPS_LEAVE: 'leave'\n} as const\n\nexport const API_USERS_ME = `${USERS_ROUTE.BASE}/${USERS_ROUTE.ME}`\nexport const API_USERS_MY_LANGUAGE = `${API_USERS_ME}/${USERS_ROUTE.LANGUAGE}`\nexport const API_USERS_MY_PASSWORD = `${API_USERS_ME}/${USERS_ROUTE.PASSWORD}`\nexport const API_USERS_MY_APP_PASSWORDS = `${API_USERS_ME}/${USERS_ROUTE.APP_PASSWORDS}`\nexport const API_USERS_MY_NOTIFICATION = `${API_USERS_ME}/${USERS_ROUTE.NOTIFICATION}`\nexport const API_USERS_MY_STORAGE_INDEXING = `${API_USERS_ME}/${USERS_ROUTE.STORAGE_INDEXING}`\nexport const API_USERS_MY_AVATAR = `${API_USERS_ME}/${USERS_ROUTE.AVATAR}`\nexport const API_USERS_MY_GROUPS = `${API_USERS_ME}/${USERS_ROUTE.GROUPS}`\nexport const API_USERS_MY_GROUPS_BROWSE = `${API_USERS_MY_GROUPS}/${USERS_ROUTE.BROWSE}`\nexport const API_USERS_MY_GROUPS_LEAVE = `${API_USERS_MY_GROUPS}/${USERS_ROUTE.GROUPS_LEAVE}`\nexport const API_USERS_MY_GUESTS = `${API_USERS_ME}/${USERS_ROUTE.GUESTS}`\nexport const API_USERS_AVATAR = `${USERS_ROUTE.BASE}/${USERS_ROUTE.AVATAR}`\n\nexport const ADMIN_USERS_ROUTE = {\n BASE: ADMIN_ROUTE.BASE,\n LIST: 'list',\n USERS: 'users',\n GUESTS: 'guests',\n GROUPS: 'groups',\n PGROUPS: 'personal_groups',\n MEMBERS: 'members',\n IMPERSONATE: 'impersonate',\n LOGOUT: 'logout',\n BROWSE: 'browse'\n} as const\nexport const API_ADMIN_USERS = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.USERS}`\nexport const API_ADMIN_USERS_LIST = `${API_ADMIN_USERS}/${ADMIN_USERS_ROUTE.LIST}`\nexport const API_ADMIN_GUESTS = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.GUESTS}`\nexport const API_ADMIN_GUESTS_LIST = `${API_ADMIN_GUESTS}/${ADMIN_USERS_ROUTE.LIST}`\nexport const API_ADMIN_GROUPS = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.GROUPS}`\nexport const API_ADMIN_PGROUPS = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.PGROUPS}`\nexport const API_ADMIN_GROUPS_BROWSE = `${API_ADMIN_GROUPS}/${ADMIN_USERS_ROUTE.BROWSE}`\nexport const API_ADMIN_PERSONAL_GROUPS_BROWSE = `${API_ADMIN_PGROUPS}/${ADMIN_USERS_ROUTE.BROWSE}`\nexport const API_ADMIN_MEMBERS = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.MEMBERS}`\nexport const API_ADMIN_IMPERSONATE = `${ADMIN_USERS_ROUTE.BASE}/${ADMIN_USERS_ROUTE.IMPERSONATE}`\nexport const API_ADMIN_IMPERSONATE_LOGOUT = `${API_ADMIN_IMPERSONATE}/${ADMIN_USERS_ROUTE.LOGOUT}`\n"],"names":["ADMIN_USERS_ROUTE","API_ADMIN_GROUPS","API_ADMIN_GROUPS_BROWSE","API_ADMIN_GUESTS","API_ADMIN_GUESTS_LIST","API_ADMIN_IMPERSONATE","API_ADMIN_IMPERSONATE_LOGOUT","API_ADMIN_MEMBERS","API_ADMIN_PERSONAL_GROUPS_BROWSE","API_ADMIN_PGROUPS","API_ADMIN_USERS","API_ADMIN_USERS_LIST","API_USERS_AVATAR","API_USERS_ME","API_USERS_MY_APP_PASSWORDS","API_USERS_MY_AVATAR","API_USERS_MY_GROUPS","API_USERS_MY_GROUPS_BROWSE","API_USERS_MY_GROUPS_LEAVE","API_USERS_MY_GUESTS","API_USERS_MY_LANGUAGE","API_USERS_MY_NOTIFICATION","API_USERS_MY_PASSWORD","API_USERS_MY_STORAGE_INDEXING","USERS_ROUTE","BASE","ME","LANGUAGE","PASSWORD","APP_PASSWORDS","NOTIFICATION","STORAGE_INDEXING","AVATAR","GROUPS","USERS","GUESTS","BROWSE","GROUPS_LEAVE","ADMIN_ROUTE","LIST","PGROUPS","MEMBERS","IMPERSONATE","LOGOUT"],"mappings":"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"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/user.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/user.ts"],"sourcesContent":["export const USER_PASSWORD_MIN_LENGTH = 8\nexport const USER_MAX_PASSWORD_ATTEMPTS = 10\nexport const USER_LOGIN_VALIDATION = /^(?! )(?!.* $)[a-zA-Z0-9@\\-\\\\._ ]{2,255}$/\n\nexport const USER_PATH = {\n TMP: 'tmp',\n TASKS: 'tasks'\n} as const\n\nexport enum USER_ROLE {\n ADMINISTRATOR,\n USER,\n GUEST,\n LINK\n}\n\nexport enum USER_GROUP_ROLE {\n MEMBER,\n MANAGER\n}\n\nexport const USER_PERMS_SEP = ','\n\nexport enum USER_PERMISSION {\n PERSONAL_SPACE = 'personal_space',\n SPACES = 'spaces_access',\n SPACES_ADMIN = 'spaces_admin',\n SHARES = 'shares_access',\n SHARES_ADMIN = 'shares_admin',\n GUESTS_ADMIN = 'guests_admin',\n PERSONAL_GROUPS_ADMIN = 'personal_groups_admin',\n DESKTOP_APP = 'desktop_app_access',\n DESKTOP_APP_SYNC = 'desktop_app_sync',\n WEBDAV = 'webdav_access'\n}\n\nexport enum GUEST_PERMISSION {\n SPACES = USER_PERMISSION.SPACES,\n SHARES = USER_PERMISSION.SHARES,\n WEBDAV = USER_PERMISSION.WEBDAV\n}\n\nexport enum USER_ONLINE_STATUS {\n AVAILABLE,\n BUSY,\n ABSENT,\n OFFLINE\n}\n\nexport enum USER_NOTIFICATION {\n APPLICATION,\n APPLICATION_EMAIL\n}\n\nexport const USER_SECRET = {\n TWO_FA_SECRET: 'twoFaSecret',\n RECOVERY_CODES: 'recoveryCodes',\n APP_PASSWORDS: 'appPasswords'\n} as const\n"],"names":["GUEST_PERMISSION","USER_GROUP_ROLE","USER_LOGIN_VALIDATION","USER_MAX_PASSWORD_ATTEMPTS","USER_NOTIFICATION","USER_ONLINE_STATUS","USER_PASSWORD_MIN_LENGTH","USER_PATH","USER_PERMISSION","USER_PERMS_SEP","USER_ROLE","USER_SECRET","TMP","TASKS","TWO_FA_SECRET","RECOVERY_CODES","APP_PASSWORDS"],"mappings":";;;;;;;;;;;QAoCYA;eAAAA;;QApBAC;eAAAA;;QAdCC;eAAAA;;QADAC;eAAAA;;QAgDDC;eAAAA;;QAPAC;eAAAA;;QA1CCC;eAAAA;;QAIAC;eAAAA;;QAmBDC;eAAAA;;QAFCC;eAAAA;;QAZDC;eAAAA;;QA6CCC;eAAAA;;;AAtDN,MAAML,2BAA2B;AACjC,MAAMH,6BAA6B;AACnC,MAAMD,wBAAwB;AAE9B,MAAMK,YAAY;IACvBK,KAAK;IACLC,OAAO;AACT;AAEO,IAAA,AAAKH,mCAAAA;;;;;WAAAA;;AAOL,IAAA,AAAKT,yCAAAA;;;WAAAA;;AAKL,MAAMQ,iBAAiB;AAEvB,IAAA,AAAKD,yCAAAA;;;;;;;;;;;WAAAA;;AAaL,IAAA,AAAKR,0CAAAA;;;;WAAAA;;AAML,IAAA,AAAKK,4CAAAA;;;;;WAAAA;;AAOL,IAAA,AAAKD,2CAAAA;;;WAAAA;;AAKL,MAAMO,cAAc;IACzBG,eAAe;IACfC,gBAAgB;IAChBC,eAAe;AACjB"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/websocket.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/constants/websocket.ts"],"sourcesContent":["export const USER_ROOM_PREFIX = 'uid_' as const\nexport const USERS_WS = {\n NAME_SPACE: '/',\n EVENTS: { ONLINE_STATUS: 'onlineStatus', ONLINE_USERS: 'onlineUsers', ONLINE_USER: 'onlineUser' }\n} as const\n"],"names":["USERS_WS","USER_ROOM_PREFIX","NAME_SPACE","EVENTS","ONLINE_STATUS","ONLINE_USERS","ONLINE_USER"],"mappings":";;;;;;;;;;;QACaA;eAAAA;;QADAC;eAAAA;;;AAAN,MAAMA,mBAAmB;AACzB,MAAMD,WAAW;IACtBE,YAAY;IACZC,QAAQ;QAAEC,eAAe;QAAgBC,cAAc;QAAeC,aAAa;IAAa;AAClG"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/permissions.decorator.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/permissions.decorator.ts"],"sourcesContent":["import { Reflector } from '@nestjs/core'\nimport type { USER_PERMISSION } from '../constants/user'\n\nexport const UserHavePermission = Reflector.createDecorator<USER_PERMISSION | USER_PERMISSION[]>()\n"],"names":["UserHavePermission","Reflector","createDecorator"],"mappings":";;;;+BAGaA;;;eAAAA;;;sBAHa;AAGnB,MAAMA,qBAAqBC,eAAS,CAACC,eAAe"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/roles.decorator.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/roles.decorator.ts"],"sourcesContent":["import { Reflector } from '@nestjs/core'\nimport { USER_ROLE } from '../constants/user'\n\nexport const UserHaveRole = Reflector.createDecorator<USER_ROLE>()\n"],"names":["UserHaveRole","Reflector","createDecorator"],"mappings":";;;;+BAGaA;;;eAAAA;;;sBAHa;AAGnB,MAAMA,eAAeC,eAAS,CAACC,eAAe"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/user.decorator.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/decorators/user.decorator.ts"],"sourcesContent":["import { createParamDecorator, ExecutionContext } from '@nestjs/common'\nimport { UserModel } from '../models/user.model'\n\nexport const GetUser = createParamDecorator((_data: unknown, ctx: ExecutionContext): UserModel => {\n return ctx.switchToHttp().getRequest().user\n})\n"],"names":["GetUser","createParamDecorator","_data","ctx","switchToHttp","getRequest","user"],"mappings":";;;;+BAGaA;;;eAAAA;;;wBAH0C;AAGhD,MAAMA,UAAUC,IAAAA,4BAAoB,EAAC,CAACC,OAAgBC;IAC3D,OAAOA,IAAIC,YAAY,GAAGC,UAAU,GAAGC,IAAI;AAC7C"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/create-or-update-group.dto.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/create-or-update-group.dto.ts"],"sourcesContent":["import { Transform } from 'class-transformer'\nimport { IsEnum, IsInt, IsOptional, IsString } from 'class-validator'\nimport { GROUP_VISIBILITY } from '../constants/group'\n\nexport class UserCreateOrUpdateGroupDto {\n @IsOptional()\n @IsString()\n @Transform(({ value }) => (value ? value.trim() : ''))\n name?: string\n\n @IsOptional()\n @IsString()\n description?: string\n}\n\nexport class CreateOrUpdateGroupDto extends UserCreateOrUpdateGroupDto {\n @IsOptional()\n @IsEnum(GROUP_VISIBILITY)\n visibility?: GROUP_VISIBILITY\n\n @IsOptional()\n @IsString()\n permissions?: string\n\n @IsOptional()\n @IsInt()\n parentId?: number\n}\n"],"names":["CreateOrUpdateGroupDto","UserCreateOrUpdateGroupDto","value","trim"],"mappings":";;;;;;;;;;;QAeaA;eAAAA;;QAXAC;eAAAA;;;kCAJa;gCAC0B;uBACnB;;;;;;;;;;AAE1B,IAAA,AAAMA,6BAAN,MAAMA;AASb;;;;sCANc,EAAEC,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;AAQ7C,IAAA,AAAMH,yBAAN,MAAMA,+BAA+BC;AAY5C"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/create-or-update-user.dto.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/create-or-update-user.dto.ts"],"sourcesContent":["import { Transform } from 'class-transformer'\nimport {\n IsArray,\n IsBoolean,\n IsEmail,\n IsEnum,\n IsInt,\n IsNotEmpty,\n IsOptional,\n IsString,\n Matches,\n Max,\n MaxLength,\n Min,\n MinLength\n} from 'class-validator'\nimport { USER_GROUP_ROLE, USER_LOGIN_VALIDATION, USER_NOTIFICATION, USER_PASSWORD_MIN_LENGTH, USER_ROLE } from '../constants/user'\n\nexport class OptionalUserDto {\n @IsOptional()\n @IsString()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @MaxLength(255)\n lastName?: string\n\n @IsOptional()\n @IsEnum(USER_ROLE)\n role?: USER_ROLE\n\n @IsOptional()\n @IsBoolean()\n isActive?: boolean\n\n @IsOptional()\n @IsString()\n language?: string\n\n @IsOptional()\n @IsEnum(USER_NOTIFICATION)\n notification?: USER_NOTIFICATION\n\n @IsOptional()\n @IsString()\n permissions?: string\n\n @IsOptional()\n @IsInt()\n storageQuota?: number\n\n // for users\n @IsOptional()\n @IsArray()\n @IsInt({ each: true })\n groups?: number[]\n\n // for guests\n @IsOptional()\n @IsArray()\n @IsInt({ each: true })\n managers?: number[]\n}\n\nexport class CreateUserDto extends OptionalUserDto {\n @IsNotEmpty()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @MinLength(2)\n @MaxLength(255)\n @Matches(USER_LOGIN_VALIDATION)\n login: string\n\n @IsNotEmpty()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @IsEmail()\n @MinLength(2)\n @MaxLength(255)\n email: string\n\n @IsString()\n @MinLength(USER_PASSWORD_MIN_LENGTH)\n @MaxLength(255)\n password: string\n\n @IsString()\n @MaxLength(255)\n @Transform(({ value }) => (value ? value.trim() : ''))\n firstName: string\n}\n\nexport class UpdateUserDto extends OptionalUserDto {\n @IsOptional()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @MinLength(2)\n @MaxLength(255)\n @Matches(USER_LOGIN_VALIDATION)\n login?: string\n\n @IsOptional()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @IsEmail()\n @MinLength(2)\n @MaxLength(255)\n email?: string\n\n @IsOptional()\n @IsString()\n @MinLength(USER_PASSWORD_MIN_LENGTH)\n @MaxLength(255)\n password?: string\n\n @IsOptional()\n @IsString()\n @Transform(({ value }) => (value ? value.trim() : ''))\n @MaxLength(255)\n firstName?: string\n}\n\nexport class UpdateUserFromGroupDto {\n @IsInt()\n @Min(USER_GROUP_ROLE.MEMBER)\n @Max(USER_GROUP_ROLE.MANAGER)\n role: USER_GROUP_ROLE\n}\n"],"names":["CreateUserDto","OptionalUserDto","UpdateUserDto","UpdateUserFromGroupDto","value","trim","each","MEMBER","MANAGER"],"mappings":";;;;;;;;;;;QA8DaA;eAAAA;;QA5CAC;eAAAA;;QAsEAC;eAAAA;;QA4BAC;eAAAA;;;kCApHa;gCAenB;sBACwG;;;;;;;;;;AAExG,IAAA,AAAMF,kBAAN,MAAMA;AA0Cb;;;;sCAvCc,EAAEG,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+BzCC,MAAM;;;;;;;;QAMNA,MAAM;;;;AAIV,IAAA,AAAMN,gBAAN,MAAMA,sBAAsBC;AAwBnC;;;sCAtBc,EAAEG,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;sCAOtC,EAAED,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;;;;;;;;sCAatC,EAAED,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;AAI7C,IAAA,AAAMH,gBAAN,MAAMA,sBAAsBD;AA0BnC;;;sCAxBc,EAAEG,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;sCAOtC,EAAED,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;;;;;;;;;;;;;sCActC,EAAED,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,KAAK;;;;AAK7C,IAAA,AAAMF,yBAAN,MAAMA;AAKb;;;mDAHuBI;mDACAC"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/delete-user.dto.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/delete-user.dto.ts"],"sourcesContent":["import { IsBoolean } from 'class-validator'\n\nexport class DeleteUserDto {\n @IsBoolean()\n deleteSpace: boolean\n\n @IsBoolean()\n isGuest: boolean\n}\n"],"names":["DeleteUserDto"],"mappings":";;;;+BAEaA;;;eAAAA;;;gCAFa;;;;;;;;;;AAEnB,IAAA,AAAMA,gBAAN,MAAMA;AAMb"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/search-members.dto.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/search-members.dto.ts"],"sourcesContent":["import { Transform } from 'class-transformer'\nimport { IsBoolean, IsInt, IsOptional, IsString } from 'class-validator'\n\nexport class SearchMembersDto {\n @IsString()\n @Transform(({ value }) => (value ? value.trim().toLowerCase() : ''))\n search: string\n\n @IsOptional()\n @IsInt({ each: true })\n ignoreUserIds?: number[]\n\n @IsOptional()\n @IsInt({ each: true })\n ignoreGroupIds?: number[]\n\n @IsOptional()\n @IsBoolean()\n onlyUsers?: boolean = false\n\n @IsOptional()\n @IsBoolean()\n onlyGroups?: boolean = false\n\n @IsOptional()\n @IsBoolean()\n excludePersonalGroups?: boolean = false\n\n @IsOptional()\n @IsInt()\n usersRole?: number\n\n @IsOptional()\n @IsBoolean()\n withPermissions?: boolean = false\n}\n"],"names":["SearchMembersDto","onlyUsers","onlyGroups","excludePersonalGroups","withPermissions","value","trim","toLowerCase","each"],"mappings":";;;;+BAGaA;;;eAAAA;;;kCAHa;gCAC6B;;;;;;;;;;AAEhD,IAAA,AAAMA,mBAAN,MAAMA;;aAeXC,YAAsB;aAItBC,aAAuB;aAIvBC,wBAAkC;aAQlCC,kBAA4B;;AAC9B;;;sCA9Bc,EAAEC,KAAK,EAAE,GAAMA,QAAQA,MAAMC,IAAI,GAAGC,WAAW,KAAK;;;;;;QAIvDC,MAAM;;;;;;;QAINA,MAAM"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/user-properties.dto.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/dto/user-properties.dto.ts"],"sourcesContent":["import { Transform } from 'class-transformer'\nimport { IsBoolean, IsDate, IsDefined, IsEnum, IsInt, IsNotEmpty, IsOptional, IsString, MinLength, ValidateIf } from 'class-validator'\nimport { AUTH_SCOPE } from '../../../authentication/constants/scope'\nimport { currentDate } from '../../../common/shared'\nimport { USER_PASSWORD_MIN_LENGTH } from '../constants/user'\n\nexport class UserLanguageDto {\n @ValidateIf((_, language) => language === null || typeof language === 'string')\n language: string | null\n}\n\nexport class UserNotificationDto {\n @IsNotEmpty()\n @IsInt()\n notification: number\n}\n\nexport class UserStorageIndexingDto {\n @IsDefined()\n @IsBoolean()\n storageIndexing: boolean\n}\n\nexport class UserUpdatePasswordDto {\n @IsNotEmpty()\n @IsString()\n oldPassword: string\n\n @IsNotEmpty()\n @IsString()\n @MinLength(USER_PASSWORD_MIN_LENGTH)\n newPassword: string\n}\n\nexport class UserPasswordDto {\n @IsNotEmpty()\n @IsString()\n @MinLength(USER_PASSWORD_MIN_LENGTH)\n password: string\n}\n\nexport class UserAppPasswordDto {\n @IsNotEmpty()\n @IsString()\n name: string\n\n @Transform(({ value }) => value.toLowerCase())\n @IsEnum(AUTH_SCOPE)\n app: AUTH_SCOPE\n\n @IsOptional()\n @Transform(({ value }) => (value ? currentDate(value) : null))\n @IsDate()\n expiration?: Date\n}\n"],"names":["UserAppPasswordDto","UserLanguageDto","UserNotificationDto","UserPasswordDto","UserStorageIndexingDto","UserUpdatePasswordDto","_","language","value","toLowerCase","currentDate"],"mappings":";;;;;;;;;;;QAyCaA;eAAAA;;QAnCAC;eAAAA;;QAKAC;eAAAA;;QAuBAC;eAAAA;;QAjBAC;eAAAA;;QAMAC;eAAAA;;;kCAvBa;gCAC2F;uBAC1F;wBACC;sBACa;;;;;;;;;;AAElC,IAAA,AAAMJ,kBAAN,MAAMA;AAGb;;qCAFeK,GAAGC,WAAaA,aAAa,QAAQ,OAAOA,aAAa;;;AAIjE,IAAA,AAAML,sBAAN,MAAMA;AAIb;;;;;;AAEO,IAAA,AAAME,yBAAN,MAAMA;AAIb;;;;;;AAEO,IAAA,AAAMC,wBAAN,MAAMA;AASb;;;;;;;;;;;;AAEO,IAAA,AAAMF,kBAAN,MAAMA;AAKb;;;;;;;AAEO,IAAA,AAAMH,qBAAN,MAAMA;AAab;;;;;;;sCARc,EAAEQ,KAAK,EAAE,GAAKA,MAAMC,WAAW;;;;;;sCAK/B,EAAED,KAAK,EAAE,GAAMA,QAAQE,IAAAA,mBAAW,EAACF,SAAS"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/guards/permissions.guard.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/guards/permissions.guard.ts"],"sourcesContent":["import { CanActivate, ExecutionContext, HttpException, HttpStatus, Injectable, Logger } from '@nestjs/common'\nimport { Reflector } from '@nestjs/core'\nimport { FastifyAuthenticatedRequest } from '../../../authentication/interfaces/auth-request.interface'\nimport { USER_PERMISSION } from '../constants/user'\nimport { UserHavePermission } from '../decorators/permissions.decorator'\n\n@Injectable()\nexport class UserPermissionsGuard implements CanActivate {\n private readonly logger = new Logger(UserPermissionsGuard.name)\n\n constructor(private readonly reflector: Reflector) {}\n\n canActivate(ctx: ExecutionContext): boolean {\n const permissions: USER_PERMISSION | USER_PERMISSION[] = this.reflector.getAllAndOverride(UserHavePermission, [ctx.getHandler(), ctx.getClass()])\n if (permissions === undefined) {\n this.logger.warn(`no application defined on ${ctx.getClass().name}:${ctx.getHandler().name}`)\n return false\n }\n if (Object.keys(permissions).length === 0) {\n // used to bypass the check, the guard is called without argument, the value is '{}'\n return true\n }\n const req: FastifyAuthenticatedRequest = ctx.switchToHttp().getRequest()\n if (req.user.isAdmin) {\n return true\n }\n let authorized = false\n if (Array.isArray(permissions)) {\n // if any of the apps are allowed, proceed\n authorized = permissions.some((p: string) => req.user.havePermission(p))\n } else {\n authorized = req.user.havePermission(permissions)\n }\n if (!authorized) {\n this.logger.warn(`does not have permissions : ${permissions}`)\n throw new HttpException('You are not allowed to do this action', HttpStatus.FORBIDDEN)\n }\n return authorized\n }\n}\n"],"names":["UserPermissionsGuard","canActivate","ctx","permissions","reflector","getAllAndOverride","UserHavePermission","getHandler","getClass","undefined","logger","warn","name","Object","keys","length","req","switchToHttp","getRequest","user","isAdmin","authorized","Array","isArray","some","p","havePermission","HttpException","HttpStatus","FORBIDDEN","Logger"],"mappings":";;;;+BAOaA;;;eAAAA;;;wBAPgF;sBACnE;sCAGS;;;;;;;;;;AAG5B,IAAA,AAAMA,uBAAN,MAAMA;IAKXC,YAAYC,GAAqB,EAAW;QAC1C,MAAMC,cAAmD,IAAI,CAACC,SAAS,CAACC,iBAAiB,CAACC,wCAAkB,EAAE;YAACJ,IAAIK,UAAU;YAAIL,IAAIM,QAAQ;SAAG;QAChJ,IAAIL,gBAAgBM,WAAW;YAC7B,IAAI,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,0BAA0B,EAAET,IAAIM,QAAQ,GAAGI,IAAI,CAAC,CAAC,EAAEV,IAAIK,UAAU,GAAGK,IAAI,EAAE;YAC5F,OAAO;QACT;QACA,IAAIC,OAAOC,IAAI,CAACX,aAAaY,MAAM,KAAK,GAAG;YACzC,oFAAoF;YACpF,OAAO;QACT;QACA,MAAMC,MAAmCd,IAAIe,YAAY,GAAGC,UAAU;QACtE,IAAIF,IAAIG,IAAI,CAACC,OAAO,EAAE;YACpB,OAAO;QACT;QACA,IAAIC,aAAa;QACjB,IAAIC,MAAMC,OAAO,CAACpB,cAAc;YAC9B,0CAA0C;YAC1CkB,aAAalB,YAAYqB,IAAI,CAAC,CAACC,IAAcT,IAAIG,IAAI,CAACO,cAAc,CAACD;QACvE,OAAO;YACLJ,aAAaL,IAAIG,IAAI,CAACO,cAAc,CAACvB;QACvC;QACA,IAAI,CAACkB,YAAY;YACf,IAAI,CAACX,MAAM,CAACC,IAAI,CAAC,CAAC,4BAA4B,EAAER,aAAa;YAC7D,MAAM,IAAIwB,qBAAa,CAAC,yCAAyCC,kBAAU,CAACC,SAAS;QACvF;QACA,OAAOR;IACT;IA5BA,YAAY,AAAiBjB,SAAoB,CAAE;aAAtBA,YAAAA;aAFZM,SAAS,IAAIoB,cAAM,CAAC9B,qBAAqBY,IAAI;IAEV;AA6BtD"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../backend/src/applications/users/guards/permissions.guard.spec.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/users/guards/permissions.guard.spec.ts"],"sourcesContent":["import { createMock, DeepMocked } from '@golevelup/ts-jest'\nimport { ExecutionContext, HttpException, Logger } from '@nestjs/common'\nimport { Reflector } from '@nestjs/core'\nimport { USER_PERMISSION, USER_ROLE } from '../constants/user'\nimport { UserHavePermission } from '../decorators/permissions.decorator'\nimport { UserModel } from '../models/user.model'\nimport { generateUserTest } from '../utils/test'\nimport { UserPermissionsGuard } from './permissions.guard'\n\ndescribe(UserPermissionsGuard.name, () => {\n let reflector: Reflector\n let permissionsGuard: UserPermissionsGuard\n let userTest: UserModel\n let context: DeepMocked<ExecutionContext>\n\n beforeAll(async () => {\n reflector = new Reflector()\n permissionsGuard = new UserPermissionsGuard(reflector)\n userTest = new UserModel(generateUserTest())\n Logger.overrideLogger(['fatal'])\n })\n\n it('should be defined', () => {\n expect(permissionsGuard).toBeDefined()\n expect(userTest).toBeDefined()\n })\n\n it('should pass with a valid permission', () => {\n userTest.applications = [USER_PERMISSION.PERSONAL_SPACE]\n context = createMock<ExecutionContext>()\n UserHavePermission(USER_PERMISSION.PERSONAL_SPACE)(context.getHandler())\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(permissionsGuard.canActivate(context)).toBe(true)\n })\n\n it('should pass if any of the permissions are granted', () => {\n userTest.applications = [USER_PERMISSION.PERSONAL_SPACE]\n context = createMock<ExecutionContext>()\n UserHavePermission([USER_PERMISSION.SPACES, USER_PERMISSION.PERSONAL_SPACE])(context.getHandler())\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(permissionsGuard.canActivate(context)).toBe(true)\n })\n\n it('should not pass with a bad permission', () => {\n userTest.applications = []\n context = createMock<ExecutionContext>()\n UserHavePermission(USER_PERMISSION.PERSONAL_SPACE)(context.getHandler())\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(() => permissionsGuard.canActivate(context)).toThrow(HttpException)\n })\n\n it('should pass with no permissions but with the admin role', () => {\n userTest.applications = []\n userTest.role = USER_ROLE.ADMINISTRATOR\n context = createMock<ExecutionContext>()\n UserHavePermission(USER_PERMISSION.PERSONAL_SPACE)(context.getHandler())\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(permissionsGuard.canActivate(context)).toBe(true)\n // reset\n userTest.role = USER_ROLE.USER\n })\n\n it('should not pass with a missing decorator', () => {\n userTest.applications = [USER_PERMISSION.PERSONAL_SPACE]\n context = createMock<ExecutionContext>()\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(permissionsGuard.canActivate(context)).toBeFalsy()\n })\n\n it('should pass with an empty decorator', () => {\n userTest.applications = [USER_PERMISSION.PERSONAL_SPACE]\n context = createMock<ExecutionContext>()\n UserHavePermission()(context.getHandler())\n context.switchToHttp().getRequest.mockReturnValue({\n user: userTest\n })\n expect(permissionsGuard.canActivate(context)).toBeTruthy()\n })\n})\n"],"names":["describe","UserPermissionsGuard","name","reflector","permissionsGuard","userTest","context","beforeAll","Reflector","UserModel","generateUserTest","Logger","overrideLogger","it","expect","toBeDefined","applications","USER_PERMISSION","PERSONAL_SPACE","createMock","UserHavePermission","getHandler","switchToHttp","getRequest","mockReturnValue","user","canActivate","toBe","SPACES","toThrow","HttpException","role","USER_ROLE","ADMINISTRATOR","USER","toBeFalsy","toBeTruthy"],"mappings":"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"}
|
|
@@ -1,8 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Copyright (C) 2012-2025 Johan Legrand <johan.legrand@sync-in.com>
|
|
3
|
-
* This file is part of Sync-in | The open source file sync and share solution
|
|
4
|
-
* See the LICENSE file for licensing details
|
|
5
|
-
*/ "use strict";
|
|
1
|
+
"use strict";
|
|
6
2
|
Object.defineProperty(exports, "__esModule", {
|
|
7
3
|
value: true
|
|
8
4
|
});
|