@acorex-platform/module-document-management-client 2.0.0-next.3 → 2.0.0-next.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/fesm2022/{acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs → acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs} +32 -28
  2. package/fesm2022/acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs.map +1 -0
  3. package/fesm2022/{acorex-platform-module-document-management-client-attachment-view-skeleton.component-DgjIypl7.mjs → acorex-platform-module-document-management-client-attachment-view-skeleton.component-BXOoiiDO.mjs} +2 -2
  4. package/fesm2022/{acorex-platform-module-document-management-client-attachment-view-skeleton.component-DgjIypl7.mjs.map → acorex-platform-module-document-management-client-attachment-view-skeleton.component-BXOoiiDO.mjs.map} +1 -1
  5. package/fesm2022/{acorex-platform-module-document-management-client-attachment-widget.component-OFHfOBUY.mjs → acorex-platform-module-document-management-client-attachment-widget.component-D-L587vk.mjs} +2 -2
  6. package/fesm2022/{acorex-platform-module-document-management-client-attachment-widget.component-OFHfOBUY.mjs.map → acorex-platform-module-document-management-client-attachment-widget.component-D-L587vk.mjs.map} +1 -1
  7. package/fesm2022/acorex-platform-module-document-management-client-contracts.mjs +1 -1
  8. package/fesm2022/acorex-platform-module-document-management-client-contracts.mjs.map +1 -1
  9. package/fesm2022/{acorex-platform-module-document-management-client-details-view.component-PfKcPBmu.mjs → acorex-platform-module-document-management-client-details-view.component-ovdiDBs_.mjs} +2 -2
  10. package/fesm2022/{acorex-platform-module-document-management-client-details-view.component-PfKcPBmu.mjs.map → acorex-platform-module-document-management-client-details-view.component-ovdiDBs_.mjs.map} +1 -1
  11. package/fesm2022/{acorex-platform-module-document-management-client-distribute-document.command-Dx9YD_mL.mjs → acorex-platform-module-document-management-client-distribute-document.command-DSFYr9jT.mjs} +2 -2
  12. package/fesm2022/{acorex-platform-module-document-management-client-distribute-document.command-Dx9YD_mL.mjs.map → acorex-platform-module-document-management-client-distribute-document.command-DSFYr9jT.mjs.map} +1 -1
  13. package/fesm2022/{acorex-platform-module-document-management-client-drive-choose.component-OhAugc6r.mjs → acorex-platform-module-document-management-client-drive-choose.component-BPQiWqpA.mjs} +2 -2
  14. package/fesm2022/{acorex-platform-module-document-management-client-drive-choose.component-OhAugc6r.mjs.map → acorex-platform-module-document-management-client-drive-choose.component-BPQiWqpA.mjs.map} +1 -1
  15. package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view-skeleton.component-DpBUfDxO.mjs → acorex-platform-module-document-management-client-large-icons-view-skeleton.component-4rFzy7h8.mjs} +2 -2
  16. package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view-skeleton.component-DpBUfDxO.mjs.map → acorex-platform-module-document-management-client-large-icons-view-skeleton.component-4rFzy7h8.mjs.map} +1 -1
  17. package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view.component-CcfWPik4.mjs → acorex-platform-module-document-management-client-large-icons-view.component-CkMbMmuM.mjs} +2 -2
  18. package/fesm2022/{acorex-platform-module-document-management-client-large-icons-view.component-CcfWPik4.mjs.map → acorex-platform-module-document-management-client-large-icons-view.component-CkMbMmuM.mjs.map} +1 -1
  19. package/fesm2022/{acorex-platform-module-document-management-client-large-tiles-view.component-Dy21yqA-.mjs → acorex-platform-module-document-management-client-large-tiles-view.component-DLHK-fFn.mjs} +2 -2
  20. package/fesm2022/{acorex-platform-module-document-management-client-large-tiles-view.component-Dy21yqA-.mjs.map → acorex-platform-module-document-management-client-large-tiles-view.component-DLHK-fFn.mjs.map} +1 -1
  21. package/fesm2022/{acorex-platform-module-document-management-client-list-view-skeleton.component-BBvqBQNf.mjs → acorex-platform-module-document-management-client-list-view-skeleton.component-CLug0OiV.mjs} +2 -2
  22. package/fesm2022/{acorex-platform-module-document-management-client-list-view-skeleton.component-BBvqBQNf.mjs.map → acorex-platform-module-document-management-client-list-view-skeleton.component-CLug0OiV.mjs.map} +1 -1
  23. package/fesm2022/{acorex-platform-module-document-management-client-list-view.component-BokMkS6v.mjs → acorex-platform-module-document-management-client-list-view.component-DAGIHv6z.mjs} +2 -2
  24. package/fesm2022/{acorex-platform-module-document-management-client-list-view.component-BokMkS6v.mjs.map → acorex-platform-module-document-management-client-list-view.component-DAGIHv6z.mjs.map} +1 -1
  25. package/fesm2022/{acorex-platform-module-document-management-client-open-document.command-CXGPoHxG.mjs → acorex-platform-module-document-management-client-open-document.command-GL952N7r.mjs} +2 -2
  26. package/fesm2022/{acorex-platform-module-document-management-client-open-document.command-CXGPoHxG.mjs.map → acorex-platform-module-document-management-client-open-document.command-GL952N7r.mjs.map} +1 -1
  27. package/fesm2022/{acorex-platform-module-document-management-client-request-document-review.command-DeKBAiDg.mjs → acorex-platform-module-document-management-client-request-document-review.command-Dk9rdQHo.mjs} +2 -2
  28. package/fesm2022/{acorex-platform-module-document-management-client-request-document-review.command-DeKBAiDg.mjs.map → acorex-platform-module-document-management-client-request-document-review.command-Dk9rdQHo.mjs.map} +1 -1
  29. package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view-skeleton.component-CXwTiSk5.mjs → acorex-platform-module-document-management-client-small-icons-view-skeleton.component-Bu7pQlHW.mjs} +2 -2
  30. package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view-skeleton.component-CXwTiSk5.mjs.map → acorex-platform-module-document-management-client-small-icons-view-skeleton.component-Bu7pQlHW.mjs.map} +1 -1
  31. package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view.component-DnY9IiJE.mjs → acorex-platform-module-document-management-client-small-icons-view.component-BXu_eGHF.mjs} +2 -2
  32. package/fesm2022/{acorex-platform-module-document-management-client-small-icons-view.component-DnY9IiJE.mjs.map → acorex-platform-module-document-management-client-small-icons-view.component-BXu_eGHF.mjs.map} +1 -1
  33. package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view-skeleton.component--4le59Nv.mjs → acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-Bj6UsWol.mjs} +2 -2
  34. package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view-skeleton.component--4le59Nv.mjs.map → acorex-platform-module-document-management-client-small-tiles-view-skeleton.component-Bj6UsWol.mjs.map} +1 -1
  35. package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view.component-DKo0rMHF.mjs → acorex-platform-module-document-management-client-small-tiles-view.component-BVHqc8Pl.mjs} +2 -2
  36. package/fesm2022/{acorex-platform-module-document-management-client-small-tiles-view.component-DKo0rMHF.mjs.map → acorex-platform-module-document-management-client-small-tiles-view.component-BVHqc8Pl.mjs.map} +1 -1
  37. package/fesm2022/{acorex-platform-module-document-management-client-upload-document.command-Cq4ewNtw.mjs → acorex-platform-module-document-management-client-upload-document.command-RODrmXxQ.mjs} +2 -2
  38. package/fesm2022/{acorex-platform-module-document-management-client-upload-document.command-Cq4ewNtw.mjs.map → acorex-platform-module-document-management-client-upload-document.command-RODrmXxQ.mjs.map} +1 -1
  39. package/fesm2022/acorex-platform-module-document-management-client.mjs +2 -2
  40. package/package.json +2 -1
  41. package/types/acorex-platform-module-document-management-client-contracts.d.ts +1 -1
  42. package/types/acorex-platform-module-document-management-client.d.ts +1 -1
  43. package/fesm2022/acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-drive-choose.component-OhAugc6r.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/drive-choose/drive-choose.component.ts","../../../../libs/modules/document-management/client/src/lib/features/drive-choose/drive-choose.component.html"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex-platform/framework-client/auth';\nimport {\n AXPFileTypeProviderService,\n resolveExplorerFileDisplayName,\n} from '@acorex-platform/framework-client/common';\nimport {\n fileNameMatchesAccept,\n isUnrestrictedFileAccept,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPPlatformScope } from '@acorex-platform/framework-shared/core';\nimport { AXPLayoutThemeService } from '@acorex-platform/framework-client/themes/shared';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n OnInit,\n signal,\n untracked,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { RootConfig } from '@acorex-platform/module-document-management-client/contracts';\nimport { AXMDocumentExplorerComponent, AXPDocumentExplorerViewModel } from '../document-explorer';\nimport { AXMDocumentManagerService, AXMFolderPathBreadcrumbsComponent } from '../shared';\nimport {\n AXMDocumentExplorerBrowseMode,\n AXMDocumentExplorerNode,\n AXMDocumentSelectionMode,\n} from '../shared/document-manager.types';\nimport { AXValueChangedEvent } from '@acorex/cdk/common';\n@Component({\n selector: 'ax-document-drive-choose',\n templateUrl: './drive-choose.component.html',\n styleUrls: ['./drive-choose.component.css'],\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n AXMenuModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXDropdownButtonModule,\n AXDropdownModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBadgeModule,\n AXSearchBoxModule,\n AXFormatModule,\n AXFileModule,\n AXBreadcrumbsModule,\n AXDateTimeModule,\n AXMDocumentExplorerComponent,\n AXMFolderPathBreadcrumbsComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AXPDocumentExplorerViewModel],\n})\nexport class AXMDocumentDriveChooseComponent extends AXBasePageComponent implements OnInit {\n /** Assigned by popup `data` before `ngOnInit`. */\n public scope!: AXPPlatformScope;\n /** Assigned by popup `data` before `ngOnInit`. */\n public browseMode: AXMDocumentExplorerBrowseMode = 'file';\n /** Assigned by popup `data` before `ngOnInit`. */\n public selectionMode: AXMDocumentSelectionMode = 'single';\n /** When true, hides the in-dialog title row (popup chrome provides the title). */\n public hideHeader = false;\n /** Same HTML accept list as the device picker; hides non-matching files. */\n public accept?: string;\n\n protected readonly layout = inject(AXPLayoutThemeService);\n protected readonly rootConfig = RootConfig;\n private readonly fileTypeService = inject(AXPFileTypeProviderService);\n private readonly driveService = inject(AXMDocumentManagerService);\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n protected readonly sessionService = inject(AXPSessionService);\n\n protected readonly filterItems = signal<Array<{ key: string; textKey: string; icon: string }>>([]);\n public selectedFilter = signal<string>('all');\n\n protected readonly browseModeState = signal<AXMDocumentExplorerBrowseMode>('file');\n protected readonly selectionModeState = signal<AXMDocumentSelectionMode>('single');\n\n protected readonly sortItems = signal([\n { key: 'name', textKey: 'actions.sort-by-name', icon: 'fa-light fa-font' },\n { key: 'modified', textKey: 'actions.sort-by-date', icon: 'fa-light fa-calendar' },\n { key: 'size', textKey: 'actions.sort-by-size', icon: 'fa-light fa-weight-hanging' },\n ]);\n\n protected documentExplorer = viewChild(AXMDocumentExplorerComponent);\n\n protected readonly selectedSort = computed(() => {\n const items = this.sortItems();\n return items.find((item) => item.key === this.vm.sortField()) || items[0];\n });\n\n protected readonly selectText = computed(() => {\n if (this.vm.browseMode() !== 'file') {\n return 'actions.select-folder';\n }\n return this.selectionModeState() === 'multiple' ? 'actions.select-files' : 'actions.select-file';\n });\n\n protected readonly selectedFileCount = computed(() =>\n this.vm.selectedNodes().filter((node) => this.isSelectableFile(node)).length,\n );\n\n protected readonly canSubmit = computed(() => {\n if (this.browseModeState() === 'folder') {\n return Boolean(this.vm.currentFolder()?.id);\n }\n\n const selectedFiles = this.vm.selectedNodes().filter((node) => this.isSelectableFile(node));\n if (this.selectionModeState() === 'multiple') {\n return selectedFiles.length > 0;\n }\n return selectedFiles.length === 1;\n });\n\n protected readonly subtitleKey = computed(() =>\n this.browseModeState() === 'folder' ? 'drive-choose.subtitle-folder' : 'drive-choose.subtitle',\n );\n\n protected searchQuery: string | null = '';\n\n #navigateEffect = effect(() => {\n const navigatingFolderId = this.vm.navigatingFolderId();\n if (navigatingFolderId) {\n this.loadDrive(navigatingFolderId);\n \n // Clear search when navigating to a folder\n setTimeout(() => {\n this.searchQuery = null;\n }, 200);\n }\n });\n\n #loadingEffect = effect(() => {\n const isLoading = this.vm.isLoading();\n untracked(() => {\n this.layout.setNavigationLoading(isLoading);\n });\n });\n\n #selectionSyncEffect = effect(() => {\n if (this.documentExplorer()) {\n this.vm.setSelectionMode(this.selectionModeState());\n }\n });\n\n async handleSearchChange(event: AXValueChangedEvent) {\n if (event.value == null) {\n return;\n }\n\n if (event.value?.length > 0) {\n this.vm.setLoading(true);\n try {\n const searchRootId =\n this.vm.currentNode()?.id === 'virtual'\n ? this.vm.currentNode()?.parentId ?? undefined\n : this.vm.currentNode()?.id;\n const result = await this.driveService.searchNodes(event.value, this.scope, {\n folderId: searchRootId !== 'virtual' ? searchRootId : undefined,\n });\n await this.vm.virtualFolder(result, {\n name: 'Search Result',\n parentId: searchRootId,\n });\n } finally {\n this.vm.setLoading(false);\n }\n return;\n }\n\n // Clearing search restores the folder that was searched — do not navigate to parent.\n const restoreFolderId =\n this.vm.currentNode()?.id === 'virtual'\n ? this.vm.currentNode()?.parentId ?? undefined\n : this.vm.currentNode()?.id;\n await this.loadDrive(restoreFolderId || undefined);\n }\n\n override async ngOnInit() {\n super.ngOnInit();\n this.applyPopupOptions();\n await this.loadFilterItems();\n\n await this.vm.initialize({\n browseMode: this.browseModeState(),\n scope: this.scope,\n });\n this.vm.setSelectionMode(this.selectionModeState());\n this.loadDrive();\n }\n\n private applyPopupOptions(): void {\n this.browseModeState.set(this.browseMode);\n this.selectionModeState.set(this.selectionMode);\n this.vm.setAcceptFilter(this.accept);\n }\n\n private async loadDrive(folderId?: string) {\n if (folderId) {\n await this.vm.loadFolderContents(folderId);\n } else {\n // getRoot already returns the hydrated root (children + shortcuts + path):\n // apply it directly instead of fetching the same folder a second time.\n const root = await this.driveService.getRoot(this.scope);\n if (root.result) {\n await this.vm.applyLoadedFolder(root);\n }\n }\n }\n\n async loadFilterItems() {\n const types = await this.fileTypeService.items();\n const items = [\n { key: 'all', textKey: 'file-types.all', icon: 'fa-light fa-folder-closed' },\n ...types.map((type) => ({\n key: type.name,\n textKey: `file-types.${type.name}`,\n icon: type.icon || 'fa-light fa-file',\n })),\n ];\n this.filterItems.set(items);\n }\n\n protected setFilter(key: string): void {\n this.selectedFilter.set(key);\n }\n\n protected getFilterIcon(): string {\n if (this.selectedFilter() === 'all') {\n return 'fa-light fa-folder-closed';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.icon || 'fa-light fa-file';\n }\n\n protected getFilterText(): string {\n if (this.selectedFilter() === 'all') {\n return 'file-types.all';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.textKey || 'file-types.all';\n }\n\n protected handleNavigateToFolder(folderId: string) {\n this.vm.navigateToFolder(folderId);\n }\n\n protected async handleSubmitButton() {\n const items =\n this.vm.browseMode() === 'file'\n ? this.vm.selectedNodes().filter((node) => this.isSelectableFile(node))\n : [this.vm.currentFolder()].filter(Boolean);\n\n this.close({\n result: true,\n items,\n });\n }\n\n private isSelectableFile(node: AXMDocumentExplorerNode): boolean {\n if (node.type !== 'file') {\n return false;\n }\n if (isUnrestrictedFileAccept(this.accept)) {\n return true;\n }\n return fileNameMatchesAccept(resolveExplorerFileDisplayName(node.name, node.fileId), this.accept);\n }\n\n protected handleCancelClick() {\n this.close({\n result: false,\n });\n }\n}\n","<div class=\"axm-drive-choose\" [class.__compact-header]=\"hideHeader\" *translate=\"let t\">\n <header class=\"__header\">\n @if (!hideHeader) {\n <div class=\"__header-main\">\n <span class=\"__header-icon primary-surface\">\n <ax-icon icon=\"fa-light fa-hard-drive\"></ax-icon>\n </span>\n <div class=\"__header-text\">\n <h2 class=\"__header-title\">\n {{\n '@document-management:actions.choose-from-drive' | translate | async\n }}\n </h2>\n <p class=\"__header-subtitle\">\n {{\n t(subtitleKey(), { scope: rootConfig.config.i18n })\n | async\n }}\n </p>\n </div>\n </div>\n }\n\n <div class=\"__toolbar\">\n <axm-folder-path-breadcrumbs\n class=\"__breadcrumbs\"\n ></axm-folder-path-breadcrumbs>\n <ax-search-box\n [(value)]=\"searchQuery\"\n (onValueChanged)=\"handleSearchChange($event)\"\n class=\"__search\"\n [placeholder]=\"\n t('actions.search', { scope: rootConfig.config.i18n }) | async\n \"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n </header>\n\n <main class=\"__body\">\n @if (vm.isLoading()) {\n <div class=\"__loading\">\n <ax-loading></ax-loading>\n <span>{{\n t('drive-choose.loading', { scope: rootConfig.config.i18n }) | async\n }}</span>\n </div>\n } @else {\n <axm-document-explorer\n [browseMode]=\"browseModeState()\"\n [selectionMode]=\"selectionModeState()\"\n [viewMode]=\"'list'\"\n [showContextMenu]=\"false\"\n >\n </axm-document-explorer>\n }\n </main>\n\n <ax-footer class=\"__footer light-surface\">\n <ax-prefix>\n @if (selectionModeState() === 'multiple' && selectedFileCount() > 0) {\n <span class=\"__selection-badge primary-surface\">\n <ax-icon icon=\"fa-light fa-check\"></ax-icon>\n {{\n t('drive-choose.selected-count', {\n scope: rootConfig.config.i18n,\n params: { count: selectedFileCount() },\n }) | async\n }}\n </span>\n }\n </ax-prefix>\n <ax-suffix>\n <ax-button\n (onClick)=\"handleCancelClick()\"\n [text]=\"'@general:actions.cancel.title' | translate | async\"\n ></ax-button>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n [disabled]=\"!canSubmit()\"\n (onClick)=\"handleSubmitButton()\"\n [text]=\"t(selectText(), { scope: rootConfig.config.i18n }) | async\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-check\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </ax-suffix>\n </ax-footer>\n</div>\n"],"names":["i3","i6","i2"],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-drive-choose.component-BPQiWqpA.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/drive-choose/drive-choose.component.ts","../../../../libs/modules/document-management/client/src/lib/features/drive-choose/drive-choose.component.html"],"sourcesContent":["import { AXBadgeModule } from '@acorex/components/badge';\nimport { AXBreadcrumbsModule } from '@acorex/components/breadcrumbs';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXButtonGroupModule } from '@acorex/components/button-group';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXMenuModule } from '@acorex/components/menu';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXSearchBoxModule } from '@acorex/components/search-box';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPSessionService } from '@acorex-platform/framework-client/auth';\nimport {\n AXPFileTypeProviderService,\n resolveExplorerFileDisplayName,\n} from '@acorex-platform/framework-client/common';\nimport {\n fileNameMatchesAccept,\n isUnrestrictedFileAccept,\n} from '@acorex-platform/framework-client/layout/components';\nimport { AXPPlatformScope } from '@acorex-platform/framework-shared/core';\nimport { AXPLayoutThemeService } from '@acorex-platform/framework-client/themes/shared';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n inject,\n OnInit,\n signal,\n untracked,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { RootConfig } from '@acorex-platform/module-document-management-client/contracts';\nimport { AXMDocumentExplorerComponent, AXPDocumentExplorerViewModel } from '../document-explorer';\nimport { AXMDocumentManagerService, AXMFolderPathBreadcrumbsComponent } from '../shared';\nimport {\n AXMDocumentExplorerBrowseMode,\n AXMDocumentExplorerNode,\n AXMDocumentSelectionMode,\n} from '../shared/document-manager.types';\nimport { AXValueChangedEvent } from '@acorex/cdk/common';\n@Component({\n selector: 'ax-document-drive-choose',\n templateUrl: './drive-choose.component.html',\n styleUrls: ['./drive-choose.component.css'],\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n AXMenuModule,\n AXButtonModule,\n AXButtonGroupModule,\n AXDropdownButtonModule,\n AXDropdownModule,\n AXTranslationModule,\n AXDecoratorModule,\n AXLoadingModule,\n AXBadgeModule,\n AXSearchBoxModule,\n AXFormatModule,\n AXFileModule,\n AXBreadcrumbsModule,\n AXDateTimeModule,\n AXMDocumentExplorerComponent,\n AXMFolderPathBreadcrumbsComponent,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [AXPDocumentExplorerViewModel],\n})\nexport class AXMDocumentDriveChooseComponent extends AXBasePageComponent implements OnInit {\n /** Assigned by popup `data` before `ngOnInit`. */\n public scope!: AXPPlatformScope;\n /** Assigned by popup `data` before `ngOnInit`. */\n public browseMode: AXMDocumentExplorerBrowseMode = 'file';\n /** Assigned by popup `data` before `ngOnInit`. */\n public selectionMode: AXMDocumentSelectionMode = 'single';\n /** When true, hides the in-dialog title row (popup chrome provides the title). */\n public hideHeader = false;\n /** Same HTML accept list as the device picker; hides non-matching files. */\n public accept?: string;\n\n protected readonly layout = inject(AXPLayoutThemeService);\n protected readonly rootConfig = RootConfig;\n private readonly fileTypeService = inject(AXPFileTypeProviderService);\n private readonly driveService = inject(AXMDocumentManagerService);\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n protected readonly sessionService = inject(AXPSessionService);\n\n protected readonly filterItems = signal<Array<{ key: string; textKey: string; icon: string }>>([]);\n public selectedFilter = signal<string>('all');\n\n protected readonly browseModeState = signal<AXMDocumentExplorerBrowseMode>('file');\n protected readonly selectionModeState = signal<AXMDocumentSelectionMode>('single');\n\n protected readonly sortItems = signal([\n { key: 'name', textKey: 'actions.sort-by-name', icon: 'fa-light fa-font' },\n { key: 'modified', textKey: 'actions.sort-by-date', icon: 'fa-light fa-calendar' },\n { key: 'size', textKey: 'actions.sort-by-size', icon: 'fa-light fa-weight-hanging' },\n ]);\n\n protected documentExplorer = viewChild(AXMDocumentExplorerComponent);\n\n protected readonly selectedSort = computed(() => {\n const items = this.sortItems();\n return items.find((item) => item.key === this.vm.sortField()) || items[0];\n });\n\n protected readonly selectText = computed(() => {\n if (this.vm.browseMode() !== 'file') {\n return 'actions.select-folder';\n }\n return this.selectionModeState() === 'multiple' ? 'actions.select-files' : 'actions.select-file';\n });\n\n protected readonly selectedFileCount = computed(() =>\n this.vm.selectedNodes().filter((node) => this.isSelectableFile(node)).length,\n );\n\n protected readonly canSubmit = computed(() => {\n if (this.browseModeState() === 'folder') {\n return Boolean(this.vm.currentFolder()?.id);\n }\n\n const selectedFiles = this.vm.selectedNodes().filter((node) => this.isSelectableFile(node));\n if (this.selectionModeState() === 'multiple') {\n return selectedFiles.length > 0;\n }\n return selectedFiles.length === 1;\n });\n\n protected readonly subtitleKey = computed(() =>\n this.browseModeState() === 'folder' ? 'drive-choose.subtitle-folder' : 'drive-choose.subtitle',\n );\n\n protected searchQuery: string | null = '';\n\n #navigateEffect = effect(() => {\n const navigatingFolderId = this.vm.navigatingFolderId();\n if (navigatingFolderId) {\n this.loadDrive(navigatingFolderId);\n \n // Clear search when navigating to a folder\n setTimeout(() => {\n this.searchQuery = null;\n }, 200);\n }\n });\n\n #loadingEffect = effect(() => {\n const isLoading = this.vm.isLoading();\n untracked(() => {\n this.layout.setNavigationLoading(isLoading);\n });\n });\n\n #selectionSyncEffect = effect(() => {\n if (this.documentExplorer()) {\n this.vm.setSelectionMode(this.selectionModeState());\n }\n });\n\n async handleSearchChange(event: AXValueChangedEvent) {\n if (event.value == null) {\n return;\n }\n\n if (event.value?.length > 0) {\n this.vm.setLoading(true);\n try {\n const searchRootId =\n this.vm.currentNode()?.id === 'virtual'\n ? this.vm.currentNode()?.parentId ?? undefined\n : this.vm.currentNode()?.id;\n const result = await this.driveService.searchNodes(event.value, this.scope, {\n folderId: searchRootId !== 'virtual' ? searchRootId : undefined,\n });\n await this.vm.virtualFolder(result, {\n name: 'Search Result',\n parentId: searchRootId,\n });\n } finally {\n this.vm.setLoading(false);\n }\n return;\n }\n\n // Clearing search restores the folder that was searched — do not navigate to parent.\n const restoreFolderId =\n this.vm.currentNode()?.id === 'virtual'\n ? this.vm.currentNode()?.parentId ?? undefined\n : this.vm.currentNode()?.id;\n await this.loadDrive(restoreFolderId || undefined);\n }\n\n override async ngOnInit() {\n super.ngOnInit();\n this.applyPopupOptions();\n await this.loadFilterItems();\n\n await this.vm.initialize({\n browseMode: this.browseModeState(),\n scope: this.scope,\n });\n this.vm.setSelectionMode(this.selectionModeState());\n this.loadDrive();\n }\n\n private applyPopupOptions(): void {\n this.browseModeState.set(this.browseMode);\n this.selectionModeState.set(this.selectionMode);\n this.vm.setAcceptFilter(this.accept);\n }\n\n private async loadDrive(folderId?: string) {\n if (folderId) {\n await this.vm.loadFolderContents(folderId);\n } else {\n // getRoot already returns the hydrated root (children + shortcuts + path):\n // apply it directly instead of fetching the same folder a second time.\n const root = await this.driveService.getRoot(this.scope);\n if (root.result) {\n await this.vm.applyLoadedFolder(root);\n }\n }\n }\n\n async loadFilterItems() {\n const types = await this.fileTypeService.items();\n const items = [\n { key: 'all', textKey: 'file-types.all', icon: 'fa-light fa-folder-closed' },\n ...types.map((type) => ({\n key: type.name,\n textKey: `file-types.${type.name}`,\n icon: type.icon || 'fa-light fa-file',\n })),\n ];\n this.filterItems.set(items);\n }\n\n protected setFilter(key: string): void {\n this.selectedFilter.set(key);\n }\n\n protected getFilterIcon(): string {\n if (this.selectedFilter() === 'all') {\n return 'fa-light fa-folder-closed';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.icon || 'fa-light fa-file';\n }\n\n protected getFilterText(): string {\n if (this.selectedFilter() === 'all') {\n return 'file-types.all';\n }\n const item = this.filterItems().find((item) => item.key === this.selectedFilter());\n return item?.textKey || 'file-types.all';\n }\n\n protected handleNavigateToFolder(folderId: string) {\n this.vm.navigateToFolder(folderId);\n }\n\n protected async handleSubmitButton() {\n const items =\n this.vm.browseMode() === 'file'\n ? this.vm.selectedNodes().filter((node) => this.isSelectableFile(node))\n : [this.vm.currentFolder()].filter(Boolean);\n\n this.close({\n result: true,\n items,\n });\n }\n\n private isSelectableFile(node: AXMDocumentExplorerNode): boolean {\n if (node.type !== 'file') {\n return false;\n }\n if (isUnrestrictedFileAccept(this.accept)) {\n return true;\n }\n return fileNameMatchesAccept(resolveExplorerFileDisplayName(node.name, node.fileId), this.accept);\n }\n\n protected handleCancelClick() {\n this.close({\n result: false,\n });\n }\n}\n","<div class=\"axm-drive-choose\" [class.__compact-header]=\"hideHeader\" *translate=\"let t\">\n <header class=\"__header\">\n @if (!hideHeader) {\n <div class=\"__header-main\">\n <span class=\"__header-icon primary-surface\">\n <ax-icon icon=\"fa-light fa-hard-drive\"></ax-icon>\n </span>\n <div class=\"__header-text\">\n <h2 class=\"__header-title\">\n {{\n '@document-management:actions.choose-from-drive' | translate | async\n }}\n </h2>\n <p class=\"__header-subtitle\">\n {{\n t(subtitleKey(), { scope: rootConfig.config.i18n })\n | async\n }}\n </p>\n </div>\n </div>\n }\n\n <div class=\"__toolbar\">\n <axm-folder-path-breadcrumbs\n class=\"__breadcrumbs\"\n ></axm-folder-path-breadcrumbs>\n <ax-search-box\n [(value)]=\"searchQuery\"\n (onValueChanged)=\"handleSearchChange($event)\"\n class=\"__search\"\n [placeholder]=\"\n t('actions.search', { scope: rootConfig.config.i18n }) | async\n \"\n >\n <ax-clear-button></ax-clear-button>\n </ax-search-box>\n </div>\n </header>\n\n <main class=\"__body\">\n @if (vm.isLoading()) {\n <div class=\"__loading\">\n <ax-loading></ax-loading>\n <span>{{\n t('drive-choose.loading', { scope: rootConfig.config.i18n }) | async\n }}</span>\n </div>\n } @else {\n <axm-document-explorer\n [browseMode]=\"browseModeState()\"\n [selectionMode]=\"selectionModeState()\"\n [viewMode]=\"'list'\"\n [showContextMenu]=\"false\"\n >\n </axm-document-explorer>\n }\n </main>\n\n <ax-footer class=\"__footer light-surface\">\n <ax-prefix>\n @if (selectionModeState() === 'multiple' && selectedFileCount() > 0) {\n <span class=\"__selection-badge primary-surface\">\n <ax-icon icon=\"fa-light fa-check\"></ax-icon>\n {{\n t('drive-choose.selected-count', {\n scope: rootConfig.config.i18n,\n params: { count: selectedFileCount() },\n }) | async\n }}\n </span>\n }\n </ax-prefix>\n <ax-suffix>\n <ax-button\n (onClick)=\"handleCancelClick()\"\n [text]=\"'@general:actions.cancel.title' | translate | async\"\n ></ax-button>\n <ax-button\n look=\"solid\"\n color=\"primary\"\n [disabled]=\"!canSubmit()\"\n (onClick)=\"handleSubmitButton()\"\n [text]=\"t(selectText(), { scope: rootConfig.config.i18n }) | async\"\n >\n <ax-prefix>\n <ax-icon icon=\"fa-light fa-check\"></ax-icon>\n </ax-prefix>\n </ax-button>\n </ax-suffix>\n </ax-footer>\n</div>\n"],"names":["i3","i6","i2"],"mappings":"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"}
@@ -6,7 +6,7 @@ import * as i1$1 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import * as i0 from '@angular/core';
8
8
  import { inject, ChangeDetectionStrategy, Component } from '@angular/core';
9
- import { A as AXPDocumentExplorerViewModel } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
9
+ import { A as AXPDocumentExplorerViewModel } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
10
10
 
11
11
  class AXMDocumentExplorerLargeIconsViewSkeletonComponent {
12
12
  constructor() {
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
24
24
  }] });
