@sync-in/server 1.3.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 +93 -0
- package/LICENSE +660 -0
- package/README.md +106 -0
- package/environment/environment.dist.min.yaml +11 -0
- package/environment/environment.dist.yaml +95 -0
- package/migrations/0000_init.sql +324 -0
- package/migrations/meta/0000_snapshot.json +2417 -0
- package/migrations/meta/_journal.json +13 -0
- package/package.json +80 -0
- package/server/app.bootstrap.js +103 -0
- package/server/app.bootstrap.js.map +1 -0
- package/server/app.constants.js +58 -0
- package/server/app.constants.js.map +1 -0
- package/server/app.e2e-spec.js +34 -0
- package/server/app.e2e-spec.js.map +1 -0
- package/server/app.module.js +72 -0
- package/server/app.module.js.map +1 -0
- package/server/app.service.js +72 -0
- package/server/app.service.js.map +1 -0
- package/server/app.service.spec.js +94 -0
- package/server/app.service.spec.js.map +1 -0
- package/server/applications/admin/admin.module.js +31 -0
- package/server/applications/admin/admin.module.js.map +1 -0
- package/server/applications/admin/constants/routes.js +19 -0
- package/server/applications/admin/constants/routes.js.map +1 -0
- package/server/applications/applications.config.js +50 -0
- package/server/applications/applications.config.js.map +1 -0
- package/server/applications/applications.constants.js +69 -0
- package/server/applications/applications.constants.js.map +1 -0
- package/server/applications/applications.module.js +59 -0
- package/server/applications/applications.module.js.map +1 -0
- package/server/applications/comments/comments.controller.js +133 -0
- package/server/applications/comments/comments.controller.js.map +1 -0
- package/server/applications/comments/comments.controller.spec.js +63 -0
- package/server/applications/comments/comments.controller.spec.js.map +1 -0
- package/server/applications/comments/comments.module.js +39 -0
- package/server/applications/comments/comments.module.js.map +1 -0
- package/server/applications/comments/constants/routes.js +35 -0
- package/server/applications/comments/constants/routes.js.map +1 -0
- package/server/applications/comments/dto/comment.dto.js +62 -0
- package/server/applications/comments/dto/comment.dto.js.map +1 -0
- package/server/applications/comments/interfaces/comment-recent.interface.js +10 -0
- package/server/applications/comments/interfaces/comment-recent.interface.js.map +1 -0
- package/server/applications/comments/schemas/comment.interface.js +18 -0
- package/server/applications/comments/schemas/comment.interface.js.map +1 -0
- package/server/applications/comments/schemas/comments.schema.js +57 -0
- package/server/applications/comments/schemas/comments.schema.js.map +1 -0
- package/server/applications/comments/services/comments-manager.service.js +137 -0
- package/server/applications/comments/services/comments-manager.service.js.map +1 -0
- package/server/applications/comments/services/comments-manager.service.spec.js +51 -0
- package/server/applications/comments/services/comments-manager.service.spec.js.map +1 -0
- package/server/applications/comments/services/comments-queries.service.js +185 -0
- package/server/applications/comments/services/comments-queries.service.js.map +1 -0
- package/server/applications/files/adapters/files-indexer-mysql.service.js +174 -0
- package/server/applications/files/adapters/files-indexer-mysql.service.js.map +1 -0
- package/server/applications/files/assets/samples/sample.docx +0 -0
- package/server/applications/files/assets/samples/sample.odp +0 -0
- package/server/applications/files/assets/samples/sample.ods +0 -0
- package/server/applications/files/assets/samples/sample.odt +0 -0
- package/server/applications/files/assets/samples/sample.pptx +0 -0
- package/server/applications/files/assets/samples/sample.rtf +194 -0
- package/server/applications/files/assets/samples/sample.xlsx +0 -0
- package/server/applications/files/constants/cache.js +36 -0
- package/server/applications/files/constants/cache.js.map +1 -0
- package/server/applications/files/constants/compress.js +26 -0
- package/server/applications/files/constants/compress.js.map +1 -0
- package/server/applications/files/constants/files.js +103 -0
- package/server/applications/files/constants/files.js.map +1 -0
- package/server/applications/files/constants/indexing.js +49 -0
- package/server/applications/files/constants/indexing.js.map +1 -0
- package/server/applications/files/constants/only-office.js +536 -0
- package/server/applications/files/constants/only-office.js.map +1 -0
- package/server/applications/files/constants/operations.js +29 -0
- package/server/applications/files/constants/operations.js.map +1 -0
- package/server/applications/files/constants/routes.js +100 -0
- package/server/applications/files/constants/routes.js.map +1 -0
- package/server/applications/files/constants/samples.js +35 -0
- package/server/applications/files/constants/samples.js.map +1 -0
- package/server/applications/files/decorators/only-office-environment.decorator.js +32 -0
- package/server/applications/files/decorators/only-office-environment.decorator.js.map +1 -0
- package/server/applications/files/dto/file-operations.dto.js +145 -0
- package/server/applications/files/dto/file-operations.dto.js.map +1 -0
- package/server/applications/files/events/file-task-event.js +23 -0
- package/server/applications/files/events/file-task-event.js.map +1 -0
- package/server/applications/files/files-only-office.controller.js +111 -0
- package/server/applications/files/files-only-office.controller.js.map +1 -0
- package/server/applications/files/files-only-office.controller.spec.js +47 -0
- package/server/applications/files/files-only-office.controller.spec.js.map +1 -0
- package/server/applications/files/files-tasks.controller.js +97 -0
- package/server/applications/files/files-tasks.controller.js.map +1 -0
- package/server/applications/files/files-tasks.controller.spec.js +40 -0
- package/server/applications/files/files-tasks.controller.spec.js.map +1 -0
- package/server/applications/files/files.config.js +96 -0
- package/server/applications/files/files.config.js.map +1 -0
- package/server/applications/files/files.controller.js +319 -0
- package/server/applications/files/files.controller.js.map +1 -0
- package/server/applications/files/files.controller.spec.js +84 -0
- package/server/applications/files/files.controller.spec.js.map +1 -0
- package/server/applications/files/files.module.js +78 -0
- package/server/applications/files/files.module.js.map +1 -0
- package/server/applications/files/guards/files-only-office.guard.js +48 -0
- package/server/applications/files/guards/files-only-office.guard.js.map +1 -0
- package/server/applications/files/guards/files-only-office.guard.spec.js +16 -0
- package/server/applications/files/guards/files-only-office.guard.spec.js.map +1 -0
- package/server/applications/files/guards/files-only-office.strategy.js +60 -0
- package/server/applications/files/guards/files-only-office.strategy.js.map +1 -0
- package/server/applications/files/interfaces/file-db-props.interface.js +10 -0
- package/server/applications/files/interfaces/file-db-props.interface.js.map +1 -0
- package/server/applications/files/interfaces/file-lock.interface.js +10 -0
- package/server/applications/files/interfaces/file-lock.interface.js.map +1 -0
- package/server/applications/files/interfaces/file-parse-index.js +10 -0
- package/server/applications/files/interfaces/file-parse-index.js.map +1 -0
- package/server/applications/files/interfaces/file-props.interface.js +10 -0
- package/server/applications/files/interfaces/file-props.interface.js.map +1 -0
- package/server/applications/files/interfaces/file-recent-location.interface.js +10 -0
- package/server/applications/files/interfaces/file-recent-location.interface.js.map +1 -0
- package/server/applications/files/interfaces/file-space.interface.js +18 -0
- package/server/applications/files/interfaces/file-space.interface.js.map +1 -0
- package/server/applications/files/interfaces/file-tree.interface.js +10 -0
- package/server/applications/files/interfaces/file-tree.interface.js.map +1 -0
- package/server/applications/files/interfaces/only-office-config.interface.js +10 -0
- package/server/applications/files/interfaces/only-office-config.interface.js.map +1 -0
- package/server/applications/files/models/file-error.js +23 -0
- package/server/applications/files/models/file-error.js.map +1 -0
- package/server/applications/files/models/file-lock-error.js +23 -0
- package/server/applications/files/models/file-lock-error.js.map +1 -0
- package/server/applications/files/models/file-task.js +52 -0
- package/server/applications/files/models/file-task.js.map +1 -0
- package/server/applications/files/models/files-indexer.js +18 -0
- package/server/applications/files/models/files-indexer.js.map +1 -0
- package/server/applications/files/schemas/file-content.interface.js +10 -0
- package/server/applications/files/schemas/file-content.interface.js.map +1 -0
- package/server/applications/files/schemas/file-recent.interface.js +18 -0
- package/server/applications/files/schemas/file-recent.interface.js.map +1 -0
- package/server/applications/files/schemas/file.interface.js +18 -0
- package/server/applications/files/schemas/file.interface.js.map +1 -0
- package/server/applications/files/schemas/files-content.schema.js +41 -0
- package/server/applications/files/schemas/files-content.schema.js.map +1 -0
- package/server/applications/files/schemas/files-recents.schema.js +63 -0
- package/server/applications/files/schemas/files-recents.schema.js.map +1 -0
- package/server/applications/files/schemas/files.schema.js +100 -0
- package/server/applications/files/schemas/files.schema.js.map +1 -0
- package/server/applications/files/services/files-content-manager.service.js +204 -0
- package/server/applications/files/services/files-content-manager.service.js.map +1 -0
- package/server/applications/files/services/files-lock-manager.service.js +285 -0
- package/server/applications/files/services/files-lock-manager.service.js.map +1 -0
- package/server/applications/files/services/files-lock-manager.service.spec.js +40 -0
- package/server/applications/files/services/files-lock-manager.service.spec.js.map +1 -0
- package/server/applications/files/services/files-manager.service.js +565 -0
- package/server/applications/files/services/files-manager.service.js.map +1 -0
- package/server/applications/files/services/files-manager.service.spec.js +43 -0
- package/server/applications/files/services/files-manager.service.spec.js.map +1 -0
- package/server/applications/files/services/files-methods.service.js +180 -0
- package/server/applications/files/services/files-methods.service.js.map +1 -0
- package/server/applications/files/services/files-methods.service.spec.js +135 -0
- package/server/applications/files/services/files-methods.service.spec.js.map +1 -0
- package/server/applications/files/services/files-only-office-manager.service.js +395 -0
- package/server/applications/files/services/files-only-office-manager.service.js.map +1 -0
- package/server/applications/files/services/files-only-office-manager.service.spec.js +58 -0
- package/server/applications/files/services/files-only-office-manager.service.spec.js.map +1 -0
- package/server/applications/files/services/files-parser.service.js +189 -0
- package/server/applications/files/services/files-parser.service.js.map +1 -0
- package/server/applications/files/services/files-parser.service.spec.js +31 -0
- package/server/applications/files/services/files-parser.service.spec.js.map +1 -0
- package/server/applications/files/services/files-queries.service.js +314 -0
- package/server/applications/files/services/files-queries.service.js.map +1 -0
- package/server/applications/files/services/files-recents.service.js +97 -0
- package/server/applications/files/services/files-recents.service.js.map +1 -0
- package/server/applications/files/services/files-recents.service.spec.js +41 -0
- package/server/applications/files/services/files-recents.service.spec.js.map +1 -0
- package/server/applications/files/services/files-scheduler.service.js +179 -0
- package/server/applications/files/services/files-scheduler.service.js.map +1 -0
- package/server/applications/files/services/files-search-manager.service.js +146 -0
- package/server/applications/files/services/files-search-manager.service.js.map +1 -0
- package/server/applications/files/services/files-search-manager.service.spec.js +46 -0
- package/server/applications/files/services/files-search-manager.service.spec.js.map +1 -0
- package/server/applications/files/services/files-tasks-manager.service.js +253 -0
- package/server/applications/files/services/files-tasks-manager.service.js.map +1 -0
- package/server/applications/files/services/files-tasks-manager.service.spec.js +46 -0
- package/server/applications/files/services/files-tasks-manager.service.spec.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/excel.js +91 -0
- package/server/applications/files/utils/doc-textify/adapters/excel.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/html.js +33 -0
- package/server/applications/files/utils/doc-textify/adapters/html.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/open-office.js +110 -0
- package/server/applications/files/utils/doc-textify/adapters/open-office.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/pdf.js +67 -0
- package/server/applications/files/utils/doc-textify/adapters/pdf.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/power-point.js +111 -0
- package/server/applications/files/utils/doc-textify/adapters/power-point.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/text.js +27 -0
- package/server/applications/files/utils/doc-textify/adapters/text.js.map +1 -0
- package/server/applications/files/utils/doc-textify/adapters/word.js +101 -0
- package/server/applications/files/utils/doc-textify/adapters/word.js.map +1 -0
- package/server/applications/files/utils/doc-textify/doc-textify.js +75 -0
- package/server/applications/files/utils/doc-textify/doc-textify.js.map +1 -0
- package/server/applications/files/utils/doc-textify/interfaces/doc-textify.interfaces.js +10 -0
- package/server/applications/files/utils/doc-textify/interfaces/doc-textify.interfaces.js.map +1 -0
- package/server/applications/files/utils/doc-textify/utils/clean.js +34 -0
- package/server/applications/files/utils/doc-textify/utils/clean.js.map +1 -0
- package/server/applications/files/utils/files-search.js +144 -0
- package/server/applications/files/utils/files-search.js.map +1 -0
- package/server/applications/files/utils/files-tree.js +86 -0
- package/server/applications/files/utils/files-tree.js.map +1 -0
- package/server/applications/files/utils/files.js +386 -0
- package/server/applications/files/utils/files.js.map +1 -0
- package/server/applications/files/utils/send-file.js +70 -0
- package/server/applications/files/utils/send-file.js.map +1 -0
- package/server/applications/files/utils/unzip-file.js +60 -0
- package/server/applications/files/utils/unzip-file.js.map +1 -0
- package/server/applications/files/utils/url-file.js +39 -0
- package/server/applications/files/utils/url-file.js.map +1 -0
- package/server/applications/links/constants/cache.js +28 -0
- package/server/applications/links/constants/cache.js.map +1 -0
- package/server/applications/links/constants/links.js +36 -0
- package/server/applications/links/constants/links.js.map +1 -0
- package/server/applications/links/constants/routes.js +41 -0
- package/server/applications/links/constants/routes.js.map +1 -0
- package/server/applications/links/dto/create-or-update-link.dto.js +95 -0
- package/server/applications/links/dto/create-or-update-link.dto.js.map +1 -0
- package/server/applications/links/interfaces/link-guest.interface.js +10 -0
- package/server/applications/links/interfaces/link-guest.interface.js.map +1 -0
- package/server/applications/links/interfaces/link-space.interface.js +10 -0
- package/server/applications/links/interfaces/link-space.interface.js.map +1 -0
- package/server/applications/links/links.controller.js +107 -0
- package/server/applications/links/links.controller.js.map +1 -0
- package/server/applications/links/links.controller.spec.js +88 -0
- package/server/applications/links/links.controller.spec.js.map +1 -0
- package/server/applications/links/schemas/link.interface.js +18 -0
- package/server/applications/links/schemas/link.interface.js.map +1 -0
- package/server/applications/links/schemas/links.schema.js +56 -0
- package/server/applications/links/schemas/links.schema.js.map +1 -0
- package/server/applications/links/services/links-manager.service.js +158 -0
- package/server/applications/links/services/links-manager.service.js.map +1 -0
- package/server/applications/links/services/links-manager.service.spec.js +84 -0
- package/server/applications/links/services/links-manager.service.spec.js.map +1 -0
- package/server/applications/links/services/links-queries.service.js +181 -0
- package/server/applications/links/services/links-queries.service.js.map +1 -0
- package/server/applications/notifications/constants/notifications.js +62 -0
- package/server/applications/notifications/constants/notifications.js.map +1 -0
- package/server/applications/notifications/constants/routes.js +30 -0
- package/server/applications/notifications/constants/routes.js.map +1 -0
- package/server/applications/notifications/constants/websocket.js +22 -0
- package/server/applications/notifications/constants/websocket.js.map +1 -0
- package/server/applications/notifications/i18n/fr.js +43 -0
- package/server/applications/notifications/i18n/fr.js.map +1 -0
- package/server/applications/notifications/i18n/index.js +37 -0
- package/server/applications/notifications/i18n/index.js.map +1 -0
- package/server/applications/notifications/interfaces/notification-properties.interface.js +10 -0
- package/server/applications/notifications/interfaces/notification-properties.interface.js.map +1 -0
- package/server/applications/notifications/interfaces/user-mail-notification.js +10 -0
- package/server/applications/notifications/interfaces/user-mail-notification.js.map +1 -0
- package/server/applications/notifications/mails/models.js +133 -0
- package/server/applications/notifications/mails/models.js.map +1 -0
- package/server/applications/notifications/mails/templates.js +51 -0
- package/server/applications/notifications/mails/templates.js.map +1 -0
- package/server/applications/notifications/mails/urls.js +51 -0
- package/server/applications/notifications/mails/urls.js.map +1 -0
- package/server/applications/notifications/notifications.controller.js +110 -0
- package/server/applications/notifications/notifications.controller.js.map +1 -0
- package/server/applications/notifications/notifications.controller.spec.js +33 -0
- package/server/applications/notifications/notifications.controller.spec.js.map +1 -0
- package/server/applications/notifications/notifications.gateway.js +45 -0
- package/server/applications/notifications/notifications.gateway.js.map +1 -0
- package/server/applications/notifications/notifications.module.js +44 -0
- package/server/applications/notifications/notifications.module.js.map +1 -0
- package/server/applications/notifications/schemas/notification.interface.js +18 -0
- package/server/applications/notifications/schemas/notification.interface.js.map +1 -0
- package/server/applications/notifications/schemas/notifications.schema.js +45 -0
- package/server/applications/notifications/schemas/notifications.schema.js.map +1 -0
- package/server/applications/notifications/services/notifications-manager.service.js +143 -0
- package/server/applications/notifications/services/notifications-manager.service.js.map +1 -0
- package/server/applications/notifications/services/notifications-manager.service.spec.js +46 -0
- package/server/applications/notifications/services/notifications-manager.service.spec.js.map +1 -0
- package/server/applications/notifications/services/notifications-queries.service.js +100 -0
- package/server/applications/notifications/services/notifications-queries.service.js.map +1 -0
- package/server/applications/shares/constants/routes.js +46 -0
- package/server/applications/shares/constants/routes.js.map +1 -0
- package/server/applications/shares/constants/shares.js +31 -0
- package/server/applications/shares/constants/shares.js.map +1 -0
- package/server/applications/shares/dto/create-or-update-share.dto.js +232 -0
- package/server/applications/shares/dto/create-or-update-share.dto.js.map +1 -0
- package/server/applications/shares/interfaces/share-child.interface.js +10 -0
- package/server/applications/shares/interfaces/share-child.interface.js.map +1 -0
- package/server/applications/shares/interfaces/share-env.interface.js +10 -0
- package/server/applications/shares/interfaces/share-env.interface.js.map +1 -0
- package/server/applications/shares/interfaces/share-file.interface.js +21 -0
- package/server/applications/shares/interfaces/share-file.interface.js.map +1 -0
- package/server/applications/shares/interfaces/share-link.interface.js +10 -0
- package/server/applications/shares/interfaces/share-link.interface.js.map +1 -0
- package/server/applications/shares/interfaces/share-props.interface.js +22 -0
- package/server/applications/shares/interfaces/share-props.interface.js.map +1 -0
- package/server/applications/shares/models/share-child.model.js +30 -0
- package/server/applications/shares/models/share-child.model.js.map +1 -0
- package/server/applications/shares/schemas/share-members.interface.js +18 -0
- package/server/applications/shares/schemas/share-members.interface.js.map +1 -0
- package/server/applications/shares/schemas/share.interface.js +18 -0
- package/server/applications/shares/schemas/share.interface.js.map +1 -0
- package/server/applications/shares/schemas/shares-members.schema.js +69 -0
- package/server/applications/shares/schemas/shares-members.schema.js.map +1 -0
- package/server/applications/shares/schemas/shares.schema.js +91 -0
- package/server/applications/shares/schemas/shares.schema.js.map +1 -0
- package/server/applications/shares/services/shares-manager.service.js +1010 -0
- package/server/applications/shares/services/shares-manager.service.js.map +1 -0
- package/server/applications/shares/services/shares-manager.service.spec.js +56 -0
- package/server/applications/shares/services/shares-manager.service.spec.js.map +1 -0
- package/server/applications/shares/services/shares-queries.service.js +892 -0
- package/server/applications/shares/services/shares-queries.service.js.map +1 -0
- package/server/applications/shares/shares.controller.js +293 -0
- package/server/applications/shares/shares.controller.js.map +1 -0
- package/server/applications/shares/shares.controller.spec.js +60 -0
- package/server/applications/shares/shares.controller.spec.js.map +1 -0
- package/server/applications/shares/shares.module.js +49 -0
- package/server/applications/shares/shares.module.js.map +1 -0
- package/server/applications/spaces/constants/cache.js +32 -0
- package/server/applications/spaces/constants/cache.js.map +1 -0
- package/server/applications/spaces/constants/routes.js +58 -0
- package/server/applications/spaces/constants/routes.js.map +1 -0
- package/server/applications/spaces/constants/spaces.js +104 -0
- package/server/applications/spaces/constants/spaces.js.map +1 -0
- package/server/applications/spaces/decorators/space-skip-guard.decorator.js +27 -0
- package/server/applications/spaces/decorators/space-skip-guard.decorator.js.map +1 -0
- package/server/applications/spaces/decorators/space-skip-permissions.decorator.js +27 -0
- package/server/applications/spaces/decorators/space-skip-permissions.decorator.js.map +1 -0
- package/server/applications/spaces/decorators/space.decorator.js +20 -0
- package/server/applications/spaces/decorators/space.decorator.js.map +1 -0
- package/server/applications/spaces/dto/create-or-update-space.dto.js +164 -0
- package/server/applications/spaces/dto/create-or-update-space.dto.js.map +1 -0
- package/server/applications/spaces/dto/delete-space.dto.js +33 -0
- package/server/applications/spaces/dto/delete-space.dto.js.map +1 -0
- package/server/applications/spaces/dto/search-space.dto.js +47 -0
- package/server/applications/spaces/dto/search-space.dto.js.map +1 -0
- package/server/applications/spaces/dto/space-roots.dto.js +117 -0
- package/server/applications/spaces/dto/space-roots.dto.js.map +1 -0
- package/server/applications/spaces/guards/space.guard.js +151 -0
- package/server/applications/spaces/guards/space.guard.js.map +1 -0
- package/server/applications/spaces/guards/space.guard.spec.js +457 -0
- package/server/applications/spaces/guards/space.guard.spec.js.map +1 -0
- package/server/applications/spaces/interfaces/space-diff.interface.js +10 -0
- package/server/applications/spaces/interfaces/space-diff.interface.js.map +1 -0
- package/server/applications/spaces/interfaces/space-files.interface.js +10 -0
- package/server/applications/spaces/interfaces/space-files.interface.js.map +1 -0
- package/server/applications/spaces/interfaces/space-quota.interface.js +10 -0
- package/server/applications/spaces/interfaces/space-quota.interface.js.map +1 -0
- package/server/applications/spaces/interfaces/space-request.interface.js +10 -0
- package/server/applications/spaces/interfaces/space-request.interface.js.map +1 -0
- package/server/applications/spaces/interfaces/space-trash.interface.js +10 -0
- package/server/applications/spaces/interfaces/space-trash.interface.js.map +1 -0
- package/server/applications/spaces/models/space-env.model.js +112 -0
- package/server/applications/spaces/models/space-env.model.js.map +1 -0
- package/server/applications/spaces/models/space-props.model.js +60 -0
- package/server/applications/spaces/models/space-props.model.js.map +1 -0
- package/server/applications/spaces/models/space-root-props.model.js +18 -0
- package/server/applications/spaces/models/space-root-props.model.js.map +1 -0
- package/server/applications/spaces/models/space.model.js +64 -0
- package/server/applications/spaces/models/space.model.js.map +1 -0
- package/server/applications/spaces/schemas/space-members.interface.js +18 -0
- package/server/applications/spaces/schemas/space-members.interface.js.map +1 -0
- package/server/applications/spaces/schemas/space-root.interface.js +18 -0
- package/server/applications/spaces/schemas/space-root.interface.js.map +1 -0
- package/server/applications/spaces/schemas/space.interface.js +18 -0
- package/server/applications/spaces/schemas/space.interface.js.map +1 -0
- package/server/applications/spaces/schemas/spaces-members.schema.js +73 -0
- package/server/applications/spaces/schemas/spaces-members.schema.js.map +1 -0
- package/server/applications/spaces/schemas/spaces-roots.schema.js +61 -0
- package/server/applications/spaces/schemas/spaces-roots.schema.js.map +1 -0
- package/server/applications/spaces/schemas/spaces.schema.js +63 -0
- package/server/applications/spaces/schemas/spaces.schema.js.map +1 -0
- package/server/applications/spaces/services/spaces-browser.service.js +308 -0
- package/server/applications/spaces/services/spaces-browser.service.js.map +1 -0
- package/server/applications/spaces/services/spaces-browser.service.spec.js +74 -0
- package/server/applications/spaces/services/spaces-browser.service.spec.js.map +1 -0
- package/server/applications/spaces/services/spaces-manager.service.js +818 -0
- package/server/applications/spaces/services/spaces-manager.service.js.map +1 -0
- package/server/applications/spaces/services/spaces-manager.service.spec.js +269 -0
- package/server/applications/spaces/services/spaces-manager.service.spec.js.map +1 -0
- package/server/applications/spaces/services/spaces-queries.service.js +763 -0
- package/server/applications/spaces/services/spaces-queries.service.js.map +1 -0
- package/server/applications/spaces/services/spaces-scheduler.service.js +88 -0
- package/server/applications/spaces/services/spaces-scheduler.service.js.map +1 -0
- package/server/applications/spaces/spaces.controller.js +386 -0
- package/server/applications/spaces/spaces.controller.js.map +1 -0
- package/server/applications/spaces/spaces.controller.spec.js +65 -0
- package/server/applications/spaces/spaces.controller.spec.js.map +1 -0
- package/server/applications/spaces/spaces.module.js +51 -0
- package/server/applications/spaces/spaces.module.js.map +1 -0
- package/server/applications/spaces/utils/paths.js +241 -0
- package/server/applications/spaces/utils/paths.js.map +1 -0
- package/server/applications/spaces/utils/permissions.js +88 -0
- package/server/applications/spaces/utils/permissions.js.map +1 -0
- package/server/applications/spaces/utils/routes.js +20 -0
- package/server/applications/spaces/utils/routes.js.map +1 -0
- package/server/applications/sync/constants/auth.js +38 -0
- package/server/applications/sync/constants/auth.js.map +1 -0
- package/server/applications/sync/constants/routes.js +47 -0
- package/server/applications/sync/constants/routes.js.map +1 -0
- package/server/applications/sync/constants/store.js +48 -0
- package/server/applications/sync/constants/store.js.map +1 -0
- package/server/applications/sync/constants/sync.js +128 -0
- package/server/applications/sync/constants/sync.js.map +1 -0
- package/server/applications/sync/decorators/sync-context.decorator.js +27 -0
- package/server/applications/sync/decorators/sync-context.decorator.js.map +1 -0
- package/server/applications/sync/decorators/sync-environment.decorator.js +25 -0
- package/server/applications/sync/decorators/sync-environment.decorator.js.map +1 -0
- package/server/applications/sync/dtos/sync-client-auth.dto.js +47 -0
- package/server/applications/sync/dtos/sync-client-auth.dto.js.map +1 -0
- package/server/applications/sync/dtos/sync-client-registration.dto.js +51 -0
- package/server/applications/sync/dtos/sync-client-registration.dto.js.map +1 -0
- package/server/applications/sync/dtos/sync-operations.dto.js +104 -0
- package/server/applications/sync/dtos/sync-operations.dto.js.map +1 -0
- package/server/applications/sync/dtos/sync-path.dto.js +130 -0
- package/server/applications/sync/dtos/sync-path.dto.js.map +1 -0
- package/server/applications/sync/dtos/sync-upload.dto.js +49 -0
- package/server/applications/sync/dtos/sync-upload.dto.js.map +1 -0
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.js +55 -0
- package/server/applications/sync/interceptors/sync-diff-gzip-body.interceptor.js.map +1 -0
- package/server/applications/sync/interfaces/store-manifest.interface.js +10 -0
- package/server/applications/sync/interfaces/store-manifest.interface.js.map +1 -0
- package/server/applications/sync/interfaces/sync-client-auth.interface.js +30 -0
- package/server/applications/sync/interfaces/sync-client-auth.interface.js.map +1 -0
- package/server/applications/sync/interfaces/sync-client-paths.interface.js +10 -0
- package/server/applications/sync/interfaces/sync-client-paths.interface.js.map +1 -0
- package/server/applications/sync/interfaces/sync-client.interface.js +10 -0
- package/server/applications/sync/interfaces/sync-client.interface.js.map +1 -0
- package/server/applications/sync/interfaces/sync-diff.interface.js +11 -0
- package/server/applications/sync/interfaces/sync-diff.interface.js.map +1 -0
- package/server/applications/sync/interfaces/sync-path.interface.js +10 -0
- package/server/applications/sync/interfaces/sync-path.interface.js.map +1 -0
- package/server/applications/sync/schemas/sync-client.interface.js +18 -0
- package/server/applications/sync/schemas/sync-client.interface.js.map +1 -0
- package/server/applications/sync/schemas/sync-clients.schema.js +57 -0
- package/server/applications/sync/schemas/sync-clients.schema.js.map +1 -0
- package/server/applications/sync/schemas/sync-path.interface.js +18 -0
- package/server/applications/sync/schemas/sync-path.interface.js.map +1 -0
- package/server/applications/sync/schemas/sync-paths.schema.js +76 -0
- package/server/applications/sync/schemas/sync-paths.schema.js.map +1 -0
- package/server/applications/sync/services/sync-clients-manager.service.js +218 -0
- package/server/applications/sync/services/sync-clients-manager.service.js.map +1 -0
- package/server/applications/sync/services/sync-clients-manager.service.spec.js +56 -0
- package/server/applications/sync/services/sync-clients-manager.service.spec.js.map +1 -0
- package/server/applications/sync/services/sync-manager.service.js +299 -0
- package/server/applications/sync/services/sync-manager.service.js.map +1 -0
- package/server/applications/sync/services/sync-manager.service.spec.js +41 -0
- package/server/applications/sync/services/sync-manager.service.spec.js.map +1 -0
- package/server/applications/sync/services/sync-paths-manager.service.js +290 -0
- package/server/applications/sync/services/sync-paths-manager.service.js.map +1 -0
- package/server/applications/sync/services/sync-paths-manager.service.spec.js +56 -0
- package/server/applications/sync/services/sync-paths-manager.service.spec.js.map +1 -0
- package/server/applications/sync/services/sync-queries.service.js +238 -0
- package/server/applications/sync/services/sync-queries.service.js.map +1 -0
- package/server/applications/sync/sync.config.js +36 -0
- package/server/applications/sync/sync.config.js.map +1 -0
- package/server/applications/sync/sync.controller.js +407 -0
- package/server/applications/sync/sync.controller.js.map +1 -0
- package/server/applications/sync/sync.controller.spec.js +53 -0
- package/server/applications/sync/sync.controller.spec.js.map +1 -0
- package/server/applications/sync/sync.module.js +45 -0
- package/server/applications/sync/sync.module.js.map +1 -0
- package/server/applications/sync/utils/functions.js +26 -0
- package/server/applications/sync/utils/functions.js.map +1 -0
- package/server/applications/sync/utils/normalizedMap.js +52 -0
- package/server/applications/sync/utils/normalizedMap.js.map +1 -0
- package/server/applications/sync/utils/routes.js +27 -0
- package/server/applications/sync/utils/routes.js.map +1 -0
- package/server/applications/users/admin-users.controller.js +350 -0
- package/server/applications/users/admin-users.controller.js.map +1 -0
- package/server/applications/users/admin-users.controller.spec.js +60 -0
- package/server/applications/users/admin-users.controller.spec.js.map +1 -0
- package/server/applications/users/constants/group.js +35 -0
- package/server/applications/users/constants/group.js.map +1 -0
- package/server/applications/users/constants/member.js +39 -0
- package/server/applications/users/constants/member.js.map +1 -0
- package/server/applications/users/constants/routes.js +134 -0
- package/server/applications/users/constants/routes.js.map +1 -0
- package/server/applications/users/constants/user.js +118 -0
- package/server/applications/users/constants/user.js.map +1 -0
- package/server/applications/users/constants/websocket.js +33 -0
- package/server/applications/users/constants/websocket.js.map +1 -0
- package/server/applications/users/decorators/permissions.decorator.js +18 -0
- package/server/applications/users/decorators/permissions.decorator.js.map +1 -0
- package/server/applications/users/decorators/roles.decorator.js +18 -0
- package/server/applications/users/decorators/roles.decorator.js.map +1 -0
- package/server/applications/users/decorators/user.decorator.js +20 -0
- package/server/applications/users/decorators/user.decorator.js.map +1 -0
- package/server/applications/users/dto/create-or-update-group.dto.js +66 -0
- package/server/applications/users/dto/create-or-update-group.dto.js.map +1 -0
- package/server/applications/users/dto/create-or-update-user.dto.js +167 -0
- package/server/applications/users/dto/create-or-update-user.dto.js.map +1 -0
- package/server/applications/users/dto/delete-user.dto.js +54 -0
- package/server/applications/users/dto/delete-user.dto.js.map +1 -0
- package/server/applications/users/dto/search-members.dto.js +79 -0
- package/server/applications/users/dto/search-members.dto.js.map +1 -0
- package/server/applications/users/dto/user-password.dto.js +35 -0
- package/server/applications/users/dto/user-password.dto.js.map +1 -0
- package/server/applications/users/dto/user-properties.dto.js +64 -0
- package/server/applications/users/dto/user-properties.dto.js.map +1 -0
- package/server/applications/users/guards/permissions.guard.js +71 -0
- package/server/applications/users/guards/permissions.guard.js.map +1 -0
- package/server/applications/users/guards/permissions.guard.spec.js +103 -0
- package/server/applications/users/guards/permissions.guard.spec.js.map +1 -0
- package/server/applications/users/guards/roles.guard.js +62 -0
- package/server/applications/users/guards/roles.guard.js.map +1 -0
- package/server/applications/users/guards/roles.guard.spec.js +90 -0
- package/server/applications/users/guards/roles.guard.spec.js.map +1 -0
- package/server/applications/users/interfaces/admin-group.interface.js +10 -0
- package/server/applications/users/interfaces/admin-group.interface.js.map +1 -0
- package/server/applications/users/interfaces/admin-user.interface.js +10 -0
- package/server/applications/users/interfaces/admin-user.interface.js.map +1 -0
- package/server/applications/users/interfaces/group-browse.interface.js +10 -0
- package/server/applications/users/interfaces/group-browse.interface.js.map +1 -0
- package/server/applications/users/interfaces/group-member.js +10 -0
- package/server/applications/users/interfaces/group-member.js.map +1 -0
- package/server/applications/users/interfaces/guest-user.interface.js +10 -0
- package/server/applications/users/interfaces/guest-user.interface.js.map +1 -0
- package/server/applications/users/interfaces/member.interface.js +10 -0
- package/server/applications/users/interfaces/member.interface.js.map +1 -0
- package/server/applications/users/interfaces/owner.interface.js +10 -0
- package/server/applications/users/interfaces/owner.interface.js.map +1 -0
- package/server/applications/users/interfaces/websocket.interface.js +10 -0
- package/server/applications/users/interfaces/websocket.interface.js.map +1 -0
- package/server/applications/users/models/user.model.js +226 -0
- package/server/applications/users/models/user.model.js.map +1 -0
- package/server/applications/users/schemas/group.interface.js +18 -0
- package/server/applications/users/schemas/group.interface.js.map +1 -0
- package/server/applications/users/schemas/groups.schema.js +56 -0
- package/server/applications/users/schemas/groups.schema.js.map +1 -0
- package/server/applications/users/schemas/user-group.interface.js +18 -0
- package/server/applications/users/schemas/user-group.interface.js.map +1 -0
- package/server/applications/users/schemas/user.interface.js +18 -0
- package/server/applications/users/schemas/user.interface.js.map +1 -0
- package/server/applications/users/schemas/users-groups.schema.js +49 -0
- package/server/applications/users/schemas/users-groups.schema.js.map +1 -0
- package/server/applications/users/schemas/users-guests.schema.js +46 -0
- package/server/applications/users/schemas/users-guests.schema.js.map +1 -0
- package/server/applications/users/schemas/users.schema.js +94 -0
- package/server/applications/users/schemas/users.schema.js.map +1 -0
- package/server/applications/users/services/admin-users-manager.service.js +385 -0
- package/server/applications/users/services/admin-users-manager.service.js.map +1 -0
- package/server/applications/users/services/admin-users-manager.service.spec.js +50 -0
- package/server/applications/users/services/admin-users-manager.service.spec.js.map +1 -0
- package/server/applications/users/services/admin-users-queries.service.js +315 -0
- package/server/applications/users/services/admin-users-queries.service.js.map +1 -0
- package/server/applications/users/services/users-manager.service.js +424 -0
- package/server/applications/users/services/users-manager.service.js.map +1 -0
- package/server/applications/users/services/users-manager.service.spec.js +151 -0
- package/server/applications/users/services/users-manager.service.spec.js.map +1 -0
- package/server/applications/users/services/users-queries.service.js +570 -0
- package/server/applications/users/services/users-queries.service.js.map +1 -0
- package/server/applications/users/users.controller.js +371 -0
- package/server/applications/users/users.controller.js.map +1 -0
- package/server/applications/users/users.controller.spec.js +86 -0
- package/server/applications/users/users.controller.spec.js.map +1 -0
- package/server/applications/users/users.e2e-spec.js +97 -0
- package/server/applications/users/users.e2e-spec.js.map +1 -0
- package/server/applications/users/users.gateway.js +182 -0
- package/server/applications/users/users.gateway.js.map +1 -0
- package/server/applications/users/users.gateway.spec.js +36 -0
- package/server/applications/users/users.gateway.spec.js.map +1 -0
- package/server/applications/users/users.module.js +57 -0
- package/server/applications/users/users.module.js.map +1 -0
- package/server/applications/users/utils/test.js +34 -0
- package/server/applications/users/utils/test.js.map +1 -0
- package/server/applications/webdav/constants/routes.js +73 -0
- package/server/applications/webdav/constants/routes.js.map +1 -0
- package/server/applications/webdav/constants/webdav.js +168 -0
- package/server/applications/webdav/constants/webdav.js.map +1 -0
- package/server/applications/webdav/decorators/if-header.decorator.js +27 -0
- package/server/applications/webdav/decorators/if-header.decorator.js.map +1 -0
- package/server/applications/webdav/decorators/webdav-context.decorator.js +36 -0
- package/server/applications/webdav/decorators/webdav-context.decorator.js.map +1 -0
- package/server/applications/webdav/filters/webdav.filter.js +45 -0
- package/server/applications/webdav/filters/webdav.filter.js.map +1 -0
- package/server/applications/webdav/guards/webdav-protocol.guard.js +262 -0
- package/server/applications/webdav/guards/webdav-protocol.guard.js.map +1 -0
- package/server/applications/webdav/interfaces/if-header.interface.js +10 -0
- package/server/applications/webdav/interfaces/if-header.interface.js.map +1 -0
- package/server/applications/webdav/interfaces/webdav.interface.js +10 -0
- package/server/applications/webdav/interfaces/webdav.interface.js.map +1 -0
- package/server/applications/webdav/models/webdav-file.model.js +74 -0
- package/server/applications/webdav/models/webdav-file.model.js.map +1 -0
- package/server/applications/webdav/services/webdav-methods.service.js +520 -0
- package/server/applications/webdav/services/webdav-methods.service.js.map +1 -0
- package/server/applications/webdav/services/webdav-methods.service.spec.js +41 -0
- package/server/applications/webdav/services/webdav-methods.service.spec.js.map +1 -0
- package/server/applications/webdav/services/webdav-spaces.service.js +169 -0
- package/server/applications/webdav/services/webdav-spaces.service.js.map +1 -0
- package/server/applications/webdav/services/webdav-spaces.service.spec.js +36 -0
- package/server/applications/webdav/services/webdav-spaces.service.spec.js.map +1 -0
- package/server/applications/webdav/utils/if-header.js +89 -0
- package/server/applications/webdav/utils/if-header.js.map +1 -0
- package/server/applications/webdav/utils/routes.js +30 -0
- package/server/applications/webdav/utils/routes.js.map +1 -0
- package/server/applications/webdav/utils/webdav.js +167 -0
- package/server/applications/webdav/utils/webdav.js.map +1 -0
- package/server/applications/webdav/utils/xml.js +72 -0
- package/server/applications/webdav/utils/xml.js.map +1 -0
- package/server/applications/webdav/webdav.controller.js +173 -0
- package/server/applications/webdav/webdav.controller.js.map +1 -0
- package/server/applications/webdav/webdav.controller.spec.js +41 -0
- package/server/applications/webdav/webdav.controller.spec.js.map +1 -0
- package/server/applications/webdav/webdav.e2e-spec.js +69 -0
- package/server/applications/webdav/webdav.e2e-spec.js.map +1 -0
- package/server/applications/webdav/webdav.module.js +41 -0
- package/server/applications/webdav/webdav.module.js.map +1 -0
- package/server/authentication/auth.config.js +223 -0
- package/server/authentication/auth.config.js.map +1 -0
- package/server/authentication/auth.controller.js +126 -0
- package/server/authentication/auth.controller.js.map +1 -0
- package/server/authentication/auth.controller.spec.js +132 -0
- package/server/authentication/auth.controller.spec.js.map +1 -0
- package/server/authentication/auth.e2e-spec.js +340 -0
- package/server/authentication/auth.e2e-spec.js.map +1 -0
- package/server/authentication/auth.module.js +84 -0
- package/server/authentication/auth.module.js.map +1 -0
- package/server/authentication/constants/auth.js +54 -0
- package/server/authentication/constants/auth.js.map +1 -0
- package/server/authentication/constants/routes.js +55 -0
- package/server/authentication/constants/routes.js.map +1 -0
- package/server/authentication/decorators/auth-token-optional.decorator.js +26 -0
- package/server/authentication/decorators/auth-token-optional.decorator.js.map +1 -0
- package/server/authentication/decorators/auth-token-skip.decorator.js +27 -0
- package/server/authentication/decorators/auth-token-skip.decorator.js.map +1 -0
- package/server/authentication/dto/login-response.dto.js +23 -0
- package/server/authentication/dto/login-response.dto.js.map +1 -0
- package/server/authentication/dto/token-response.dto.js +44 -0
- package/server/authentication/dto/token-response.dto.js.map +1 -0
- package/server/authentication/guards/auth-anonymous.guard.js +37 -0
- package/server/authentication/guards/auth-anonymous.guard.js.map +1 -0
- package/server/authentication/guards/auth-anonymous.guard.spec.js +65 -0
- package/server/authentication/guards/auth-anonymous.guard.spec.js.map +1 -0
- package/server/authentication/guards/auth-anonymous.strategy.js +44 -0
- package/server/authentication/guards/auth-anonymous.strategy.js.map +1 -0
- package/server/authentication/guards/auth-basic.guard.js +54 -0
- package/server/authentication/guards/auth-basic.guard.js.map +1 -0
- package/server/authentication/guards/auth-basic.guard.spec.js +148 -0
- package/server/authentication/guards/auth-basic.guard.spec.js.map +1 -0
- package/server/authentication/guards/auth-basic.strategy.js +79 -0
- package/server/authentication/guards/auth-basic.strategy.js.map +1 -0
- package/server/authentication/guards/auth-digest.guard.js +24 -0
- package/server/authentication/guards/auth-digest.guard.js.map +1 -0
- package/server/authentication/guards/auth-digest.strategy.js +28 -0
- package/server/authentication/guards/auth-digest.strategy.js.map +1 -0
- package/server/authentication/guards/auth-local.guard.js +40 -0
- package/server/authentication/guards/auth-local.guard.js.map +1 -0
- package/server/authentication/guards/auth-local.guard.spec.js +87 -0
- package/server/authentication/guards/auth-local.guard.spec.js.map +1 -0
- package/server/authentication/guards/auth-local.strategy.js +59 -0
- package/server/authentication/guards/auth-local.strategy.js.map +1 -0
- package/server/authentication/guards/auth-token-access.guard.js +66 -0
- package/server/authentication/guards/auth-token-access.guard.js.map +1 -0
- package/server/authentication/guards/auth-token-access.guard.spec.js +262 -0
- package/server/authentication/guards/auth-token-access.guard.spec.js.map +1 -0
- package/server/authentication/guards/auth-token-access.strategy.js +68 -0
- package/server/authentication/guards/auth-token-access.strategy.js.map +1 -0
- package/server/authentication/guards/auth-token-refresh.guard.js +40 -0
- package/server/authentication/guards/auth-token-refresh.guard.js.map +1 -0
- package/server/authentication/guards/auth-token-refresh.guard.spec.js +189 -0
- package/server/authentication/guards/auth-token-refresh.guard.spec.js.map +1 -0
- package/server/authentication/guards/auth-token-refresh.strategy.js +72 -0
- package/server/authentication/guards/auth-token-refresh.strategy.js.map +1 -0
- package/server/authentication/interfaces/auth-request.interface.js +10 -0
- package/server/authentication/interfaces/auth-request.interface.js.map +1 -0
- package/server/authentication/interfaces/jwt-payload.interface.js +28 -0
- package/server/authentication/interfaces/jwt-payload.interface.js.map +1 -0
- package/server/authentication/interfaces/token.interface.js +23 -0
- package/server/authentication/interfaces/token.interface.js.map +1 -0
- package/server/authentication/models/auth-method.js +18 -0
- package/server/authentication/models/auth-method.js.map +1 -0
- package/server/authentication/services/auth-manager.service.js +174 -0
- package/server/authentication/services/auth-manager.service.js.map +1 -0
- package/server/authentication/services/auth-manager.service.spec.js +41 -0
- package/server/authentication/services/auth-manager.service.spec.js.map +1 -0
- package/server/authentication/services/auth-methods/auth-method-database.service.js +55 -0
- package/server/authentication/services/auth-methods/auth-method-database.service.js.map +1 -0
- package/server/authentication/services/auth-methods/auth-method-database.service.spec.js +88 -0
- package/server/authentication/services/auth-methods/auth-method-database.service.spec.js.map +1 -0
- package/server/authentication/services/auth-methods/auth-method-ldap.service.js +185 -0
- package/server/authentication/services/auth-methods/auth-method-ldap.service.js.map +1 -0
- package/server/authentication/services/auth-methods/auth-method-ldap.service.spec.js +36 -0
- package/server/authentication/services/auth-methods/auth-method-ldap.service.spec.js.map +1 -0
- package/server/common/constants.js +23 -0
- package/server/common/constants.js.map +1 -0
- package/server/common/decorators.js +35 -0
- package/server/common/decorators.js.map +1 -0
- package/server/common/fonts/avatar.ttf +0 -0
- package/server/common/functions.js +292 -0
- package/server/common/functions.js.map +1 -0
- package/server/common/image.js +113 -0
- package/server/common/image.js.map +1 -0
- package/server/common/interfaces.js +10 -0
- package/server/common/interfaces.js.map +1 -0
- package/server/common/shared.js +105 -0
- package/server/common/shared.js.map +1 -0
- package/server/configuration/config.constants.js +65 -0
- package/server/configuration/config.constants.js.map +1 -0
- package/server/configuration/config.environment.js +57 -0
- package/server/configuration/config.environment.js.map +1 -0
- package/server/configuration/config.loader.js +195 -0
- package/server/configuration/config.loader.js.map +1 -0
- package/server/configuration/config.logger.js +69 -0
- package/server/configuration/config.logger.js.map +1 -0
- package/server/configuration/config.validation.js +175 -0
- package/server/configuration/config.validation.js.map +1 -0
- package/server/infrastructure/cache/adapters/mysql-cache.adapter.js +169 -0
- package/server/infrastructure/cache/adapters/mysql-cache.adapter.js.map +1 -0
- package/server/infrastructure/cache/adapters/redis-cache.adapter.js +129 -0
- package/server/infrastructure/cache/adapters/redis-cache.adapter.js.map +1 -0
- package/server/infrastructure/cache/cache.config.js +53 -0
- package/server/infrastructure/cache/cache.config.js.map +1 -0
- package/server/infrastructure/cache/cache.decorator.js +53 -0
- package/server/infrastructure/cache/cache.decorator.js.map +1 -0
- package/server/infrastructure/cache/cache.e2e-spec.js +111 -0
- package/server/infrastructure/cache/cache.e2e-spec.js.map +1 -0
- package/server/infrastructure/cache/cache.module.js +58 -0
- package/server/infrastructure/cache/cache.module.js.map +1 -0
- package/server/infrastructure/cache/schemas/mysql-cache.interface.js +18 -0
- package/server/infrastructure/cache/schemas/mysql-cache.interface.js.map +1 -0
- package/server/infrastructure/cache/schemas/mysql-cache.schema.js +26 -0
- package/server/infrastructure/cache/schemas/mysql-cache.schema.js.map +1 -0
- package/server/infrastructure/cache/services/cache.service.js +18 -0
- package/server/infrastructure/cache/services/cache.service.js.map +1 -0
- package/server/infrastructure/context/context.module.js +40 -0
- package/server/infrastructure/context/context.module.js.map +1 -0
- package/server/infrastructure/context/interceptors/context.interceptor.js +45 -0
- package/server/infrastructure/context/interceptors/context.interceptor.js.map +1 -0
- package/server/infrastructure/context/interfaces/context-store.interface.js +10 -0
- package/server/infrastructure/context/interfaces/context-store.interface.js.map +1 -0
- package/server/infrastructure/context/services/context-manager.service.js +43 -0
- package/server/infrastructure/context/services/context-manager.service.js.map +1 -0
- package/server/infrastructure/database/configuration.js +29 -0
- package/server/infrastructure/database/configuration.js.map +1 -0
- package/server/infrastructure/database/constants.js +41 -0
- package/server/infrastructure/database/constants.js.map +1 -0
- package/server/infrastructure/database/database.config.js +44 -0
- package/server/infrastructure/database/database.config.js.map +1 -0
- package/server/infrastructure/database/database.logger.js +22 -0
- package/server/infrastructure/database/database.logger.js.map +1 -0
- package/server/infrastructure/database/database.module.js +94 -0
- package/server/infrastructure/database/database.module.js.map +1 -0
- package/server/infrastructure/database/interfaces/database.interface.js +10 -0
- package/server/infrastructure/database/interfaces/database.interface.js.map +1 -0
- package/server/infrastructure/database/schema.js +40 -0
- package/server/infrastructure/database/schema.js.map +1 -0
- package/server/infrastructure/database/scripts/create-user.js +97 -0
- package/server/infrastructure/database/scripts/create-user.js.map +1 -0
- package/server/infrastructure/database/scripts/db.js +68 -0
- package/server/infrastructure/database/scripts/db.js.map +1 -0
- package/server/infrastructure/database/scripts/seed/main.js +18 -0
- package/server/infrastructure/database/scripts/seed/main.js.map +1 -0
- package/server/infrastructure/database/scripts/seed/usersgroups.js +92 -0
- package/server/infrastructure/database/scripts/seed/usersgroups.js.map +1 -0
- package/server/infrastructure/database/utils.js +117 -0
- package/server/infrastructure/database/utils.js.map +1 -0
- package/server/infrastructure/mailer/interfaces/mail.interface.js +10 -0
- package/server/infrastructure/mailer/interfaces/mail.interface.js.map +1 -0
- package/server/infrastructure/mailer/mailer.config.js +94 -0
- package/server/infrastructure/mailer/mailer.config.js.map +1 -0
- package/server/infrastructure/mailer/mailer.module.js +37 -0
- package/server/infrastructure/mailer/mailer.module.js.map +1 -0
- package/server/infrastructure/mailer/mailer.service.js +93 -0
- package/server/infrastructure/mailer/mailer.service.js.map +1 -0
- package/server/infrastructure/scheduler/scheduler.constants.js +30 -0
- package/server/infrastructure/scheduler/scheduler.constants.js.map +1 -0
- package/server/infrastructure/scheduler/scheduler.module.js +52 -0
- package/server/infrastructure/scheduler/scheduler.module.js.map +1 -0
- package/server/infrastructure/websocket/adapters/cluster.adapter.js +40 -0
- package/server/infrastructure/websocket/adapters/cluster.adapter.js.map +1 -0
- package/server/infrastructure/websocket/adapters/redis.adapter.js +61 -0
- package/server/infrastructure/websocket/adapters/redis.adapter.js.map +1 -0
- package/server/infrastructure/websocket/adapters/web-socket.adapter.js +127 -0
- package/server/infrastructure/websocket/adapters/web-socket.adapter.js.map +1 -0
- package/server/infrastructure/websocket/decorators/web-socket-user.decorator.js +20 -0
- package/server/infrastructure/websocket/decorators/web-socket-user.decorator.js.map +1 -0
- package/server/infrastructure/websocket/interfaces/auth-socket-io.interface.js +10 -0
- package/server/infrastructure/websocket/interfaces/auth-socket-io.interface.js.map +1 -0
- package/server/infrastructure/websocket/utils.js +23 -0
- package/server/infrastructure/websocket/utils.js.map +1 -0
- package/server/infrastructure/websocket/web-socket.config.js +54 -0
- package/server/infrastructure/websocket/web-socket.config.js.map +1 -0
- package/server/main.js +27 -0
- package/server/main.js.map +1 -0
- package/static/3rdpartylicenses.txt +1522 -0
- package/static/assets/avatar.svg +7 -0
- package/static/assets/codemirror/mode/apl/apl.js +174 -0
- package/static/assets/codemirror/mode/asciiarmor/asciiarmor.js +74 -0
- package/static/assets/codemirror/mode/asn.1/asn.1.js +204 -0
- package/static/assets/codemirror/mode/asterisk/asterisk.js +220 -0
- package/static/assets/codemirror/mode/brainfuck/brainfuck.js +85 -0
- package/static/assets/codemirror/mode/clike/clike.js +942 -0
- package/static/assets/codemirror/mode/clojure/clojure.js +293 -0
- package/static/assets/codemirror/mode/cmake/cmake.js +97 -0
- package/static/assets/codemirror/mode/cobol/cobol.js +255 -0
- package/static/assets/codemirror/mode/coffeescript/coffeescript.js +359 -0
- package/static/assets/codemirror/mode/commonlisp/commonlisp.js +125 -0
- package/static/assets/codemirror/mode/crystal/crystal.js +433 -0
- package/static/assets/codemirror/mode/css/css.js +862 -0
- package/static/assets/codemirror/mode/cypher/cypher.js +152 -0
- package/static/assets/codemirror/mode/d/d.js +223 -0
- package/static/assets/codemirror/mode/dart/dart.js +168 -0
- package/static/assets/codemirror/mode/diff/diff.js +47 -0
- package/static/assets/codemirror/mode/django/django.js +356 -0
- package/static/assets/codemirror/mode/dockerfile/dockerfile.js +211 -0
- package/static/assets/codemirror/mode/dtd/dtd.js +142 -0
- package/static/assets/codemirror/mode/dylan/dylan.js +352 -0
- package/static/assets/codemirror/mode/ebnf/ebnf.js +195 -0
- package/static/assets/codemirror/mode/ecl/ecl.js +206 -0
- package/static/assets/codemirror/mode/eiffel/eiffel.js +160 -0
- package/static/assets/codemirror/mode/elm/elm.js +245 -0
- package/static/assets/codemirror/mode/erlang/erlang.js +619 -0
- package/static/assets/codemirror/mode/factor/factor.js +85 -0
- package/static/assets/codemirror/mode/fcl/fcl.js +173 -0
- package/static/assets/codemirror/mode/forth/forth.js +180 -0
- package/static/assets/codemirror/mode/fortran/fortran.js +188 -0
- package/static/assets/codemirror/mode/gas/gas.js +353 -0
- package/static/assets/codemirror/mode/gfm/gfm.js +129 -0
- package/static/assets/codemirror/mode/gherkin/gherkin.js +194 -0
- package/static/assets/codemirror/mode/go/go.js +187 -0
- package/static/assets/codemirror/mode/groovy/groovy.js +245 -0
- package/static/assets/codemirror/mode/haml/haml.js +161 -0
- package/static/assets/codemirror/mode/handlebars/handlebars.js +70 -0
- package/static/assets/codemirror/mode/haskell/haskell.js +268 -0
- package/static/assets/codemirror/mode/haskell-literate/haskell-literate.js +43 -0
- package/static/assets/codemirror/mode/haxe/haxe.js +515 -0
- package/static/assets/codemirror/mode/htmlembedded/htmlembedded.js +37 -0
- package/static/assets/codemirror/mode/htmlmixed/htmlmixed.js +153 -0
- package/static/assets/codemirror/mode/http/http.js +113 -0
- package/static/assets/codemirror/mode/idl/idl.js +290 -0
- package/static/assets/codemirror/mode/javascript/javascript.js +960 -0
- package/static/assets/codemirror/mode/jinja2/jinja2.js +193 -0
- package/static/assets/codemirror/mode/jsx/jsx.js +149 -0
- package/static/assets/codemirror/mode/julia/julia.js +390 -0
- package/static/assets/codemirror/mode/livescript/livescript.js +280 -0
- package/static/assets/codemirror/mode/lua/lua.js +160 -0
- package/static/assets/codemirror/mode/markdown/markdown.js +886 -0
- package/static/assets/codemirror/mode/mathematica/mathematica.js +176 -0
- package/static/assets/codemirror/mode/mbox/mbox.js +129 -0
- package/static/assets/codemirror/mode/meta.js +221 -0
- package/static/assets/codemirror/mode/mirc/mirc.js +193 -0
- package/static/assets/codemirror/mode/mllike/mllike.js +359 -0
- package/static/assets/codemirror/mode/modelica/modelica.js +245 -0
- package/static/assets/codemirror/mode/mscgen/mscgen.js +175 -0
- package/static/assets/codemirror/mode/mumps/mumps.js +148 -0
- package/static/assets/codemirror/mode/nginx/nginx.js +178 -0
- package/static/assets/codemirror/mode/nsis/nsis.js +95 -0
- package/static/assets/codemirror/mode/ntriples/ntriples.js +195 -0
- package/static/assets/codemirror/mode/octave/octave.js +139 -0
- package/static/assets/codemirror/mode/oz/oz.js +252 -0
- package/static/assets/codemirror/mode/pascal/pascal.js +136 -0
- package/static/assets/codemirror/mode/pegjs/pegjs.js +111 -0
- package/static/assets/codemirror/mode/perl/perl.js +836 -0
- package/static/assets/codemirror/mode/php/php.js +234 -0
- package/static/assets/codemirror/mode/pig/pig.js +178 -0
- package/static/assets/codemirror/mode/powershell/powershell.js +398 -0
- package/static/assets/codemirror/mode/properties/properties.js +78 -0
- package/static/assets/codemirror/mode/protobuf/protobuf.js +72 -0
- package/static/assets/codemirror/mode/pug/pug.js +591 -0
- package/static/assets/codemirror/mode/puppet/puppet.js +220 -0
- package/static/assets/codemirror/mode/python/python.js +402 -0
- package/static/assets/codemirror/mode/q/q.js +139 -0
- package/static/assets/codemirror/mode/r/r.js +190 -0
- package/static/assets/codemirror/mode/rpm/changes/index.html +66 -0
- package/static/assets/codemirror/mode/rpm/rpm.js +109 -0
- package/static/assets/codemirror/mode/rst/rst.js +557 -0
- package/static/assets/codemirror/mode/ruby/ruby.js +303 -0
- package/static/assets/codemirror/mode/rust/rust.js +72 -0
- package/static/assets/codemirror/mode/sas/sas.js +303 -0
- package/static/assets/codemirror/mode/sass/sass.js +459 -0
- package/static/assets/codemirror/mode/scheme/scheme.js +284 -0
- package/static/assets/codemirror/mode/shell/shell.js +168 -0
- package/static/assets/codemirror/mode/sieve/sieve.js +193 -0
- package/static/assets/codemirror/mode/slim/slim.js +575 -0
- package/static/assets/codemirror/mode/smalltalk/smalltalk.js +168 -0
- package/static/assets/codemirror/mode/smarty/smarty.js +225 -0
- package/static/assets/codemirror/mode/solr/solr.js +104 -0
- package/static/assets/codemirror/mode/soy/soy.js +665 -0
- package/static/assets/codemirror/mode/sparql/sparql.js +184 -0
- package/static/assets/codemirror/mode/spreadsheet/spreadsheet.js +112 -0
- package/static/assets/codemirror/mode/sql/sql.js +529 -0
- package/static/assets/codemirror/mode/stex/stex.js +264 -0
- package/static/assets/codemirror/mode/stylus/stylus.js +775 -0
- package/static/assets/codemirror/mode/swift/swift.js +221 -0
- package/static/assets/codemirror/mode/tcl/tcl.js +140 -0
- package/static/assets/codemirror/mode/textile/textile.js +469 -0
- package/static/assets/codemirror/mode/tiddlywiki/tiddlywiki.css +14 -0
- package/static/assets/codemirror/mode/tiddlywiki/tiddlywiki.js +308 -0
- package/static/assets/codemirror/mode/tiki/tiki.css +26 -0
- package/static/assets/codemirror/mode/tiki/tiki.js +312 -0
- package/static/assets/codemirror/mode/toml/toml.js +88 -0
- package/static/assets/codemirror/mode/tornado/tornado.js +68 -0
- package/static/assets/codemirror/mode/troff/troff.js +84 -0
- package/static/assets/codemirror/mode/ttcn/ttcn.js +283 -0
- package/static/assets/codemirror/mode/ttcn-cfg/ttcn-cfg.js +214 -0
- package/static/assets/codemirror/mode/turtle/turtle.js +162 -0
- package/static/assets/codemirror/mode/twig/twig.js +141 -0
- package/static/assets/codemirror/mode/vb/vb.js +275 -0
- package/static/assets/codemirror/mode/vbscript/vbscript.js +350 -0
- package/static/assets/codemirror/mode/velocity/velocity.js +202 -0
- package/static/assets/codemirror/mode/verilog/verilog.js +781 -0
- package/static/assets/codemirror/mode/vhdl/vhdl.js +189 -0
- package/static/assets/codemirror/mode/vue/vue.js +77 -0
- package/static/assets/codemirror/mode/wast/wast.js +132 -0
- package/static/assets/codemirror/mode/webidl/webidl.js +195 -0
- package/static/assets/codemirror/mode/xml/xml.js +417 -0
- package/static/assets/codemirror/mode/xquery/xquery.js +448 -0
- package/static/assets/codemirror/mode/yacas/yacas.js +204 -0
- package/static/assets/codemirror/mode/yaml/yaml.js +120 -0
- package/static/assets/codemirror/mode/yaml-frontmatter/yaml-frontmatter.js +72 -0
- package/static/assets/codemirror/mode/z80/z80.js +116 -0
- package/static/assets/favicon.svg +25 -0
- package/static/assets/logo-dark.svg +32 -0
- package/static/assets/logo.svg +32 -0
- package/static/assets/mimes/7zip.svg +14 -0
- package/static/assets/mimes/application-7zip.svg +14 -0
- package/static/assets/mimes/application-atom+xml.svg +15 -0
- package/static/assets/mimes/application-atom.svg +15 -0
- package/static/assets/mimes/application-certificate.svg +28 -0
- package/static/assets/mimes/application-epub+zip.svg +10 -0
- package/static/assets/mimes/application-gzip.svg +16 -0
- package/static/assets/mimes/application-javascript.svg +6 -0
- package/static/assets/mimes/application-json.svg +11 -0
- package/static/assets/mimes/application-mathml+xml.svg +188 -0
- package/static/assets/mimes/application-mp4.svg +18 -0
- package/static/assets/mimes/application-msexcel.svg +1 -0
- package/static/assets/mimes/application-msword-template.svg +1 -0
- package/static/assets/mimes/application-msword.svg +1 -0
- package/static/assets/mimes/application-octet-stream.svg +273 -0
- package/static/assets/mimes/application-pdf.svg +13 -0
- package/static/assets/mimes/application-pgp-encrypted.svg +16 -0
- package/static/assets/mimes/application-pgp-keys.svg +16 -0
- package/static/assets/mimes/application-pgp-signature.svg +16 -0
- package/static/assets/mimes/application-pgp.svg +16 -0
- package/static/assets/mimes/application-postscript.svg +57 -0
- package/static/assets/mimes/application-powerpoint.svg +1 -0
- package/static/assets/mimes/application-rdf+xml.svg +14 -0
- package/static/assets/mimes/application-rss+xml.svg +15 -0
- package/static/assets/mimes/application-rtf.svg +14 -0
- package/static/assets/mimes/application-script-blank.svg +15 -0
- package/static/assets/mimes/application-sql.svg +1 -0
- package/static/assets/mimes/application-text.svg +14 -0
- package/static/assets/mimes/application-vnd.android.package-archive.svg +16 -0
- package/static/assets/mimes/application-vnd.apple.keynote.svg +16 -0
- package/static/assets/mimes/application-vnd.apple.numbers.svg +16 -0
- package/static/assets/mimes/application-vnd.apple.pages.svg +16 -0
- package/static/assets/mimes/application-vnd.ms-excel.sheet.binary.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-excel.sheet.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-excel.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-excel.template.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-powerpoint.presentation.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-powerpoint.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-powerpoint.template.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-word.document.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-word.svg +1 -0
- package/static/assets/mimes/application-vnd.ms-word.template.macroenabled.12.svg +1 -0
- package/static/assets/mimes/application-vnd.mspowerpoint.svg +1 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.chart.svg +1 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.database.svg +155 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.formula-template.svg +263 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.formula.svg +188 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.graphics-template.svg +530 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.graphics.svg +89 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.presentation-template.svg +197 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.presentation.svg +122 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.spreadsheet-template.svg +452 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.spreadsheet.svg +266 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.text-master.svg +92 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.text-template.svg +90 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.text-web.svg +18 -0
- package/static/assets/mimes/application-vnd.oasis.opendocument.text.svg +92 -0
- package/static/assets/mimes/application-vnd.openofficeorg.extension.svg +59 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.presentationml.presentation.svg +1 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.presentationml.slideshow.svg +1 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.spreadsheetml.sheet.svg +1 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.spreadsheetml.template.svg +1 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.wordprocessingml.document.svg +1 -0
- package/static/assets/mimes/application-vnd.openxmlformats-officedocument.wordprocessingml.template.svg +1 -0
- package/static/assets/mimes/application-vnd.rn-realmedia.svg +18 -0
- package/static/assets/mimes/application-vnd.sun.xml.calc.svg +1 -0
- package/static/assets/mimes/application-vnd.sun.xml.writer-global.svg +1 -0
- package/static/assets/mimes/application-vnd.sun.xml.writer-template.svg +1 -0
- package/static/assets/mimes/application-vnd.sun.xml.writer.svg +1 -0
- package/static/assets/mimes/application-vnd.sun.xml.writer.template.svg +14 -0
- package/static/assets/mimes/application-vnd.visio.svg +26 -0
- package/static/assets/mimes/application-wps-office.doc.svg +1 -0
- package/static/assets/mimes/application-wps-office.docx.svg +1 -0
- package/static/assets/mimes/application-wps-office.ppt.svg +1 -0
- package/static/assets/mimes/application-wps-office.pptx.svg +1 -0
- package/static/assets/mimes/application-wps-office.xls.svg +1 -0
- package/static/assets/mimes/application-wps-office.xlsx.svg +1 -0
- package/static/assets/mimes/application-x-7z-compressed.svg +14 -0
- package/static/assets/mimes/application-x-7zip.svg +14 -0
- package/static/assets/mimes/application-x-ace.svg +14 -0
- package/static/assets/mimes/application-x-addon.svg +59 -0
- package/static/assets/mimes/application-x-apple-diskimage.svg +1 -0
- package/static/assets/mimes/application-x-ar.svg +16 -0
- package/static/assets/mimes/application-x-arc.svg +14 -0
- package/static/assets/mimes/application-x-archive.svg +16 -0
- package/static/assets/mimes/application-x-arj.svg +14 -0
- package/static/assets/mimes/application-x-audacity-project.svg +24 -0
- package/static/assets/mimes/application-x-bittorrent.svg +53 -0
- package/static/assets/mimes/application-x-blender.svg +353 -0
- package/static/assets/mimes/application-x-bzdvi.svg +14 -0
- package/static/assets/mimes/application-x-bzip-compressed-tar.svg +14 -0
- package/static/assets/mimes/application-x-bzip.svg +16 -0
- package/static/assets/mimes/application-x-cd-image.svg +292 -0
- package/static/assets/mimes/application-x-cda.svg +358 -0
- package/static/assets/mimes/application-x-class-file.svg +37 -0
- package/static/assets/mimes/application-x-compress-tar.svg +16 -0
- package/static/assets/mimes/application-x-compress.svg +16 -0
- package/static/assets/mimes/application-x-compressed-tar.svg +14 -0
- package/static/assets/mimes/application-x-core.svg +20 -0
- package/static/assets/mimes/application-x-cpio.svg +16 -0
- package/static/assets/mimes/application-x-deb.svg +14 -0
- package/static/assets/mimes/application-x-designer.svg +48 -0
- package/static/assets/mimes/application-x-egon.svg +12 -0
- package/static/assets/mimes/application-x-executable.svg +40 -0
- package/static/assets/mimes/application-x-extension-html.svg +18 -0
- package/static/assets/mimes/application-x-font-afm.svg +14 -0
- package/static/assets/mimes/application-x-font-snf.svg +14 -0
- package/static/assets/mimes/application-x-font-speedo.svg +14 -0
- package/static/assets/mimes/application-x-font-type1.svg +14 -0
- package/static/assets/mimes/application-x-gettext-translation.svg +14 -0
- package/static/assets/mimes/application-x-glade.svg +48 -0
- package/static/assets/mimes/application-x-gnome-theme-package.svg +109 -0
- package/static/assets/mimes/application-x-gzdvi.svg +16 -0
- package/static/assets/mimes/application-x-gzip.svg +16 -0
- package/static/assets/mimes/application-x-httpd-php.svg +18 -0
- package/static/assets/mimes/application-x-iso9660-image.svg +292 -0
- package/static/assets/mimes/application-x-java-archive.svg +16 -0
- package/static/assets/mimes/application-x-java.svg +37 -0
- package/static/assets/mimes/application-x-jokosher.svg +24 -0
- package/static/assets/mimes/application-x-kcachegrind.svg +273 -0
- package/static/assets/mimes/application-x-kcsrc.svg +109 -0
- package/static/assets/mimes/application-x-keepass.svg +2 -0
- package/static/assets/mimes/application-x-keepass2.svg +2 -0
- package/static/assets/mimes/application-x-kgetlist.svg +53 -0
- package/static/assets/mimes/application-x-lha.svg +14 -0
- package/static/assets/mimes/application-x-lzma-compressed-tar.svg +16 -0
- package/static/assets/mimes/application-x-lzop.svg +16 -0
- package/static/assets/mimes/application-x-m4.svg +14 -0
- package/static/assets/mimes/application-x-matroska.svg +18 -0
- package/static/assets/mimes/application-x-mplayer2.svg +18 -0
- package/static/assets/mimes/application-x-ms-application.svg +306 -0
- package/static/assets/mimes/application-x-ms-dos-executable.svg +306 -0
- package/static/assets/mimes/application-x-msdos-program.svg +306 -0
- package/static/assets/mimes/application-x-msdownload.svg +306 -0
- package/static/assets/mimes/application-x-msi.svg +306 -0
- package/static/assets/mimes/application-x-mswinurl.svg +18 -0
- package/static/assets/mimes/application-x-mswrite.svg +1 -0
- package/static/assets/mimes/application-x-nzb.svg +15 -0
- package/static/assets/mimes/application-x-object.svg +273 -0
- package/static/assets/mimes/application-x-ole-storage.svg +273 -0
- package/static/assets/mimes/application-x-pak.svg +16 -0
- package/static/assets/mimes/application-x-perl.svg +15 -0
- package/static/assets/mimes/application-x-php.svg +18 -0
- package/static/assets/mimes/application-x-plasma.svg +20 -0
- package/static/assets/mimes/application-x-python-bytecode.svg +16 -0
- package/static/assets/mimes/application-x-rar.svg +14 -0
- package/static/assets/mimes/application-x-rpm.svg +14 -0
- package/static/assets/mimes/application-x-ruby.svg +22 -0
- package/static/assets/mimes/application-x-sh.svg +17 -0
- package/static/assets/mimes/application-x-shared-library-la.svg +62 -0
- package/static/assets/mimes/application-x-sharedlib.svg +62 -0
- package/static/assets/mimes/application-x-shellscript.svg +17 -0
- package/static/assets/mimes/application-x-shockwave-flash.svg +18 -0
- package/static/assets/mimes/application-x-srt.svg +210 -0
- package/static/assets/mimes/application-x-subrip.svg +210 -0
- package/static/assets/mimes/application-x-tar.svg +16 -0
- package/static/assets/mimes/application-x-tarz.svg +14 -0
- package/static/assets/mimes/application-x-tex.svg +79 -0
- package/static/assets/mimes/application-x-theme.svg +109 -0
- package/static/assets/mimes/application-x-trash.svg +14 -0
- package/static/assets/mimes/application-x-tzo.svg +14 -0
- package/static/assets/mimes/application-x-wine-extension-pdd.svg +14 -0
- package/static/assets/mimes/application-x-zip.svg +14 -0
- package/static/assets/mimes/application-x-zoo.svg +14 -0
- package/static/assets/mimes/application-xhtml+xml.svg +18 -0
- package/static/assets/mimes/application-xhtml.svg +18 -0
- package/static/assets/mimes/application-xml.svg +18 -0
- package/static/assets/mimes/application-xsd.svg +18 -0
- package/static/assets/mimes/application-xslt+xml.svg +18 -0
- package/static/assets/mimes/application-zip.svg +14 -0
- package/static/assets/mimes/applications-java.svg +14 -0
- package/static/assets/mimes/archive.svg +16 -0
- package/static/assets/mimes/ascii.svg +14 -0
- package/static/assets/mimes/audio-ac3.svg +24 -0
- package/static/assets/mimes/audio-flac.svg +24 -0
- package/static/assets/mimes/audio-mpeg.svg +24 -0
- package/static/assets/mimes/audio-vn.rn-realmedia.svg +18 -0
- package/static/assets/mimes/audio-vnd.rn-realvideo.svg +18 -0
- package/static/assets/mimes/audio-x-adpcm.svg +24 -0
- package/static/assets/mimes/audio-x-aiff.svg +24 -0
- package/static/assets/mimes/audio-x-flac+ogg.svg +24 -0
- package/static/assets/mimes/audio-x-flac.svg +24 -0
- package/static/assets/mimes/audio-x-generic.svg +24 -0
- package/static/assets/mimes/audio-x-it.svg +24 -0
- package/static/assets/mimes/audio-x-monkey.svg +24 -0
- package/static/assets/mimes/audio-x-mpegurl.svg +24 -0
- package/static/assets/mimes/audio-x-wav.svg +24 -0
- package/static/assets/mimes/audio-x-xi.svg +24 -0
- package/static/assets/mimes/audio-x-xm.svg +24 -0
- package/static/assets/mimes/binary.svg +40 -0
- package/static/assets/mimes/deb.svg +14 -0
- package/static/assets/mimes/directory.svg +9 -0
- package/static/assets/mimes/directory_disabled.svg +9 -0
- package/static/assets/mimes/directory_error.svg +9 -0
- package/static/assets/mimes/directory_share.svg +9 -0
- package/static/assets/mimes/directory_sync.svg +9 -0
- package/static/assets/mimes/divx.svg +18 -0
- package/static/assets/mimes/document.svg +14 -0
- package/static/assets/mimes/emblem-package.svg +16 -0
- package/static/assets/mimes/eps.svg +24 -0
- package/static/assets/mimes/exec.svg +40 -0
- package/static/assets/mimes/extension.svg +59 -0
- package/static/assets/mimes/file.svg +12 -0
- package/static/assets/mimes/folder-tar.svg +16 -0
- package/static/assets/mimes/folder_tar.svg +16 -0
- package/static/assets/mimes/font-otf.svg +14 -0
- package/static/assets/mimes/font-x-generic.svg +14 -0
- package/static/assets/mimes/font.svg +14 -0
- package/static/assets/mimes/font_bitmap.svg +14 -0
- package/static/assets/mimes/font_truetype.svg +14 -0
- package/static/assets/mimes/font_type1.svg +14 -0
- package/static/assets/mimes/fonts-package.svg +16 -0
- package/static/assets/mimes/gedit-plugin.svg +59 -0
- package/static/assets/mimes/gnome-exe-thumbnailer-generic-x.svg +306 -0
- package/static/assets/mimes/gnome-exe-thumbnailer-generic.svg +306 -0
- package/static/assets/mimes/gnome-exe-thumbnailer-template.svg +306 -0
- package/static/assets/mimes/gnome-fs-executable.svg +40 -0
- package/static/assets/mimes/gnome-mime-application-atom+xml.svg +15 -0
- package/static/assets/mimes/gnome-mime-application-msexcel.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-msword.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-ogg.svg +24 -0
- package/static/assets/mimes/gnome-mime-application-pdf.svg +13 -0
- package/static/assets/mimes/gnome-mime-application-postscript.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-powerpoint.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-rss+xml.svg +15 -0
- package/static/assets/mimes/gnome-mime-application-rtf.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-vnd.ms-excel.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.ms-powerpoint.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.ms-word.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.mspowerpoint.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.oasis.opendocument.formula.svg +188 -0
- package/static/assets/mimes/gnome-mime-application-vnd.oasis.opendocument.text-web.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-vnd.openxmlformats-officedocument.presentationml.presentation.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.openxmlformats-officedocument.presentationml.slideshow.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.openxmlformats-officedocument.spreadsheetml.sheet.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.openxmlformats-officedocument.wordprocessingml.document.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-vnd.rn-realmedia-secure.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-vnd.rn-realmedia-vbr.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-vnd.rn-realmedia.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.doc.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.docx.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.ppt.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.pptx.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.xls.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-wps-office.xlsx.svg +1 -0
- package/static/assets/mimes/gnome-mime-application-x-7z-compressed.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-7zip.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-archive.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-arj.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-bittorrent.svg +53 -0
- package/static/assets/mimes/gnome-mime-application-x-bzip-compressed-tar.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-bzip-compressed.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-bzip.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-class-file.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-compress.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-compressed-tar.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-cpio-compressed.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-cpio.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-deb.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-designer.svg +48 -0
- package/static/assets/mimes/gnome-mime-application-x-executable.svg +40 -0
- package/static/assets/mimes/gnome-mime-application-x-font-afm.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-font-bdf.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-font-linux-psf.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-font-pcf.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-font-sunos-news.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-font-ttf.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-glade.svg +48 -0
- package/static/assets/mimes/gnome-mime-application-x-gnome-app-info.svg +109 -0
- package/static/assets/mimes/gnome-mime-application-x-gnome-theme-package.svg +109 -0
- package/static/assets/mimes/gnome-mime-application-x-gzip.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-gzpostscript.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-jar.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-java.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-killustrator.svg +12 -0
- package/static/assets/mimes/gnome-mime-application-x-lha.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-lhz.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-lzma-compressed-tar.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-lzma.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-ms-dos-executable.svg +306 -0
- package/static/assets/mimes/gnome-mime-application-x-perl.svg +15 -0
- package/static/assets/mimes/gnome-mime-application-x-php.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-x-python-bytecode.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-rar.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-rpm.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-x-ruby.svg +22 -0
- package/static/assets/mimes/gnome-mime-application-x-shellscript.svg +17 -0
- package/static/assets/mimes/gnome-mime-application-x-shockwave-flash.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-x-stuffit.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-tar.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-tarz.svg +16 -0
- package/static/assets/mimes/gnome-mime-application-x-tex.svg +79 -0
- package/static/assets/mimes/gnome-mime-application-x-theme.svg +109 -0
- package/static/assets/mimes/gnome-mime-application-x-zip.svg +14 -0
- package/static/assets/mimes/gnome-mime-application-xhtml+xml.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-xml.svg +18 -0
- package/static/assets/mimes/gnome-mime-application-zip.svg +14 -0
- package/static/assets/mimes/gnome-mime-application.svg +40 -0
- package/static/assets/mimes/gnome-mime-audio.svg +24 -0
- package/static/assets/mimes/gnome-mime-image-vnd.adobe.photoshop.svg +14 -0
- package/static/assets/mimes/gnome-mime-image-x-cmu-raster.svg +12 -0
- package/static/assets/mimes/gnome-mime-image-x-killustrator.svg +12 -0
- package/static/assets/mimes/gnome-mime-image-x-psd.svg +14 -0
- package/static/assets/mimes/gnome-mime-image-x-xpixmap.svg +12 -0
- package/static/assets/mimes/gnome-mime-image.svg +12 -0
- package/static/assets/mimes/gnome-mime-text-html.svg +18 -0
- package/static/assets/mimes/gnome-mime-text-install.svg +20 -0
- package/static/assets/mimes/gnome-mime-text-plain.svg +14 -0
- package/static/assets/mimes/gnome-mime-text-vnd.wap.wml.svg +18 -0
- package/static/assets/mimes/gnome-mime-text-x-changelog.svg +208 -0
- package/static/assets/mimes/gnome-mime-text-x-copying.svg +17 -0
- package/static/assets/mimes/gnome-mime-text-x-csh.svg +17 -0
- package/static/assets/mimes/gnome-mime-text-x-gtkrc.svg +109 -0
- package/static/assets/mimes/gnome-mime-text-x-install.svg +17 -0
- package/static/assets/mimes/gnome-mime-text-x-java-source.svg +14 -0
- package/static/assets/mimes/gnome-mime-text-x-java.svg +14 -0
- package/static/assets/mimes/gnome-mime-text-x-makefile.svg +176 -0
- package/static/assets/mimes/gnome-mime-text-x-opml+xml.svg +15 -0
- package/static/assets/mimes/gnome-mime-text-x-opml.svg +15 -0
- package/static/assets/mimes/gnome-mime-text-x-python.svg +16 -0
- package/static/assets/mimes/gnome-mime-text-x-readme.svg +15 -0
- package/static/assets/mimes/gnome-mime-text-x-sh.svg +17 -0
- package/static/assets/mimes/gnome-mime-text-x-zsh.svg +17 -0
- package/static/assets/mimes/gnome-mime-text.svg +14 -0
- package/static/assets/mimes/gnome-mime-video-x-ms-asf.svg +18 -0
- package/static/assets/mimes/gnome-mime-video-x-ms-wmv.svg +18 -0
- package/static/assets/mimes/gnome-mime-video.svg +18 -0
- package/static/assets/mimes/gnome-mime-x-font-afm.svg +14 -0
- package/static/assets/mimes/gnome-mime-x-install.svg +20 -0
- package/static/assets/mimes/gnome-package.svg +16 -0
- package/static/assets/mimes/html.svg +18 -0
- package/static/assets/mimes/image-gif.svg +12 -0
- package/static/assets/mimes/image-jpeg.svg +12 -0
- package/static/assets/mimes/image-png.svg +12 -0
- package/static/assets/mimes/image-svg+xml-compressed.svg +12 -0
- package/static/assets/mimes/image-svg+xml.svg +12 -0
- package/static/assets/mimes/image-svg.svg +12 -0
- package/static/assets/mimes/image-vnd.adobe.photoshop.svg +14 -0
- package/static/assets/mimes/image-vnd.microsoft.icon.svg +12 -0
- package/static/assets/mimes/image-x-eps.svg +24 -0
- package/static/assets/mimes/image-x-generic.svg +12 -0
- package/static/assets/mimes/image-x-psd.svg +14 -0
- package/static/assets/mimes/image-x-psdimage-x-psd.svg +14 -0
- package/static/assets/mimes/image-x-xcf.svg +21 -0
- package/static/assets/mimes/image-x-xfig.svg +12 -0
- package/static/assets/mimes/image.svg +12 -0
- package/static/assets/mimes/internet-feed.svg +15 -0
- package/static/assets/mimes/libpeas-plugin.svg +59 -0
- package/static/assets/mimes/libreoffice-database.svg +155 -0
- package/static/assets/mimes/libreoffice-extension.svg +59 -0
- package/static/assets/mimes/libreoffice-extensionn.svg +59 -0
- package/static/assets/mimes/libreoffice-formula.svg +188 -0
- package/static/assets/mimes/libreoffice-oasis-formula.svg +188 -0
- package/static/assets/mimes/libreoffice34-extension.svg +59 -0
- package/static/assets/mimes/media-audio.svg +24 -0
- package/static/assets/mimes/media-video.svg +18 -0
- package/static/assets/mimes/mime-ascii.svg +14 -0
- package/static/assets/mimes/mime_ascii.svg +14 -0
- package/static/assets/mimes/misc.svg +14 -0
- package/static/assets/mimes/multipart-encrypted.svg +273 -0
- package/static/assets/mimes/music.svg +24 -0
- package/static/assets/mimes/none.svg +110 -0
- package/static/assets/mimes/old-file.svg +22 -0
- package/static/assets/mimes/openofficeorg3-extension.svg +59 -0
- package/static/assets/mimes/package-x-generic.svg +16 -0
- package/static/assets/mimes/package.svg +16 -0
- package/static/assets/mimes/package_editors.svg +14 -0
- package/static/assets/mimes/packages-gdebi.svg +14 -0
- package/static/assets/mimes/pdf.svg +13 -0
- package/static/assets/mimes/preferences-certificate.svg +28 -0
- package/static/assets/mimes/preferences-plugin.svg +59 -0
- package/static/assets/mimes/rar.svg +14 -0
- package/static/assets/mimes/raw.svg +12 -0
- package/static/assets/mimes/rpm.svg +14 -0
- package/static/assets/mimes/scii.svg +14 -0
- package/static/assets/mimes/shellscript.svg +17 -0
- package/static/assets/mimes/sound.svg +24 -0
- package/static/assets/mimes/stock_certificate.svg +28 -0
- package/static/assets/mimes/stock_new-formula.svg +188 -0
- package/static/assets/mimes/stock_new-html.svg +18 -0
- package/static/assets/mimes/stock_script.svg +17 -0
- package/static/assets/mimes/stock_scripts.svg +17 -0
- package/static/assets/mimes/tar.svg +16 -0
- package/static/assets/mimes/text-css.svg +18 -0
- package/static/assets/mimes/text-enriched.svg +14 -0
- package/static/assets/mimes/text-html.svg +18 -0
- package/static/assets/mimes/text-htmlh.svg +18 -0
- package/static/assets/mimes/text-javascript.svg +6 -0
- package/static/assets/mimes/text-markdown.svg +26 -0
- package/static/assets/mimes/text-mht.svg +18 -0
- package/static/assets/mimes/text-plain.svg +14 -0
- package/static/assets/mimes/text-richtext.svg +14 -0
- package/static/assets/mimes/text-typescript.svg +1 -0
- package/static/assets/mimes/text-x-bak.svg +14 -0
- package/static/assets/mimes/text-x-bibtex.svg +79 -0
- package/static/assets/mimes/text-x-changelog.svg +208 -0
- package/static/assets/mimes/text-x-copying.svg +17 -0
- package/static/assets/mimes/text-x-generic.svg +14 -0
- package/static/assets/mimes/text-x-gtkrc.svg +109 -0
- package/static/assets/mimes/text-x-install.svg +20 -0
- package/static/assets/mimes/text-x-java-source.svg +14 -0
- package/static/assets/mimes/text-x-java.svg +14 -0
- package/static/assets/mimes/text-x-log.svg +1135 -0
- package/static/assets/mimes/text-x-lua.svg +14 -0
- package/static/assets/mimes/text-x-makefile.svg +176 -0
- package/static/assets/mimes/text-x-microdvd.svg +210 -0
- package/static/assets/mimes/text-x-nfo.svg +14 -0
- package/static/assets/mimes/text-x-opml+xml.svg +15 -0
- package/static/assets/mimes/text-x-opml.svg +15 -0
- package/static/assets/mimes/text-x-patch.svg +19 -0
- package/static/assets/mimes/text-x-perl.svg +15 -0
- package/static/assets/mimes/text-x-python.svg +16 -0
- package/static/assets/mimes/text-x-readme.svg +15 -0
- package/static/assets/mimes/text-x-ruby.svg +22 -0
- package/static/assets/mimes/text-x-script.svg +17 -0
- package/static/assets/mimes/text-x-tex.svg +79 -0
- package/static/assets/mimes/text-x-vala.svg +14 -0
- package/static/assets/mimes/text-x.svg +14 -0
- package/static/assets/mimes/text-xmcd.svg +358 -0
- package/static/assets/mimes/text-xml.svg +18 -0
- package/static/assets/mimes/text-yaml.svg +1 -0
- package/static/assets/mimes/text.svg +14 -0
- package/static/assets/mimes/text2.svg +14 -0
- package/static/assets/mimes/tgz.svg +16 -0
- package/static/assets/mimes/txt.svg +14 -0
- package/static/assets/mimes/txt2.svg +14 -0
- package/static/assets/mimes/unknown.svg +110 -0
- package/static/assets/mimes/uri-mms.svg +18 -0
- package/static/assets/mimes/uri-mmst.svg +18 -0
- package/static/assets/mimes/uri-mmsu.svg +18 -0
- package/static/assets/mimes/uri-pnm.svg +18 -0
- package/static/assets/mimes/uri-rtspt.svg +18 -0
- package/static/assets/mimes/uri-rtspu.svg +18 -0
- package/static/assets/mimes/video-quicktime.svg +18 -0
- package/static/assets/mimes/video-vivo.svg +18 -0
- package/static/assets/mimes/video-wavelet.svg +18 -0
- package/static/assets/mimes/video-webm.svg +18 -0
- package/static/assets/mimes/video-x-anim.svg +18 -0
- package/static/assets/mimes/video-x-flic.svg +18 -0
- package/static/assets/mimes/video-x-generic.svg +18 -0
- package/static/assets/mimes/video-x-google-vlc-plugin.svg +18 -0
- package/static/assets/mimes/video-x-javafx.svg +18 -0
- package/static/assets/mimes/video-x-matroska.svg +18 -0
- package/static/assets/mimes/video-x-mng.svg +18 -0
- package/static/assets/mimes/video-x-ms-asf-plugin.svg +18 -0
- package/static/assets/mimes/video-x-ms-asf.svg +18 -0
- package/static/assets/mimes/video-x-ms-wmp.svg +18 -0
- package/static/assets/mimes/video-x-ms-wmv.svg +18 -0
- package/static/assets/mimes/video-x-nsv.svg +18 -0
- package/static/assets/mimes/video-x-sgi-movie.svg +18 -0
- package/static/assets/mimes/video-x-theora+ogg.svg +18 -0
- package/static/assets/mimes/video-x-wmv.svg +18 -0
- package/static/assets/mimes/video.svg +18 -0
- package/static/assets/mimes/www.svg +18 -0
- package/static/assets/mimes/x-kde-nsplugin-generated.svg +59 -0
- package/static/assets/mimes/zip.svg +14 -0
- package/static/assets/pdfjs/LICENSE +177 -0
- package/static/assets/pdfjs/build/pdf.mjs +23371 -0
- package/static/assets/pdfjs/build/pdf.mjs.map +1 -0
- package/static/assets/pdfjs/build/pdf.sandbox.mjs +218 -0
- package/static/assets/pdfjs/build/pdf.sandbox.mjs.map +1 -0
- package/static/assets/pdfjs/build/pdf.worker.mjs +58148 -0
- package/static/assets/pdfjs/build/pdf.worker.mjs.map +1 -0
- package/static/assets/pdfjs/version +1 -0
- package/static/assets/pdfjs/web/cmaps/78-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Add-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Add-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Add-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Add-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-0.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-1.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-3.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-4.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-5.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/B5pc-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/B5pc-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS1-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS1-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS2-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/CNS2-V.bcmap +3 -0
- package/static/assets/pdfjs/web/cmaps/ETHK-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/ETHK-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/ETen-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/ETen-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/ETenms-B5-H.bcmap +3 -0
- package/static/assets/pdfjs/web/cmaps/ETenms-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Ext-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Ext-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GB-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GB-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GB-H.bcmap +4 -0
- package/static/assets/pdfjs/web/cmaps/GB-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBK-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBK-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBK2K-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBK2K-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBKp-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBKp-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBT-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBT-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBT-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBT-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBpc-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/GBpc-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKdla-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKdla-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKdlb-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKdlb-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKgccs-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKgccs-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKm314-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKm314-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKm471-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKm471-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKscs-B5-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/HKscs-B5-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Hankaku.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Hiragana.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-Johab-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-Johab-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCms-UHC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCms-UHC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Katakana.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/LICENSE +36 -0
- package/static/assets/pdfjs/web/cmaps/NWP-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/NWP-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/RKSJ-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/RKSJ-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/Roman.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/V.bcmap +0 -0
- package/static/assets/pdfjs/web/cmaps/WP-Symbol.bcmap +0 -0
- package/static/assets/pdfjs/web/compressed.tracemonkey-pldi-09.pdf +0 -0
- package/static/assets/pdfjs/web/debugger.css +114 -0
- package/static/assets/pdfjs/web/debugger.mjs +627 -0
- package/static/assets/pdfjs/web/iccs/CGATS001Compat-v2-micro.icc +0 -0
- package/static/assets/pdfjs/web/iccs/LICENSE +116 -0
- package/static/assets/pdfjs/web/images/altText_add.svg +3 -0
- package/static/assets/pdfjs/web/images/altText_disclaimer.svg +3 -0
- package/static/assets/pdfjs/web/images/altText_done.svg +3 -0
- package/static/assets/pdfjs/web/images/altText_spinner.svg +30 -0
- package/static/assets/pdfjs/web/images/altText_warning.svg +3 -0
- package/static/assets/pdfjs/web/images/annotation-check.svg +11 -0
- package/static/assets/pdfjs/web/images/annotation-comment.svg +16 -0
- package/static/assets/pdfjs/web/images/annotation-help.svg +26 -0
- package/static/assets/pdfjs/web/images/annotation-insert.svg +10 -0
- package/static/assets/pdfjs/web/images/annotation-key.svg +11 -0
- package/static/assets/pdfjs/web/images/annotation-newparagraph.svg +11 -0
- package/static/assets/pdfjs/web/images/annotation-noicon.svg +7 -0
- package/static/assets/pdfjs/web/images/annotation-note.svg +42 -0
- package/static/assets/pdfjs/web/images/annotation-paperclip.svg +6 -0
- package/static/assets/pdfjs/web/images/annotation-paragraph.svg +16 -0
- package/static/assets/pdfjs/web/images/annotation-pushpin.svg +7 -0
- package/static/assets/pdfjs/web/images/comment-actionsButton.svg +3 -0
- package/static/assets/pdfjs/web/images/comment-closeButton.svg +3 -0
- package/static/assets/pdfjs/web/images/comment-editButton.svg +3 -0
- package/static/assets/pdfjs/web/images/cursor-editorFreeHighlight.svg +6 -0
- package/static/assets/pdfjs/web/images/cursor-editorFreeText.svg +3 -0
- package/static/assets/pdfjs/web/images/cursor-editorInk.svg +4 -0
- package/static/assets/pdfjs/web/images/cursor-editorTextHighlight.svg +8 -0
- package/static/assets/pdfjs/web/images/editor-toolbar-delete.svg +5 -0
- package/static/assets/pdfjs/web/images/editor-toolbar-edit.svg +3 -0
- package/static/assets/pdfjs/web/images/findbarButton-next.svg +3 -0
- package/static/assets/pdfjs/web/images/findbarButton-previous.svg +3 -0
- package/static/assets/pdfjs/web/images/gv-toolbarButton-download.svg +3 -0
- package/static/assets/pdfjs/web/images/loading-icon.gif +0 -0
- package/static/assets/pdfjs/web/images/loading.svg +1 -0
- package/static/assets/pdfjs/web/images/messageBar_closingButton.svg +3 -0
- package/static/assets/pdfjs/web/images/messageBar_info.svg +3 -0
- package/static/assets/pdfjs/web/images/messageBar_warning.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-documentProperties.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-firstPage.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-handTool.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-lastPage.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-rotateCcw.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-rotateCw.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-scrollHorizontal.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-scrollPage.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-scrollVertical.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-scrollWrapped.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-selectTool.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-spreadEven.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-spreadNone.svg +3 -0
- package/static/assets/pdfjs/web/images/secondaryToolbarButton-spreadOdd.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-bookmark.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-currentOutlineItem.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-download.svg +4 -0
- package/static/assets/pdfjs/web/images/toolbarButton-editorFreeText.svg +5 -0
- package/static/assets/pdfjs/web/images/toolbarButton-editorHighlight.svg +6 -0
- package/static/assets/pdfjs/web/images/toolbarButton-editorInk.svg +4 -0
- package/static/assets/pdfjs/web/images/toolbarButton-editorSignature.svg +6 -0
- package/static/assets/pdfjs/web/images/toolbarButton-editorStamp.svg +8 -0
- package/static/assets/pdfjs/web/images/toolbarButton-menuArrow.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-openFile.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-pageDown.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-pageUp.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-presentationMode.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-print.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-search.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-secondaryToolbarToggle.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-sidebarToggle.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-viewAttachments.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-viewLayers.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-viewOutline.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-viewThumbnail.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-zoomIn.svg +3 -0
- package/static/assets/pdfjs/web/images/toolbarButton-zoomOut.svg +3 -0
- package/static/assets/pdfjs/web/images/treeitem-collapsed.svg +1 -0
- package/static/assets/pdfjs/web/images/treeitem-expanded.svg +1 -0
- package/static/assets/pdfjs/web/locale/ach/viewer.ftl +275 -0
- package/static/assets/pdfjs/web/locale/af/viewer.ftl +262 -0
- package/static/assets/pdfjs/web/locale/an/viewer.ftl +307 -0
- package/static/assets/pdfjs/web/locale/ar/viewer.ftl +627 -0
- package/static/assets/pdfjs/web/locale/ast/viewer.ftl +251 -0
- package/static/assets/pdfjs/web/locale/az/viewer.ftl +307 -0
- package/static/assets/pdfjs/web/locale/be/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/bg/viewer.ftl +451 -0
- package/static/assets/pdfjs/web/locale/bn/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/bo/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/br/viewer.ftl +382 -0
- package/static/assets/pdfjs/web/locale/brx/viewer.ftl +268 -0
- package/static/assets/pdfjs/web/locale/bs/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/ca/viewer.ftl +343 -0
- package/static/assets/pdfjs/web/locale/cak/viewer.ftl +341 -0
- package/static/assets/pdfjs/web/locale/ckb/viewer.ftl +292 -0
- package/static/assets/pdfjs/web/locale/cs/viewer.ftl +621 -0
- package/static/assets/pdfjs/web/locale/cy/viewer.ftl +627 -0
- package/static/assets/pdfjs/web/locale/da/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/de/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/dsb/viewer.ftl +621 -0
- package/static/assets/pdfjs/web/locale/el/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/en-CA/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/en-GB/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/en-US/viewer.ftl +667 -0
- package/static/assets/pdfjs/web/locale/eo/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/es-AR/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/es-CL/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/es-ES/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/es-MX/viewer.ftl +580 -0
- package/static/assets/pdfjs/web/locale/et/viewer.ftl +319 -0
- package/static/assets/pdfjs/web/locale/eu/viewer.ftl +619 -0
- package/static/assets/pdfjs/web/locale/fa/viewer.ftl +378 -0
- package/static/assets/pdfjs/web/locale/ff/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/fi/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/fr/viewer.ftl +611 -0
- package/static/assets/pdfjs/web/locale/fur/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/fy-NL/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/ga-IE/viewer.ftl +263 -0
- package/static/assets/pdfjs/web/locale/gd/viewer.ftl +343 -0
- package/static/assets/pdfjs/web/locale/gl/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/gn/viewer.ftl +614 -0
- package/static/assets/pdfjs/web/locale/gu-IN/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/he/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/hi-IN/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/hr/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/hsb/viewer.ftl +621 -0
- package/static/assets/pdfjs/web/locale/hu/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/hy-AM/viewer.ftl +314 -0
- package/static/assets/pdfjs/web/locale/hye/viewer.ftl +318 -0
- package/static/assets/pdfjs/web/locale/ia/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/id/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/is/viewer.ftl +600 -0
- package/static/assets/pdfjs/web/locale/it/viewer.ftl +623 -0
- package/static/assets/pdfjs/web/locale/ja/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/ka/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/kab/viewer.ftl +595 -0
- package/static/assets/pdfjs/web/locale/kk/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/km/viewer.ftl +273 -0
- package/static/assets/pdfjs/web/locale/kn/viewer.ftl +263 -0
- package/static/assets/pdfjs/web/locale/ko/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/lij/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/lo/viewer.ftl +343 -0
- package/static/assets/pdfjs/web/locale/locale.json +1 -0
- package/static/assets/pdfjs/web/locale/lt/viewer.ftl +318 -0
- package/static/assets/pdfjs/web/locale/ltg/viewer.ftl +296 -0
- package/static/assets/pdfjs/web/locale/lv/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/meh/viewer.ftl +137 -0
- package/static/assets/pdfjs/web/locale/mk/viewer.ftl +265 -0
- package/static/assets/pdfjs/web/locale/ml/viewer.ftl +524 -0
- package/static/assets/pdfjs/web/locale/mr/viewer.ftl +289 -0
- package/static/assets/pdfjs/web/locale/ms/viewer.ftl +297 -0
- package/static/assets/pdfjs/web/locale/my/viewer.ftl +256 -0
- package/static/assets/pdfjs/web/locale/nb-NO/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/ne-NP/viewer.ftl +284 -0
- package/static/assets/pdfjs/web/locale/nl/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/nn-NO/viewer.ftl +609 -0
- package/static/assets/pdfjs/web/locale/oc/viewer.ftl +436 -0
- package/static/assets/pdfjs/web/locale/pa-IN/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/pl/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/pt-BR/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/pt-PT/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/rm/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/ro/viewer.ftl +302 -0
- package/static/assets/pdfjs/web/locale/ru/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/sat/viewer.ftl +355 -0
- package/static/assets/pdfjs/web/locale/sc/viewer.ftl +394 -0
- package/static/assets/pdfjs/web/locale/scn/viewer.ftl +124 -0
- package/static/assets/pdfjs/web/locale/sco/viewer.ftl +314 -0
- package/static/assets/pdfjs/web/locale/si/viewer.ftl +301 -0
- package/static/assets/pdfjs/web/locale/sk/viewer.ftl +621 -0
- package/static/assets/pdfjs/web/locale/skr/viewer.ftl +524 -0
- package/static/assets/pdfjs/web/locale/sl/viewer.ftl +621 -0
- package/static/assets/pdfjs/web/locale/son/viewer.ftl +256 -0
- package/static/assets/pdfjs/web/locale/sq/viewer.ftl +606 -0
- package/static/assets/pdfjs/web/locale/sr/viewer.ftl +451 -0
- package/static/assets/pdfjs/web/locale/sv-SE/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/szl/viewer.ftl +307 -0
- package/static/assets/pdfjs/web/locale/ta/viewer.ftl +273 -0
- package/static/assets/pdfjs/web/locale/te/viewer.ftl +289 -0
- package/static/assets/pdfjs/web/locale/tg/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/th/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/tl/viewer.ftl +307 -0
- package/static/assets/pdfjs/web/locale/tr/viewer.ftl +615 -0
- package/static/assets/pdfjs/web/locale/trs/viewer.ftl +247 -0
- package/static/assets/pdfjs/web/locale/uk/viewer.ftl +618 -0
- package/static/assets/pdfjs/web/locale/ur/viewer.ftl +298 -0
- package/static/assets/pdfjs/web/locale/uz/viewer.ftl +237 -0
- package/static/assets/pdfjs/web/locale/vi/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/wo/viewer.ftl +177 -0
- package/static/assets/pdfjs/web/locale/xh/viewer.ftl +262 -0
- package/static/assets/pdfjs/web/locale/zh-CN/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/locale/zh-TW/viewer.ftl +603 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitDingbats.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitFixed.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitFixedBold.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitFixedItalic.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitSerif.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitSerifBold.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitSerifItalic.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/FoxitSymbol.pfb +0 -0
- package/static/assets/pdfjs/web/standard_fonts/LICENSE_FOXIT +27 -0
- package/static/assets/pdfjs/web/standard_fonts/LICENSE_LIBERATION +102 -0
- package/static/assets/pdfjs/web/standard_fonts/LiberationSans-Bold.ttf +0 -0
- package/static/assets/pdfjs/web/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
- package/static/assets/pdfjs/web/standard_fonts/LiberationSans-Italic.ttf +0 -0
- package/static/assets/pdfjs/web/standard_fonts/LiberationSans-Regular.ttf +0 -0
- package/static/assets/pdfjs/web/viewer.css +6766 -0
- package/static/assets/pdfjs/web/viewer.html +768 -0
- package/static/assets/pdfjs/web/viewer.mjs +17445 -0
- package/static/assets/pdfjs/web/viewer.mjs.map +1 -0
- package/static/assets/pdfjs/web/wasm/LICENSE_OPENJPEG +39 -0
- package/static/assets/pdfjs/web/wasm/LICENSE_PDFJS_OPENJPEG +22 -0
- package/static/assets/pdfjs/web/wasm/LICENSE_PDFJS_QCMS +22 -0
- package/static/assets/pdfjs/web/wasm/LICENSE_QCMS +21 -0
- package/static/assets/pdfjs/web/wasm/openjpeg.wasm +0 -0
- package/static/assets/pdfjs/web/wasm/openjpeg_nowasm_fallback.js +29 -0
- package/static/assets/pdfjs/web/wasm/qcms_bg.wasm +0 -0
- package/static/assets/protected.png +0 -0
- package/static/chunk-2EBPSJJT.js +1 -0
- package/static/chunk-3V7XYPSJ.js +4 -0
- package/static/chunk-4IYQWOGR.js +1 -0
- package/static/chunk-5RFOYHL3.js +1 -0
- package/static/chunk-7PCJMNDR.js +1 -0
- package/static/chunk-7WRQICEB.js +1 -0
- package/static/chunk-AKM2LQUU.js +1 -0
- package/static/chunk-ATFX6EIO.js +1 -0
- package/static/chunk-ATLT5DK5.js +1 -0
- package/static/chunk-DVHXFWN7.js +1 -0
- package/static/chunk-E27KCFP6.js +24 -0
- package/static/chunk-FPEGN42P.js +564 -0
- package/static/chunk-GAL4ENT6.js +1 -0
- package/static/chunk-GWUCWOVK.js +1 -0
- package/static/chunk-I644MKAO.js +1 -0
- package/static/chunk-IFJD2ISM.js +1 -0
- package/static/chunk-IUUTIYHF.js +1 -0
- package/static/chunk-JXZCNFW7.js +1 -0
- package/static/chunk-MEKYVWV4.js +1 -0
- package/static/chunk-MQZEETHL.js +7 -0
- package/static/chunk-NPLV4M2H.js +1 -0
- package/static/chunk-NU3TPXFY.js +4 -0
- package/static/chunk-O4CXCITB.js +1 -0
- package/static/chunk-OWGR4BYT.js +1 -0
- package/static/chunk-QFRQQ4K3.js +1 -0
- package/static/chunk-RAVRSB6R.js +1 -0
- package/static/chunk-RUNMEQOV.js +1 -0
- package/static/chunk-UGSGMP2I.js +1 -0
- package/static/chunk-UV4UIX6J.js +1 -0
- package/static/chunk-VBD7QTEP.js +1 -0
- package/static/chunk-VBWPPICY.js +1 -0
- package/static/chunk-VQRN7HFP.js +1 -0
- package/static/chunk-WTPZUBNX.js +24 -0
- package/static/chunk-XI72YZ2M.js +1 -0
- package/static/chunk-Z6IHRUVL.js +1 -0
- package/static/chunk-ZVPX26RB.js +1 -0
- package/static/chunk-ZZ3LHYOY.js +1 -0
- package/static/favicon.ico +0 -0
- package/static/index.html +19 -0
- package/static/main-ILCPT3IK.js +10 -0
- package/static/media/videogular-54D7AHHD.woff +0 -0
- package/static/media/videogular-H7MSXT3I.eot +0 -0
- package/static/media/videogular-ULU7CHZC.ttf +0 -0
- package/static/media/videogular-WX5DESMV.svg +29 -0
- package/static/polyfills-GNKGQMRJ.js +2 -0
- package/static/prerendered-routes.json +3 -0
- package/static/scripts-MQMRSPYD.js +30 -0
- package/static/styles-TJJDSCD4.css +1 -0
- package/sync-in-server.js +309 -0
|
@@ -0,0 +1,253 @@
|
|
|
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";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
Object.defineProperty(exports, "FilesTasksManager", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function() {
|
|
12
|
+
return FilesTasksManager;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
const _common = require("@nestjs/common");
|
|
16
|
+
const _nodecrypto = /*#__PURE__*/ _interop_require_default(require("node:crypto"));
|
|
17
|
+
const _nodepath = /*#__PURE__*/ _interop_require_default(require("node:path"));
|
|
18
|
+
const _promises = require("node:timers/promises");
|
|
19
|
+
const _shared = require("../../../common/shared");
|
|
20
|
+
const _cacheservice = require("../../../infrastructure/cache/services/cache.service");
|
|
21
|
+
const _cache = require("../constants/cache");
|
|
22
|
+
const _operations = require("../constants/operations");
|
|
23
|
+
const _filetaskevent = require("../events/file-task-event");
|
|
24
|
+
const _filetask = require("../models/file-task");
|
|
25
|
+
const _files = require("../utils/files");
|
|
26
|
+
const _sendfile = require("../utils/send-file");
|
|
27
|
+
const _filesmethodsservice = require("./files-methods.service");
|
|
28
|
+
function _interop_require_default(obj) {
|
|
29
|
+
return obj && obj.__esModule ? obj : {
|
|
30
|
+
default: obj
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
34
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
35
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
36
|
+
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
37
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
38
|
+
}
|
|
39
|
+
function _ts_metadata(k, v) {
|
|
40
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
41
|
+
}
|
|
42
|
+
let FilesTasksManager = class FilesTasksManager {
|
|
43
|
+
static getCacheKey(userId, taskId) {
|
|
44
|
+
return `${_cache.CACHE_TASK_PREFIX}-${userId}-${taskId || '*'}`;
|
|
45
|
+
}
|
|
46
|
+
async createTask(type, user, space, dto, method) {
|
|
47
|
+
const taskId = _nodecrypto.default.randomUUID();
|
|
48
|
+
const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId);
|
|
49
|
+
const newTask = new _filetask.FileTask(taskId, type, (0, _files.dirName)(space.url), (0, _files.fileName)(space.url));
|
|
50
|
+
await this.storeTask(cacheKey, newTask);
|
|
51
|
+
space.task = {
|
|
52
|
+
cacheKey: cacheKey,
|
|
53
|
+
props: {}
|
|
54
|
+
};
|
|
55
|
+
this.filesMethods[method](user, space, dto).then((data)=>{
|
|
56
|
+
this.logger.debug(`${this.createTask.name} - ${newTask.name} : ${method} done`);
|
|
57
|
+
this.setTaskDone(cacheKey, _filetask.FileTaskStatus.SUCCESS, data).catch((e)=>this.logger.error(`${this.createTask.name} - ${e}`));
|
|
58
|
+
}).catch((e)=>{
|
|
59
|
+
this.logger.error(`${this.createTask.name} - ${newTask.name} : ${method} : ${e}`);
|
|
60
|
+
this.setTaskDone(cacheKey, _filetask.FileTaskStatus.ERROR, e.message).catch((e)=>this.logger.error(`${this.createTask.name} - ${e}`));
|
|
61
|
+
});
|
|
62
|
+
return newTask;
|
|
63
|
+
}
|
|
64
|
+
async getTasks(userId, taskId) {
|
|
65
|
+
const cacheKey = FilesTasksManager.getCacheKey(userId, taskId);
|
|
66
|
+
if (taskId) {
|
|
67
|
+
const task = await this.cache.get(cacheKey);
|
|
68
|
+
if (task) return task;
|
|
69
|
+
throw new _common.HttpException('Task not found', _common.HttpStatus.NOT_FOUND);
|
|
70
|
+
} else {
|
|
71
|
+
const keys = await this.cache.keys(cacheKey);
|
|
72
|
+
return keys.length ? await this.cache.mget(keys) : [];
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
async deleteTasks(user, taskId) {
|
|
76
|
+
const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId);
|
|
77
|
+
let keys;
|
|
78
|
+
if (taskId) {
|
|
79
|
+
keys = [
|
|
80
|
+
cacheKey
|
|
81
|
+
];
|
|
82
|
+
} else {
|
|
83
|
+
keys = await this.cache.keys(cacheKey);
|
|
84
|
+
}
|
|
85
|
+
if (!keys.length) return;
|
|
86
|
+
for (const key of keys){
|
|
87
|
+
const task = await this.cache.get(key);
|
|
88
|
+
if (!task || task.status === _filetask.FileTaskStatus.PENDING) continue;
|
|
89
|
+
if (task.props.compressInDirectory === false) {
|
|
90
|
+
// delete task file
|
|
91
|
+
const rPath = _nodepath.default.join(user.tasksPath, task.name);
|
|
92
|
+
(0, _files.removeFiles)(rPath).catch((e)=>this.logger.error(`${this.deleteTasks.name} - ${e}`));
|
|
93
|
+
}
|
|
94
|
+
// clear watcher
|
|
95
|
+
this.stopWatch(key).catch((e)=>this.logger.error(`${this.deleteTasks.name} - ${e}`));
|
|
96
|
+
// remove from cache
|
|
97
|
+
this.cache.del(key).catch((e)=>this.logger.error(`${this.deleteTasks.name} - ${e}`));
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
async downloadArchive(user, taskId, req, res) {
|
|
101
|
+
const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId);
|
|
102
|
+
const task = await this.cache.get(cacheKey);
|
|
103
|
+
if (!task || task.status !== _filetask.FileTaskStatus.SUCCESS || task.props.compressInDirectory !== false) {
|
|
104
|
+
throw new _common.HttpException('Not applicable', _common.HttpStatus.BAD_REQUEST);
|
|
105
|
+
}
|
|
106
|
+
const rPath = _nodepath.default.join(user.tasksPath, task.name);
|
|
107
|
+
const sendFile = new _sendfile.SendFile(rPath, true);
|
|
108
|
+
try {
|
|
109
|
+
await sendFile.checks();
|
|
110
|
+
} catch (e) {
|
|
111
|
+
throw new _common.HttpException(e.message, e.httpCode);
|
|
112
|
+
}
|
|
113
|
+
return await sendFile.stream(req, res);
|
|
114
|
+
}
|
|
115
|
+
async storeTask(cacheKey, task) {
|
|
116
|
+
task.startedAt = (0, _shared.currentTimeStamp)(null, true);
|
|
117
|
+
task.status = _filetask.FileTaskStatus.PENDING;
|
|
118
|
+
try {
|
|
119
|
+
await this.cache.set(cacheKey, task, _cache.CACHE_TASK_TTL);
|
|
120
|
+
} catch (e) {
|
|
121
|
+
this.logger.error(`${this.storeTask.name} - ${e}`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
async setTaskDone(cacheKey, status, result) {
|
|
125
|
+
const task = await this.cache.get(cacheKey);
|
|
126
|
+
if (task) {
|
|
127
|
+
task.status = status;
|
|
128
|
+
task.endedAt = (0, _shared.currentTimeStamp)(null, true);
|
|
129
|
+
if (result) {
|
|
130
|
+
if (typeof result === 'string') {
|
|
131
|
+
task.result = result;
|
|
132
|
+
} else {
|
|
133
|
+
Object.assign(task, result);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
await this.cache.set(cacheKey, task, _cache.CACHE_TASK_TTL);
|
|
137
|
+
}
|
|
138
|
+
await this.stopWatch(cacheKey);
|
|
139
|
+
}
|
|
140
|
+
async updateTask(cacheKey, props, task) {
|
|
141
|
+
let ftask = await this.cache.get(cacheKey);
|
|
142
|
+
if (ftask) {
|
|
143
|
+
if (task) ftask = {
|
|
144
|
+
...ftask,
|
|
145
|
+
...task
|
|
146
|
+
};
|
|
147
|
+
if (props) ftask.props = {
|
|
148
|
+
...ftask.props,
|
|
149
|
+
...props
|
|
150
|
+
};
|
|
151
|
+
await this.cache.set(cacheKey, ftask, _cache.CACHE_TASK_TTL);
|
|
152
|
+
} else {
|
|
153
|
+
await this.stopWatch(cacheKey);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
async startWatch(space, taskType, rPath, taskPath) {
|
|
157
|
+
if (!space.task?.cacheKey || space.task.cacheKey in this.tasksWatcher) return;
|
|
158
|
+
this.logger.verbose(`${this.startWatch.name} - ${space.task.cacheKey}`);
|
|
159
|
+
this.updateTask(space.task.cacheKey, space.task?.props, {
|
|
160
|
+
name: (0, _files.fileName)(rPath),
|
|
161
|
+
path: taskPath
|
|
162
|
+
}).catch((e)=>this.logger.error(`${this.startWatch.name} - ${e}`));
|
|
163
|
+
switch(taskType){
|
|
164
|
+
case _operations.FILE_OPERATION.COMPRESS:
|
|
165
|
+
this.tasksWatcher[space.task.cacheKey] = setInterval(async ()=>this.updateCompressTask(space, rPath), this.watchInterval);
|
|
166
|
+
return;
|
|
167
|
+
case _operations.FILE_OPERATION.DECOMPRESS:
|
|
168
|
+
this.tasksWatcher[space.task.cacheKey] = setInterval(async ()=>this.updateDecompressTask(space, rPath), this.watchInterval);
|
|
169
|
+
return;
|
|
170
|
+
case _operations.FILE_OPERATION.DOWNLOAD:
|
|
171
|
+
this.tasksWatcher[space.task.cacheKey] = setInterval(async ()=>this.updateDownloadTask(space, rPath), this.watchInterval);
|
|
172
|
+
return;
|
|
173
|
+
case _operations.FILE_OPERATION.COPY:
|
|
174
|
+
case _operations.FILE_OPERATION.MOVE:
|
|
175
|
+
this.tasksWatcher[space.task.cacheKey] = setInterval(async ()=>this.updateCopyMoveTask(space, rPath), this.watchInterval);
|
|
176
|
+
return;
|
|
177
|
+
default:
|
|
178
|
+
this.logger.warn(`${this.startWatch.name} - unknown task type ${taskType}`);
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
async stopWatch(cacheKey) {
|
|
183
|
+
if (!(cacheKey in this.tasksWatcher)) return;
|
|
184
|
+
await (0, _promises.setTimeout)(this.watchInterval);
|
|
185
|
+
clearInterval(this.tasksWatcher[cacheKey]);
|
|
186
|
+
delete this.tasksWatcher[cacheKey];
|
|
187
|
+
}
|
|
188
|
+
async updateCompressTask(space, rPath) {
|
|
189
|
+
try {
|
|
190
|
+
space.task.props.size = await (0, _files.fileSize)(rPath);
|
|
191
|
+
await this.updateTask(space.task.cacheKey, space.task.props).catch((e)=>this.logger.error(`${this.updateCompressTask.name} - ${e}`));
|
|
192
|
+
} catch (e) {
|
|
193
|
+
this.logger.error(`${this.updateCompressTask.name} - ${e}`);
|
|
194
|
+
await this.stopWatch(space.task.cacheKey);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
async updateDecompressTask(space, rPath) {
|
|
198
|
+
try {
|
|
199
|
+
space.task.props = await (0, _files.countDirEntries)(rPath);
|
|
200
|
+
this.updateTask(space.task.cacheKey, space.task.props).catch((e)=>this.logger.error(`${this.updateDecompressTask.name} - ${e}`));
|
|
201
|
+
} catch (e) {
|
|
202
|
+
this.logger.error(`${this.updateDecompressTask.name} - ${e}`);
|
|
203
|
+
await this.stopWatch(space.task.cacheKey);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
async updateDownloadTask(space, rPath) {
|
|
207
|
+
try {
|
|
208
|
+
await this.calcSizeAndProgressTask(space, rPath);
|
|
209
|
+
this.updateTask(space.task.cacheKey, space.task.props).catch((e)=>this.logger.error(`${this.updateDownloadTask.name} - ${e}`));
|
|
210
|
+
} catch (e) {
|
|
211
|
+
this.logger.error(`${this.updateDownloadTask.name} - ${e}`);
|
|
212
|
+
await this.stopWatch(space.task.cacheKey);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
async updateCopyMoveTask(space, rPath) {
|
|
216
|
+
try {
|
|
217
|
+
if (await (0, _files.isPathIsDir)(rPath)) {
|
|
218
|
+
space.task.props = await (0, _files.countDirEntries)(rPath);
|
|
219
|
+
} else {
|
|
220
|
+
await this.calcSizeAndProgressTask(space, rPath);
|
|
221
|
+
}
|
|
222
|
+
this.updateTask(space.task.cacheKey, space.task.props).catch((e)=>this.logger.error(`${this.updateCopyMoveTask.name} - ${e}`));
|
|
223
|
+
} catch (e) {
|
|
224
|
+
this.logger.error(`${this.updateCopyMoveTask.name} - ${e}`);
|
|
225
|
+
await this.stopWatch(space.task.cacheKey);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
async calcSizeAndProgressTask(space, rPath) {
|
|
229
|
+
space.task.props.size = await (0, _files.fileSize)(rPath);
|
|
230
|
+
if (space.task.props.totalSize) {
|
|
231
|
+
space.task.props.progress = 100 * space.task.props.size / space.task.props.totalSize;
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
constructor(cache, filesMethods){
|
|
235
|
+
this.cache = cache;
|
|
236
|
+
this.filesMethods = filesMethods;
|
|
237
|
+
// task cache key = `ftask-$(userId}-${taskId}` => FileTask
|
|
238
|
+
this.logger = new _common.Logger(FilesTasksManager.name);
|
|
239
|
+
this.watchInterval = 1000;
|
|
240
|
+
this.tasksWatcher = {};
|
|
241
|
+
_filetaskevent.FileTaskEvent.on('startWatch', async (space, taskType, rPath)=>this.startWatch(space, taskType, rPath, (0, _files.dirName)(space.url)));
|
|
242
|
+
}
|
|
243
|
+
};
|
|
244
|
+
FilesTasksManager = _ts_decorate([
|
|
245
|
+
(0, _common.Injectable)(),
|
|
246
|
+
_ts_metadata("design:type", Function),
|
|
247
|
+
_ts_metadata("design:paramtypes", [
|
|
248
|
+
typeof _cacheservice.Cache === "undefined" ? Object : _cacheservice.Cache,
|
|
249
|
+
typeof _filesmethodsservice.FilesMethods === "undefined" ? Object : _filesmethodsservice.FilesMethods
|
|
250
|
+
])
|
|
251
|
+
], FilesTasksManager);
|
|
252
|
+
|
|
253
|
+
//# sourceMappingURL=files-tasks-manager.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/files/services/files-tasks-manager.service.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 { HttpException, HttpStatus, Injectable, Logger, StreamableFile } from '@nestjs/common'\nimport { FastifyReply } from 'fastify'\nimport crypto from 'node:crypto'\nimport path from 'node:path'\nimport { setTimeout } from 'node:timers/promises'\nimport { FastifyAuthenticatedRequest } from '../../../authentication/interfaces/auth-request.interface'\n\nimport { currentTimeStamp } from '../../../common/shared'\nimport { Cache } from '../../../infrastructure/cache/services/cache.service'\nimport { SpaceEnv } from '../../spaces/models/space-env.model'\nimport { UserModel } from '../../users/models/user.model'\nimport { CACHE_TASK_PREFIX, CACHE_TASK_TTL } from '../constants/cache'\nimport { FILE_OPERATION } from '../constants/operations'\nimport { FileTaskEvent } from '../events/file-task-event'\nimport { FileTask, FileTaskProps, FileTaskStatus } from '../models/file-task'\nimport { countDirEntries, dirName, fileName, fileSize, isPathIsDir, removeFiles } from '../utils/files'\nimport { SendFile } from '../utils/send-file'\nimport { FilesMethods } from './files-methods.service'\n\n@Injectable()\nexport class FilesTasksManager {\n // task cache key = `ftask-$(userId}-${taskId}` => FileTask\n private readonly logger = new Logger(FilesTasksManager.name)\n private readonly watchInterval = 1000\n private tasksWatcher: Record<string, any> = {}\n\n constructor(\n private readonly cache: Cache,\n private readonly filesMethods: FilesMethods\n ) {\n FileTaskEvent.on('startWatch', async (space: SpaceEnv, taskType: FILE_OPERATION, rPath: string) =>\n this.startWatch(space, taskType, rPath, dirName(space.url))\n )\n }\n\n static getCacheKey(userId: number, taskId?: string): string {\n return `${CACHE_TASK_PREFIX}-${userId}-${taskId || '*'}`\n }\n\n async createTask(type: FILE_OPERATION, user: UserModel, space: SpaceEnv, dto: any, method: string): Promise<FileTask> {\n const taskId: string = crypto.randomUUID()\n const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId)\n const newTask = new FileTask(taskId, type, dirName(space.url), fileName(space.url))\n await this.storeTask(cacheKey, newTask)\n space.task = { cacheKey: cacheKey, props: {} }\n this.filesMethods[method](user, space, dto)\n .then((data: any) => {\n this.logger.debug(`${this.createTask.name} - ${newTask.name} : ${method} done`)\n this.setTaskDone(cacheKey, FileTaskStatus.SUCCESS, data).catch((e: Error) => this.logger.error(`${this.createTask.name} - ${e}`))\n })\n .catch((e: HttpException | any) => {\n this.logger.error(`${this.createTask.name} - ${newTask.name} : ${method} : ${e}`)\n this.setTaskDone(cacheKey, FileTaskStatus.ERROR, e.message).catch((e: Error) => this.logger.error(`${this.createTask.name} - ${e}`))\n })\n return newTask\n }\n\n async getTasks(userId: number, taskId?: string): Promise<FileTask | FileTask[]> {\n const cacheKey = FilesTasksManager.getCacheKey(userId, taskId)\n if (taskId) {\n const task: FileTask = await this.cache.get(cacheKey)\n if (task) return task\n throw new HttpException('Task not found', HttpStatus.NOT_FOUND)\n } else {\n const keys = await this.cache.keys(cacheKey)\n return keys.length ? await this.cache.mget(keys) : []\n }\n }\n\n async deleteTasks(user: UserModel, taskId?: string): Promise<void> {\n const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId)\n let keys: string[]\n if (taskId) {\n keys = [cacheKey]\n } else {\n keys = await this.cache.keys(cacheKey)\n }\n if (!keys.length) return\n for (const key of keys) {\n const task: FileTask = await this.cache.get(key)\n if (!task || task.status === FileTaskStatus.PENDING) continue\n if (task.props.compressInDirectory === false) {\n // delete task file\n const rPath = path.join(user.tasksPath, task.name)\n removeFiles(rPath).catch((e: Error) => this.logger.error(`${this.deleteTasks.name} - ${e}`))\n }\n // clear watcher\n this.stopWatch(key).catch((e: Error) => this.logger.error(`${this.deleteTasks.name} - ${e}`))\n // remove from cache\n this.cache.del(key).catch((e: Error) => this.logger.error(`${this.deleteTasks.name} - ${e}`))\n }\n }\n\n async downloadArchive(user: UserModel, taskId: string, req: FastifyAuthenticatedRequest, res: FastifyReply): Promise<StreamableFile> {\n const cacheKey = FilesTasksManager.getCacheKey(user.id, taskId)\n const task: FileTask = await this.cache.get(cacheKey)\n if (!task || task.status !== FileTaskStatus.SUCCESS || task.props.compressInDirectory !== false) {\n throw new HttpException('Not applicable', HttpStatus.BAD_REQUEST)\n }\n const rPath = path.join(user.tasksPath, task.name)\n const sendFile = new SendFile(rPath, true)\n try {\n await sendFile.checks()\n } catch (e) {\n throw new HttpException(e.message, e.httpCode)\n }\n return await sendFile.stream(req, res)\n }\n\n private async storeTask(cacheKey: string, task: FileTask) {\n task.startedAt = currentTimeStamp(null, true)\n task.status = FileTaskStatus.PENDING\n try {\n await this.cache.set(cacheKey, task, CACHE_TASK_TTL)\n } catch (e) {\n this.logger.error(`${this.storeTask.name} - ${e}`)\n }\n }\n\n private async setTaskDone(cacheKey: string, status: FileTaskStatus, result: any): Promise<void> {\n const task: FileTask = await this.cache.get(cacheKey)\n if (task) {\n task.status = status\n task.endedAt = currentTimeStamp(null, true)\n if (result) {\n if (typeof result === 'string') {\n task.result = result\n } else {\n Object.assign(task, result)\n }\n }\n await this.cache.set(cacheKey, task, CACHE_TASK_TTL)\n }\n await this.stopWatch(cacheKey)\n }\n\n private async updateTask(cacheKey: string, props?: FileTaskProps, task?: Partial<FileTask>): Promise<void> {\n let ftask: FileTask = await this.cache.get(cacheKey)\n if (ftask) {\n if (task) ftask = { ...ftask, ...task }\n if (props) ftask.props = { ...ftask.props, ...props }\n await this.cache.set(cacheKey, ftask, CACHE_TASK_TTL)\n } else {\n await this.stopWatch(cacheKey)\n }\n }\n\n private async startWatch(space: SpaceEnv, taskType: FILE_OPERATION, rPath: string, taskPath?: string): Promise<void> {\n if (!space.task?.cacheKey || space.task.cacheKey in this.tasksWatcher) return\n this.logger.verbose(`${this.startWatch.name} - ${space.task.cacheKey}`)\n this.updateTask(space.task.cacheKey, space.task?.props, {\n name: fileName(rPath),\n path: taskPath\n }).catch((e: Error) => this.logger.error(`${this.startWatch.name} - ${e}`))\n switch (taskType) {\n case FILE_OPERATION.COMPRESS:\n this.tasksWatcher[space.task.cacheKey] = setInterval(async () => this.updateCompressTask(space, rPath), this.watchInterval)\n return\n case FILE_OPERATION.DECOMPRESS:\n this.tasksWatcher[space.task.cacheKey] = setInterval(async () => this.updateDecompressTask(space, rPath), this.watchInterval)\n return\n case FILE_OPERATION.DOWNLOAD:\n this.tasksWatcher[space.task.cacheKey] = setInterval(async () => this.updateDownloadTask(space, rPath), this.watchInterval)\n return\n case FILE_OPERATION.COPY:\n case FILE_OPERATION.MOVE:\n this.tasksWatcher[space.task.cacheKey] = setInterval(async () => this.updateCopyMoveTask(space, rPath), this.watchInterval)\n return\n default:\n this.logger.warn(`${this.startWatch.name} - unknown task type ${taskType}`)\n return\n }\n }\n\n private async stopWatch(cacheKey: string): Promise<void> {\n if (!(cacheKey in this.tasksWatcher)) return\n await setTimeout(this.watchInterval)\n clearInterval(this.tasksWatcher[cacheKey])\n delete this.tasksWatcher[cacheKey]\n }\n\n private async updateCompressTask(space: SpaceEnv, rPath: string): Promise<void> {\n try {\n space.task.props.size = await fileSize(rPath)\n await this.updateTask(space.task.cacheKey, space.task.props).catch((e: Error) => this.logger.error(`${this.updateCompressTask.name} - ${e}`))\n } catch (e) {\n this.logger.error(`${this.updateCompressTask.name} - ${e}`)\n await this.stopWatch(space.task.cacheKey)\n }\n }\n\n private async updateDecompressTask(space: SpaceEnv, rPath: string): Promise<void> {\n try {\n space.task.props = await countDirEntries(rPath)\n this.updateTask(space.task.cacheKey, space.task.props).catch((e: Error) => this.logger.error(`${this.updateDecompressTask.name} - ${e}`))\n } catch (e) {\n this.logger.error(`${this.updateDecompressTask.name} - ${e}`)\n await this.stopWatch(space.task.cacheKey)\n }\n }\n\n private async updateDownloadTask(space: SpaceEnv, rPath: string): Promise<void> {\n try {\n await this.calcSizeAndProgressTask(space, rPath)\n this.updateTask(space.task.cacheKey, space.task.props).catch((e: Error) => this.logger.error(`${this.updateDownloadTask.name} - ${e}`))\n } catch (e) {\n this.logger.error(`${this.updateDownloadTask.name} - ${e}`)\n await this.stopWatch(space.task.cacheKey)\n }\n }\n\n private async updateCopyMoveTask(space: SpaceEnv, rPath: string): Promise<void> {\n try {\n if (await isPathIsDir(rPath)) {\n space.task.props = await countDirEntries(rPath)\n } else {\n await this.calcSizeAndProgressTask(space, rPath)\n }\n this.updateTask(space.task.cacheKey, space.task.props).catch((e: Error) => this.logger.error(`${this.updateCopyMoveTask.name} - ${e}`))\n } catch (e) {\n this.logger.error(`${this.updateCopyMoveTask.name} - ${e}`)\n await this.stopWatch(space.task.cacheKey)\n }\n }\n\n private async calcSizeAndProgressTask(space: SpaceEnv, rPath: string) {\n space.task.props.size = await fileSize(rPath)\n if (space.task.props.totalSize) {\n space.task.props.progress = (100 * space.task.props.size) / space.task.props.totalSize\n }\n }\n}\n"],"names":["FilesTasksManager","getCacheKey","userId","taskId","CACHE_TASK_PREFIX","createTask","type","user","space","dto","method","crypto","randomUUID","cacheKey","id","newTask","FileTask","dirName","url","fileName","storeTask","task","props","filesMethods","then","data","logger","debug","name","setTaskDone","FileTaskStatus","SUCCESS","catch","e","error","ERROR","message","getTasks","cache","get","HttpException","HttpStatus","NOT_FOUND","keys","length","mget","deleteTasks","key","status","PENDING","compressInDirectory","rPath","path","join","tasksPath","removeFiles","stopWatch","del","downloadArchive","req","res","BAD_REQUEST","sendFile","SendFile","checks","httpCode","stream","startedAt","currentTimeStamp","set","CACHE_TASK_TTL","result","endedAt","Object","assign","updateTask","ftask","startWatch","taskType","taskPath","tasksWatcher","verbose","FILE_OPERATION","COMPRESS","setInterval","updateCompressTask","watchInterval","DECOMPRESS","updateDecompressTask","DOWNLOAD","updateDownloadTask","COPY","MOVE","updateCopyMoveTask","warn","setTimeout","clearInterval","size","fileSize","countDirEntries","calcSizeAndProgressTask","isPathIsDir","totalSize","progress","Logger","FileTaskEvent","on"],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
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";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
const _testing = require("@nestjs/testing");
|
|
10
|
+
const _cacheservice = require("../../../infrastructure/cache/services/cache.service");
|
|
11
|
+
const _spacesmanagerservice = require("../../spaces/services/spaces-manager.service");
|
|
12
|
+
const _filesmanagerservice = require("./files-manager.service");
|
|
13
|
+
const _filesmethodsservice = require("./files-methods.service");
|
|
14
|
+
const _filestasksmanagerservice = require("./files-tasks-manager.service");
|
|
15
|
+
describe(_filestasksmanagerservice.FilesTasksManager.name, ()=>{
|
|
16
|
+
let filesTasksManager;
|
|
17
|
+
beforeAll(async ()=>{
|
|
18
|
+
const module = await _testing.Test.createTestingModule({
|
|
19
|
+
providers: [
|
|
20
|
+
_filestasksmanagerservice.FilesTasksManager,
|
|
21
|
+
{
|
|
22
|
+
provide: _filesmethodsservice.FilesMethods,
|
|
23
|
+
useValue: {}
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
provide: _filesmanagerservice.FilesManager,
|
|
27
|
+
useValue: {}
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
provide: _spacesmanagerservice.SpacesManager,
|
|
31
|
+
useValue: {}
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
provide: _cacheservice.Cache,
|
|
35
|
+
useValue: {}
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
}).compile();
|
|
39
|
+
filesTasksManager = module.get(_filestasksmanagerservice.FilesTasksManager);
|
|
40
|
+
});
|
|
41
|
+
it('should be defined', ()=>{
|
|
42
|
+
expect(filesTasksManager).toBeDefined();
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
//# sourceMappingURL=files-tasks-manager.service.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../backend/src/applications/files/services/files-tasks-manager.service.spec.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 { Test, TestingModule } from '@nestjs/testing'\nimport { Cache } from '../../../infrastructure/cache/services/cache.service'\nimport { SpacesManager } from '../../spaces/services/spaces-manager.service'\nimport { FilesManager } from './files-manager.service'\nimport { FilesMethods } from './files-methods.service'\nimport { FilesTasksManager } from './files-tasks-manager.service'\n\ndescribe(FilesTasksManager.name, () => {\n let filesTasksManager: FilesTasksManager\n\n beforeAll(async () => {\n const module: TestingModule = await Test.createTestingModule({\n providers: [\n FilesTasksManager,\n { provide: FilesMethods, useValue: {} },\n { provide: FilesManager, useValue: {} },\n { provide: SpacesManager, useValue: {} },\n {\n provide: Cache,\n useValue: {}\n }\n ]\n }).compile()\n\n filesTasksManager = module.get<FilesTasksManager>(FilesTasksManager)\n })\n\n it('should be defined', () => {\n expect(filesTasksManager).toBeDefined()\n })\n})\n"],"names":["describe","FilesTasksManager","name","filesTasksManager","beforeAll","module","Test","createTestingModule","providers","provide","FilesMethods","useValue","FilesManager","SpacesManager","Cache","compile","get","it","expect","toBeDefined"],"mappings":"AAAA;;;;CAIC;;;;yBAEmC;8BACd;sCACQ;qCACD;qCACA;0CACK;AAElCA,SAASC,2CAAiB,CAACC,IAAI,EAAE;IAC/B,IAAIC;IAEJC,UAAU;QACR,MAAMC,SAAwB,MAAMC,aAAI,CAACC,mBAAmB,CAAC;YAC3DC,WAAW;gBACTP,2CAAiB;gBACjB;oBAAEQ,SAASC,iCAAY;oBAAEC,UAAU,CAAC;gBAAE;gBACtC;oBAAEF,SAASG,iCAAY;oBAAED,UAAU,CAAC;gBAAE;gBACtC;oBAAEF,SAASI,mCAAa;oBAAEF,UAAU,CAAC;gBAAE;gBACvC;oBACEF,SAASK,mBAAK;oBACdH,UAAU,CAAC;gBACb;aACD;QACH,GAAGI,OAAO;QAEVZ,oBAAoBE,OAAOW,GAAG,CAAoBf,2CAAiB;IACrE;IAEAgB,GAAG,qBAAqB;QACtBC,OAAOf,mBAAmBgB,WAAW;IACvC;AACF"}
|
|
@@ -0,0 +1,91 @@
|
|
|
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";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
Object.defineProperty(exports, "parseExcel", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function() {
|
|
12
|
+
return parseExcel;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
const _nodeutil = require("node:util");
|
|
16
|
+
const _sax = /*#__PURE__*/ _interop_require_default(require("sax"));
|
|
17
|
+
const _yauzl = require("yauzl");
|
|
18
|
+
function _interop_require_default(obj) {
|
|
19
|
+
return obj && obj.__esModule ? obj : {
|
|
20
|
+
default: obj
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const openZipAsync = (0, _nodeutil.promisify)(_yauzl.open);
|
|
24
|
+
async function parseExcel(filePath, options) {
|
|
25
|
+
const sheetRegex = /^xl\/worksheets\/sheet\d+\.xml$/;
|
|
26
|
+
const sharedPath = 'xl/sharedStrings.xml';
|
|
27
|
+
const texts = [];
|
|
28
|
+
let hasSheet = false;
|
|
29
|
+
// Open the ZIP in lazyEntries mode
|
|
30
|
+
const zipFile = await openZipAsync(filePath, {
|
|
31
|
+
lazyEntries: true
|
|
32
|
+
});
|
|
33
|
+
return new Promise((resolve, reject)=>{
|
|
34
|
+
zipFile.readEntry();
|
|
35
|
+
zipFile.on('entry', (entry)=>{
|
|
36
|
+
const path = entry.fileName;
|
|
37
|
+
// Only process sheets and sharedStrings
|
|
38
|
+
if (!sheetRegex.test(path) && path !== sharedPath) {
|
|
39
|
+
zipFile.readEntry(); // <–– call directly, no unused-expression
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (sheetRegex.test(path)) {
|
|
43
|
+
hasSheet = true;
|
|
44
|
+
}
|
|
45
|
+
zipFile.openReadStream(entry, (err, readStream)=>{
|
|
46
|
+
if (err) {
|
|
47
|
+
zipFile.close();
|
|
48
|
+
return reject(err);
|
|
49
|
+
}
|
|
50
|
+
const parser = _sax.default.createStream(true);
|
|
51
|
+
let buffer = '';
|
|
52
|
+
parser.on('error', (parseErr)=>{
|
|
53
|
+
readStream.destroy();
|
|
54
|
+
zipFile.close();
|
|
55
|
+
reject(parseErr);
|
|
56
|
+
});
|
|
57
|
+
parser.on('opentag', (node)=>{
|
|
58
|
+
if (node.name === 't') buffer = '';
|
|
59
|
+
});
|
|
60
|
+
parser.on('text', (txt)=>{
|
|
61
|
+
buffer += txt;
|
|
62
|
+
});
|
|
63
|
+
parser.on('closetag', (name)=>{
|
|
64
|
+
if (name === 't') {
|
|
65
|
+
texts.push(buffer);
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
readStream.on('error', (streamErr)=>{
|
|
69
|
+
zipFile.close();
|
|
70
|
+
reject(streamErr);
|
|
71
|
+
}).on('end', ()=>{
|
|
72
|
+
zipFile.readEntry();
|
|
73
|
+
}).pipe(parser);
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
zipFile.on('end', ()=>{
|
|
77
|
+
zipFile.close();
|
|
78
|
+
// No sheets found → corrupted file
|
|
79
|
+
if (!hasSheet) {
|
|
80
|
+
return reject(new Error('file seems to be corrupted'));
|
|
81
|
+
}
|
|
82
|
+
resolve(texts.join(options.newlineDelimiter));
|
|
83
|
+
});
|
|
84
|
+
zipFile.on('error', (zipErr)=>{
|
|
85
|
+
zipFile.close();
|
|
86
|
+
reject(zipErr);
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=excel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../backend/src/applications/files/utils/doc-textify/adapters/excel.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 { promisify } from 'node:util'\nimport sax from 'sax'\nimport { open as openZip, Options, ZipFile } from 'yauzl'\nimport { DocTextifyOptions } from '../interfaces/doc-textify.interfaces'\n\nconst openZipAsync: (path: string, options: Options) => Promise<ZipFile> = promisify(openZip)\n\n/**\n * Parse XLSX files\n */\nexport async function parseExcel(filePath: string, options: DocTextifyOptions): Promise<string> {\n const sheetRegex = /^xl\\/worksheets\\/sheet\\d+\\.xml$/\n const sharedPath = 'xl/sharedStrings.xml'\n const texts: string[] = []\n let hasSheet = false\n\n // Open the ZIP in lazyEntries mode\n const zipFile = await openZipAsync(filePath, { lazyEntries: true })\n\n return new Promise<string>((resolve, reject) => {\n zipFile.readEntry()\n\n zipFile.on('entry', (entry) => {\n const path = entry.fileName\n\n // Only process sheets and sharedStrings\n if (!sheetRegex.test(path) && path !== sharedPath) {\n zipFile.readEntry() // <–– call directly, no unused-expression\n return\n }\n\n if (sheetRegex.test(path)) {\n hasSheet = true\n }\n\n zipFile.openReadStream(entry, (err, readStream) => {\n if (err) {\n zipFile.close()\n return reject(err)\n }\n\n const parser = sax.createStream(true)\n let buffer = ''\n\n parser.on('error', (parseErr) => {\n readStream.destroy()\n zipFile.close()\n reject(parseErr)\n })\n\n parser.on('opentag', (node) => {\n if (node.name === 't') buffer = ''\n })\n parser.on('text', (txt) => {\n buffer += txt\n })\n parser.on('closetag', (name) => {\n if (name === 't') {\n texts.push(buffer)\n }\n })\n\n readStream\n .on('error', (streamErr) => {\n zipFile.close()\n reject(streamErr)\n })\n .on('end', () => {\n zipFile.readEntry()\n })\n .pipe(parser)\n })\n })\n\n zipFile.on('end', () => {\n zipFile.close()\n // No sheets found → corrupted file\n if (!hasSheet) {\n return reject(new Error('file seems to be corrupted'))\n }\n resolve(texts.join(options.newlineDelimiter))\n })\n\n zipFile.on('error', (zipErr) => {\n zipFile.close()\n reject(zipErr)\n })\n })\n}\n"],"names":["parseExcel","openZipAsync","promisify","openZip","filePath","options","sheetRegex","sharedPath","texts","hasSheet","zipFile","lazyEntries","Promise","resolve","reject","readEntry","on","entry","path","fileName","test","openReadStream","err","readStream","close","parser","sax","createStream","buffer","parseErr","destroy","node","name","txt","push","streamErr","pipe","Error","join","newlineDelimiter","zipErr"],"mappings":"AAAA;;;;CAIC;;;;+BAYqBA;;;eAAAA;;;0BAVI;4DACV;uBACkC;;;;;;AAGlD,MAAMC,eAAqEC,IAAAA,mBAAS,EAACC,WAAO;AAKrF,eAAeH,WAAWI,QAAgB,EAAEC,OAA0B;IAC3E,MAAMC,aAAa;IACnB,MAAMC,aAAa;IACnB,MAAMC,QAAkB,EAAE;IAC1B,IAAIC,WAAW;IAEf,mCAAmC;IACnC,MAAMC,UAAU,MAAMT,aAAaG,UAAU;QAAEO,aAAa;IAAK;IAEjE,OAAO,IAAIC,QAAgB,CAACC,SAASC;QACnCJ,QAAQK,SAAS;QAEjBL,QAAQM,EAAE,CAAC,SAAS,CAACC;YACnB,MAAMC,OAAOD,MAAME,QAAQ;YAE3B,wCAAwC;YACxC,IAAI,CAACb,WAAWc,IAAI,CAACF,SAASA,SAASX,YAAY;gBACjDG,QAAQK,SAAS,IAAG,0CAA0C;gBAC9D;YACF;YAEA,IAAIT,WAAWc,IAAI,CAACF,OAAO;gBACzBT,WAAW;YACb;YAEAC,QAAQW,cAAc,CAACJ,OAAO,CAACK,KAAKC;gBAClC,IAAID,KAAK;oBACPZ,QAAQc,KAAK;oBACb,OAAOV,OAAOQ;gBAChB;gBAEA,MAAMG,SAASC,YAAG,CAACC,YAAY,CAAC;gBAChC,IAAIC,SAAS;gBAEbH,OAAOT,EAAE,CAAC,SAAS,CAACa;oBAClBN,WAAWO,OAAO;oBAClBpB,QAAQc,KAAK;oBACbV,OAAOe;gBACT;gBAEAJ,OAAOT,EAAE,CAAC,WAAW,CAACe;oBACpB,IAAIA,KAAKC,IAAI,KAAK,KAAKJ,SAAS;gBAClC;gBACAH,OAAOT,EAAE,CAAC,QAAQ,CAACiB;oBACjBL,UAAUK;gBACZ;gBACAR,OAAOT,EAAE,CAAC,YAAY,CAACgB;oBACrB,IAAIA,SAAS,KAAK;wBAChBxB,MAAM0B,IAAI,CAACN;oBACb;gBACF;gBAEAL,WACGP,EAAE,CAAC,SAAS,CAACmB;oBACZzB,QAAQc,KAAK;oBACbV,OAAOqB;gBACT,GACCnB,EAAE,CAAC,OAAO;oBACTN,QAAQK,SAAS;gBACnB,GACCqB,IAAI,CAACX;YACV;QACF;QAEAf,QAAQM,EAAE,CAAC,OAAO;YAChBN,QAAQc,KAAK;YACb,mCAAmC;YACnC,IAAI,CAACf,UAAU;gBACb,OAAOK,OAAO,IAAIuB,MAAM;YAC1B;YACAxB,QAAQL,MAAM8B,IAAI,CAACjC,QAAQkC,gBAAgB;QAC7C;QAEA7B,QAAQM,EAAE,CAAC,SAAS,CAACwB;YACnB9B,QAAQc,KAAK;YACbV,OAAO0B;QACT;IACF;AACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
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";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
Object.defineProperty(exports, "parseHtml", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function() {
|
|
12
|
+
return parseHtml;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
const _promises = /*#__PURE__*/ _interop_require_default(require("node:fs/promises"));
|
|
16
|
+
const _htmltotext = require("html-to-text");
|
|
17
|
+
function _interop_require_default(obj) {
|
|
18
|
+
return obj && obj.__esModule ? obj : {
|
|
19
|
+
default: obj
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
const htmlConverter = (0, _htmltotext.compile)({
|
|
23
|
+
wordwrap: false,
|
|
24
|
+
preserveNewlines: false
|
|
25
|
+
});
|
|
26
|
+
async function parseHtml(filePath) {
|
|
27
|
+
const content = await _promises.default.readFile(filePath, {
|
|
28
|
+
encoding: 'utf8'
|
|
29
|
+
});
|
|
30
|
+
return htmlConverter(content);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../backend/src/applications/files/utils/doc-textify/adapters/html.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 fs from 'fs/promises'\nimport { compile } from 'html-to-text'\n\nconst htmlConverter = compile({ wordwrap: false, preserveNewlines: false })\n\nexport async function parseHtml(filePath: string): Promise<string> {\n const content = await fs.readFile(filePath, { encoding: 'utf8' })\n return htmlConverter(content)\n}\n"],"names":["parseHtml","htmlConverter","compile","wordwrap","preserveNewlines","filePath","content","fs","readFile","encoding"],"mappings":"AAAA;;;;CAIC;;;;+BAOqBA;;;eAAAA;;;iEALP;4BACS;;;;;;AAExB,MAAMC,gBAAgBC,IAAAA,mBAAO,EAAC;IAAEC,UAAU;IAAOC,kBAAkB;AAAM;AAElE,eAAeJ,UAAUK,QAAgB;IAC9C,MAAMC,UAAU,MAAMC,iBAAE,CAACC,QAAQ,CAACH,UAAU;QAAEI,UAAU;IAAO;IAC/D,OAAOR,cAAcK;AACvB"}
|
|
@@ -0,0 +1,110 @@
|
|
|
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";
|
|
6
|
+
Object.defineProperty(exports, "__esModule", {
|
|
7
|
+
value: true
|
|
8
|
+
});
|
|
9
|
+
Object.defineProperty(exports, "parseOpenOffice", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function() {
|
|
12
|
+
return parseOpenOffice;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
const _nodeutil = require("node:util");
|
|
16
|
+
const _sax = /*#__PURE__*/ _interop_require_default(require("sax"));
|
|
17
|
+
const _yauzl = require("yauzl");
|
|
18
|
+
function _interop_require_default(obj) {
|
|
19
|
+
return obj && obj.__esModule ? obj : {
|
|
20
|
+
default: obj
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const openZipAsync = (0, _nodeutil.promisify)(_yauzl.open);
|
|
24
|
+
async function parseOpenOffice(filePath, options) {
|
|
25
|
+
// Paths to process: main content and any embedded object content
|
|
26
|
+
const mainPath = /^content\.xml$/;
|
|
27
|
+
const objectPath = /^Object \d+\/content\.xml$/;
|
|
28
|
+
const texts = [];
|
|
29
|
+
const notes = [];
|
|
30
|
+
let hasMain = false;
|
|
31
|
+
// Open the package as a ZIP in lazyEntries mode
|
|
32
|
+
const zipFile = await openZipAsync(filePath, {
|
|
33
|
+
lazyEntries: true
|
|
34
|
+
});
|
|
35
|
+
return new Promise((resolve, reject)=>{
|
|
36
|
+
zipFile.readEntry();
|
|
37
|
+
zipFile.on('entry', (entry)=>{
|
|
38
|
+
const path = entry.fileName;
|
|
39
|
+
// Only process content.xml or object/.../content.xml
|
|
40
|
+
const isMain = mainPath.test(path);
|
|
41
|
+
const isObject = objectPath.test(path);
|
|
42
|
+
if (!isMain && !isObject) {
|
|
43
|
+
zipFile.readEntry();
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (isMain) {
|
|
47
|
+
hasMain = true;
|
|
48
|
+
}
|
|
49
|
+
zipFile.openReadStream(entry, (err, readStream)=>{
|
|
50
|
+
if (err) {
|
|
51
|
+
zipFile.close();
|
|
52
|
+
return reject(err);
|
|
53
|
+
}
|
|
54
|
+
const parser = _sax.default.createStream(true);
|
|
55
|
+
let buffer = '';
|
|
56
|
+
let reading = false;
|
|
57
|
+
parser.on('error', (parseErr)=>{
|
|
58
|
+
readStream.destroy();
|
|
59
|
+
zipFile.close();
|
|
60
|
+
reject(parseErr);
|
|
61
|
+
});
|
|
62
|
+
parser.on('opentag', (node)=>{
|
|
63
|
+
// Start buffering when entering a paragraph or header
|
|
64
|
+
if (node.name === 'text:p' || node.name === 'text:h') {
|
|
65
|
+
reading = true;
|
|
66
|
+
buffer = '';
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
parser.on('text', (txt)=>{
|
|
70
|
+
if (reading) {
|
|
71
|
+
buffer += txt;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
parser.on('closetag', (name)=>{
|
|
75
|
+
// On closing a paragraph or header, store the text
|
|
76
|
+
if ((name === 'text:p' || name === 'text:h') && reading) {
|
|
77
|
+
if (isMain) {
|
|
78
|
+
texts.push(buffer);
|
|
79
|
+
} else {
|
|
80
|
+
notes.push(buffer);
|
|
81
|
+
}
|
|
82
|
+
reading = false;
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
readStream.on('error', (streamErr)=>{
|
|
86
|
+
zipFile.close();
|
|
87
|
+
reject(streamErr);
|
|
88
|
+
}).on('end', ()=>{
|
|
89
|
+
zipFile.readEntry();
|
|
90
|
+
}).pipe(parser);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
zipFile.on('end', ()=>{
|
|
94
|
+
zipFile.close();
|
|
95
|
+
// Ensure main content was found
|
|
96
|
+
if (!hasMain) {
|
|
97
|
+
return reject(new Error('file seems to be corrupted'));
|
|
98
|
+
}
|
|
99
|
+
// Optionally append notes at the end
|
|
100
|
+
const all = texts.concat(notes);
|
|
101
|
+
resolve(all.join(options.newlineDelimiter));
|
|
102
|
+
});
|
|
103
|
+
zipFile.on('error', (zipErr)=>{
|
|
104
|
+
zipFile.close();
|
|
105
|
+
reject(zipErr);
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
//# sourceMappingURL=open-office.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../backend/src/applications/files/utils/doc-textify/adapters/open-office.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 */\nimport { promisify } from 'node:util'\nimport sax from 'sax'\nimport { Entry, open as openZip, Options, ZipFile } from 'yauzl'\nimport { DocTextifyOptions } from '../interfaces/doc-textify.interfaces'\n\nconst openZipAsync: (path: string, options: Options) => Promise<ZipFile> = promisify(openZip)\n\n/**\n * Parses ODT/ODS/ODP\n */\nexport async function parseOpenOffice(filePath: string, options: DocTextifyOptions): Promise<string> {\n // Paths to process: main content and any embedded object content\n const mainPath = /^content\\.xml$/\n const objectPath = /^Object \\d+\\/content\\.xml$/\n\n const texts: string[] = []\n const notes: string[] = []\n let hasMain = false\n\n // Open the package as a ZIP in lazyEntries mode\n const zipFile = await openZipAsync(filePath, { lazyEntries: true })\n\n return new Promise<string>((resolve, reject) => {\n zipFile.readEntry()\n\n zipFile.on('entry', (entry: Entry) => {\n const path = entry.fileName\n\n // Only process content.xml or object/.../content.xml\n const isMain = mainPath.test(path)\n const isObject = objectPath.test(path)\n if (!isMain && !isObject) {\n zipFile.readEntry()\n return\n }\n\n if (isMain) {\n hasMain = true\n }\n\n zipFile.openReadStream(entry, (err, readStream) => {\n if (err) {\n zipFile.close()\n return reject(err)\n }\n\n const parser = sax.createStream(true)\n let buffer = ''\n let reading = false\n\n parser.on('error', (parseErr) => {\n readStream.destroy()\n zipFile.close()\n reject(parseErr)\n })\n\n parser.on('opentag', (node) => {\n // Start buffering when entering a paragraph or header\n if (node.name === 'text:p' || node.name === 'text:h') {\n reading = true\n buffer = ''\n }\n })\n\n parser.on('text', (txt) => {\n if (reading) {\n buffer += txt\n }\n })\n\n parser.on('closetag', (name) => {\n // On closing a paragraph or header, store the text\n if ((name === 'text:p' || name === 'text:h') && reading) {\n if (isMain) {\n texts.push(buffer)\n } else {\n notes.push(buffer)\n }\n reading = false\n }\n })\n\n readStream\n .on('error', (streamErr) => {\n zipFile.close()\n reject(streamErr)\n })\n .on('end', () => {\n zipFile.readEntry()\n })\n .pipe(parser)\n })\n })\n\n zipFile.on('end', () => {\n zipFile.close()\n // Ensure main content was found\n if (!hasMain) {\n return reject(new Error('file seems to be corrupted'))\n }\n // Optionally append notes at the end\n const all = texts.concat(notes)\n resolve(all.join(options.newlineDelimiter))\n })\n\n zipFile.on('error', (zipErr) => {\n zipFile.close()\n reject(zipErr)\n })\n })\n}\n"],"names":["parseOpenOffice","openZipAsync","promisify","openZip","filePath","options","mainPath","objectPath","texts","notes","hasMain","zipFile","lazyEntries","Promise","resolve","reject","readEntry","on","entry","path","fileName","isMain","test","isObject","openReadStream","err","readStream","close","parser","sax","createStream","buffer","reading","parseErr","destroy","node","name","txt","push","streamErr","pipe","Error","all","concat","join","newlineDelimiter","zipErr"],"mappings":"AAAA;;;;CAIC;;;;+BAWqBA;;;eAAAA;;;0BAVI;4DACV;uBACyC;;;;;;AAGzD,MAAMC,eAAqEC,IAAAA,mBAAS,EAACC,WAAO;AAKrF,eAAeH,gBAAgBI,QAAgB,EAAEC,OAA0B;IAChF,iEAAiE;IACjE,MAAMC,WAAW;IACjB,MAAMC,aAAa;IAEnB,MAAMC,QAAkB,EAAE;IAC1B,MAAMC,QAAkB,EAAE;IAC1B,IAAIC,UAAU;IAEd,gDAAgD;IAChD,MAAMC,UAAU,MAAMV,aAAaG,UAAU;QAAEQ,aAAa;IAAK;IAEjE,OAAO,IAAIC,QAAgB,CAACC,SAASC;QACnCJ,QAAQK,SAAS;QAEjBL,QAAQM,EAAE,CAAC,SAAS,CAACC;YACnB,MAAMC,OAAOD,MAAME,QAAQ;YAE3B,qDAAqD;YACrD,MAAMC,SAASf,SAASgB,IAAI,CAACH;YAC7B,MAAMI,WAAWhB,WAAWe,IAAI,CAACH;YACjC,IAAI,CAACE,UAAU,CAACE,UAAU;gBACxBZ,QAAQK,SAAS;gBACjB;YACF;YAEA,IAAIK,QAAQ;gBACVX,UAAU;YACZ;YAEAC,QAAQa,cAAc,CAACN,OAAO,CAACO,KAAKC;gBAClC,IAAID,KAAK;oBACPd,QAAQgB,KAAK;oBACb,OAAOZ,OAAOU;gBAChB;gBAEA,MAAMG,SAASC,YAAG,CAACC,YAAY,CAAC;gBAChC,IAAIC,SAAS;gBACb,IAAIC,UAAU;gBAEdJ,OAAOX,EAAE,CAAC,SAAS,CAACgB;oBAClBP,WAAWQ,OAAO;oBAClBvB,QAAQgB,KAAK;oBACbZ,OAAOkB;gBACT;gBAEAL,OAAOX,EAAE,CAAC,WAAW,CAACkB;oBACpB,sDAAsD;oBACtD,IAAIA,KAAKC,IAAI,KAAK,YAAYD,KAAKC,IAAI,KAAK,UAAU;wBACpDJ,UAAU;wBACVD,SAAS;oBACX;gBACF;gBAEAH,OAAOX,EAAE,CAAC,QAAQ,CAACoB;oBACjB,IAAIL,SAAS;wBACXD,UAAUM;oBACZ;gBACF;gBAEAT,OAAOX,EAAE,CAAC,YAAY,CAACmB;oBACrB,mDAAmD;oBACnD,IAAI,AAACA,CAAAA,SAAS,YAAYA,SAAS,QAAO,KAAMJ,SAAS;wBACvD,IAAIX,QAAQ;4BACVb,MAAM8B,IAAI,CAACP;wBACb,OAAO;4BACLtB,MAAM6B,IAAI,CAACP;wBACb;wBACAC,UAAU;oBACZ;gBACF;gBAEAN,WACGT,EAAE,CAAC,SAAS,CAACsB;oBACZ5B,QAAQgB,KAAK;oBACbZ,OAAOwB;gBACT,GACCtB,EAAE,CAAC,OAAO;oBACTN,QAAQK,SAAS;gBACnB,GACCwB,IAAI,CAACZ;YACV;QACF;QAEAjB,QAAQM,EAAE,CAAC,OAAO;YAChBN,QAAQgB,KAAK;YACb,gCAAgC;YAChC,IAAI,CAACjB,SAAS;gBACZ,OAAOK,OAAO,IAAI0B,MAAM;YAC1B;YACA,qCAAqC;YACrC,MAAMC,MAAMlC,MAAMmC,MAAM,CAAClC;YACzBK,QAAQ4B,IAAIE,IAAI,CAACvC,QAAQwC,gBAAgB;QAC3C;QAEAlC,QAAQM,EAAE,CAAC,SAAS,CAAC6B;YACnBnC,QAAQgB,KAAK;YACbZ,OAAO+B;QACT;IACF;AACF"}
|