tnx-shared 5.2.22 → 5.2.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/classes/public-function.d.ts +4 -70
- package/classes/public-function.d.ts.map +1 -1
- package/esm2020/classes/public-function.mjs +1 -1
- package/esm2020/components/add-news/add-news.component.mjs +3 -3
- package/esm2020/components/autocomplete-datasource/autocomplete-datasource.component.mjs +1 -1
- package/esm2020/components/autocomplete-picker/autocomplete-picker.component.mjs +1 -1
- package/esm2020/components/avatar-uploader/avatar-uploader.component.mjs +1 -1
- package/esm2020/components/chat/chat-box/chat-box.component.mjs +1 -1
- package/esm2020/components/chat/chat-send-message-box/chat-send-message-box.component.mjs +1 -1
- package/esm2020/components/check-box-list/check-box-list.component.mjs +1 -1
- package/esm2020/components/cocautochuc/cocautochuc-picker/cocautochuc-picker.component.mjs +1 -1
- package/esm2020/components/common-app-component/app-topbar-v1/app-topbar-v1.component.mjs +1 -1
- package/esm2020/components/common-app-component/app-topbar-v2/app-topbar-v2.component.mjs +1 -1
- package/esm2020/components/common-app-component/app.menu.component.mjs +2 -2
- package/esm2020/components/common-app-component/app.topbar.component.mjs +1 -1
- package/esm2020/components/common-app-component/common-app-component.mjs +1 -1
- package/esm2020/components/common-app-component/default-setting-form/default-data-settings.component.mjs +1 -1
- package/esm2020/components/crud/advance-search/advance-search.component.mjs +1 -1
- package/esm2020/components/crud/crud-form/crud-form.component.mjs +1 -1
- package/esm2020/components/crud/crud-list/crud-list.component.mjs +1 -1
- package/esm2020/components/crud/table-detail-form/table-detail-form.component.mjs +1 -1
- package/esm2020/components/crud/tree-table/tree-table.component.mjs +1 -1
- package/esm2020/components/datetime-picker/datetime-picker.component.mjs +1 -1
- package/esm2020/components/dropdown/dropdown-setting-form/dropdown-setting-form.component.mjs +1 -1
- package/esm2020/components/dropdown/dropdown.component.mjs +4 -4
- package/esm2020/components/dropdown/quick-add-form/quick-add-form.component.mjs +1 -1
- package/esm2020/components/entity-permission/entity-permission.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker-dialog/components/entity-picker-data/entity-picker-data.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker-dialog/components/entity-picker-selected/entity-picker-selected.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-data/entity-picker-tree-data.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker-dialog/components/entity-picker-tree-selected/entity-picker-tree-selected.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker-dialog/entity-picker-dialog.component.mjs +1 -1
- package/esm2020/components/entity-picker/entity-picker.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-explorer.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-form/file-form.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-ky-so-sim/file-ky-so-sim.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-manager/file-manager.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-picker-dialog/file-picker-dialog.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-tai-lieu/file-tai-lieu.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-version-list/file-version-list.component.mjs +1 -1
- package/esm2020/components/file-explorer/file-viewer/file-viewer.component.mjs +1 -1
- package/esm2020/components/file-explorer/folder-form/folder-form.component.mjs +1 -1
- package/esm2020/components/file-explorer/ky-so-sim-danh-sach-chu-ky/ky-so-sim-danh-sach-chu-ky.component.mjs +1 -1
- package/esm2020/components/file-explorer/signature-detail/signature-detail.component.mjs +1 -1
- package/esm2020/components/file-upload/file-upload.component.mjs +1 -1
- package/esm2020/components/image-uploader/image-uploader.component.mjs +1 -1
- package/esm2020/components/paging-next-back-only/paging-next-back-only.component.mjs +1 -1
- package/esm2020/components/permission-utils/permission-utils.component.mjs +1 -1
- package/esm2020/components/qr-code-generator/qr-code-generator.component.mjs +1 -1
- package/esm2020/components/query-builders/query-builder/query-builder.component.mjs +1 -1
- package/esm2020/components/query-builders/query-builder-group/query-builder-group.component.mjs +2 -2
- package/esm2020/components/query-builders/query-builder-rule/query-builder-rule.component.mjs +3 -3
- package/esm2020/components/radio-button-list/radio-button-list.component.mjs +1 -1
- package/esm2020/components/report-queue/report-queue.component.mjs +1 -1
- package/esm2020/components/service-file-upload/service-file-upload.component.mjs +1 -1
- package/esm2020/components/settings/settings-row/settings-row.component.mjs +1 -1
- package/esm2020/components/settings/settings-workflow/settings-workflow.component.mjs +1 -1
- package/esm2020/components/settings/settings.component.mjs +1 -1
- package/esm2020/components/share-link-by-permission/share-link-by-permission.component.mjs +1 -1
- package/esm2020/components/statemachines/state/state.component.mjs +1 -1
- package/esm2020/components/statemachines/state-metadata/state-metadata.component.mjs +1 -1
- package/esm2020/components/statemachines/statemachines-connection-metadata/statemachines-connection-metadata.component.mjs +1 -1
- package/esm2020/components/statemachines/statemachines-designer/statemachines-designer.component.mjs +1 -1
- package/esm2020/components/tn-app-help/helper-current-page/helper-current-page.component.mjs +1 -1
- package/esm2020/components/tn-app-help/tn-app-help.component.mjs +1 -1
- package/esm2020/components/tn-app-notification/tn-app-notification.component.mjs +1 -1
- package/esm2020/components/tn-checkbox/tn-checkbox.component.mjs +1 -1
- package/esm2020/components/tn-color-picker/tn-color-picker.component.mjs +1 -1
- package/esm2020/components/tn-dialog/tn-dialog.component.mjs +1 -1
- package/esm2020/components/tn-tabview/tn-tabview.component.mjs +1 -1
- package/esm2020/components/tn-template/tn-template.component.mjs +1 -1
- package/esm2020/components/tn-tinymce/tn-tinymce.component.mjs +1 -1
- package/esm2020/components/tn-tree/tn-tree.component.mjs +1 -1
- package/esm2020/components/user-picker/user-picker-box/user-picker-box.component.mjs +1 -1
- package/esm2020/components/user-picker/user-picker.component.mjs +1 -1
- package/esm2020/components/usmart/chuoi-phan-tiet/chuoi-phan-tiet.component.mjs +1 -1
- package/esm2020/components/vanban-picker/vanban-den-picker/vanban-den-picker.component.mjs +2 -2
- package/esm2020/components/vanban-picker/vanban-di-picker/vanban-di-picker.component.mjs +2 -2
- package/esm2020/components/vanban-picker/vanban-picker-dialog/vanban-picker-dialog.component.mjs +1 -1
- package/esm2020/components/vanban-picker/vanban-picker.component.mjs +1 -1
- package/esm2020/components/workflow/cho-y-kien-form/cho-y-kien-form.component.mjs +1 -1
- package/esm2020/components/workflow/permission-sharing/permission-sharing.component.mjs +1 -1
- package/esm2020/components/workflow/process-workflow-form/process-workflow-form.component.mjs +1 -1
- package/esm2020/components/workflow/start-workflow/start-workflow.component.mjs +1 -1
- package/esm2020/components/workflow/workflow-history-new/workflow-history-new.component.mjs +1 -1
- package/esm2020/components/workflow/workflow-permission-form/workflow-permission-form.component.mjs +1 -1
- package/esm2020/components/workflow/workflow-picker/workflow-picker.component.mjs +1 -1
- package/esm2020/components/workflow/workflow-setting-new/workflow-setting-new.component.mjs +1 -1
- package/esm2020/congviec/congviec/congviec-dinhkem/congviec-dinhkem.component.mjs +1 -1
- package/esm2020/congviec/congviec/congviec-form/congviec-form.component.mjs +1 -1
- package/esm2020/congviec/congviec/congviec.component.mjs +2 -2
- package/esm2020/congviec/dm-linhvuc-congviec/dm-linhvuc-congviec-form/dm-linhvuc-congviec-form.component.mjs +1 -1
- package/esm2020/congviec/dm-loai-congviec/dm-loai-congviec-form/dm-loai-congviec-form.component.mjs +1 -1
- package/esm2020/congviec/dm-priority/dm-priority-form/dm-priority-form.component.mjs +1 -1
- package/fesm2015/tnx-shared.mjs +101 -101
- package/fesm2015/tnx-shared.mjs.map +1 -1
- package/fesm2020/tnx-shared.mjs +101 -101
- package/fesm2020/tnx-shared.mjs.map +1 -1
- package/package.json +3 -3
|
@@ -1227,7 +1227,7 @@ FileManagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
|
|
|
1227
1227
|
multi: true,
|
|
1228
1228
|
},
|
|
1229
1229
|
ComponentContextService,
|
|
1230
|
-
], viewQueries: [{ propertyName: "fileControl", first: true, predicate: ["fileControl"], descendants: true }, { propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true }, { propertyName: "fileKySoSim", first: true, predicate: ["fileKySoSim"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"layout == _layout.LIST\" class=\"full-layout\">\r\n <div class=\"fm-grid\">\r\n <crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"_dataSource\" [showScrollBar]=\"false\"\r\n class=\"--auto-height-content --no-wrapper-padding\" [widthFunctionColumn]=\"'8.2rem'\"\r\n (onReload)=\"_triggerProcessData($event)\" (onRowSelect)=\"onRowSelect($event)\">\r\n <ng-template #customTitle>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </ng-template>\r\n <ng-template #toolbar>\r\n <button *ngIf=\"!hiddenCreateFolder && !readonly\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\" (click)=\"createFolder()\">\r\n </button>\r\n\r\n <button *ngIf=\"!readonly\" pButton icon=\"pi pi-cloud-upload\" pTooltip=\"T\u1EA3i t\u1EC7p tin t\u1EEB m\u00E1y t\u00EDnh c\u1EE7a b\u1EA1n\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i l\u00EAn\"\r\n (click)=\"selectFile()\"></button>\r\n\r\n <button *ngIf=\"!readonly\" pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n\r\n <button *ngIf=\"!inTaiLieu && !inTaiLieuChung && !readonly\" pButton icon=\"pi pi-book\"\r\n pTooltip=\"Sao ch\u00E9p t\u1EEB t\u00E0i li\u1EC7u d\u00F9ng chung ho\u1EB7c c\u00E1 nh\u00E2n\" tooltipPosition=\"top\" type=\"button\"\r\n class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\" (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n\r\n <button *ngIf=\"canSelect()\" class=\"p-button-text p-button-success\" pButton type=\"button\"\r\n pTooltip=\"Di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn\" tooltipPosition=\"top\" icon=\"fas fa-arrows-alt\"\r\n iconPos=\"left\" label=\"Di chuy\u1EC3n\" (click)=\"moveExplorerItems()\">\r\n </button>\r\n\r\n <button *ngIf=\"canSetMove()\" class=\"p-button-text p-button-success\" pButton type=\"button\"\r\n pTooltip=\"Di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn t\u1EDBi \u0111\u00E2y\" tooltipPosition=\"top\" icon=\"far fa-hand-paper\"\r\n iconPos=\"left\" label=\"\u0110\u1EB7t t\u1EA1i \u0111\u00E2y\" (click)=\"setMoveExplorerItems()\">\r\n </button>\r\n\r\n <button *ngIf=\"canSetMove()\" icon=\"pi pi-undo\" pButton class=\"p-button-text p-button-secondary\"\r\n type=\"button\" pTooltip=\"B\u1ECF di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn\" tooltipPosition=\"top\" label=\"B\u1ECF qua\"\r\n (click)=\"cancelMove()\">\r\n </button>\r\n\r\n <button *ngIf=\"hasSelect() && !readonly\" pButton type=\"button\"\r\n pTooltip=\"{{ 'X\u00F3a th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn' | translate }}\" tooltipPosition=\"top\" icon=\"pi pi-trash\"\r\n iconPos=\"left\" class=\"p-button-text p-button-danger\" label=\"X\u00F3a\"\r\n (click)=\"deleteMutiple(model.selectedItems)\"></button>\r\n\r\n <button *ngIf=\"hasSelect()\" class=\"p-button-text p-button-secondary\" pButton type=\"button\"\r\n pTooltip=\"N\u00E9n & t\u1EA3i v\u1EC1\" tooltipPosition=\"top\" icon=\"fas fa-file-archive\" iconPos=\"left\"\r\n label=\"T\u1EA3i v\u1EC1\" (click)=\"downloadMultiple()\">\r\n </button>\r\n </ng-template>\r\n\r\n <ng-template #explorerItem let-rowData='rowData' let-col='col'>\r\n <span (click)=\"openObject(rowData)\" class=\"pull-left file-ex-icon\"\r\n [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <span (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n {{rowData.name}}\r\n </span>\r\n <span *ngIf=\"rowData.signatures\" class=\"pull-right signature\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\"\r\n tooltipPosition=\"top\" (click)=\"viewListSign($event, rowData.signatures)\">\r\n <i class=\"fas fa-signature\"></i>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template #fileSize let-rowData='rowData'>\r\n <div *ngIf=\"rowData.isFile\">{{rowData.fileSize | fileSize}}</div>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div class=\"function-list\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" pButton type=\"button\"\r\n tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\" (click)=\"onButtonClick(rowData)\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\" pButton\r\n type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\" icon=\"pi pi-trash\"\r\n (click)=\"deleteFile(rowData)\"></button>\r\n\r\n\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </ng-container>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\" icon=\"pi pi-cloud-download\"\r\n (click)=\"download(rowData)\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n </crud-list>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.SIMPLE\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div>\r\n\r\n <div class=\"nfl-grid\">\r\n <ng-container *ngIf=\"_dataSource && _dataSource.length > 0\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n <div *ngIf=\"rowData.signatures\" class=\"nfl-signature signature\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\"\r\n tooltipPosition=\"top\" (click)=\"viewListSign($event, rowData.signatures)\">\r\n <i class=\"fas fa-signature\"></i>\r\n </div>\r\n <div *ngIf=\"rowData.isFile\" class=\"nfl-version\">\r\n v{{rowData.currentFileVersion}}\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n (click)=\"download(rowData)\" pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\"\r\n icon=\"pi pi-cloud-download\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.SIMPLE_FOR_LIST\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div>\r\n\r\n <div class=\"nfl-grid\">\r\n <ng-container *ngIf=\"_dataSource && _dataSource.length > 0\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.INLINE\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <!-- <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div> -->\r\n\r\n <div class=\"nfl-grid\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n <!--\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n (click)=\"download(rowData)\" pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\"\r\n icon=\"pi pi-cloud-download\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button> -->\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #breadCrumb>\r\n <div *ngIf=\"data.breadcrumbs.length > 1\" class=\"fm-toolbar-path\">\r\n <p-breadcrumb class=\"customBreadCrumb\" [model]=\"data.breadcrumbs\"></p-breadcrumb>\r\n </div>\r\n</ng-template>\r\n\r\n<p-fileUpload #fileControl [ngStyle]=\"{'display': 'none'}\" mode=\"basic\" [chooseLabel]=\"chooseLabel\" name=\"file\"\r\n [url]=\"apiUploadUrl\" [maxFileSize]=\"maxFileSize\" auto=\"true\"\r\n [invalidFileSizeMessageSummary]=\"invalidFileSizeMessageSummary\"\r\n [invalidFileSizeMessageDetail]=\"invalidFileSizeMessageDetail\"\r\n [invalidFileTypeMessageSummary]=\"invalidFileTypeMessageSummary\"\r\n [invalidFileTypeMessageDetail]=\"invalidFileTypeMessageDetail\"\r\n [invalidFileLimitMessageSummary]=\"invalidFileLimitMessageSummary\"\r\n [invalidFileLimitMessageDetail]=\"invalidFileLimitMessageDetail\" (onProgress)=\"onUploadProgress($event)\"\r\n (onBeforeUpload)=\"onBeforeUpload($event)\" (onSelect)=\"handleSelectFile($event)\" (onUpload)=\"onUploaded($event)\"\r\n [accept]=\"control ? control.accept: null\">\r\n</p-fileUpload>\r\n<p-contextMenu #contextMenu [appendTo]=\"'body'\" [model]=\"data.itemsMenuFile\" styleClass=\"fm-contextMenu-panel\">\r\n</p-contextMenu>\r\n\r\n<!-- T\u1EA1o m\u1EDBi/ \u0111\u1ED5i t\u00EAn th\u01B0 m\u1EE5c -->\r\n<tn-dialog *ngIf=\"forms.createFolder.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.createFolder.header | translate\" [popupSize]=\"forms[formIds.createFolder].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.createFolder)\">\r\n <folder-form #formBase [parentModel]=\"model\" [parentContext]=\"context\"\r\n [model]=\"forms[formIds.createFolder].formData\" (onSaved)=\"onSavedForm(formIds.createFolder)\"\r\n (onCancel)=\"onCancelForm(formIds.createFolder)\">\r\n </folder-form>\r\n</tn-dialog>\r\n\r\n<!-- \u0110\u1ED5i t\u00EAn file -->\r\n<tn-dialog *ngIf=\"forms.renameFile.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.renameFile.header | translate\" [popupSize]=\"forms[formIds.renameFile].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.renameFile)\">\r\n <file-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"forms[formIds.renameFile].formData\"\r\n (onSaved)=\"onSavedForm(formIds.renameFile)\" (onCancel)=\"onCancelForm(formIds.renameFile)\">\r\n </file-form>\r\n</tn-dialog>\r\n\r\n<!-- Xem file tr\u1EF1c tuy\u1EBFn -->\r\n<file-viewer *ngIf=\"forms.fileViewer.show\" [parentModel]=\"model\" [parentContext]=\"context\" [readonly]=\"readonly\"\r\n [model]=\"forms.fileViewer.formData\" (onClose)=\"closeFileViewer()\">\r\n</file-viewer>\r\n\r\n<!-- Xem phi\u00EAn b\u1EA3n -->\r\n<tn-dialog *ngIf=\"forms.fileVersionList.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.fileVersionList.header | translate\" [popupSize]=\"forms[formIds.fileVersionList].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.fileVersionList)\">\r\n <file-version-list *ngIf=\"forms.fileVersionList.show\" [parentModel]=\"model\" [parentContext]=\"context\"\r\n [fileId]=\"forms[formIds.fileVersionList].fileId\" [readonly]=\"readonly\">\r\n </file-version-list>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showAttachLinkBox\" #dialog2 [maximizable]=\"false\" [header]=\"'Nh\u1EADp li\u00EAn k\u1EBFt' | translate\"\r\n [popupSize]=\"{ width: 600, height: 50}\" (onHide)=\"showAttachLinkBox = false; typedLink=''\">\r\n <div class=\"p-col-12\">\r\n <div class=\"p-grid\">\r\n <div class=\"p-md-10\">\r\n <input #input type=\"text\" placeholder=\"Nh\u1EADp li\u00EAn k\u1EBFt sao ch\u00E9p t\u1EEB t\u1EC7p tin kh\u00E1c...\"\r\n (keyup.enter)=\"addAttachLink()\" pInputText [(ngModel)]=\"typedLink\" class=\"p-col-12\" />\r\n </div>\r\n <div class=\"p-md-2\">\r\n <button type=\"button\" (click)=\"addAttachLink()\" [disabled]=\"typedLink != ''? null : true\" pButton\r\n class=\"p-button-primary p-col-12\" label=\"Ok\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <after-view-checked (loaded)=\"focusInput(input)\"></after-view-checked>\r\n</tn-dialog>\r\n\r\n<tn-dialog #dialog3 *ngIf=\"showTaiLieuDungChung\" [header]=\"'T\u00E0i li\u1EC7u' |translate\"\r\n [popupSize]=\"{ width:1024, height: 800 }\" (onHide)=\"showTaiLieuDungChung = false\">\r\n <file-tai-lieu #formBase [originalFolderId]=\"data.currentFolderId\"\r\n (onSaved)=\"showTaiLieuDungChung = false; this._triggerProcessData()\" (onCancel)=\"showTaiLieuDungChung = false\">\r\n </file-tai-lieu>\r\n</tn-dialog>\r\n\r\n<!--\r\n\r\n<share-file *ngIf=\"forms.shareFile.show\" [parentDataModel]=\"model\" [parentDataContext]=\"context\"\r\n [model]=\"forms.shareFile.formData\">\r\n</share-file>\r\n\r\n<share-folder *ngIf=\"forms.shareFolder.show\" [parentDataModel]=\"model\" [parentDataContext]=\"context\"\r\n [model]=\"forms.shareFolder.formData\">\r\n</share-folder>\r\n -->\r\n\r\n<!-- Xem ch\u1EEF k\u00FD s\u1ED1 -->\r\n<tn-dialog *ngIf=\"forms.signatureDetail.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.signatureDetail.header | translate\" [popupSize]=\"forms[formIds.signatureDetail].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.signatureDetail)\">\r\n <signature-detail [parentModel]=\"model\" [parentContext]=\"context\">\r\n </signature-detail>\r\n</tn-dialog>\r\n<!--K\u00FD s\u1ED1 sim-->\r\n<tn-dialog *ngIf=\"forms.kySoSim.show\" #dialog [styleClass]=\"'address-form'\" [header]=\"forms.kySoSim.header | translate\"\r\n [popupSize]=\"forms.kySoSim.popupSize\" [showFooter]=\"true\" (onHide)=\"onCancelForm(formIds.kySoSim)\">\r\n <app-file-ky-so-sim #fileKySoSim [parentModel]=\"model\" [parentContext]=\"context\">\r\n </app-file-ky-so-sim>\r\n <ng-template #footer>\r\n <button type=\"button\" pButton icon=\"fas fa-images\" [disabled]=\"model.submitting\" class=\"p-button-text\"\r\n [label]=\"'Ch\u1ECDn ch\u1EEF k\u00FD' | translate\" (click)=\"chonChuKy()\"></button>\r\n <button type=\"button\" pButton icon=\"fas fa-signature\" class=\"p-button-text ui-button-success\"\r\n [disabled]=\"model.submitting\" [label]=\"'Th\u1EF1c hi\u1EC7n k\u00FD' | translate\" (click)=\"kySo()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"forms.kySoSim.show=false\"></button>\r\n </ng-template>\r\n</tn-dialog>", styles: [".file-header-tab a{color:#000!important}.file-ex-name:hover{cursor:pointer}.file-ex-name .signature{margin-left:3px}.file-ex-row:hover{background:#e8e8e8}.function-list{text-align:center}.function-list a{margin:5px}.function-list a:hover{color:#6aa3d4}.file-btn{color:#337ab7;padding:5px;cursor:pointer;font-size:1.1em;margin-left:10px;vertical-align:middle;line-height:45px;display:inline-block}.file-btn:hover{color:#3ea8ff}.file-btn i{margin-right:10px;font-size:1.2em}.file-action{text-align:right}.file-row-action i{margin-right:5px}.file-row-action{line-height:34px}.function-list .topbar-items{margin-top:0}.function-list .topbar-items>li .topbar-icon{color:#909090}.function-list .topbar-items>li .topbar-icon:hover{color:#444}.function-list .topbar-items>li>ul{top:30px;right:15px;border-top:0px}.function-list .topbar-items>li>ul:before{display:none}.function-list .topbar-items>li.active-top-menu>ul{z-index:1}.function-list .layout-menu li a{border:none;text-align:left;margin:0}.function-list .layout-menu li a i:first-child{color:#666f77;font-size:1.2em}.group-link-share{height:34px}.txt-link-share{max-width:335px!important}.btn-copy-link-share{font-size:small!important}.tbl-checkbox-header{width:3em}.tbl-checkbox{width:3em;text-align:center}.my-drive-checkbox{border:1px solid #cccccc;background-color:#fff;width:20px;height:20px;text-align:center;box-shadow:inset 0 1px 1px #00000013;transition:border-color .3s,background-color .3s,box-shadow .3s}.get-link-share{cursor:pointer;float:right}.file-toolbar{text-align:right}.function-topbar button:last-child{margin-right:0!important}::ng-deep body>.fm-contextMenu-panel{min-width:210px}.folderUnClickable{pointer-events:none}::ng-deep file-manager .file-menu.ui-menu ul li a{text-align:left!important}::ng-deep file-manager .item-inline-name .ui-tooltip-text{word-break:break-word;white-space:normal}::ng-deep file-manager .full-layout .fm-grid a{display:flex}::ng-deep file-manager .full-layout .fm-grid a .file-ex-icon{margin-right:5px}::ng-deep file-manager .full-layout .fm-grid a .file-ex-icon:hover{cursor:pointer}::ng-deep file-manager .fm-toolbar{display:flex;align-items:center;padding-top:.5em;padding-bottom:.5em;padding-left:0}::ng-deep file-manager .fm-toolbar .fm-toolbar-buttons{display:flex;align-items:center;padding-left:3px}::ng-deep file-manager .fm-toolbar .fm-toolbar-path{flex:1 1;margin-left:2em;position:relative}::ng-deep file-manager .fm-toolbar .fm-toolbar-path:after{position:absolute;content:\"\";width:2px;height:100%;background:#b8b8b8;top:0;left:-1.4em}::ng-deep file-manager .not-full-layout{border-radius:5px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item{display:flex}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-no,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-version,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-signature,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-function{display:flex;align-items:center;justify-content:center}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-no{flex:0 0 30px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name{display:flex;flex:1 1;justify-content:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-right:1em}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name .file-ex-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:flex;width:100%}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name .file-ex-name>span:not(.file-ex-extension){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:flex;width:100%;justify-content:space-between}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-version{flex:0 0 auto;font-size:.85rem;font-weight:700;margin-right:5px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-no-item{display:flex;justify-content:left;align-items:center;padding:1em}::ng-deep file-manager p-breadcrumb .p-breadcrumb{background:transparent;padding:0;border:none}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:not(:last-child)>a{cursor:pointer}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:not(:last-child)>a .p-menuitem-text{color:#2196f3}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:last-child .p-menuitem-text{color:#ff6600af}::ng-deep td file-manager .not-full-layout .nfl-grid .nfl-no-item{display:flex;justify-content:center;align-items:center;padding:8px}\n"], dependencies: [{ kind: "directive", type: i16.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i16.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i17.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i18.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }, { kind: "directive", type: i19.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i20.ContextMenu, selector: "p-contextMenu", inputs: ["model", "global", "target", "style", "styleClass", "appendTo", "autoZIndex", "baseZIndex", "triggerEvent"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i21.FileUpload, selector: "p-fileUpload", inputs: ["name", "url", "method", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "style", "styleClass", "previewWidth", "chooseLabel", "uploadLabel", "cancelLabel", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "headers", "customUpload", "fileLimit", "files"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler"] }, { kind: "directive", type: i22.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i22.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i22.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i23.InputText, selector: "[pInputText]" }, { kind: "component", type: i24.AfterViewCheckedComponent, selector: "after-view-checked", inputs: ["renderKey"], outputs: ["loaded", "loading", "unloading", "reRender"] }, { kind: "component", type: i25.CrudListComponent, selector: "crud-list" }, { kind: "component", type: i26.TnDialogComponent, selector: "tn-dialog", inputs: ["maskClass", "styleClass", "scrollBarStyleClass", "useDefaultScrollBar", "visible", "disabledButton", "modal", "header", "popupSize", "closeOnEscape", "showFooter", "positionTop", "minY", "hiddenSave", "maximizable"], outputs: ["onSave", "onCancel", "onShow", "onHide"] }, { kind: "component", type: i27.FileFormComponent, selector: "file-form" }, { kind: "component", type: i28.FileViewerComponent, selector: "file-viewer", inputs: ["model", "readonly", "showPrint", "showDownload", "showDelete"], outputs: ["onClose", "onRename", "onDelete"] }, { kind: "component", type: i29.FileVersionListComponent, selector: "file-version-list", inputs: ["fileId", "readonly"] }, { kind: "component", type: i30.FolderFormComponent, selector: "folder-form" }, { kind: "component", type: i31.SignatureDetailComponent, selector: "signature-detail" }, { kind: "component", type: i32.FileKySoSimComponent, selector: "app-file-ky-so-sim" }, { kind: "component", type: i33.TaiLieuComponent, selector: "file-tai-lieu", inputs: ["originalFolderId"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i34.FileIconPipe, name: "fileIcon" }, { kind: "pipe", type: i35.FileSizePipe, name: "fileSize" }] });
|
|
1230
|
+
], viewQueries: [{ propertyName: "fileControl", first: true, predicate: ["fileControl"], descendants: true }, { propertyName: "contextMenu", first: true, predicate: ["contextMenu"], descendants: true }, { propertyName: "fileKySoSim", first: true, predicate: ["fileKySoSim"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"layout == _layout.LIST\" class=\"full-layout\">\r\n <div class=\"fm-grid\">\r\n <crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"_dataSource\" [showScrollBar]=\"false\"\r\n class=\"--auto-height-content --no-wrapper-padding\" [widthFunctionColumn]=\"'8.2rem'\"\r\n (onReload)=\"_triggerProcessData($event)\" (onRowSelect)=\"onRowSelect($event)\">\r\n <ng-template #customTitle>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </ng-template>\r\n <ng-template #toolbar>\r\n <button *ngIf=\"!hiddenCreateFolder && !readonly\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\" (click)=\"createFolder()\">\r\n </button>\r\n\r\n <button *ngIf=\"!readonly\" pButton icon=\"pi pi-cloud-upload\" pTooltip=\"T\u1EA3i t\u1EC7p tin t\u1EEB m\u00E1y t\u00EDnh c\u1EE7a b\u1EA1n\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i l\u00EAn\"\r\n (click)=\"selectFile()\"></button>\r\n\r\n <button *ngIf=\"!readonly\" pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n\r\n <button *ngIf=\"!inTaiLieu && !inTaiLieuChung && !readonly\" pButton icon=\"pi pi-book\"\r\n pTooltip=\"Sao ch\u00E9p t\u1EEB t\u00E0i li\u1EC7u d\u00F9ng chung ho\u1EB7c c\u00E1 nh\u00E2n\" tooltipPosition=\"top\" type=\"button\"\r\n class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\" (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n\r\n <button *ngIf=\"canSelect()\" class=\"p-button-text p-button-success\" pButton type=\"button\"\r\n pTooltip=\"Di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn\" tooltipPosition=\"top\" icon=\"fas fa-arrows-alt\"\r\n iconPos=\"left\" label=\"Di chuy\u1EC3n\" (click)=\"moveExplorerItems()\">\r\n </button>\r\n\r\n <button *ngIf=\"canSetMove()\" class=\"p-button-text p-button-success\" pButton type=\"button\"\r\n pTooltip=\"Di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn t\u1EDBi \u0111\u00E2y\" tooltipPosition=\"top\" icon=\"far fa-hand-paper\"\r\n iconPos=\"left\" label=\"\u0110\u1EB7t t\u1EA1i \u0111\u00E2y\" (click)=\"setMoveExplorerItems()\">\r\n </button>\r\n\r\n <button *ngIf=\"canSetMove()\" icon=\"pi pi-undo\" pButton class=\"p-button-text p-button-secondary\"\r\n type=\"button\" pTooltip=\"B\u1ECF di chuy\u1EC3n th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn\" tooltipPosition=\"top\" label=\"B\u1ECF qua\"\r\n (click)=\"cancelMove()\">\r\n </button>\r\n\r\n <button *ngIf=\"hasSelect() && !readonly\" pButton type=\"button\"\r\n pTooltip=\"{{ 'X\u00F3a th\u01B0 m\u1EE5c/t\u1EC7p tin \u0111\u00E3 ch\u1ECDn' | translate }}\" tooltipPosition=\"top\" icon=\"pi pi-trash\"\r\n iconPos=\"left\" class=\"p-button-text p-button-danger\" label=\"X\u00F3a\"\r\n (click)=\"deleteMutiple(model.selectedItems)\"></button>\r\n\r\n <button *ngIf=\"hasSelect()\" class=\"p-button-text p-button-secondary\" pButton type=\"button\"\r\n pTooltip=\"N\u00E9n & t\u1EA3i v\u1EC1\" tooltipPosition=\"top\" icon=\"fas fa-file-archive\" iconPos=\"left\"\r\n label=\"T\u1EA3i v\u1EC1\" (click)=\"downloadMultiple()\">\r\n </button>\r\n </ng-template>\r\n\r\n <ng-template #explorerItem let-rowData='rowData' let-col='col'>\r\n <span (click)=\"openObject(rowData)\" class=\"pull-left file-ex-icon\"\r\n [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <span (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n {{rowData.name}}\r\n </span>\r\n <span *ngIf=\"rowData.signatures\" class=\"pull-right signature\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\"\r\n tooltipPosition=\"top\" (click)=\"viewListSign($event, rowData.signatures)\">\r\n <i class=\"fas fa-signature\"></i>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template #fileSize let-rowData='rowData'>\r\n <div *ngIf=\"rowData.isFile\">{{rowData.fileSize | fileSize}}</div>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div class=\"function-list\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" pButton type=\"button\"\r\n tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\" (click)=\"onButtonClick(rowData)\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\" pButton\r\n type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\" icon=\"pi pi-trash\"\r\n (click)=\"deleteFile(rowData)\"></button>\r\n\r\n\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </ng-container>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\" icon=\"pi pi-cloud-download\"\r\n (click)=\"download(rowData)\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n </crud-list>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.SIMPLE\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div>\r\n\r\n <div class=\"nfl-grid\">\r\n <ng-container *ngIf=\"_dataSource && _dataSource.length > 0\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n <div *ngIf=\"rowData.signatures\" class=\"nfl-signature signature\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\"\r\n tooltipPosition=\"top\" (click)=\"viewListSign($event, rowData.signatures)\">\r\n <i class=\"fas fa-signature\"></i>\r\n </div>\r\n <div *ngIf=\"rowData.isFile\" class=\"nfl-version\">\r\n v{{rowData.currentFileVersion}}\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n (click)=\"download(rowData)\" pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\"\r\n icon=\"pi pi-cloud-download\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.SIMPLE_FOR_LIST\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div>\r\n\r\n <div class=\"nfl-grid\">\r\n <ng-container *ngIf=\"_dataSource && _dataSource.length > 0\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"layout == _layout.INLINE\" class=\"not-full-layout\" [class.readonly]=\"readonly\">\r\n <!-- <div *ngIf=\"!readonly || data.breadcrumbs.length > 0\" class=\"fm-toolbar\">\r\n <div class=\"fm-toolbar-buttons\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button *ngIf=\"!hiddenCreateFolder\" (click)=\"createFolder()\" pButton pRipple type=\"button\"\r\n pTooltip=\"T\u1EA1o th\u01B0 m\u1EE5c m\u1EDBi\" tooltipPosition=\"top\" icon=\"pi pi-folder\" class=\"p-button-text\"\r\n label=\"T\u1EA1o th\u01B0 m\u1EE5c\" iconPos=\"left\">\r\n </button>\r\n <button type=\"button\" pButton class=\"p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-cloud-upload\" (click)=\"selectFile()\" label=\"T\u1EA3i l\u00EAn\"></button>\r\n <button pButton icon=\"pi pi-link\" pTooltip=\"T\u1EA3i t\u1EEB li\u00EAn k\u1EBFt trong h\u1EC7 th\u1ED1ng\" tooltipPosition=\"top\"\r\n type=\"button\" class=\"p-button-text p-button-primary\" label=\"T\u1EA3i li\u00EAn k\u1EBFt\"\r\n (click)=\"showAttachLinkBox = true\"></button>\r\n <button *ngIf=\"!inTaiLieu\" pButton icon=\"pi pi-book\" pTooltip=\"T\u00E0i li\u1EC7u d\u00F9ng chung\"\r\n tooltipPosition=\"top\" type=\"button\" class=\"p-button-text\" label=\"T\u00E0i li\u1EC7u\"\r\n (click)=\"showTaiLieuDungChung = true;\">\r\n </button>\r\n </ng-container>\r\n </div>\r\n <ng-container *ngTemplateOutlet=\"breadCrumb\"></ng-container>\r\n </div> -->\r\n\r\n <div class=\"nfl-grid\">\r\n <div *ngFor=\"let rowData of _dataSource; index as i\" class=\"nfl-item\">\r\n <div class=\"nfl-no\">\r\n {{i + 1}}.\r\n </div>\r\n\r\n <div class=\"nfl-name\">\r\n <span class=\"pull-left file-ex-icon\" [innerHTML]=\"rowData.name | fileIcon : !rowData.isFile\">\r\n </span>\r\n\r\n <a (click)=\"openObject(rowData)\" class=\"{{rowData.class}} file-ex-name\">\r\n <span>\r\n <span>{{rowData.name}}</span>\r\n </span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"nfl-function\">\r\n <ng-container *ngIf=\"!readonly\">\r\n <button class=\"p-button-rounded p-button-text link-or-action\" (click)=\"onButtonClick(rowData)\"\r\n pButton type=\"button\" tooltipPosition=\"top\" pTooltip=\"{{getButtonTooltip(rowData)}}\"\r\n icon=\"{{getButtonIcon(rowData)}}\"></button>\r\n\r\n <button class=\"p-button-danger p-button-rounded p-button-text link-or-action\"\r\n (click)=\"deleteFile(rowData)\" pButton type=\"button\" pTooltip=\"X\u00F3a\" tooltipPosition=\"top\"\r\n icon=\"pi pi-trash\"></button>\r\n </ng-container>\r\n <!--\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n (click)=\"download(rowData)\" pButton type=\"button\" pTooltip=\"T\u1EA3i v\u1EC1\" tooltipPosition=\"top\"\r\n icon=\"pi pi-cloud-download\"></button>\r\n <button *ngIf=\"readonly\" class=\"p-button-secondary p-button-rounded p-button-text link-or-action\"\r\n pButton type=\"button\" pTooltip=\"Sao ch\u00E9p \u0111\u01B0\u1EDDng d\u1EABn\" tooltipPosition=\"top\" icon=\"pi pi-link\"\r\n (click)=\"copyDownloadLink(rowData)\"></button> -->\r\n <button type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!_dataSource || !_dataSource.length\" class=\"nfl-no-item\">\r\n Ch\u01B0a c\u00F3 t\u00E0i li\u1EC7u \u0111\u01B0\u1EE3c t\u1EA3i l\u00EAn\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #breadCrumb>\r\n <div *ngIf=\"data.breadcrumbs.length > 1\" class=\"fm-toolbar-path\">\r\n <p-breadcrumb class=\"customBreadCrumb\" [model]=\"data.breadcrumbs\"></p-breadcrumb>\r\n </div>\r\n</ng-template>\r\n\r\n<p-fileUpload #fileControl [ngStyle]=\"{'display': 'none'}\" mode=\"basic\" [chooseLabel]=\"chooseLabel\" name=\"file\"\r\n [url]=\"apiUploadUrl\" [maxFileSize]=\"maxFileSize\" auto=\"true\"\r\n [invalidFileSizeMessageSummary]=\"invalidFileSizeMessageSummary\"\r\n [invalidFileSizeMessageDetail]=\"invalidFileSizeMessageDetail\"\r\n [invalidFileTypeMessageSummary]=\"invalidFileTypeMessageSummary\"\r\n [invalidFileTypeMessageDetail]=\"invalidFileTypeMessageDetail\"\r\n [invalidFileLimitMessageSummary]=\"invalidFileLimitMessageSummary\"\r\n [invalidFileLimitMessageDetail]=\"invalidFileLimitMessageDetail\" (onProgress)=\"onUploadProgress($event)\"\r\n (onBeforeUpload)=\"onBeforeUpload($event)\" (onSelect)=\"handleSelectFile($event)\" (onUpload)=\"onUploaded($event)\"\r\n [accept]=\"control ? control.accept: null\">\r\n</p-fileUpload>\r\n<p-contextMenu #contextMenu [appendTo]=\"'body'\" [model]=\"data.itemsMenuFile\" styleClass=\"fm-contextMenu-panel\">\r\n</p-contextMenu>\r\n\r\n<!-- T\u1EA1o m\u1EDBi/ \u0111\u1ED5i t\u00EAn th\u01B0 m\u1EE5c -->\r\n<tn-dialog *ngIf=\"forms.createFolder.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.createFolder.header | translate\" [popupSize]=\"forms[formIds.createFolder].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.createFolder)\">\r\n <folder-form #formBase [parentModel]=\"model\" [parentContext]=\"context\"\r\n [model]=\"forms[formIds.createFolder].formData\" (onSaved)=\"onSavedForm(formIds.createFolder)\"\r\n (onCancel)=\"onCancelForm(formIds.createFolder)\">\r\n </folder-form>\r\n</tn-dialog>\r\n\r\n<!-- \u0110\u1ED5i t\u00EAn file -->\r\n<tn-dialog *ngIf=\"forms.renameFile.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.renameFile.header | translate\" [popupSize]=\"forms[formIds.renameFile].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.renameFile)\">\r\n <file-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"forms[formIds.renameFile].formData\"\r\n (onSaved)=\"onSavedForm(formIds.renameFile)\" (onCancel)=\"onCancelForm(formIds.renameFile)\">\r\n </file-form>\r\n</tn-dialog>\r\n\r\n<!-- Xem file tr\u1EF1c tuy\u1EBFn -->\r\n<file-viewer *ngIf=\"forms.fileViewer.show\" [parentModel]=\"model\" [parentContext]=\"context\" [readonly]=\"readonly\"\r\n [model]=\"forms.fileViewer.formData\" (onClose)=\"closeFileViewer()\">\r\n</file-viewer>\r\n\r\n<!-- Xem phi\u00EAn b\u1EA3n -->\r\n<tn-dialog *ngIf=\"forms.fileVersionList.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.fileVersionList.header | translate\" [popupSize]=\"forms[formIds.fileVersionList].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.fileVersionList)\">\r\n <file-version-list *ngIf=\"forms.fileVersionList.show\" [parentModel]=\"model\" [parentContext]=\"context\"\r\n [fileId]=\"forms[formIds.fileVersionList].fileId\" [readonly]=\"readonly\">\r\n </file-version-list>\r\n</tn-dialog>\r\n\r\n<tn-dialog *ngIf=\"showAttachLinkBox\" #dialog2 [maximizable]=\"false\" [header]=\"'Nh\u1EADp li\u00EAn k\u1EBFt' | translate\"\r\n [popupSize]=\"{ width: 600, height: 50}\" (onHide)=\"showAttachLinkBox = false; typedLink=''\">\r\n <div class=\"p-col-12\">\r\n <div class=\"p-grid\">\r\n <div class=\"p-md-10\">\r\n <input #input type=\"text\" placeholder=\"Nh\u1EADp li\u00EAn k\u1EBFt sao ch\u00E9p t\u1EEB t\u1EC7p tin kh\u00E1c...\"\r\n (keyup.enter)=\"addAttachLink()\" pInputText [(ngModel)]=\"typedLink\" class=\"p-col-12\" />\r\n </div>\r\n <div class=\"p-md-2\">\r\n <button type=\"button\" (click)=\"addAttachLink()\" [disabled]=\"typedLink != ''? null : true\" pButton\r\n class=\"p-button-primary p-col-12\" label=\"Ok\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <after-view-checked (loaded)=\"focusInput(input)\"></after-view-checked>\r\n</tn-dialog>\r\n\r\n<tn-dialog #dialog3 *ngIf=\"showTaiLieuDungChung\" [header]=\"'T\u00E0i li\u1EC7u' |translate\"\r\n [popupSize]=\"{ width:1024, height: 800 }\" (onHide)=\"showTaiLieuDungChung = false\">\r\n <file-tai-lieu #formBase [originalFolderId]=\"data.currentFolderId\"\r\n (onSaved)=\"showTaiLieuDungChung = false; this._triggerProcessData()\" (onCancel)=\"showTaiLieuDungChung = false\">\r\n </file-tai-lieu>\r\n</tn-dialog>\r\n\r\n<!--\r\n\r\n<share-file *ngIf=\"forms.shareFile.show\" [parentDataModel]=\"model\" [parentDataContext]=\"context\"\r\n [model]=\"forms.shareFile.formData\">\r\n</share-file>\r\n\r\n<share-folder *ngIf=\"forms.shareFolder.show\" [parentDataModel]=\"model\" [parentDataContext]=\"context\"\r\n [model]=\"forms.shareFolder.formData\">\r\n</share-folder>\r\n -->\r\n\r\n<!-- Xem ch\u1EEF k\u00FD s\u1ED1 -->\r\n<tn-dialog *ngIf=\"forms.signatureDetail.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"forms.signatureDetail.header | translate\" [popupSize]=\"forms[formIds.signatureDetail].popupSize\"\r\n (onHide)=\"onCancelForm(formIds.signatureDetail)\">\r\n <signature-detail [parentModel]=\"model\" [parentContext]=\"context\">\r\n </signature-detail>\r\n</tn-dialog>\r\n<!--K\u00FD s\u1ED1 sim-->\r\n<tn-dialog *ngIf=\"forms.kySoSim.show\" #dialog [styleClass]=\"'address-form'\" [header]=\"forms.kySoSim.header | translate\"\r\n [popupSize]=\"forms.kySoSim.popupSize\" [showFooter]=\"true\" (onHide)=\"onCancelForm(formIds.kySoSim)\">\r\n <app-file-ky-so-sim #fileKySoSim [parentModel]=\"model\" [parentContext]=\"context\">\r\n </app-file-ky-so-sim>\r\n <ng-template #footer>\r\n <button type=\"button\" pButton icon=\"fas fa-images\" [disabled]=\"model.submitting\" class=\"p-button-text\"\r\n [label]=\"'Ch\u1ECDn ch\u1EEF k\u00FD' | translate\" (click)=\"chonChuKy()\"></button>\r\n <button type=\"button\" pButton icon=\"fas fa-signature\" class=\"p-button-text ui-button-success\"\r\n [disabled]=\"model.submitting\" [label]=\"'Th\u1EF1c hi\u1EC7n k\u00FD' | translate\" (click)=\"kySo()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"forms.kySoSim.show=false\"></button>\r\n </ng-template>\r\n</tn-dialog>", styles: [".file-header-tab a{color:#000!important}.file-ex-name:hover{cursor:pointer}.file-ex-name .signature{margin-left:3px}.file-ex-row:hover{background:#e8e8e8}.function-list{text-align:center}.function-list a{margin:5px}.function-list a:hover{color:#6aa3d4}.file-btn{color:#337ab7;padding:5px;cursor:pointer;font-size:1.1em;margin-left:10px;vertical-align:middle;line-height:45px;display:inline-block}.file-btn:hover{color:#3ea8ff}.file-btn i{margin-right:10px;font-size:1.2em}.file-action{text-align:right}.file-row-action i{margin-right:5px}.file-row-action{line-height:34px}.function-list .topbar-items{margin-top:0}.function-list .topbar-items>li .topbar-icon{color:#909090}.function-list .topbar-items>li .topbar-icon:hover{color:#444}.function-list .topbar-items>li>ul{top:30px;right:15px;border-top:0px}.function-list .topbar-items>li>ul:before{display:none}.function-list .topbar-items>li.active-top-menu>ul{z-index:1}.function-list .layout-menu li a{border:none;text-align:left;margin:0}.function-list .layout-menu li a i:first-child{color:#666f77;font-size:1.2em}.group-link-share{height:34px}.txt-link-share{max-width:335px!important}.btn-copy-link-share{font-size:small!important}.tbl-checkbox-header{width:3em}.tbl-checkbox{width:3em;text-align:center}.my-drive-checkbox{border:1px solid #cccccc;background-color:#fff;width:20px;height:20px;text-align:center;box-shadow:inset 0 1px 1px #00000013;transition:border-color .3s,background-color .3s,box-shadow .3s}.get-link-share{cursor:pointer;float:right}.file-toolbar{text-align:right}.function-topbar button:last-child{margin-right:0!important}::ng-deep body>.fm-contextMenu-panel{min-width:210px}.folderUnClickable{pointer-events:none}::ng-deep file-manager .file-menu.ui-menu ul li a{text-align:left!important}::ng-deep file-manager .item-inline-name .ui-tooltip-text{word-break:break-word;white-space:normal}::ng-deep file-manager .full-layout .fm-grid a{display:flex}::ng-deep file-manager .full-layout .fm-grid a .file-ex-icon{margin-right:5px}::ng-deep file-manager .full-layout .fm-grid a .file-ex-icon:hover{cursor:pointer}::ng-deep file-manager .fm-toolbar{display:flex;align-items:center;padding-top:.5em;padding-bottom:.5em;padding-left:0}::ng-deep file-manager .fm-toolbar .fm-toolbar-buttons{display:flex;align-items:center;padding-left:3px}::ng-deep file-manager .fm-toolbar .fm-toolbar-path{flex:1 1;margin-left:2em;position:relative}::ng-deep file-manager .fm-toolbar .fm-toolbar-path:after{position:absolute;content:\"\";width:2px;height:100%;background:#b8b8b8;top:0;left:-1.4em}::ng-deep file-manager .not-full-layout{border-radius:5px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item{display:flex}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-no,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-version,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-signature,::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-function{display:flex;align-items:center;justify-content:center}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-no{flex:0 0 30px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name{display:flex;flex:1 1;justify-content:left;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-right:1em}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name .file-ex-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:flex;width:100%}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-name .file-ex-name>span:not(.file-ex-extension){white-space:nowrap;text-overflow:ellipsis;overflow:hidden;display:flex;width:100%;justify-content:space-between}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-item .nfl-version{flex:0 0 auto;font-size:.85rem;font-weight:700;margin-right:5px}::ng-deep file-manager .not-full-layout .nfl-grid .nfl-no-item{display:flex;justify-content:left;align-items:center;padding:1em}::ng-deep file-manager p-breadcrumb .p-breadcrumb{background:transparent;padding:0;border:none}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:not(:last-child)>a{cursor:pointer}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:not(:last-child)>a .p-menuitem-text{color:#2196f3}::ng-deep file-manager p-breadcrumb .p-breadcrumb ul li:last-child .p-menuitem-text{color:#ff6600af}::ng-deep td file-manager .not-full-layout .nfl-grid .nfl-no-item{display:flex;justify-content:center;align-items:center;padding:8px}\n"], dependencies: [{ kind: "directive", type: i16.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i16.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i17.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "component", type: i18.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home"], outputs: ["onItemClick"] }, { kind: "directive", type: i19.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "component", type: i20.ContextMenu, selector: "p-contextMenu", inputs: ["autoZIndex", "baseZIndex", "triggerEvent", "model", "global", "target", "style", "styleClass", "appendTo"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i21.FileUpload, selector: "p-fileUpload", inputs: ["method", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageDetail", "invalidFileLimitMessageSummary", "previewWidth", "chooseIcon", "uploadIcon", "cancelIcon", "showUploadButton", "showCancelButton", "mode", "files", "name", "url", "multiple", "accept", "disabled", "auto", "withCredentials", "maxFileSize", "style", "styleClass", "chooseLabel", "uploadLabel", "cancelLabel", "headers", "customUpload", "fileLimit"], outputs: ["onBeforeUpload", "onSend", "onUpload", "onError", "onClear", "onRemove", "onSelect", "onProgress", "uploadHandler"] }, { kind: "directive", type: i22.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i22.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i22.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i23.InputText, selector: "[pInputText]" }, { kind: "component", type: i24.AfterViewCheckedComponent, selector: "after-view-checked", inputs: ["renderKey"], outputs: ["loaded", "loading", "unloading", "reRender"] }, { kind: "component", type: i25.CrudListComponent, selector: "crud-list" }, { kind: "component", type: i26.TnDialogComponent, selector: "tn-dialog", inputs: ["maskClass", "styleClass", "scrollBarStyleClass", "useDefaultScrollBar", "visible", "disabledButton", "modal", "header", "popupSize", "closeOnEscape", "showFooter", "positionTop", "minY", "hiddenSave", "maximizable"], outputs: ["onSave", "onCancel", "onShow", "onHide"] }, { kind: "component", type: i27.FileFormComponent, selector: "file-form" }, { kind: "component", type: i28.FileViewerComponent, selector: "file-viewer", inputs: ["model", "readonly", "showPrint", "showDownload", "showDelete"], outputs: ["onClose", "onRename", "onDelete"] }, { kind: "component", type: i29.FileVersionListComponent, selector: "file-version-list", inputs: ["fileId", "readonly"] }, { kind: "component", type: i30.FolderFormComponent, selector: "folder-form" }, { kind: "component", type: i31.SignatureDetailComponent, selector: "signature-detail" }, { kind: "component", type: i32.FileKySoSimComponent, selector: "app-file-ky-so-sim" }, { kind: "component", type: i33.TaiLieuComponent, selector: "file-tai-lieu", inputs: ["originalFolderId"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }, { kind: "pipe", type: i34.FileIconPipe, name: "fileIcon" }, { kind: "pipe", type: i35.FileSizePipe, name: "fileSize" }] });
|
|
1231
1231
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FileManagerComponent, decorators: [{
|
|
1232
1232
|
type: Component,
|
|
1233
1233
|
args: [{ selector: 'file-manager', providers: [
|
package/esm2020/components/file-explorer/file-picker-dialog/file-picker-dialog.component.mjs
CHANGED
|
@@ -99,7 +99,7 @@ export class FilePickerDialogComponent extends DataFormBase {
|
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
FilePickerDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FilePickerDialogComponent, deps: [{ token: i0.Injector }, { token: i1.FileObjectService }, { token: i2.FileManagerService }], target: i0.ɵɵFactoryTarget.Component });
|
|
102
|
-
FilePickerDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FilePickerDialogComponent, selector: "file-picker-dialog", inputs: { isFilePicker: "isFilePicker", multipleCheckWhenClickRow: "multipleCheckWhenClickRow", dataType: "dataType" }, outputs: { onChanged: "onChanged" }, providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n <ng-template #fileManager let-control=\"control\">\r\n <file-manager serviceCode=\"user\" entity=\"user\" entityKey=\"entityKey\" label=\"My folder\" [dataType]=\"model.data.fileType\"\r\n (onSelected)=\"selectedFile($event)\"></file-manager>\r\n </ng-template>\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\" [label]=\"'FORM.SAVE' | translate\"\r\n (click)=\"chooseFiles($event)\"></button>\r\n\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "
|
|
102
|
+
FilePickerDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FilePickerDialogComponent, selector: "file-picker-dialog", inputs: { isFilePicker: "isFilePicker", multipleCheckWhenClickRow: "multipleCheckWhenClickRow", dataType: "dataType" }, outputs: { onChanged: "onChanged" }, providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n <ng-template #fileManager let-control=\"control\">\r\n <file-manager serviceCode=\"user\" entity=\"user\" entityKey=\"entityKey\" label=\"My folder\" [dataType]=\"model.data.fileType\"\r\n (onSelected)=\"selectedFile($event)\"></file-manager>\r\n </ng-template>\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\" [label]=\"'FORM.SAVE' | translate\"\r\n (click)=\"chooseFiles($event)\"></button>\r\n\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "component", type: i4.CrudFormComponent, selector: "crud-form", inputs: ["setting", "context", "filesUploaded", "isViewMode", "disableKeypressControl", "disableCaching", "styleClass", "useGridTemplate", "formId", "formClass", "autoFocus", "trapFocus", "data", "formState"], outputs: ["onFormReady", "onControlReady", "onAllControlReady", "onModelChanged", "dataChange", "onChange", "onAfterTrinhKy"] }, { kind: "component", type: i5.FileManagerComponent, selector: "file-manager", inputs: ["control", "fileDataService", "layout", "hiddenCreateFolder", "maxFileSize", "invalidFileSizeMessageSummary", "invalidFileSizeMessageDetail", "invalidFileTypeMessageSummary", "invalidFileTypeMessageDetail", "invalidFileLimitMessageSummary", "invalidFileLimitMessageDetail", "dataType", "rootFolderName", "serviceCode", "entity", "entityKey", "readonly", "inTaiLieu", "inTaiLieuChung", "copyToFolderId", "value", "multipleCheckWhenClickRow"], outputs: ["onInit", "onReady", "entityKeyChange", "closePopup", "valueChange", "onChanged", "onSelected"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
|
|
103
103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FilePickerDialogComponent, decorators: [{
|
|
104
104
|
type: Component,
|
|
105
105
|
args: [{ selector: 'file-picker-dialog', providers: [ComponentContextService], template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n <ng-template #fileManager let-control=\"control\">\r\n <file-manager serviceCode=\"user\" entity=\"user\" entityKey=\"entityKey\" label=\"My folder\" [dataType]=\"model.data.fileType\"\r\n (onSelected)=\"selectedFile($event)\"></file-manager>\r\n </ng-template>\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\" [label]=\"'FORM.SAVE' | translate\"\r\n (click)=\"chooseFiles($event)\"></button>\r\n\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n" }]
|
|
@@ -75,7 +75,7 @@ export class TaiLieuComponent extends DataFormBase {
|
|
|
75
75
|
TaiLieuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: TaiLieuComponent, deps: [{ token: i0.Injector }, { token: i1.FileObjectService }, { token: i2.FolderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
76
76
|
TaiLieuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: TaiLieuComponent, selector: "file-tai-lieu", inputs: { originalFolderId: "originalFolderId" }, providers: [
|
|
77
77
|
ComponentContextService,
|
|
78
|
-
], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm (onFormReady)=\"_handleFormReady($event)\" [(data)]=\"model.data\" [context]=\"context\"\r\n [disableCaching]=\"true\"\r\n [setting]=\"setting\">\r\n</crud-form>\r\n<p-accordion [multiple]=\"true\">\r\n <p-accordionTab header=\"T\u00E0i li\u1EC7u d\u00F9ng chung\" [selected]=\"true\">\r\n <khaithac-tailieu-dungchung (onSelectFiles)=\"this.selectedSharedFiles = $event;\"\r\n [originalFolderId]=\"originalFolderId\">\r\n </khaithac-tailieu-dungchung>\r\n </p-accordionTab>\r\n <p-accordionTab header=\"T\u00E0i li\u1EC7u c\u1EE7a t\u00F4i\" [selected]=true>\r\n <tailieu-cuatoi (onSelectFiles)=\"this.selectedPersonalFiles = $event\" [originalFolderId]=\"originalFolderId\">\r\n </tailieu-cuatoi>\r\n </p-accordionTab>\r\n</p-accordion>\r\n<ng-template #buttonTemplate>\r\n <button pButton icon=\"pi pi-save\" type=\"button\" class=\"p-button-text\" [label]=\"'FORM.SAVE' | translate\"\r\n (click)=\"handleManualSave()\"\r\n ></button>\r\n <button pButton preventTab icon=\"pi pi-replay\" type=\"button\" [label]=\"'FORM.CANCEL' | translate\"\r\n class=\"p-button-text p-button-secondary\"\r\n (click)=\"_handleCancel($event)\"\r\n ></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "component", type: i3.Accordion, selector: "p-accordion", inputs: ["
|
|
78
|
+
], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm (onFormReady)=\"_handleFormReady($event)\" [(data)]=\"model.data\" [context]=\"context\"\r\n [disableCaching]=\"true\"\r\n [setting]=\"setting\">\r\n</crud-form>\r\n<p-accordion [multiple]=\"true\">\r\n <p-accordionTab header=\"T\u00E0i li\u1EC7u d\u00F9ng chung\" [selected]=\"true\">\r\n <khaithac-tailieu-dungchung (onSelectFiles)=\"this.selectedSharedFiles = $event;\"\r\n [originalFolderId]=\"originalFolderId\">\r\n </khaithac-tailieu-dungchung>\r\n </p-accordionTab>\r\n <p-accordionTab header=\"T\u00E0i li\u1EC7u c\u1EE7a t\u00F4i\" [selected]=true>\r\n <tailieu-cuatoi (onSelectFiles)=\"this.selectedPersonalFiles = $event\" [originalFolderId]=\"originalFolderId\">\r\n </tailieu-cuatoi>\r\n </p-accordionTab>\r\n</p-accordion>\r\n<ng-template #buttonTemplate>\r\n <button pButton icon=\"pi pi-save\" type=\"button\" class=\"p-button-text\" [label]=\"'FORM.SAVE' | translate\"\r\n (click)=\"handleManualSave()\"\r\n ></button>\r\n <button pButton preventTab icon=\"pi pi-replay\" type=\"button\" [label]=\"'FORM.CANCEL' | translate\"\r\n class=\"p-button-text p-button-secondary\"\r\n (click)=\"_handleCancel($event)\"\r\n ></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "component", type: i3.Accordion, selector: "p-accordion", inputs: ["expandIcon", "collapseIcon", "activeIndex", "multiple", "style", "styleClass"], outputs: ["onClose", "onOpen", "activeIndexChange"] }, { kind: "component", type: i3.AccordionTab, selector: "p-accordionTab", inputs: ["cache", "transitionOptions", "selected", "header", "disabled"], outputs: ["selectedChange"] }, { kind: "directive", type: i4.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "component", type: i5.CrudFormComponent, selector: "crud-form", inputs: ["setting", "context", "filesUploaded", "isViewMode", "disableKeypressControl", "disableCaching", "styleClass", "useGridTemplate", "formId", "formClass", "autoFocus", "trapFocus", "data", "formState"], outputs: ["onFormReady", "onControlReady", "onAllControlReady", "onModelChanged", "dataChange", "onChange", "onAfterTrinhKy"] }, { kind: "component", type: i6.TaiLieuCuaToiComponent, selector: "tailieu-cuatoi", inputs: ["originalFolderId"], outputs: ["onSelectFiles"] }, { kind: "component", type: i7.KhaiThacTaiLieuDungChungComponent, selector: "khaithac-tailieu-dungchung", inputs: ["originalFolderId"], outputs: ["onSelectFiles"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
|
79
79
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: TaiLieuComponent, decorators: [{
|
|
80
80
|
type: Component,
|
|
81
81
|
args: [{ selector: 'file-tai-lieu', providers: [
|
|
@@ -275,7 +275,7 @@ export class FileVersionListComponent extends DataListBase {
|
|
|
275
275
|
}
|
|
276
276
|
}
|
|
277
277
|
FileVersionListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FileVersionListComponent, deps: [{ token: i1.FileVersionService }, { token: i2.ConfirmationService }, { token: i2.MessageService }, { token: i3.TranslateService }, { token: i4.FileExplorerService }, { token: i5.TnClientService }, { token: i6.NotifierService }, { token: i7.AuthenService }, { token: i8.SignalRService }, { token: i0.Injector }, { token: i9.DomService }, { token: i10.DownloadLinkService }, { token: i11.FileObjectService }], target: i0.ɵɵFactoryTarget.Component });
|
|
278
|
-
FileVersionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FileVersionListComponent, selector: "file-version-list", inputs: { fileId: "fileId", readonly: "readonly" }, providers: [ComponentContextService], viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ContextMenu, descendants: true }], usesInheritance: true, ngImport: i0, template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\">\r\n\r\n <ng-template #fileSize let-rowData='rowData'>\r\n <div>{{rowData.size | fileSize}}</div>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div class=\"function-list\">\r\n <button class=\"p-button-secondary p-button-rounded p-button-text\" *ngIf=\"isSupportViewOnline\"\r\n (click)=\"openFileViewer(rowData)\" pButton type=\"button\" pTooltip=\"Xem file tr\u1EF1c tuy\u1EBFn\"\r\n tooltipPosition=\"top\" icon=\"pi pi-eye\"></button>\r\n\r\n <button *ngIf=\"!readonly\" class=\"p-button-danger p-button-rounded p-button-text\"\r\n [disabled]=\"rowData.versionName == fileObject.currentFileVersion\" (click)=\"deleteVersionFile(rowData)\"\r\n pButton type=\"button\" pTooltip=\"X\u00F3a phi\u00EAn b\u1EA3n\" tooltipPosition=\"top\" icon=\"pi pi-trash\"></button>\r\n\r\n <button *ngIf=\"!readonly\" type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #comment let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div *ngIf=\"rowData.signatures\">\r\n <a (click)=\"viewListSign($event,rowData.signatures)\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\" tooltipPosition=\"top\"\r\n class=\"signature\"><i class=\"fas fa-signature\"></i></a>\r\n </div>\r\n <div>{{rowData.comment}}</div>\r\n </ng-template>\r\n\r\n</crud-list>\r\n\r\n<!-- Xem file tr\u1EF1c tuy\u1EBFn -->\r\n<file-viewer *ngIf=\"forms.fileViewer.show\" [parentModel]=\"model\" [parentContext]=\"context\"\r\n [model]=\"forms.fileViewer.formData\" (onClose)=\"closeFileViewer()\" [readonly]=\"true\">\r\n</file-viewer>\r\n\r\n<p-contextMenu [appendTo]=\"'body'\" [model]=\"_menuButtons\">\r\n</p-contextMenu>\r\n\r\n\r\n<!-- <file-viewer-new *ngIf=\"dataModel.fileViewer.show\" [parentDataContext]=\"dataContext\" [parentDataModel]=\"dataModel\">\r\n</file-viewer-new>\r\n<p-contextMenu #contextMenu [model]=\"dataModel.contextMenus\" appendTo=\"body\" [autoZIndex]=\"true\"></p-contextMenu>\r\n<signature-detail *ngIf=\"dataModel.signatureDetail.show\" [parentDataModel]=\"dataModel\"\r\n [parentDataContext]=\"dataContext\"></signature-detail> -->", styles: [".is-current-version{background:#dae3ff!important;font-weight:700!important}.btn-margin{margin:2px!important}.text-danger-btn{color:red}\n"], dependencies: [{ kind: "directive", type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i13.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "
|
|
278
|
+
FileVersionListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FileVersionListComponent, selector: "file-version-list", inputs: { fileId: "fileId", readonly: "readonly" }, providers: [ComponentContextService], viewQueries: [{ propertyName: "contextMenu", first: true, predicate: ContextMenu, descendants: true }], usesInheritance: true, ngImport: i0, template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\">\r\n\r\n <ng-template #fileSize let-rowData='rowData'>\r\n <div>{{rowData.size | fileSize}}</div>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div class=\"function-list\">\r\n <button class=\"p-button-secondary p-button-rounded p-button-text\" *ngIf=\"isSupportViewOnline\"\r\n (click)=\"openFileViewer(rowData)\" pButton type=\"button\" pTooltip=\"Xem file tr\u1EF1c tuy\u1EBFn\"\r\n tooltipPosition=\"top\" icon=\"pi pi-eye\"></button>\r\n\r\n <button *ngIf=\"!readonly\" class=\"p-button-danger p-button-rounded p-button-text\"\r\n [disabled]=\"rowData.versionName == fileObject.currentFileVersion\" (click)=\"deleteVersionFile(rowData)\"\r\n pButton type=\"button\" pTooltip=\"X\u00F3a phi\u00EAn b\u1EA3n\" tooltipPosition=\"top\" icon=\"pi pi-trash\"></button>\r\n\r\n <button *ngIf=\"!readonly\" type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #comment let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div *ngIf=\"rowData.signatures\">\r\n <a (click)=\"viewListSign($event,rowData.signatures)\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\" tooltipPosition=\"top\"\r\n class=\"signature\"><i class=\"fas fa-signature\"></i></a>\r\n </div>\r\n <div>{{rowData.comment}}</div>\r\n </ng-template>\r\n\r\n</crud-list>\r\n\r\n<!-- Xem file tr\u1EF1c tuy\u1EBFn -->\r\n<file-viewer *ngIf=\"forms.fileViewer.show\" [parentModel]=\"model\" [parentContext]=\"context\"\r\n [model]=\"forms.fileViewer.formData\" (onClose)=\"closeFileViewer()\" [readonly]=\"true\">\r\n</file-viewer>\r\n\r\n<p-contextMenu [appendTo]=\"'body'\" [model]=\"_menuButtons\">\r\n</p-contextMenu>\r\n\r\n\r\n<!-- <file-viewer-new *ngIf=\"dataModel.fileViewer.show\" [parentDataContext]=\"dataContext\" [parentDataModel]=\"dataModel\">\r\n</file-viewer-new>\r\n<p-contextMenu #contextMenu [model]=\"dataModel.contextMenus\" appendTo=\"body\" [autoZIndex]=\"true\"></p-contextMenu>\r\n<signature-detail *ngIf=\"dataModel.signatureDetail.show\" [parentDataModel]=\"dataModel\"\r\n [parentDataContext]=\"dataContext\"></signature-detail> -->", styles: [".is-current-version{background:#dae3ff!important;font-weight:700!important}.btn-margin{margin:2px!important}.text-danger-btn{color:red}\n"], dependencies: [{ kind: "directive", type: i12.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i13.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "directive", type: i14.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "component", type: i15.ContextMenu, selector: "p-contextMenu", inputs: ["autoZIndex", "baseZIndex", "triggerEvent", "model", "global", "target", "style", "styleClass", "appendTo"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i16.CrudListComponent, selector: "crud-list" }, { kind: "component", type: i17.FileViewerComponent, selector: "file-viewer", inputs: ["model", "readonly", "showPrint", "showDownload", "showDelete"], outputs: ["onClose", "onRename", "onDelete"] }, { kind: "pipe", type: i18.FileSizePipe, name: "fileSize" }] });
|
|
279
279
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FileVersionListComponent, decorators: [{
|
|
280
280
|
type: Component,
|
|
281
281
|
args: [{ selector: 'file-version-list', providers: [ComponentContextService], template: "<crud-list #crudList [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_unmarkLoading()\">\r\n\r\n <ng-template #fileSize let-rowData='rowData'>\r\n <div>{{rowData.size | fileSize}}</div>\r\n </ng-template>\r\n\r\n <ng-template #function let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div class=\"function-list\">\r\n <button class=\"p-button-secondary p-button-rounded p-button-text\" *ngIf=\"isSupportViewOnline\"\r\n (click)=\"openFileViewer(rowData)\" pButton type=\"button\" pTooltip=\"Xem file tr\u1EF1c tuy\u1EBFn\"\r\n tooltipPosition=\"top\" icon=\"pi pi-eye\"></button>\r\n\r\n <button *ngIf=\"!readonly\" class=\"p-button-danger p-button-rounded p-button-text\"\r\n [disabled]=\"rowData.versionName == fileObject.currentFileVersion\" (click)=\"deleteVersionFile(rowData)\"\r\n pButton type=\"button\" pTooltip=\"X\u00F3a phi\u00EAn b\u1EA3n\" tooltipPosition=\"top\" icon=\"pi pi-trash\"></button>\r\n\r\n <button *ngIf=\"!readonly\" type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-rounded\" pTooltip=\"Th\u00EAm\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #comment let-rowData=\"rowData\" let-crudList=\"crudList\">\r\n <div *ngIf=\"rowData.signatures\">\r\n <a (click)=\"viewListSign($event,rowData.signatures)\" pTooltip=\"Xem chi ti\u1EBFt k\u00FD s\u1ED1\" tooltipPosition=\"top\"\r\n class=\"signature\"><i class=\"fas fa-signature\"></i></a>\r\n </div>\r\n <div>{{rowData.comment}}</div>\r\n </ng-template>\r\n\r\n</crud-list>\r\n\r\n<!-- Xem file tr\u1EF1c tuy\u1EBFn -->\r\n<file-viewer *ngIf=\"forms.fileViewer.show\" [parentModel]=\"model\" [parentContext]=\"context\"\r\n [model]=\"forms.fileViewer.formData\" (onClose)=\"closeFileViewer()\" [readonly]=\"true\">\r\n</file-viewer>\r\n\r\n<p-contextMenu [appendTo]=\"'body'\" [model]=\"_menuButtons\">\r\n</p-contextMenu>\r\n\r\n\r\n<!-- <file-viewer-new *ngIf=\"dataModel.fileViewer.show\" [parentDataContext]=\"dataContext\" [parentDataModel]=\"dataModel\">\r\n</file-viewer-new>\r\n<p-contextMenu #contextMenu [model]=\"dataModel.contextMenus\" appendTo=\"body\" [autoZIndex]=\"true\"></p-contextMenu>\r\n<signature-detail *ngIf=\"dataModel.signatureDetail.show\" [parentDataModel]=\"dataModel\"\r\n [parentDataContext]=\"dataContext\"></signature-detail> -->", styles: [".is-current-version{background:#dae3ff!important;font-weight:700!important}.btn-margin{margin:2px!important}.text-danger-btn{color:red}\n"] }]
|
|
@@ -421,7 +421,7 @@ export class FileViewerComponent extends ComponentBase {
|
|
|
421
421
|
}
|
|
422
422
|
}
|
|
423
423
|
FileViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FileViewerComponent, deps: [{ token: i1.EnvironmentService }, { token: i0.ElementRef }, { token: i2.AuthenService }, { token: i3.FileExplorerService }, { token: i4.MessageService }, { token: i5.TranslateService }, { token: i6.NotifierService }, { token: i4.ConfirmationService }, { token: i7.TnClientService }, { token: i8.FileVersionService }, { token: i9.CustomRouterService }, { token: i10.DeviceDetectorService }, { token: i11.FileObjectService }, { token: i12.DownloadLinkService }, { token: i13.FolderService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
424
|
-
FileViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FileViewerComponent, selector: "file-viewer", inputs: { model: "model", readonly: "readonly", showPrint: "showPrint", showDownload: "showDownload", showDelete: "showDelete" }, outputs: { onClose: "onClose", onRename: "onRename", onDelete: "onDelete" }, providers: [ComponentContextService], viewQueries: [{ propertyName: "sidebar", first: true, predicate: ["sidebar"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<p-sidebar #sidebar [showCloseIcon]=\"false\" [fullScreen]=\"true\" [appendTo]=\"'body'\"\r\n [styleClass]=\"getStyleClassByDocumentType(data.fileType)\" [(visible)]=\"show\">\r\n <ng-container *ngIf=\"data.fileType == fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\" style=\"margin: 0px auto;\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <!-- UD-2450 - TuDN -->\r\n <!-- <a *ngIf=\"_deviceDetectorService.isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\"\r\n tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a> -->\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <!-- End UD-2450 - TuDN -->\r\n <a *ngIf=\"!_deviceDetectorService.isDesktop() && !readonly\" pTooltip=\"\u0110\u1ED5i t\u00EAn\"\r\n tooltipPosition=\"bottom\" (click)=\"renameFile()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\"><i\r\n class=\"fas fa-eraser\"></i></a>\r\n <a *ngIf=\"showDelete && !readonly\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"far fa-trash-alt\"></i></a>\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\"\r\n *ngIf=\"!readonly && _deviceDetectorService.isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\"> <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"_deviceDetectorService.isDesktop()\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\"><i class=\"fas fa-pen-square\"></i>S\u1EEDa\r\n file\r\n tr\u1EF1c\r\n tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"far fa-trash-alt\"></i>X\u00F3a\r\n t\u1EC7p\r\n tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n </div>\r\n <ngx-extended-pdf-viewer [src]=\"model.fileUrl\" useBrowserLocale=\"true\" height=\"calc(100vh - 50px)\"\r\n [enablePinchOnMobile]=\"true\" [filenameForDownload]=\"data.fileName\" [language]=\"'vi-VN'\"\r\n [showBookmarkButton]=\"false\" [showHandToolButton]=\"false\" [showOpenFileButton]=\"false\"\r\n [showUnverifiedSignatures]=\"true\">\r\n </ngx-extended-pdf-viewer>\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngIf=\"data.fileType != fileTypes.IMAGE && data.fileType != fileTypes.VIDEO && data.fileType != fileTypes.AUDIO && data.fileType != fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\" tooltipPosition=\"bottom\"\r\n placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a>\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!readonly && showDelete && isDesktop()\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a *ngIf=\"!readonly && isDesktop()\" pTooltip=\"S\u1EEDa file tr\u1EF1c tuy\u1EBFn\" (click)=\"editFile()\"\r\n placeholder=\"Bottom\" class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\">\r\n <i class=\"fas fa-pen-square\"></i></a>\r\n\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\" *ngIf=\"!isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\">\r\n <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\">\r\n <i class=\"fas fa-pen-square\"></i>S\u1EEDa file tr\u1EF1c tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly && showDelete\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"pi pi-trash\"></i>X\u00F3a\r\n t\u1EC7p tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n [class.view-file-text]=\"isFileType(fileTypes.TEXT)\"\r\n [class.view-file-spreadsheet]=\"isFileType(fileTypes.SPREADSHEET)\"\r\n [class.view-file-presentation]=\"isFileType(fileTypes.PRESENTATION)\">\r\n <div id=\"file-viewer\"></div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.IMAGE && model.images.length > 0\">\r\n <div class=\"image-container\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <img *ngIf=\"model.images && model.images.length\" src=\"{{model.images[0]}}\" alt=\"Ch\u01B0a c\u00F3 \u1EA3nh\">\r\n </div>\r\n <!-- <app-image-viewer [showPDFOnlyLabel]=\"false\" [showPDFOnlyOption]=\"false\" [fullscreen]=\"false\"\r\n [images]=\"model.images\" [primaryColor]=\"'#3192e1'\" [idContainer]=\"'image-view-list'\"\r\n (mousedown)=\"closeSidebar($event)\" id=\"fileViewerHolder\" [loadOnInit]=\"true\">\r\n </app-image-viewer>\r\n <a style=\"color: white;\" (click)=\"closeSidebar(null)\" class=\"mobile-image-viewer-close\">\r\n <i class=\"far fa-times-circle\"></i></a> -->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.VIDEO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i>\r\n </a>\r\n <a *ngIf=\"!isReadonly && !isDesktop()\" (click)=\"renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n <a *ngIf=\"!readonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n style=\"width: 80%; margin: auto; height: 100%; border-radius: 0px;\">\r\n <video width=\"100%\" height=\"100%\" style=\"margin-top: 50px;\" autoplay controls src=\"{{model.fileUrl}}\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 m\u1EDF video.\r\n </video>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.AUDIO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" (mousedown)=\"closeSidebar($event)\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!isReadonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n <audio controls autoplay src=\"{{model.fileUrl}}\"\r\n style=\"margin: auto;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 ph\u00E1t audio. </audio>\r\n </div>\r\n </ng-container>\r\n\r\n</p-sidebar>\r\n\r\n<tn-dialog *ngIf=\"renameFileForm.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"renameFileForm.header | translate\" [popupSize]=\"renameFileForm.popupSize\" (onHide)=\"onCancelRenameFile()\">\r\n <file-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"renameFileForm.formData\"\r\n (onSaved)=\"onSavedRenameFile()\" (onCancel)=\"onCancelRenameFile()\">\r\n </file-form>\r\n</tn-dialog>", styles: ["::ng-deep .pdf-container ngx-extended-pdf-viewer #outerContainer{top:51px}.view-file{height:92vh}.dialog-material{display:block;border-radius:4px;box-sizing:border-box;overflow:hidden;outline:0;min-height:inherit;max-height:inherit;width:50vw}.dialog-material{width:100%}.dialog-material.view-file-text{width:85%;margin:0 auto}.dialog-material.view-file-text.mobile{width:100%;margin:0 auto}.header-dialog-material{display:flex;flex-direction:row;justify-content:space-between;padding:5px 15px;box-sizing:border-box;outline:0;height:50px;line-height:50px;background:#3192e1;position:absolute;pointer-events:auto;left:0;right:0;top:0;width:auto}.header-dialog-material .flex-item{line-height:40px}.header-dialog-material .flex-item .cursor-pointer{cursor:pointer;display:inline-block;padding:0 15px}.header-dialog-material .flex-item .cursor-pointer.submenu{position:relative}.header-dialog-material .flex-item .cursor-pointer.submenu ul{display:flex;position:absolute;top:25px;right:0px;align-content:flex-end;flex-direction:column;width:230px;border-radius:2px;padding:5px 0;background:#fff;box-shadow:0 6px 12px #0000002d;z-index:1}.header-dialog-material .flex-item .cursor-pointer.submenu ul li{padding:0}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a{padding:0 0 0 5px;line-height:40px}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a:hover{background:#f5f5f5}.header-dialog-material ul:before{top:-8px;right:8px;left:auto;width:0px;height:0px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:10px solid #ffffff;content:\" \";position:absolute}.mat-dialog-content{display:block;margin:0;padding:0;max-height:100vh;max-width:50vw;overflow:auto;-webkit-overflow-scrolling:touch}::ng-deep .cdk-overlay-container{position:fixed;z-index:1000;background:rgba(0,0,0,.7)!important}::ng-deep .cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}::ng-deep .mat-dialog-container{display:block;padding:0!important}::ng-deep .cdk-overlay-pane{max-height:100%}.button-link:hover{transition:background-color .1s,opacity .1s;background-image:none;background-color:#ffffff40}.file-row-action i{margin-right:5px;width:40px;text-align:center}.file-row-action{line-height:34px;width:100%;display:block;color:#212529}.layout-menu li a{border:none;text-align:left}.layout-menu li a i:first-child{color:#666;font-size:1em}.footer-page{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%);border-radius:3px;bottom:12px;z-index:3;overflow:hidden}.footer-page-label{border-right:1px solid rgba(255,255,255,.2);display:inline-block;font-size:13px;line-height:44px;height:44px;vertical-align:middle;background:#000000}.footer-page-label-page{display:inline-block;margin-left:12px;vertical-align:middle;background:rgba(0,0,0,.75);color:#fff}.footer-page-label-numberpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}.footer-page-label-space{display:inline-block;margin-left:12px;vertical-align:middle;color:#fff}.footer-page-label-totalpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}::ng-deep p-table .ui-table-tbody>tr>td{overflow:unset}::ng-deep .ui-sidebar-left.ui-sidebar-active{padding-top:55px;background:rgba(0,0,0,.4);border:0}::ng-deep .layout-wrapper .layout-menu-container{border-radius:unset}::ng-deep .p-sidebar{padding:0!important;background-color:#000}::ng-deep .image-container{display:flex;justify-content:center;background-color:#000}::ng-deep .image-container .image-container-toolbar{display:flex;justify-content:flex-end}::ng-deep .image-container>img{height:calc(100ch - 50px)!important;max-height:100%!important;margin-top:50px}\n"], dependencies: [{ kind: "directive", type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i15.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i16.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "component", type: i17.NgxExtendedPdfViewerComponent, selector: "ngx-extended-pdf-viewer", inputs: ["customFindbarInputArea", "customToolbar", "customFindbar", "customFindbarButtons", "customPdfViewer", "customSecondaryToolbar", "customSidebar", "customThumbnail", "customFreeFloatingBar", "showFreeFloatingBar", "enableDragAndDrop", "formData", "pageViewMode", "scrollMode", "authorization", "httpHeaders", "contextMenuAllowed", "enablePrint", "delayFirstView", "logLevel", "enablePinchOnMobile", "minifiedJSLibraries", "printResolution", "rotation", "src", "base64Src", "minHeight", "height", "useBrowserLocale", "forceUsingLegacyES5", "backgroundColor", "pdfBackground", "pdfBackgroundColorToReplace", "filenameForDownload", "ignoreKeyboard", "ignoreKeys", "acceptKeys", "imageResourcesPath", "localeFolderPath", "language", "listenToURL", "nameddest", "password", "showUnverifiedSignatures", "startTabindex", "showSidebarButton", "sidebarVisible", "showFindButton", "showFindHighlightAll", "showFindMatchCase", "showFindCurrentPageOnly", "showFindPageRange", "showFindEntireWord", "showFindEntirePhrase", "showFindIgnoreAccents", "showFindFuzzySearch", "showFindResultsCount", "showFindMessages", "showPagingButtons", "showZoomButtons", "showPresentationModeButton", "showOpenFileButton", "showPrintButton", "showDownloadButton", "showBookmarkButton", "theme", "formTheme", "showToolbar", "showSecondaryToolbarButton", "showRotateButton", "handTool", "showHandToolButton", "showScrollingButton", "showSpreadButton", "showPropertiesButton", "showBorders", "spread", "page", "pageLabel", "textLayer", "zoom", "zoomLevels", "maxZoom", "minZoom", "_mobileFriendlyZoom", "wheelAction", "mobileFriendlyZoom"], outputs: ["formDataChange", "progress", "srcChange", "scrollModeChange", "afterPrint", "beforePrint", "currentZoomFactor", "rotationChange", "sidebarVisibleChange", "handToolChange", "spreadChange", "thumbnailDrawn", "pageChange", "pageLabelChange", "pagesLoaded", "pageRender", "pageRendered", "pdfDownloaded", "pdfLoaded", "pdfLoadingStarts", "pdfLoadingFailed", "textLayerRendered", "updateFindMatchesCount", "updateFindState", "zoomChange"] }, { kind: "component", type: i18.TnDialogComponent, selector: "tn-dialog", inputs: ["maskClass", "styleClass", "scrollBarStyleClass", "useDefaultScrollBar", "visible", "disabledButton", "modal", "header", "popupSize", "closeOnEscape", "showFooter", "positionTop", "minY", "hiddenSave", "maximizable"], outputs: ["onSave", "onCancel", "onShow", "onHide"] }, { kind: "component", type: i19.FileFormComponent, selector: "file-form" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
424
|
+
FileViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FileViewerComponent, selector: "file-viewer", inputs: { model: "model", readonly: "readonly", showPrint: "showPrint", showDownload: "showDownload", showDelete: "showDelete" }, outputs: { onClose: "onClose", onRename: "onRename", onDelete: "onDelete" }, providers: [ComponentContextService], viewQueries: [{ propertyName: "sidebar", first: true, predicate: ["sidebar"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<p-sidebar #sidebar [showCloseIcon]=\"false\" [fullScreen]=\"true\" [appendTo]=\"'body'\"\r\n [styleClass]=\"getStyleClassByDocumentType(data.fileType)\" [(visible)]=\"show\">\r\n <ng-container *ngIf=\"data.fileType == fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\" style=\"margin: 0px auto;\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <!-- UD-2450 - TuDN -->\r\n <!-- <a *ngIf=\"_deviceDetectorService.isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\"\r\n tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a> -->\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <!-- End UD-2450 - TuDN -->\r\n <a *ngIf=\"!_deviceDetectorService.isDesktop() && !readonly\" pTooltip=\"\u0110\u1ED5i t\u00EAn\"\r\n tooltipPosition=\"bottom\" (click)=\"renameFile()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\"><i\r\n class=\"fas fa-eraser\"></i></a>\r\n <a *ngIf=\"showDelete && !readonly\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"far fa-trash-alt\"></i></a>\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\"\r\n *ngIf=\"!readonly && _deviceDetectorService.isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\"> <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"_deviceDetectorService.isDesktop()\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\"><i class=\"fas fa-pen-square\"></i>S\u1EEDa\r\n file\r\n tr\u1EF1c\r\n tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"far fa-trash-alt\"></i>X\u00F3a\r\n t\u1EC7p\r\n tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n </div>\r\n <ngx-extended-pdf-viewer [src]=\"model.fileUrl\" useBrowserLocale=\"true\" height=\"calc(100vh - 50px)\"\r\n [enablePinchOnMobile]=\"true\" [filenameForDownload]=\"data.fileName\" [language]=\"'vi-VN'\"\r\n [showBookmarkButton]=\"false\" [showHandToolButton]=\"false\" [showOpenFileButton]=\"false\"\r\n [showUnverifiedSignatures]=\"true\">\r\n </ngx-extended-pdf-viewer>\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngIf=\"data.fileType != fileTypes.IMAGE && data.fileType != fileTypes.VIDEO && data.fileType != fileTypes.AUDIO && data.fileType != fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\" tooltipPosition=\"bottom\"\r\n placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a>\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!readonly && showDelete && isDesktop()\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a *ngIf=\"!readonly && isDesktop()\" pTooltip=\"S\u1EEDa file tr\u1EF1c tuy\u1EBFn\" (click)=\"editFile()\"\r\n placeholder=\"Bottom\" class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\">\r\n <i class=\"fas fa-pen-square\"></i></a>\r\n\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\" *ngIf=\"!isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\">\r\n <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\">\r\n <i class=\"fas fa-pen-square\"></i>S\u1EEDa file tr\u1EF1c tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly && showDelete\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"pi pi-trash\"></i>X\u00F3a\r\n t\u1EC7p tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n [class.view-file-text]=\"isFileType(fileTypes.TEXT)\"\r\n [class.view-file-spreadsheet]=\"isFileType(fileTypes.SPREADSHEET)\"\r\n [class.view-file-presentation]=\"isFileType(fileTypes.PRESENTATION)\">\r\n <div id=\"file-viewer\"></div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.IMAGE && model.images.length > 0\">\r\n <div class=\"image-container\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <img *ngIf=\"model.images && model.images.length\" src=\"{{model.images[0]}}\" alt=\"Ch\u01B0a c\u00F3 \u1EA3nh\">\r\n </div>\r\n <!-- <app-image-viewer [showPDFOnlyLabel]=\"false\" [showPDFOnlyOption]=\"false\" [fullscreen]=\"false\"\r\n [images]=\"model.images\" [primaryColor]=\"'#3192e1'\" [idContainer]=\"'image-view-list'\"\r\n (mousedown)=\"closeSidebar($event)\" id=\"fileViewerHolder\" [loadOnInit]=\"true\">\r\n </app-image-viewer>\r\n <a style=\"color: white;\" (click)=\"closeSidebar(null)\" class=\"mobile-image-viewer-close\">\r\n <i class=\"far fa-times-circle\"></i></a> -->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.VIDEO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i>\r\n </a>\r\n <a *ngIf=\"!isReadonly && !isDesktop()\" (click)=\"renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n <a *ngIf=\"!readonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n style=\"width: 80%; margin: auto; height: 100%; border-radius: 0px;\">\r\n <video width=\"100%\" height=\"100%\" style=\"margin-top: 50px;\" autoplay controls src=\"{{model.fileUrl}}\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 m\u1EDF video.\r\n </video>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.AUDIO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" (mousedown)=\"closeSidebar($event)\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!isReadonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n <audio controls autoplay src=\"{{model.fileUrl}}\"\r\n style=\"margin: auto;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 ph\u00E1t audio. </audio>\r\n </div>\r\n </ng-container>\r\n\r\n</p-sidebar>\r\n\r\n<tn-dialog *ngIf=\"renameFileForm.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"renameFileForm.header | translate\" [popupSize]=\"renameFileForm.popupSize\" (onHide)=\"onCancelRenameFile()\">\r\n <file-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"renameFileForm.formData\"\r\n (onSaved)=\"onSavedRenameFile()\" (onCancel)=\"onCancelRenameFile()\">\r\n </file-form>\r\n</tn-dialog>", styles: ["::ng-deep .pdf-container ngx-extended-pdf-viewer #outerContainer{top:51px}.view-file{height:92vh}.dialog-material{display:block;border-radius:4px;box-sizing:border-box;overflow:hidden;outline:0;min-height:inherit;max-height:inherit;width:50vw}.dialog-material{width:100%}.dialog-material.view-file-text{width:85%;margin:0 auto}.dialog-material.view-file-text.mobile{width:100%;margin:0 auto}.header-dialog-material{display:flex;flex-direction:row;justify-content:space-between;padding:5px 15px;box-sizing:border-box;outline:0;height:50px;line-height:50px;background:#3192e1;position:absolute;pointer-events:auto;left:0;right:0;top:0;width:auto}.header-dialog-material .flex-item{line-height:40px}.header-dialog-material .flex-item .cursor-pointer{cursor:pointer;display:inline-block;padding:0 15px}.header-dialog-material .flex-item .cursor-pointer.submenu{position:relative}.header-dialog-material .flex-item .cursor-pointer.submenu ul{display:flex;position:absolute;top:25px;right:0px;align-content:flex-end;flex-direction:column;width:230px;border-radius:2px;padding:5px 0;background:#fff;box-shadow:0 6px 12px #0000002d;z-index:1}.header-dialog-material .flex-item .cursor-pointer.submenu ul li{padding:0}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a{padding:0 0 0 5px;line-height:40px}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a:hover{background:#f5f5f5}.header-dialog-material ul:before{top:-8px;right:8px;left:auto;width:0px;height:0px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:10px solid #ffffff;content:\" \";position:absolute}.mat-dialog-content{display:block;margin:0;padding:0;max-height:100vh;max-width:50vw;overflow:auto;-webkit-overflow-scrolling:touch}::ng-deep .cdk-overlay-container{position:fixed;z-index:1000;background:rgba(0,0,0,.7)!important}::ng-deep .cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}::ng-deep .mat-dialog-container{display:block;padding:0!important}::ng-deep .cdk-overlay-pane{max-height:100%}.button-link:hover{transition:background-color .1s,opacity .1s;background-image:none;background-color:#ffffff40}.file-row-action i{margin-right:5px;width:40px;text-align:center}.file-row-action{line-height:34px;width:100%;display:block;color:#212529}.layout-menu li a{border:none;text-align:left}.layout-menu li a i:first-child{color:#666;font-size:1em}.footer-page{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%);border-radius:3px;bottom:12px;z-index:3;overflow:hidden}.footer-page-label{border-right:1px solid rgba(255,255,255,.2);display:inline-block;font-size:13px;line-height:44px;height:44px;vertical-align:middle;background:#000000}.footer-page-label-page{display:inline-block;margin-left:12px;vertical-align:middle;background:rgba(0,0,0,.75);color:#fff}.footer-page-label-numberpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}.footer-page-label-space{display:inline-block;margin-left:12px;vertical-align:middle;color:#fff}.footer-page-label-totalpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}::ng-deep p-table .ui-table-tbody>tr>td{overflow:unset}::ng-deep .ui-sidebar-left.ui-sidebar-active{padding-top:55px;background:rgba(0,0,0,.4);border:0}::ng-deep .layout-wrapper .layout-menu-container{border-radius:unset}::ng-deep .p-sidebar{padding:0!important;background-color:#000}::ng-deep .image-container{display:flex;justify-content:center;background-color:#000}::ng-deep .image-container .image-container-toolbar{display:flex;justify-content:flex-end}::ng-deep .image-container>img{height:calc(100ch - 50px)!important;max-height:100%!important;margin-top:50px}\n"], dependencies: [{ kind: "directive", type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i15.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "component", type: i16.Sidebar, selector: "p-sidebar", inputs: ["position", "blockScroll", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "visible", "fullScreen", "appendTo", "style", "styleClass", "ariaCloseLabel"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "component", type: i17.NgxExtendedPdfViewerComponent, selector: "ngx-extended-pdf-viewer", inputs: ["customFindbarInputArea", "customToolbar", "customFindbar", "customFindbarButtons", "customPdfViewer", "customSecondaryToolbar", "customSidebar", "customThumbnail", "customFreeFloatingBar", "showFreeFloatingBar", "enableDragAndDrop", "formData", "pageViewMode", "scrollMode", "authorization", "httpHeaders", "contextMenuAllowed", "enablePrint", "delayFirstView", "logLevel", "enablePinchOnMobile", "minifiedJSLibraries", "printResolution", "rotation", "src", "base64Src", "minHeight", "height", "useBrowserLocale", "forceUsingLegacyES5", "backgroundColor", "pdfBackground", "pdfBackgroundColorToReplace", "filenameForDownload", "ignoreKeyboard", "ignoreKeys", "acceptKeys", "imageResourcesPath", "localeFolderPath", "language", "listenToURL", "nameddest", "password", "showUnverifiedSignatures", "startTabindex", "showSidebarButton", "sidebarVisible", "showFindButton", "showFindHighlightAll", "showFindMatchCase", "showFindCurrentPageOnly", "showFindPageRange", "showFindEntireWord", "showFindEntirePhrase", "showFindIgnoreAccents", "showFindFuzzySearch", "showFindResultsCount", "showFindMessages", "showPagingButtons", "showZoomButtons", "showPresentationModeButton", "showOpenFileButton", "showPrintButton", "showDownloadButton", "showBookmarkButton", "theme", "formTheme", "showToolbar", "showSecondaryToolbarButton", "showRotateButton", "handTool", "showHandToolButton", "showScrollingButton", "showSpreadButton", "showPropertiesButton", "showBorders", "spread", "page", "pageLabel", "textLayer", "zoom", "zoomLevels", "maxZoom", "minZoom", "_mobileFriendlyZoom", "wheelAction", "mobileFriendlyZoom"], outputs: ["formDataChange", "progress", "srcChange", "scrollModeChange", "afterPrint", "beforePrint", "currentZoomFactor", "rotationChange", "sidebarVisibleChange", "handToolChange", "spreadChange", "thumbnailDrawn", "pageChange", "pageLabelChange", "pagesLoaded", "pageRender", "pageRendered", "pdfDownloaded", "pdfLoaded", "pdfLoadingStarts", "pdfLoadingFailed", "textLayerRendered", "updateFindMatchesCount", "updateFindState", "zoomChange"] }, { kind: "component", type: i18.TnDialogComponent, selector: "tn-dialog", inputs: ["maskClass", "styleClass", "scrollBarStyleClass", "useDefaultScrollBar", "visible", "disabledButton", "modal", "header", "popupSize", "closeOnEscape", "showFooter", "positionTop", "minY", "hiddenSave", "maximizable"], outputs: ["onSave", "onCancel", "onShow", "onHide"] }, { kind: "component", type: i19.FileFormComponent, selector: "file-form" }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
425
425
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FileViewerComponent, decorators: [{
|
|
426
426
|
type: Component,
|
|
427
427
|
args: [{ selector: 'file-viewer', providers: [ComponentContextService], template: "<p-sidebar #sidebar [showCloseIcon]=\"false\" [fullScreen]=\"true\" [appendTo]=\"'body'\"\r\n [styleClass]=\"getStyleClassByDocumentType(data.fileType)\" [(visible)]=\"show\">\r\n <ng-container *ngIf=\"data.fileType == fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\" style=\"margin: 0px auto;\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <!-- UD-2450 - TuDN -->\r\n <!-- <a *ngIf=\"_deviceDetectorService.isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\"\r\n tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a> -->\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <!-- End UD-2450 - TuDN -->\r\n <a *ngIf=\"!_deviceDetectorService.isDesktop() && !readonly\" pTooltip=\"\u0110\u1ED5i t\u00EAn\"\r\n tooltipPosition=\"bottom\" (click)=\"renameFile()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\"><i\r\n class=\"fas fa-eraser\"></i></a>\r\n <a *ngIf=\"showDelete && !readonly\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"far fa-trash-alt\"></i></a>\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\"\r\n *ngIf=\"!readonly && _deviceDetectorService.isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\"> <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"_deviceDetectorService.isDesktop()\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\"><i class=\"fas fa-pen-square\"></i>S\u1EEDa\r\n file\r\n tr\u1EF1c\r\n tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"far fa-trash-alt\"></i>X\u00F3a\r\n t\u1EC7p\r\n tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n </div>\r\n <ngx-extended-pdf-viewer [src]=\"model.fileUrl\" useBrowserLocale=\"true\" height=\"calc(100vh - 50px)\"\r\n [enablePinchOnMobile]=\"true\" [filenameForDownload]=\"data.fileName\" [language]=\"'vi-VN'\"\r\n [showBookmarkButton]=\"false\" [showHandToolButton]=\"false\" [showOpenFileButton]=\"false\"\r\n [showUnverifiedSignatures]=\"true\">\r\n </ngx-extended-pdf-viewer>\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngIf=\"data.fileType != fileTypes.IMAGE && data.fileType != fileTypes.VIDEO && data.fileType != fileTypes.AUDIO && data.fileType != fileTypes.PDF\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop() && showPrint\" pTooltip=\"In t\u00E0i li\u1EC7u\" tooltipPosition=\"bottom\"\r\n placeholder=\"Bottom\" style=\"color: white;\" (click)=\"print()\"\r\n class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-print\"></i></a>\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!readonly && showDelete && isDesktop()\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a *ngIf=\"!readonly && isDesktop()\" pTooltip=\"S\u1EEDa file tr\u1EF1c tuy\u1EBFn\" (click)=\"editFile()\"\r\n placeholder=\"Bottom\" class=\"cursor-pointer button-link btn btn-secondary\" style=\"color: white;\">\r\n <i class=\"fas fa-pen-square\"></i></a>\r\n\r\n <a (click)=\"onTopbarItemClick($event)\" role=\"menuitem\" style=\"color: white;\" *ngIf=\"!isDesktop()\"\r\n class=\"cursor-pointer button-link btn btn-secondary submenu\">\r\n <i class=\"fas fa-ellipsis-v\"></i>\r\n <ul class=\"layout-menu fadeInDown\" *ngIf=\"model.activeTopbarItem\">\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"editFile()\" class=\"file-row-action\">\r\n <i class=\"fas fa-pen-square\"></i>S\u1EEDa file tr\u1EF1c tuy\u1EBFn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"renameFile()\" class=\"file-row-action\"><i class=\"fas fa-eraser\"></i>\u0110\u1ED5i\r\n t\u00EAn</a>\r\n </li>\r\n <li *ngIf=\"!isReadonly && showDelete\" role=\"menuitem\" class=\"cursor-pointer\">\r\n <a (click)=\"deleteFile()\" class=\"file-row-action\"><i class=\"pi pi-trash\"></i>X\u00F3a\r\n t\u1EC7p tin</a>\r\n </li>\r\n </ul>\r\n </a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n [class.view-file-text]=\"isFileType(fileTypes.TEXT)\"\r\n [class.view-file-spreadsheet]=\"isFileType(fileTypes.SPREADSHEET)\"\r\n [class.view-file-presentation]=\"isFileType(fileTypes.PRESENTATION)\">\r\n <div id=\"file-viewer\"></div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.IMAGE && model.images.length > 0\">\r\n <div class=\"image-container\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <img *ngIf=\"model.images && model.images.length\" src=\"{{model.images[0]}}\" alt=\"Ch\u01B0a c\u00F3 \u1EA3nh\">\r\n </div>\r\n <!-- <app-image-viewer [showPDFOnlyLabel]=\"false\" [showPDFOnlyOption]=\"false\" [fullscreen]=\"false\"\r\n [images]=\"model.images\" [primaryColor]=\"'#3192e1'\" [idContainer]=\"'image-view-list'\"\r\n (mousedown)=\"closeSidebar($event)\" id=\"fileViewerHolder\" [loadOnInit]=\"true\">\r\n </app-image-viewer>\r\n <a style=\"color: white;\" (click)=\"closeSidebar(null)\" class=\"mobile-image-viewer-close\">\r\n <i class=\"far fa-times-circle\"></i></a> -->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.VIDEO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i>\r\n </a>\r\n <a *ngIf=\"!isReadonly && !isDesktop()\" (click)=\"renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n <a *ngIf=\"!readonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n\r\n <div class=\"dialog-material\" [class.view-file]=\"true\" [class.mobile]=\"!isDesktop()\"\r\n style=\"width: 80%; margin: auto; height: 100%; border-radius: 0px;\">\r\n <video width=\"100%\" height=\"100%\" style=\"margin-top: 50px;\" autoplay controls src=\"{{model.fileUrl}}\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 m\u1EDF video.\r\n </video>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"data.fileType == fileTypes.AUDIO\">\r\n <div id=\"fileViewerHolder\" class=\"file-viewer-holder\" (mousedown)=\"closeSidebar($event)\" style=\"height: 100%;\">\r\n <div #headerdialogmaterial class=\"header-dialog-material\">\r\n <div class=\"flex-item\">\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"isDesktop()\" (click)=\"!isReadonly && renameFile()\" style=\"color: white;\"\r\n class=\"btn btn-secondary\">\r\n <i class=\"fas fa-file-alt\"></i><span class=\"cursor-pointer\">\r\n {{ data.name }}\r\n </span>\r\n </a>\r\n </div>\r\n <div class=\"flex-item\">\r\n <a *ngIf=\"showDownload\" pTooltip=\"T\u1EA3i xu\u1ED1ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\"\r\n style=\"color: white;\" (click)=\"download()\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-download\"></i></a>\r\n <a *ngIf=\"!isReadonly && showDelete\" pTooltip=\"X\u00F3a t\u1EC7p tin\" tooltipPosition=\"bottom\"\r\n (click)=\"deleteFile()\" class=\"cursor-pointer button-link btn btn-secondary\"\r\n style=\"color: white;\"><i class=\"pi pi-trash\"></i></a>\r\n <a pTooltip=\"\u0110\u00F3ng\" tooltipPosition=\"bottom\" placeholder=\"Bottom\" style=\"color: white;\"\r\n (click)=\"closeSidebar(null)\" class=\"cursor-pointer button-link btn btn-secondary\">\r\n <i class=\"fas fa-times\"></i></a>\r\n </div>\r\n </div>\r\n <audio controls autoplay src=\"{{model.fileUrl}}\"\r\n style=\"margin: auto;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);\">\r\n Tr\u00ECnh duy\u1EC7t kh\u00F4ng h\u1ED7 tr\u1EE3 ph\u00E1t audio. </audio>\r\n </div>\r\n </ng-container>\r\n\r\n</p-sidebar>\r\n\r\n<tn-dialog *ngIf=\"renameFileForm.show\" #dialog [styleClass]=\"'address-form'\"\r\n [header]=\"renameFileForm.header | translate\" [popupSize]=\"renameFileForm.popupSize\" (onHide)=\"onCancelRenameFile()\">\r\n <file-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"renameFileForm.formData\"\r\n (onSaved)=\"onSavedRenameFile()\" (onCancel)=\"onCancelRenameFile()\">\r\n </file-form>\r\n</tn-dialog>", styles: ["::ng-deep .pdf-container ngx-extended-pdf-viewer #outerContainer{top:51px}.view-file{height:92vh}.dialog-material{display:block;border-radius:4px;box-sizing:border-box;overflow:hidden;outline:0;min-height:inherit;max-height:inherit;width:50vw}.dialog-material{width:100%}.dialog-material.view-file-text{width:85%;margin:0 auto}.dialog-material.view-file-text.mobile{width:100%;margin:0 auto}.header-dialog-material{display:flex;flex-direction:row;justify-content:space-between;padding:5px 15px;box-sizing:border-box;outline:0;height:50px;line-height:50px;background:#3192e1;position:absolute;pointer-events:auto;left:0;right:0;top:0;width:auto}.header-dialog-material .flex-item{line-height:40px}.header-dialog-material .flex-item .cursor-pointer{cursor:pointer;display:inline-block;padding:0 15px}.header-dialog-material .flex-item .cursor-pointer.submenu{position:relative}.header-dialog-material .flex-item .cursor-pointer.submenu ul{display:flex;position:absolute;top:25px;right:0px;align-content:flex-end;flex-direction:column;width:230px;border-radius:2px;padding:5px 0;background:#fff;box-shadow:0 6px 12px #0000002d;z-index:1}.header-dialog-material .flex-item .cursor-pointer.submenu ul li{padding:0}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a{padding:0 0 0 5px;line-height:40px}.header-dialog-material .flex-item .cursor-pointer.submenu ul li a:hover{background:#f5f5f5}.header-dialog-material ul:before{top:-8px;right:8px;left:auto;width:0px;height:0px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:10px solid #ffffff;content:\" \";position:absolute}.mat-dialog-content{display:block;margin:0;padding:0;max-height:100vh;max-width:50vw;overflow:auto;-webkit-overflow-scrolling:touch}::ng-deep .cdk-overlay-container{position:fixed;z-index:1000;background:rgba(0,0,0,.7)!important}::ng-deep .cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}::ng-deep .mat-dialog-container{display:block;padding:0!important}::ng-deep .cdk-overlay-pane{max-height:100%}.button-link:hover{transition:background-color .1s,opacity .1s;background-image:none;background-color:#ffffff40}.file-row-action i{margin-right:5px;width:40px;text-align:center}.file-row-action{line-height:34px;width:100%;display:block;color:#212529}.layout-menu li a{border:none;text-align:left}.layout-menu li a i:first-child{color:#666;font-size:1em}.footer-page{position:absolute;left:50%;margin-right:-50%;transform:translate(-50%);border-radius:3px;bottom:12px;z-index:3;overflow:hidden}.footer-page-label{border-right:1px solid rgba(255,255,255,.2);display:inline-block;font-size:13px;line-height:44px;height:44px;vertical-align:middle;background:#000000}.footer-page-label-page{display:inline-block;margin-left:12px;vertical-align:middle;background:rgba(0,0,0,.75);color:#fff}.footer-page-label-numberpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}.footer-page-label-space{display:inline-block;margin-left:12px;vertical-align:middle;color:#fff}.footer-page-label-totalpage{display:inline-block;text-align:center;vertical-align:middle;width:48px;color:#fff}::ng-deep p-table .ui-table-tbody>tr>td{overflow:unset}::ng-deep .ui-sidebar-left.ui-sidebar-active{padding-top:55px;background:rgba(0,0,0,.4);border:0}::ng-deep .layout-wrapper .layout-menu-container{border-radius:unset}::ng-deep .p-sidebar{padding:0!important;background-color:#000}::ng-deep .image-container{display:flex;justify-content:center;background-color:#000}::ng-deep .image-container .image-container-toolbar{display:flex;justify-content:flex-end}::ng-deep .image-container>img{height:calc(100ch - 50px)!important;max-height:100%!important;margin-top:50px}\n"] }]
|
|
@@ -28,7 +28,7 @@ export class FolderFormComponent extends DataFormBase {
|
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
FolderFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FolderFormComponent, deps: [{ token: i0.Injector }, { token: i1.FolderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
31
|
-
FolderFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FolderFormComponent, selector: "folder-form", providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button *ngIf=\"!model.data.__disableEdit && !__isFormView\" type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\"\r\n [label]=\"'FORM.SAVE' | translate\" (click)=\"_handleSave($event)\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "
|
|
31
|
+
FolderFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: FolderFormComponent, selector: "folder-form", providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button *ngIf=\"!model.data.__disableEdit && !__isFormView\" type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\"\r\n [label]=\"'FORM.SAVE' | translate\" (click)=\"_handleSave($event)\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "component", type: i4.CrudFormComponent, selector: "crud-form", inputs: ["setting", "context", "filesUploaded", "isViewMode", "disableKeypressControl", "disableCaching", "styleClass", "useGridTemplate", "formId", "formClass", "autoFocus", "trapFocus", "data", "formState"], outputs: ["onFormReady", "onControlReady", "onAllControlReady", "onModelChanged", "dataChange", "onChange", "onAfterTrinhKy"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] });
|
|
32
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: FolderFormComponent, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
34
|
args: [{ selector: 'folder-form', providers: [ComponentContextService], template: "<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\r\n (onFormReady)=\"_handleFormReady($event)\">\r\n</crud-form>\r\n<ng-template #buttonTemplate>\r\n <button *ngIf=\"!model.data.__disableEdit && !__isFormView\" type=\"button\" pButton icon=\"pi pi-save\" class=\"p-button-text\"\r\n [label]=\"'FORM.SAVE' | translate\" (click)=\"_handleSave($event)\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\r\n [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\r\n</ng-template>\r\n" }]
|
|
@@ -89,7 +89,7 @@ export class KySoSimDanhSachChuKyComponent extends DataListBase {
|
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
KySoSimDanhSachChuKyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: KySoSimDanhSachChuKyComponent, deps: [{ token: i0.Injector }, { token: i1.KySoSimChuKyUserService }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
-
KySoSimDanhSachChuKyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: KySoSimDanhSachChuKyComponent, selector: "app-ky-so-sim-danh-sach-chu-ky", inputs: { formData: "formData" }, providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-list [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\" [widthFunctionColumn]=\"'160px'\"\r\n [hiddenAdd]=\"true\" [hiddenDelete]=\"true\" (onRowSelect)=\"onRowSelected($event)\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_handleReloaded($event)\">\r\n <ng-template #name let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer;\">\r\n {{rowData.name}} ({{rowData.width}} px x {{rowData.height}} px)\r\n </div>\r\n </ng-template>\r\n <ng-template #anh let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer\"><img [src]=\"rowData.fileBase64Content\" [width]=\"100\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #function let-rowData=\"rowData\">\r\n <div style=\"text-align:center\">\r\n <button pButton class=\"ui-button-info link-or-action\" type=\"button\" icon=\"fas fa-check\" label=\"Ch\u1ECDn ch\u1EEF k\u00FD\"\r\n (click)=\"btnChonChuKy(rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n</crud-list>", styles: [""], dependencies: [{ kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "
|
|
92
|
+
KySoSimDanhSachChuKyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: KySoSimDanhSachChuKyComponent, selector: "app-ky-so-sim-danh-sach-chu-ky", inputs: { formData: "formData" }, providers: [ComponentContextService], usesInheritance: true, ngImport: i0, template: "<crud-list [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\" [widthFunctionColumn]=\"'160px'\"\r\n [hiddenAdd]=\"true\" [hiddenDelete]=\"true\" (onRowSelect)=\"onRowSelected($event)\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_handleReloaded($event)\">\r\n <ng-template #name let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer;\">\r\n {{rowData.name}} ({{rowData.width}} px x {{rowData.height}} px)\r\n </div>\r\n </ng-template>\r\n <ng-template #anh let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer\"><img [src]=\"rowData.fileBase64Content\" [width]=\"100\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #function let-rowData=\"rowData\">\r\n <div style=\"text-align:center\">\r\n <button pButton class=\"ui-button-info link-or-action\" type=\"button\" icon=\"fas fa-check\" label=\"Ch\u1ECDn ch\u1EEF k\u00FD\"\r\n (click)=\"btnChonChuKy(rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n</crud-list>", styles: [""], dependencies: [{ kind: "directive", type: i2.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "component", type: i3.CrudListComponent, selector: "crud-list" }] });
|
|
93
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: KySoSimDanhSachChuKyComponent, decorators: [{
|
|
94
94
|
type: Component,
|
|
95
95
|
args: [{ selector: 'app-ky-so-sim-danh-sach-chu-ky', providers: [ComponentContextService], template: "<crud-list [model]=\"model\" [setting]=\"setting\" [dataSource]=\"model.dataSource\" [widthFunctionColumn]=\"'160px'\"\r\n [hiddenAdd]=\"true\" [hiddenDelete]=\"true\" (onRowSelect)=\"onRowSelected($event)\"\r\n (onReload)=\"_triggerProcessData($event)\" (onAdd)=\"_add($event)\" (onEdit)=\"_edit($event)\" (onView)=\"_view($event)\"\r\n (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\" (onReloaded)=\"_handleReloaded($event)\">\r\n <ng-template #name let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer;\">\r\n {{rowData.name}} ({{rowData.width}} px x {{rowData.height}} px)\r\n </div>\r\n </ng-template>\r\n <ng-template #anh let-rowData=\"rowData\">\r\n <div style=\"text-align:center;cursor: pointer\"><img [src]=\"rowData.fileBase64Content\" [width]=\"100\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #function let-rowData=\"rowData\">\r\n <div style=\"text-align:center\">\r\n <button pButton class=\"ui-button-info link-or-action\" type=\"button\" icon=\"fas fa-check\" label=\"Ch\u1ECDn ch\u1EEF k\u00FD\"\r\n (click)=\"btnChonChuKy(rowData)\"></button>\r\n </div>\r\n </ng-template>\r\n</crud-list>" }]
|