25
25
 
26
26
  export { AXMDocumentExplorerLargeIconsViewSkeletonComponent };
27
- //# sourceMappingURL=acorex-platform-module-document-management-client-large-icons-view-skeleton.component-DpBUfDxO.mjs.map
27
+ //# sourceMappingURL=acorex-platform-module-document-management-client-large-icons-view-skeleton.component-4rFzy7h8.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-large-icons-view-skeleton.component-DpBUfDxO.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view-skeleton.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view-skeleton.component.html"],"sourcesContent":["import { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\n@Component({\n selector: 'axm-document-explorer-large-icons-view-skeleton',\n templateUrl: './large-icons-view-skeleton.component.html',\n styleUrl: './large-icons-view-skeleton.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXSkeletonModule, AXTranslationModule],\n})\nexport class AXMDocumentExplorerLargeIconsViewSkeletonComponent {\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n\n protected readonly folderPlaceholders = [0, 1, 2];\n protected readonly filePlaceholders = [0, 1];\n protected readonly flatPlaceholders = [0, 1, 2, 3, 4];\n}\n","@if (vm.groupByType()) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of folderPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of filePlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"__content\">\n @for (item of flatPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;;MAaa,kDAAkD,CAAA;AAP/D,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;QAEzC,IAAA,CAAA,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA;8GANY,kDAAkD,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlD,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kDAAkD,2GCb/D,+xCAqCA,EAAA,MAAA,EAAA,CAAA,mvCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,gBAAgB,kIAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAElD,kDAAkD,EAAA,UAAA,EAAA,CAAA;kBAP9D,SAAS;+BACE,iDAAiD,EAAA,eAAA,EAG1C,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAA,QAAA,EAAA,+xCAAA,EAAA,MAAA,EAAA,CAAA,mvCAAA,CAAA,EAAA;;;"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-large-icons-view-skeleton.component-4rFzy7h8.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view-skeleton.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view-skeleton.component.html"],"sourcesContent":["import { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\n@Component({\n selector: 'axm-document-explorer-large-icons-view-skeleton',\n templateUrl: './large-icons-view-skeleton.component.html',\n styleUrl: './large-icons-view-skeleton.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXSkeletonModule, AXTranslationModule],\n})\nexport class AXMDocumentExplorerLargeIconsViewSkeletonComponent {\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n\n protected readonly folderPlaceholders = [0, 1, 2];\n protected readonly filePlaceholders = [0, 1];\n protected readonly flatPlaceholders = [0, 1, 2, 3, 4];\n}\n","@if (vm.groupByType()) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of folderPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of filePlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"__content\">\n @for (item of flatPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;;MAaa,kDAAkD,CAAA;AAP/D,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;QAEzC,IAAA,CAAA,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA;8GANY,kDAAkD,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAlD,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kDAAkD,2GCb/D,+xCAqCA,EAAA,MAAA,EAAA,CAAA,mvCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,gBAAgB,kIAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAElD,kDAAkD,EAAA,UAAA,EAAA,CAAA;kBAP9D,SAAS;+BACE,iDAAiD,EAAA,eAAA,EAG1C,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAA,QAAA,EAAA,+xCAAA,EAAA,MAAA,EAAA,CAAA,mvCAAA,CAAA,EAAA;;;"}
@@ -3,7 +3,7 @@ import { inject, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { AXPElementDataDirective, AXPDblClickDirective } from '@acorex-platform/framework-client/core';
6
- import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
6
+ import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
7
7
  import * as i3 from '@acorex/core/translation';
8
8
  import { AXTranslationModule } from '@acorex/core/translation';
9
9
 
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
28
28
  }] });
29
29
 
30
30
  export { AXMDocumentExplorerLargeIconsViewComponent };
31
- //# sourceMappingURL=acorex-platform-module-document-management-client-large-icons-view.component-CcfWPik4.mjs.map
31
+ //# sourceMappingURL=acorex-platform-module-document-management-client-large-icons-view.component-CkMbMmuM.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-large-icons-view.component-CcfWPik4.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-large-icons-view',\n templateUrl: './large-icons-view.component.html',\n styleUrls: ['./large-icons-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerLargeIconsViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-4x\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"inline-flex max-w-full items-center justify-center gap-1\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-4x\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n <axm-document-expiration-badge class=\"__expiration-badge\" [node]=\"file\" />\n </div>\n <div class=\"__name\">{{ file.title || file.name }}</div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__content fa-4x\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"inline-flex max-w-full items-center justify-center gap-1\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n <axm-document-expiration-badge class=\"__expiration-badge\" [node]=\"file\" />\n </div>\n <div class=\"__name\">{{ file.title || file.name }}</div>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;MA2Ba,0CAA0C,CAAA;AAhBvD,IAAA,WAAA,GAAA;AAiBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,0CAA0C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0CAA0C,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BvD,+5JAoHA,EAAA,MAAA,EAAA,CAAA,0xEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDlGM,YAAY,+BACZ,uBAAuB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,0CAA0C,EAAA,UAAA,EAAA,CAAA;kBAhBtD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wCAAwC,cAGtC,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,+5JAAA,EAAA,MAAA,EAAA,CAAA,0xEAAA,CAAA,EAAA;;;"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-large-icons-view.component-CkMbMmuM.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-icons/large-icons-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-large-icons-view',\n templateUrl: './large-icons-view.component.html',\n styleUrls: ['./large-icons-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerLargeIconsViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-4x\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"inline-flex max-w-full items-center justify-center gap-1\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-4x\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n <axm-document-expiration-badge class=\"__expiration-badge\" [node]=\"file\" />\n </div>\n <div class=\"__name\">{{ file.title || file.name }}</div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__content fa-4x\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"inline-flex max-w-full items-center justify-center gap-1\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n <axm-document-expiration-badge class=\"__expiration-badge\" [node]=\"file\" />\n </div>\n <div class=\"__name\">{{ file.title || file.name }}</div>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;MA2Ba,0CAA0C,CAAA;AAhBvD,IAAA,WAAA,GAAA;AAiBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,0CAA0C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0CAA0C,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BvD,+5JAoHA,EAAA,MAAA,EAAA,CAAA,0xEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDlGM,YAAY,+BACZ,uBAAuB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,0CAA0C,EAAA,UAAA,EAAA,CAAA;kBAhBtD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wCAAwC,cAGtC,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,+5JAAA,EAAA,MAAA,EAAA,CAAA,0xEAAA,CAAA,EAAA;;;"}
@@ -3,7 +3,7 @@ import { inject, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { AXPElementDataDirective, AXPDblClickDirective } from '@acorex-platform/framework-client/core';
6
- import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
6
+ import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
7
7
  import * as i2 from '@acorex/core/format';
8
8
  import { AXFormatModule } from '@acorex/core/format';
9
9
  import { AXDateTimeModule } from '@acorex/core/date-time';
@@ -33,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
33
33
  }] });
34
34
 
35
35
  export { AXMDocumentExplorerLargeTilesViewComponent };
36
- //# sourceMappingURL=acorex-platform-module-document-management-client-large-tiles-view.component-Dy21yqA-.mjs.map
36
+ //# sourceMappingURL=acorex-platform-module-document-management-client-large-tiles-view.component-DLHK-fFn.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-large-tiles-view.component-Dy21yqA-.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-large-tiles-view',\n templateUrl: './large-tiles-view.component.html',\n styleUrls: ['./large-tiles-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXFormatModule,\n AXDateTimeModule,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerLargeTilesViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section fa-3x\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <span class=\"__name\">{{ folder.name }}</span>\n <div class=\"__info\">\n <div class=\"inline-flex items-center gap-1\">\n <span>{{ (folder.childrenCount ?? 0) + (folder.itemsCount ?? 0) }} items</span>\n <!-- ----- Expiration counts after item count ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n <span>{{ folder.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section fa-3x\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (dblclick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <span class=\"__name\">{{ file.title || file.name }}</span>\n <axm-document-expiration-badge [node]=\"file\" />\n </div>\n <div class=\"__info\">\n <span>{{ file.size | format : 'filesize' | async }}</span>\n <span>{{ file.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__section fa-3x\">\n <div class=\"__content\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <span class=\"__name\">{{ folder.name }}</span>\n <div class=\"__info\">\n <div class=\"inline-flex items-center gap-1\">\n <span>{{ (folder.childrenCount ?? 0) + (folder.itemsCount ?? 0) }} items</span>\n <!-- ----- Expiration counts after item count ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n <span>{{ folder.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (dblclick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <span class=\"__name\">{{ file.title || file.name }}</span>\n <axm-document-expiration-badge [node]=\"file\" />\n </div>\n <div class=\"__info\">\n <span>{{ file.size | format : 'filesize' | async }}</span>\n <span>{{ file.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n}\n"],"names":[],"mappings":";;;;;;;;;;;;MA6Ba,0CAA0C,CAAA;AAlBvD,IAAA,WAAA,GAAA;AAmBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,0CAA0C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0CAA0C,kGC7BvD,0jMA0IA,EAAA,MAAA,EAAA,CAAA,4vFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDxHM,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,uBAAuB,8FACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,gBAAgB,8BAChB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,0CAA0C,EAAA,UAAA,EAAA,CAAA;kBAlBtD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wCAAwC,cAGtC,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,cAAc;wBACd,gBAAgB;wBAChB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,0jMAAA,EAAA,MAAA,EAAA,CAAA,4vFAAA,CAAA,EAAA;;;"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-large-tiles-view.component-DLHK-fFn.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/large-tiles/large-tiles-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-large-tiles-view',\n templateUrl: './large-tiles-view.component.html',\n styleUrls: ['./large-tiles-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXFormatModule,\n AXDateTimeModule,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerLargeTilesViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section fa-3x\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <span class=\"__name\">{{ folder.name }}</span>\n <div class=\"__info\">\n <div class=\"inline-flex items-center gap-1\">\n <span>{{ (folder.childrenCount ?? 0) + (folder.itemsCount ?? 0) }} items</span>\n <!-- ----- Expiration counts after item count ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n <span>{{ folder.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section fa-3x\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (dblclick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <span class=\"__name\">{{ file.title || file.name }}</span>\n <axm-document-expiration-badge [node]=\"file\" />\n </div>\n <div class=\"__info\">\n <span>{{ file.size | format : 'filesize' | async }}</span>\n <span>{{ file.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__section fa-3x\">\n <div class=\"__content\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <span class=\"__name\">{{ folder.name }}</span>\n <div class=\"__info\">\n <div class=\"inline-flex items-center gap-1\">\n <span>{{ (folder.childrenCount ?? 0) + (folder.itemsCount ?? 0) }} items</span>\n <!-- ----- Expiration counts after item count ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n <span>{{ folder.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (dblclick)=\"vm.openFile(file)\"\n >\n <axm-document-version-badge class=\"__version-badge\" [node]=\"file\" />\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <span class=\"__name\">{{ file.title || file.name }}</span>\n <axm-document-expiration-badge [node]=\"file\" />\n </div>\n <div class=\"__info\">\n <span>{{ file.size | format : 'filesize' | async }}</span>\n <span>{{ file.modifiedAt | format : 'datetime' : { format: 'datetime' } | async }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n}\n"],"names":[],"mappings":";;;;;;;;;;;;MA6Ba,0CAA0C,CAAA;AAlBvD,IAAA,WAAA,GAAA;AAmBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,0CAA0C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA1C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,0CAA0C,kGC7BvD,0jMA0IA,EAAA,MAAA,EAAA,CAAA,4vFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDxHM,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,uBAAuB,8FACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACd,gBAAgB,8BAChB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,0CAA0C,EAAA,UAAA,EAAA,CAAA;kBAlBtD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wCAAwC,cAGtC,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,cAAc;wBACd,gBAAgB;wBAChB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,0jMAAA,EAAA,MAAA,EAAA,CAAA,4vFAAA,CAAA,EAAA;;;"}
@@ -6,7 +6,7 @@ import * as i1$1 from '@angular/common';
6
6
  import { CommonModule } from '@angular/common';
7
7
  import * as i0 from '@angular/core';
8
8
  import { inject, ChangeDetectionStrategy, Component } from '@angular/core';
9
- import { A as AXPDocumentExplorerViewModel } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
9
+ import { A as AXPDocumentExplorerViewModel } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
10
10
 
11
11
  class AXMDocumentExplorerListViewSkeletonComponent {
12
12
  constructor() {
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
24
24
  }] });
25
25
 
26
26
  export { AXMDocumentExplorerListViewSkeletonComponent };
27
- //# sourceMappingURL=acorex-platform-module-document-management-client-list-view-skeleton.component-BBvqBQNf.mjs.map
27
+ //# sourceMappingURL=acorex-platform-module-document-management-client-list-view-skeleton.component-CLug0OiV.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-list-view-skeleton.component-BBvqBQNf.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view-skeleton.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view-skeleton.component.html"],"sourcesContent":["import { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\n@Component({\n selector: 'axm-document-explorer-list-view-skeleton',\n templateUrl: './list-view-skeleton.component.html',\n styleUrl: './list-view-skeleton.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXSkeletonModule, AXTranslationModule],\n})\nexport class AXMDocumentExplorerListViewSkeletonComponent {\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n\n protected readonly folderPlaceholders = [0, 1, 2];\n protected readonly filePlaceholders = [0, 1];\n protected readonly flatPlaceholders = [0, 1, 2, 3, 4];\n}\n","@if (vm.groupByType()) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of folderPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of filePlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"__content\">\n @for (item of flatPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;;MAaa,4CAA4C,CAAA;AAPzD,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;QAEzC,IAAA,CAAA,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA;8GANY,4CAA4C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4CAA4C,oGCbzD,+xCAqCA,EAAA,MAAA,EAAA,CAAA,4vCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,gBAAgB,kIAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAElD,4CAA4C,EAAA,UAAA,EAAA,CAAA;kBAPxD,SAAS;+BACE,0CAA0C,EAAA,eAAA,EAGnC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAA,QAAA,EAAA,+xCAAA,EAAA,MAAA,EAAA,CAAA,4vCAAA,CAAA,EAAA;;;"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-list-view-skeleton.component-CLug0OiV.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view-skeleton.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view-skeleton.component.html"],"sourcesContent":["import { AXSkeletonModule } from '@acorex/components/skeleton';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\n@Component({\n selector: 'axm-document-explorer-list-view-skeleton',\n templateUrl: './list-view-skeleton.component.html',\n styleUrl: './list-view-skeleton.component.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [CommonModule, AXSkeletonModule, AXTranslationModule],\n})\nexport class AXMDocumentExplorerListViewSkeletonComponent {\n protected readonly vm = inject(AXPDocumentExplorerViewModel);\n\n protected readonly folderPlaceholders = [0, 1, 2];\n protected readonly filePlaceholders = [0, 1];\n protected readonly flatPlaceholders = [0, 1, 2, 3, 4];\n}\n","@if (vm.groupByType()) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of folderPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content\">\n @for (item of filePlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n </div>\n} @else {\n <div class=\"__content\">\n @for (item of flatPlaceholders; track item) {\n <div class=\"__item\">\n <ax-skeleton [animated]=\"true\" class=\"__icon\"></ax-skeleton>\n <ax-skeleton [animated]=\"true\" class=\"__name\"></ax-skeleton>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;;MAaa,4CAA4C,CAAA;AAPzD,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;QAEzC,IAAA,CAAA,kBAAkB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,gBAAgB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,IAAA;8GANY,4CAA4C,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA5C,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4CAA4C,oGCbzD,+xCAqCA,EAAA,MAAA,EAAA,CAAA,4vCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED1BY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,gBAAgB,kIAAE,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAElD,4CAA4C,EAAA,UAAA,EAAA,CAAA;kBAPxD,SAAS;+BACE,0CAA0C,EAAA,eAAA,EAGnC,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAA,QAAA,EAAA,+xCAAA,EAAA,MAAA,EAAA,CAAA,4vCAAA,CAAA,EAAA;;;"}
@@ -3,7 +3,7 @@ import { inject, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { AXPElementDataDirective, AXPDblClickDirective } from '@acorex-platform/framework-client/core';
6
- import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
6
+ import { A as AXPDocumentExplorerViewModel, a as AXMDocumentExpirationBadgeComponent, b as AXMDocumentVersionBadgeComponent, c as AXMFolderExpirationBadgesComponent } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
7
7
  import * as i3 from '@acorex/core/translation';
8
8
  import { AXTranslationModule } from '@acorex/core/translation';
9
9
 
@@ -28,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
28
28
  }] });
29
29
 
30
30
  export { AXMDocumentExplorerListViewComponent };
31
- //# sourceMappingURL=acorex-platform-module-document-management-client-list-view.component-BokMkS6v.mjs.map
31
+ //# sourceMappingURL=acorex-platform-module-document-management-client-list-view.component-DAGIHv6z.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-list-view.component-BokMkS6v.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-list-view',\n templateUrl: './list-view.component.html',\n styleUrls: ['./list-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerListViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-xl\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-xl\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ file.title || file.name }}</div>\n <axm-document-expiration-badge [node]=\"file\" />\n <axm-document-version-badge [node]=\"file\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__content fa-xl\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ file.title || file.name }}</div>\n <axm-document-expiration-badge [node]=\"file\" />\n <axm-document-version-badge [node]=\"file\" />\n </div>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;MA2Ba,oCAAoC,CAAA;AAhBjD,IAAA,WAAA,GAAA;AAiBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BjD,y6JAwHA,EAAA,MAAA,EAAA,CAAA,65DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDtGM,YAAY,+BACZ,uBAAuB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAhBhD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iCAAiC,cAG/B,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,y6JAAA,EAAA,MAAA,EAAA,CAAA,65DAAA,CAAA,EAAA;;;"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-list-view.component-DAGIHv6z.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view.component.ts","../../../../libs/modules/document-management/client/src/lib/features/document-explorer/views/list/list-view.component.html"],"sourcesContent":["import { Component, inject, ChangeDetectionStrategy } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { AXPDblClickDirective, AXPElementDataDirective } from '@acorex-platform/framework-client/core';\nimport { AXPDocumentExplorerViewModel } from '../../document-explorer.viewmodel';\n\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXMDocumentExpirationBadgeComponent } from '../../../shared/components/document-expiration-badge/document-expiration-badge.component';\nimport { AXMDocumentVersionBadgeComponent } from '../../../shared/components/document-version-badge/document-version-badge.component';\nimport { AXMFolderExpirationBadgesComponent } from '../../../shared/components/folder-expiration-badges/folder-expiration-badges.component';\n\n@Component({\n selector: 'axm-document-explorer-list-view',\n templateUrl: './list-view.component.html',\n styleUrls: ['./list-view.component.css'],\n standalone: true,\n changeDetection: ChangeDetectionStrategy.Eager,\n imports: [\n CommonModule,\n AXPElementDataDirective,\n AXPDblClickDirective,\n AXTranslationModule,\n AXMDocumentExpirationBadgeComponent,\n AXMDocumentVersionBadgeComponent,\n AXMFolderExpirationBadgesComponent,\n ],\n})\nexport class AXMDocumentExplorerListViewComponent {\n protected vm = inject(AXPDocumentExplorerViewModel);\n} ","@if (vm.groupByType()) {\n @if (vm.filteredFolders().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.folders' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-xl\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n\n @if (vm.filteredFiles().length > 0) {\n <div class=\"__section\">\n <div class=\"__header\">\n <h3 class=\"__title\">{{ '@document-management:terms.common.files' | translate | async }}</h3>\n </div>\n <div class=\"__content fa-xl\">\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ file.title || file.name }}</div>\n <axm-document-expiration-badge [node]=\"file\" />\n <axm-document-version-badge [node]=\"file\" />\n </div>\n </div>\n }\n </div>\n </div>\n }\n} @else {\n <div class=\"__content fa-xl\">\n @for (folder of vm.filteredFolders(); track folder.id) {\n @let folderDisplay = vm.getNodeDisplayInfo(folder);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(folder)\"\n [axp-data]=\"folder\"\n (click)=\"vm.toggleSelect(folder)\"\n (onDblClick)=\"vm.navigateToFolder(folder.id)\"\n >\n <div class=\"__icon\" [style.color]=\"vm.getFolderColor(folder)\" [class.__shortcut]=\"folderDisplay.isShortcut\">\n @if (vm.isLoadingFolder(folder.id)) {\n <i class=\"fa-light fa-spinner fa-spin-pulse\"></i>\n } @else {\n <i class=\"fas fa-folder-closed\"></i>\n }\n @if (folderDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ folder.name }}</div>\n <!-- ----- Expiration counts after folder name ----- -->\n <axm-folder-expiration-badges [node]=\"folder\" />\n </div>\n </div>\n }\n @for (file of vm.filteredFiles(); track file.id) {\n @let fileDisplay = vm.getNodeDisplayInfo(file);\n <div\n class=\"__explorer-item\"\n [class.--selected]=\"vm.isItemSelected(file)\"\n [axp-data]=\"file\"\n (click)=\"vm.toggleSelect(file)\"\n (onDblClick)=\"vm.openFile(file)\"\n >\n <div class=\"__icon\" [class.__shortcut]=\"fileDisplay.isShortcut\">\n <i class=\"fa-fw {{ fileDisplay.icon }}\"></i>\n @if (fileDisplay.isShortcut) {\n <i class=\"__shortcut-arrow fa-light fa-up-right-from-square\" aria-hidden=\"true\"></i>\n }\n </div>\n <div class=\"flex min-w-0 items-center gap-1.5\">\n <div class=\"__name\">{{ file.title || file.name }}</div>\n <axm-document-expiration-badge [node]=\"file\" />\n <axm-document-version-badge [node]=\"file\" />\n </div>\n </div>\n }\n </div>\n}\n"],"names":["i2"],"mappings":";;;;;;;;;MA2Ba,oCAAoC,CAAA;AAhBjD,IAAA,WAAA,GAAA;AAiBc,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,4BAA4B,CAAC;AACtD,IAAA;8GAFY,oCAAoC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApC,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oCAAoC,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3BjD,y6JAwHA,EAAA,MAAA,EAAA,CAAA,65DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDtGM,YAAY,+BACZ,uBAAuB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACvB,oBAAoB,EAAA,QAAA,EAAA,cAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACpB,mBAAmB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,mCAAmC,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnC,gCAAgC,yFAChC,kCAAkC,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,KAAA,EAAA,CAAA,CAAA;;2FAG3B,oCAAoC,EAAA,UAAA,EAAA,CAAA;kBAhBhD,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iCAAiC,cAG/B,IAAI,EAAA,eAAA,EACC,uBAAuB,CAAC,KAAK,EAAA,OAAA,EACrC;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,oBAAoB;wBACpB,mBAAmB;wBACnB,mCAAmC;wBACnC,gCAAgC;wBAChC,kCAAkC;AACnC,qBAAA,EAAA,QAAA,EAAA,y6JAAA,EAAA,MAAA,EAAA,CAAA,65DAAA,CAAA,EAAA;;;"}
@@ -5,7 +5,7 @@ import { AXPEntityService } from '@acorex-platform/framework-client/layout/entit
5
5
  import { RootConfig, DOCUMENT_DISTRIBUTION_WORKFLOW_NAME, hasDocumentDistributionMetadataValue, AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME, stampDocumentDistributionFormValues } from '@acorex-platform/module-document-management-client/contracts';
6
6
  import * as i0 from '@angular/core';
7
7
  import { inject, Injectable } from '@angular/core';
8
- import { j as AXMDocumentManagerService, m as AXPDocumentManagementService } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
8
+ import { j as AXMDocumentManagerService, m as AXPDocumentManagementService } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
9
9
 
10
10
  //#region ----- Imports -----
11
11
  //#endregion
@@ -211,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
211
211
  }] });
212
212
 
213
213
  export { AXMOpenDocumentCommand };
214
- //# sourceMappingURL=acorex-platform-module-document-management-client-open-document.command-CXGPoHxG.mjs.map
214
+ //# sourceMappingURL=acorex-platform-module-document-management-client-open-document.command-GL952N7r.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-platform-module-document-management-client-open-document.command-CXGPoHxG.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/commands/open-document.command.ts"],"sourcesContent":["//#region ----- Imports -----\n\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { extractRequestErrorInfo } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type { AXPFileListItem } from '@acorex-platform/framework-shared/core';\nimport {\n AXMDocumentDto,\n AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME,\n DOCUMENT_DISTRIBUTION_WORKFLOW_NAME,\n hasDocumentDistributionMetadataValue,\n RootConfig,\n stampDocumentDistributionFormValues,\n} from '@acorex-platform/module-document-management-client/contracts';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXMDocumentManagerService } from '../shared/document-manager.service';\nimport type { AXMDocumentExplorerNode } from '../shared/document-manager.types';\nimport { AXPDocumentManagementService } from '../shared/document-management.service';\n\n//#endregion\n\n//#region ----- Types -----\n\ninterface DistributionTaskRow {\n id: string;\n taskTypeId?: string;\n taskType?: { workflowConfig?: { workflowName?: string } };\n metaDataForm?: Record<string, unknown>;\n}\n\ninterface DistributionTaskTypeRow {\n id: string;\n workflowConfig?: { workflowName?: string };\n}\n\nexport interface AXMOpenDocumentCommandInput {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n data?: AXMDocumentExplorerNode | {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n id?: string;\n payload?: { context?: { documentId?: string; folderId?: string; taskId?: string } };\n context?: { documentId?: string; folderId?: string; taskId?: string };\n };\n options?: {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n };\n}\n\n//#endregion\n\n//#region ----- Constants -----\n\nconst I18N = '@document-management:review';\n\n//#endregion\n\n//#region ----- Helpers -----\n\nfunction isExplorerFileNode(value: unknown): value is AXMDocumentExplorerNode {\n return (\n !!value &&\n typeof value === 'object' &&\n (value as AXMDocumentExplorerNode).type === 'file' &&\n typeof (value as AXMDocumentExplorerNode).id === 'string'\n );\n}\n\nfunction readDocumentId(value: unknown): string | undefined {\n if (typeof value !== 'string') {\n return undefined;\n }\n const trimmed = value.trim();\n if (!trimmed || trimmed.includes('{{') || trimmed.includes('}}')) {\n return undefined;\n }\n return trimmed;\n}\n\nfunction readContextId(\n input: AXMOpenDocumentCommandInput,\n key: 'documentId' | 'folderId' | 'taskId',\n): string | undefined {\n const data = input.data;\n const fromPayloadContext =\n data && typeof data === 'object' && 'payload' in data\n ? (data as { payload?: { context?: Record<string, unknown> } }).payload?.context?.[key]\n : undefined;\n const fromDataContext =\n data && typeof data === 'object' && 'context' in data\n ? (data as { context?: Record<string, unknown> }).context?.[key]\n : undefined;\n const fromData =\n data && typeof data === 'object' && key in data\n ? (data as Record<string, unknown>)[key]\n : undefined;\n\n return (\n readDocumentId(input[key]) ??\n readDocumentId(input.options?.[key]) ??\n readDocumentId(fromData) ??\n readDocumentId(fromPayloadContext) ??\n readDocumentId(fromDataContext)\n );\n}\n\nfunction toExplorerNode(document: AXMDocumentDto): AXMDocumentExplorerNode {\n const rawFileInfo = document.fileInfo;\n const fileListItem =\n rawFileInfo != null && typeof rawFileInfo === 'object' ? (rawFileInfo as AXPFileListItem) : undefined;\n const storedFileRef = typeof rawFileInfo === 'string' ? rawFileInfo : undefined;\n\n return {\n id: document.id!,\n name: document.name,\n title: document.title,\n type: 'file',\n parentId: document.parentId ?? null,\n size: fileListItem?.size ?? 0,\n fileId: fileListItem ?? storedFileRef,\n storageType: 'physical',\n metaDataForm: document.metaDataForm ?? undefined,\n documentTypes: document.documentType ? [document.documentType] : [],\n expirationDate: document.expirationDate ? new Date(document.expirationDate) : undefined,\n };\n}\n\n//#endregion\n\n//#region ----- Open file command -----\n\n/**\n * Drive Open keeps the catalog/download pipeline when an explorer node is\n * passed. Document Review View (documentId/folderId) opens File Viewer, the\n * same popup as Drive \"Open File Viewer\".\n */\n@Injectable({ providedIn: 'root' })\nexport class AXMOpenDocumentCommand implements AXPCommand<AXMOpenDocumentCommandInput> {\n //#region ----- Services & Dependencies -----\n\n private readonly documentManager = inject(AXMDocumentManagerService);\n private readonly documentApi = inject(AXPDocumentManagementService);\n private readonly entityService = inject(AXPEntityService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n private readonly documentData = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.document.name)\n .data<string, AXMDocumentDto>();\n private readonly taskData = this.entityService\n .withEntity('TaskManagement', 'Task')\n .data<string, DistributionTaskRow>();\n private readonly taskTypeData = this.entityService\n .withEntity('TaskManagement', 'TaskType')\n .data<string, DistributionTaskTypeRow>();\n\n //#endregion\n\n //#region ----- Execute -----\n\n async execute(input: AXMOpenDocumentCommandInput = {}): AXPCommandExecuteResultPromise {\n if (isExplorerFileNode(input.data)) {\n await this.documentManager.openFile(input.data);\n return { success: true, kind: 'object', data: { documentId: input.data.id } };\n }\n\n const taskId = readContextId(input, 'taskId');\n const folderId = readContextId(input, 'folderId');\n if (folderId) {\n const result = await this.openFolderInViewer(folderId, taskId);\n if (result.success && !(result.data as { empty?: boolean } | undefined)?.empty) {\n await this.stampDistributionViewedAt(taskId);\n }\n return result;\n }\n\n const documentId = readContextId(input, 'documentId');\n if (!documentId) {\n return {\n success: false,\n message: { text: '@document-management:distribute.errors.document-required' },\n };\n }\n\n const node = await this.loadDocumentNode(documentId);\n if (!node) {\n return {\n success: false,\n message: { text: '@document-management:distribute.errors.document-not-found' },\n };\n }\n\n await this.documentManager.showFileViewerPopup(node, { folderFiles: [node] });\n await this.stampDistributionViewedAt(taskId);\n return { success: true, kind: 'object', data: { documentId: node.id } };\n }\n\n //#endregion\n\n //#region ----- Distribution viewed-at -----\n\n private async stampDistributionViewedAt(taskId?: string): Promise<void> {\n if (!taskId) {\n return;\n }\n try {\n const task = await this.taskData.byKey(taskId);\n if (!task?.id) {\n return;\n }\n const workflowName =\n task.taskType?.workflowConfig?.workflowName?.trim() ||\n (task.taskTypeId ? (await this.taskTypeData.byKey(task.taskTypeId))?.workflowConfig?.workflowName?.trim() : undefined);\n if (workflowName !== DOCUMENT_DISTRIBUTION_WORKFLOW_NAME) {\n return;\n }\n if (hasDocumentDistributionMetadataValue(task.metaDataForm?.[AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME])) {\n return;\n }\n await this.taskData.update(taskId, {\n metaDataForm: stampDocumentDistributionFormValues(task.metaDataForm, {\n [AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME]: new Date().toISOString(),\n }),\n } as never);\n } catch (error) {\n console.warn('[AXMOpenDocumentCommand] stamp distribution Viewed At failed', error);\n }\n }\n\n //#endregion\n\n //#region ----- Folder review -----\n\n private async loadDocumentNode(documentId: string): Promise<AXMDocumentExplorerNode | null> {\n const document = await this.documentData.byKey(documentId);\n if (!document?.id) {\n return null;\n }\n return toExplorerNode(document);\n }\n\n private async openFolderInViewer(folderId: string, taskId?: string): AXPCommandExecuteResultPromise {\n let documents: AXMDocumentDto[];\n try {\n documents = await this.documentApi.listFolderReviewDocuments(folderId, taskId);\n } catch (error) {\n const info = extractRequestErrorInfo(error);\n const messageKey =\n info?.status === 403\n ? `${I18N}.errors.folder-view-forbidden`\n : `${I18N}.errors.failed`;\n await this.toastError(messageKey);\n return { success: false, message: { text: messageKey } };\n }\n\n const folderFiles = documents.filter((document) => document.id).map((document) => toExplorerNode(document));\n if (folderFiles.length === 0) {\n await this.toastWarning(`${I18N}.folder-view.empty`);\n return { success: true, kind: 'object', data: { folderId, empty: true } };\n }\n\n await this.documentManager.showFileViewerPopup(folderFiles[0], { folderFiles });\n return {\n success: true,\n kind: 'object',\n data: { folderId, documentIds: folderFiles.map((file) => file.id) },\n };\n }\n\n //#endregion\n\n //#region ----- Toasts -----\n\n private async toastError(contentKey: string): Promise<void> {\n const [title, content] = await Promise.all([\n this.translationService.translateAsync(`${I18N}.errors.title`),\n this.translationService.translateAsync(contentKey),\n ]);\n this.toastService.show({ color: 'danger', title, content, timeOut: 4000 });\n }\n\n private async toastWarning(contentKey: string): Promise<void> {\n const [title, content] = await Promise.all([\n this.translationService.translateAsync(`${I18N}.folder-view.title`),\n this.translationService.translateAsync(contentKey),\n ]);\n this.toastService.show({ color: 'warning', title, content, timeOut: 4000 });\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-platform-module-document-management-client-open-document.command-GL952N7r.mjs","sources":["../../../../libs/modules/document-management/client/src/lib/features/commands/open-document.command.ts"],"sourcesContent":["//#region ----- Imports -----\n\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { extractRequestErrorInfo } from '@acorex-platform/framework-client/common';\nimport { AXPEntityService } from '@acorex-platform/framework-client/layout/entity';\nimport { AXPCommand, type AXPCommandExecuteResultPromise } from '@acorex-platform/framework-shared/runtime';\nimport type { AXPFileListItem } from '@acorex-platform/framework-shared/core';\nimport {\n AXMDocumentDto,\n AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME,\n DOCUMENT_DISTRIBUTION_WORKFLOW_NAME,\n hasDocumentDistributionMetadataValue,\n RootConfig,\n stampDocumentDistributionFormValues,\n} from '@acorex-platform/module-document-management-client/contracts';\nimport { inject, Injectable } from '@angular/core';\n\nimport { AXMDocumentManagerService } from '../shared/document-manager.service';\nimport type { AXMDocumentExplorerNode } from '../shared/document-manager.types';\nimport { AXPDocumentManagementService } from '../shared/document-management.service';\n\n//#endregion\n\n//#region ----- Types -----\n\ninterface DistributionTaskRow {\n id: string;\n taskTypeId?: string;\n taskType?: { workflowConfig?: { workflowName?: string } };\n metaDataForm?: Record<string, unknown>;\n}\n\ninterface DistributionTaskTypeRow {\n id: string;\n workflowConfig?: { workflowName?: string };\n}\n\nexport interface AXMOpenDocumentCommandInput {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n data?: AXMDocumentExplorerNode | {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n id?: string;\n payload?: { context?: { documentId?: string; folderId?: string; taskId?: string } };\n context?: { documentId?: string; folderId?: string; taskId?: string };\n };\n options?: {\n documentId?: string;\n folderId?: string;\n taskId?: string;\n };\n}\n\n//#endregion\n\n//#region ----- Constants -----\n\nconst I18N = '@document-management:review';\n\n//#endregion\n\n//#region ----- Helpers -----\n\nfunction isExplorerFileNode(value: unknown): value is AXMDocumentExplorerNode {\n return (\n !!value &&\n typeof value === 'object' &&\n (value as AXMDocumentExplorerNode).type === 'file' &&\n typeof (value as AXMDocumentExplorerNode).id === 'string'\n );\n}\n\nfunction readDocumentId(value: unknown): string | undefined {\n if (typeof value !== 'string') {\n return undefined;\n }\n const trimmed = value.trim();\n if (!trimmed || trimmed.includes('{{') || trimmed.includes('}}')) {\n return undefined;\n }\n return trimmed;\n}\n\nfunction readContextId(\n input: AXMOpenDocumentCommandInput,\n key: 'documentId' | 'folderId' | 'taskId',\n): string | undefined {\n const data = input.data;\n const fromPayloadContext =\n data && typeof data === 'object' && 'payload' in data\n ? (data as { payload?: { context?: Record<string, unknown> } }).payload?.context?.[key]\n : undefined;\n const fromDataContext =\n data && typeof data === 'object' && 'context' in data\n ? (data as { context?: Record<string, unknown> }).context?.[key]\n : undefined;\n const fromData =\n data && typeof data === 'object' && key in data\n ? (data as Record<string, unknown>)[key]\n : undefined;\n\n return (\n readDocumentId(input[key]) ??\n readDocumentId(input.options?.[key]) ??\n readDocumentId(fromData) ??\n readDocumentId(fromPayloadContext) ??\n readDocumentId(fromDataContext)\n );\n}\n\nfunction toExplorerNode(document: AXMDocumentDto): AXMDocumentExplorerNode {\n const rawFileInfo = document.fileInfo;\n const fileListItem =\n rawFileInfo != null && typeof rawFileInfo === 'object' ? (rawFileInfo as AXPFileListItem) : undefined;\n const storedFileRef = typeof rawFileInfo === 'string' ? rawFileInfo : undefined;\n\n return {\n id: document.id!,\n name: document.name,\n title: document.title,\n type: 'file',\n parentId: document.parentId ?? null,\n size: fileListItem?.size ?? 0,\n fileId: fileListItem ?? storedFileRef,\n storageType: 'physical',\n metaDataForm: document.metaDataForm ?? undefined,\n documentTypes: document.documentType ? [document.documentType] : [],\n expirationDate: document.expirationDate ? new Date(document.expirationDate) : undefined,\n };\n}\n\n//#endregion\n\n//#region ----- Open file command -----\n\n/**\n * Drive Open keeps the catalog/download pipeline when an explorer node is\n * passed. Document Review View (documentId/folderId) opens File Viewer, the\n * same popup as Drive \"Open File Viewer\".\n */\n@Injectable({ providedIn: 'root' })\nexport class AXMOpenDocumentCommand implements AXPCommand<AXMOpenDocumentCommandInput> {\n //#region ----- Services & Dependencies -----\n\n private readonly documentManager = inject(AXMDocumentManagerService);\n private readonly documentApi = inject(AXPDocumentManagementService);\n private readonly entityService = inject(AXPEntityService);\n private readonly toastService = inject(AXToastService);\n private readonly translationService = inject(AXTranslationService);\n private readonly documentData = this.entityService\n .withEntity(RootConfig.module.name, RootConfig.entities.document.name)\n .data<string, AXMDocumentDto>();\n private readonly taskData = this.entityService\n .withEntity('TaskManagement', 'Task')\n .data<string, DistributionTaskRow>();\n private readonly taskTypeData = this.entityService\n .withEntity('TaskManagement', 'TaskType')\n .data<string, DistributionTaskTypeRow>();\n\n //#endregion\n\n //#region ----- Execute -----\n\n async execute(input: AXMOpenDocumentCommandInput = {}): AXPCommandExecuteResultPromise {\n if (isExplorerFileNode(input.data)) {\n await this.documentManager.openFile(input.data);\n return { success: true, kind: 'object', data: { documentId: input.data.id } };\n }\n\n const taskId = readContextId(input, 'taskId');\n const folderId = readContextId(input, 'folderId');\n if (folderId) {\n const result = await this.openFolderInViewer(folderId, taskId);\n if (result.success && !(result.data as { empty?: boolean } | undefined)?.empty) {\n await this.stampDistributionViewedAt(taskId);\n }\n return result;\n }\n\n const documentId = readContextId(input, 'documentId');\n if (!documentId) {\n return {\n success: false,\n message: { text: '@document-management:distribute.errors.document-required' },\n };\n }\n\n const node = await this.loadDocumentNode(documentId);\n if (!node) {\n return {\n success: false,\n message: { text: '@document-management:distribute.errors.document-not-found' },\n };\n }\n\n await this.documentManager.showFileViewerPopup(node, { folderFiles: [node] });\n await this.stampDistributionViewedAt(taskId);\n return { success: true, kind: 'object', data: { documentId: node.id } };\n }\n\n //#endregion\n\n //#region ----- Distribution viewed-at -----\n\n private async stampDistributionViewedAt(taskId?: string): Promise<void> {\n if (!taskId) {\n return;\n }\n try {\n const task = await this.taskData.byKey(taskId);\n if (!task?.id) {\n return;\n }\n const workflowName =\n task.taskType?.workflowConfig?.workflowName?.trim() ||\n (task.taskTypeId ? (await this.taskTypeData.byKey(task.taskTypeId))?.workflowConfig?.workflowName?.trim() : undefined);\n if (workflowName !== DOCUMENT_DISTRIBUTION_WORKFLOW_NAME) {\n return;\n }\n if (hasDocumentDistributionMetadataValue(task.metaDataForm?.[AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME])) {\n return;\n }\n await this.taskData.update(taskId, {\n metaDataForm: stampDocumentDistributionFormValues(task.metaDataForm, {\n [AXM_DOCUMENT_DISTRIBUTION_VIEWED_AT_FIELD_NAME]: new Date().toISOString(),\n }),\n } as never);\n } catch (error) {\n console.warn('[AXMOpenDocumentCommand] stamp distribution Viewed At failed', error);\n }\n }\n\n //#endregion\n\n //#region ----- Folder review -----\n\n private async loadDocumentNode(documentId: string): Promise<AXMDocumentExplorerNode | null> {\n const document = await this.documentData.byKey(documentId);\n if (!document?.id) {\n return null;\n }\n return toExplorerNode(document);\n }\n\n private async openFolderInViewer(folderId: string, taskId?: string): AXPCommandExecuteResultPromise {\n let documents: AXMDocumentDto[];\n try {\n documents = await this.documentApi.listFolderReviewDocuments(folderId, taskId);\n } catch (error) {\n const info = extractRequestErrorInfo(error);\n const messageKey =\n info?.status === 403\n ? `${I18N}.errors.folder-view-forbidden`\n : `${I18N}.errors.failed`;\n await this.toastError(messageKey);\n return { success: false, message: { text: messageKey } };\n }\n\n const folderFiles = documents.filter((document) => document.id).map((document) => toExplorerNode(document));\n if (folderFiles.length === 0) {\n await this.toastWarning(`${I18N}.folder-view.empty`);\n return { success: true, kind: 'object', data: { folderId, empty: true } };\n }\n\n await this.documentManager.showFileViewerPopup(folderFiles[0], { folderFiles });\n return {\n success: true,\n kind: 'object',\n data: { folderId, documentIds: folderFiles.map((file) => file.id) },\n };\n }\n\n //#endregion\n\n //#region ----- Toasts -----\n\n private async toastError(contentKey: string): Promise<void> {\n const [title, content] = await Promise.all([\n this.translationService.translateAsync(`${I18N}.errors.title`),\n this.translationService.translateAsync(contentKey),\n ]);\n this.toastService.show({ color: 'danger', title, content, timeOut: 4000 });\n }\n\n private async toastWarning(contentKey: string): Promise<void> {\n const [title, content] = await Promise.all([\n this.translationService.translateAsync(`${I18N}.folder-view.title`),\n this.translationService.translateAsync(contentKey),\n ]);\n this.toastService.show({ color: 'warning', title, content, timeOut: 4000 });\n }\n\n //#endregion\n}\n\n//#endregion\n"],"names":[],"mappings":";;;;;;;;;AAAA;AAyDA;AAEA;AAEA,MAAM,IAAI,GAAG,6BAA6B;AAE1C;AAEA;AAEA,SAAS,kBAAkB,CAAC,KAAc,EAAA;IACxC,QACE,CAAC,CAAC,KAAK;QACP,OAAO,KAAK,KAAK,QAAQ;QACxB,KAAiC,CAAC,IAAI,KAAK,MAAM;AAClD,QAAA,OAAQ,KAAiC,CAAC,EAAE,KAAK,QAAQ;AAE7D;AAEA,SAAS,cAAc,CAAC,KAAc,EAAA;AACpC,IAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC7B,QAAA,OAAO,SAAS;IAClB;AACA,IAAA,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE;AAC5B,IAAA,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;AAChE,QAAA,OAAO,SAAS;IAClB;AACA,IAAA,OAAO,OAAO;AAChB;AAEA,SAAS,aAAa,CACpB,KAAkC,EAClC,GAAyC,EAAA;AAEzC,IAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI;IACvB,MAAM,kBAAkB,GACtB,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI;UAC5C,IAA4D,CAAC,OAAO,EAAE,OAAO,GAAG,GAAG;UACpF,SAAS;IACf,MAAM,eAAe,GACnB,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI;AAC/C,UAAG,IAA8C,CAAC,OAAO,GAAG,GAAG;UAC7D,SAAS;IACf,MAAM,QAAQ,GACZ,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,GAAG,IAAI;AACzC,UAAG,IAAgC,CAAC,GAAG;UACrC,SAAS;AAEf,IAAA,QACE,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1B,cAAc,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;QACpC,cAAc,CAAC,QAAQ,CAAC;QACxB,cAAc,CAAC,kBAAkB,CAAC;AAClC,QAAA,cAAc,CAAC,eAAe,CAAC;AAEnC;AAEA,SAAS,cAAc,CAAC,QAAwB,EAAA;AAC9C,IAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ;AACrC,IAAA,MAAM,YAAY,GAChB,WAAW,IAAI,IAAI,IAAI,OAAO,WAAW,KAAK,QAAQ,GAAI,WAA+B,GAAG,SAAS;AACvG,IAAA,MAAM,aAAa,GAAG,OAAO,WAAW,KAAK,QAAQ,GAAG,WAAW,GAAG,SAAS;IAE/E,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,EAAG;QAChB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;AACrB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,IAAI;AACnC,QAAA,IAAI,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC;QAC7B,MAAM,EAAE,YAAY,IAAI,aAAa;AACrC,QAAA,WAAW,EAAE,UAAU;AACvB,QAAA,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,SAAS;AAChD,QAAA,aAAa,EAAE,QAAQ,CAAC,YAAY,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE;AACnE,QAAA,cAAc,EAAE,QAAQ,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,SAAS;KACxF;AACH;AAEA;AAEA;AAEA;;;;AAIG;MAEU,sBAAsB,CAAA;AADnC,IAAA,WAAA,GAAA;;AAImB,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACnD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAClD,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACxC,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC;AACrC,QAAA,IAAA,CAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QACjD,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC;AAClC,aAAA,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI;AACpE,aAAA,IAAI,EAA0B;QAChB,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC;AAC9B,aAAA,UAAU,CAAC,gBAAgB,EAAE,MAAM;AACnC,aAAA,IAAI,EAA+B;QACrB,IAAA,CAAA,YAAY,GAAG,IAAI,CAAC;AAClC,aAAA,UAAU,CAAC,gBAAgB,EAAE,UAAU;AACvC,aAAA,IAAI,EAAmC;AAwI3C,IAAA;;;AAlIC,IAAA,MAAM,OAAO,CAAC,KAAA,GAAqC,EAAE,EAAA;AACnD,QAAA,IAAI,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;YAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE;QAC/E;QAEA,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;QAC7C,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC;QACjD,IAAI,QAAQ,EAAE;YACZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;YAC9D,IAAI,MAAM,CAAC,OAAO,IAAI,CAAE,MAAM,CAAC,IAAwC,EAAE,KAAK,EAAE;AAC9E,gBAAA,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;YAC9C;AACA,YAAA,OAAO,MAAM;QACf;QAEA,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,EAAE,YAAY,CAAC;QACrD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,0DAA0D,EAAE;aAC9E;QACH;QAEA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC;QACpD,IAAI,CAAC,IAAI,EAAE;YACT,OAAO;AACL,gBAAA,OAAO,EAAE,KAAK;AACd,gBAAA,OAAO,EAAE,EAAE,IAAI,EAAE,2DAA2D,EAAE;aAC/E;QACH;AAEA,QAAA,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;AAC7E,QAAA,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC;AAC5C,QAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE;IACzE;;;IAMQ,MAAM,yBAAyB,CAAC,MAAe,EAAA;QACrD,IAAI,CAAC,MAAM,EAAE;YACX;QACF;AACA,QAAA,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;AAC9C,YAAA,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE;gBACb;YACF;YACA,MAAM,YAAY,GAChB,IAAI,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE;AACnD,iBAAC,IAAI,CAAC,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,SAAS,CAAC;AACxH,YAAA,IAAI,YAAY,KAAK,mCAAmC,EAAE;gBACxD;YACF;YACA,IAAI,oCAAoC,CAAC,IAAI,CAAC,YAAY,GAAG,8CAA8C,CAAC,CAAC,EAAE;gBAC7G;YACF;AACA,YAAA,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE;AACjC,gBAAA,YAAY,EAAE,mCAAmC,CAAC,IAAI,CAAC,YAAY,EAAE;oBACnE,CAAC,8CAA8C,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBAC3E,CAAC;AACM,aAAA,CAAC;QACb;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,OAAO,CAAC,IAAI,CAAC,8DAA8D,EAAE,KAAK,CAAC;QACrF;IACF;;;IAMQ,MAAM,gBAAgB,CAAC,UAAkB,EAAA;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;AAC1D,QAAA,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE;AACjB,YAAA,OAAO,IAAI;QACb;AACA,QAAA,OAAO,cAAc,CAAC,QAAQ,CAAC;IACjC;AAEQ,IAAA,MAAM,kBAAkB,CAAC,QAAgB,EAAE,MAAe,EAAA;AAChE,QAAA,IAAI,SAA2B;AAC/B,QAAA,IAAI;AACF,YAAA,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC;QAChF;QAAE,OAAO,KAAK,EAAE;AACd,YAAA,MAAM,IAAI,GAAG,uBAAuB,CAAC,KAAK,CAAC;AAC3C,YAAA,MAAM,UAAU,GACd,IAAI,EAAE,MAAM,KAAK;kBACb,CAAA,EAAG,IAAI,CAAA,6BAAA;AACT,kBAAE,CAAA,EAAG,IAAI,CAAA,cAAA,CAAgB;AAC7B,YAAA,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;AACjC,YAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;QAC1D;AAEA,QAAA,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,cAAc,CAAC,QAAQ,CAAC,CAAC;AAC3G,QAAA,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAA,kBAAA,CAAoB,CAAC;AACpD,YAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3E;AAEA,QAAA,MAAM,IAAI,CAAC,eAAe,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,WAAW,EAAE,CAAC;QAC/E,OAAO;AACL,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,EAAE;SACpE;IACH;;;IAMQ,MAAM,UAAU,CAAC,UAAkB,EAAA;QACzC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAA,EAAG,IAAI,eAAe,CAAC;AAC9D,YAAA,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,UAAU,CAAC;AACnD,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC5E;IAEQ,MAAM,YAAY,CAAC,UAAkB,EAAA;QAC3C,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACzC,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAA,EAAG,IAAI,oBAAoB,CAAC;AACnE,YAAA,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,UAAU,CAAC;AACnD,SAAA,CAAC;AACF,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7E;8GArJW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cADT,MAAM,EAAA,CAAA,CAAA;;2FACnB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;"}
@@ -9,7 +9,7 @@ import { buildAXPRecordWorkflowInfo } from '@acorex-platform/framework-shared/en
9
9
  import { RootConfig, AXPContentDocumentsPermissionKeys } from '@acorex-platform/module-document-management-client/contracts';
10
10
  import * as i0 from '@angular/core';
11
11
  import { inject, Injectable } from '@angular/core';
12
- import { j as AXMDocumentManagerService, o as sourcesAllowDocumentReview } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-BvSJUZE-.mjs';
12
+ import { j as AXMDocumentManagerService, o as sourcesAllowDocumentReview } from './acorex-platform-module-document-management-client-acorex-platform-module-document-management-client-C10m50K3.mjs';
13
13
  import { a as asTrimmedId, b as asDisplayName, c as asUserIds, r as resolveCreatedEntityId } from './acorex-platform-module-document-management-client-distribute-document.command.util-HCkpx2Hk.mjs';
14
14
 
15
15
  //#region ----- Imports -----
@@ -453,4 +453,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImpor
453
453
  }] });
454
454
 
455
455
  export { AXMRequestDocumentReviewCommand };
456
- //# sourceMappingURL=acorex-platform-module-document-management-client-request-document-review.command-DeKBAiDg.mjs.map
456
+ //# sourceMappingURL=acorex-platform-module-document-management-client-request-document-review.command-Dk9rdQHo.mjs.map