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
|
@@ -231,7 +231,7 @@ export class ChatSendMessageBoxComponent extends ComponentBase {
|
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
233
|
ChatSendMessageBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChatSendMessageBoxComponent, deps: [{ token: i0.Injector }, { token: i1.ChatService }, { token: i2.CheckControlVisibleService }, { token: i3.FileExplorerNewService }, { token: i4.NotifierService }], target: i0.ɵɵFactoryTarget.Component });
|
|
234
|
-
ChatSendMessageBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChatSendMessageBoxComponent, selector: "chat-send-message-box", providers: [ComponentContextService], viewQueries: [{ propertyName: "fileElement", first: true, predicate: ["fileElement"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }, { propertyName: "driveFileDialog", first: true, predicate: ["driveFileDialog"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"dashboard\" (mouseup)=\"onMouseUp($event)\">\r\n <div class=\"chat\">\r\n <div class=\"new-message\">\r\n <div class=\"message-emotion\">\r\n <i class=\"far fa-smile\" style=\"color: gray;\" disabled=\"true\"></i>\r\n </div>\r\n <div class=\"message-attachment\" pTooltip=\"\u0110\u00EDnh k\u00E8m file\" tooltipPosition=\"top\" (click)=\"op.toggle($event)\">\r\n <i class=\"fas fa-paperclip\"></i>\r\n </div>\r\n <p-overlayPanel #op [dismissable]=\"true\" [appendTo]=\"'body'\" [styleClass]=\"'paging-advance-overlay'\"\r\n (mouseup)=\"onMouseUp($event)\">\r\n <ul class=\"paging-advance\">\r\n <li (click)=\"browseFileFromPersonal()\">T\u1EEB file c\u00E1 nh\u00E2n</li>\r\n <li (click)=\"browseFileFromComputer()\">T\u1EA3i l\u00EAn t\u1EEB m\u00E1y t\u00EDnh</li>\r\n </ul>\r\n </p-overlayPanel>\r\n <div class=\"message-input p-float-label\">\r\n <input #input pInputText\r\n id=\"message\"\r\n autocomplete=\"off\" autocorrect=\"off\"\r\n spellcheck=\"false\" class=\"ui-inputtext\"\r\n type=\"text\" placeholder=\"N\u1ED9i dung tin nh\u1EAFn\"\r\n [(ngModel)]=\"model.content\"\r\n (keyup.enter)=\"onSendMessage($event.target.value)\" (keydown.shift.tab)=\"cancelBlur($event)\"\r\n (keydown.tab)=\"cancelBlur($event)\" (paste)=\"handlePaste($event)\" (click)=\"clickInputText()\"/>\r\n </div>\r\n <div>\r\n <button pButton class=\"p-button-danger\" icon=\"fas fa-send\" type=\"button\" label=\"G\u1EEDi\"\r\n (click)=\"onSendMessage(model.content)\">\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"attachment-list\" [ngClass]=\"model.classHasAttachment\">\r\n <tn-custom-scrollbar #scrollbar [style]=\"{'height': '100px'}\">\r\n <div *ngFor=\"let item of model.attachments\" class=\"attachment-item\">\r\n <img *ngIf=\"item.type == 'image'\" [src]=\"item.url | safeUrl\"/>\r\n <span *ngIf=\"item.type == 'file'\">{{item.fileName}}</span>\r\n <i class=\"far fa-times-circle label-danger remove-file-attachment\"\r\n (click)=\"removeAttachment(item)\"></i>\r\n </div>\r\n </tn-custom-scrollbar>\r\n <!-- <div class=\"clearfix\"></div>-->\r\n </div>\r\n </div>\r\n</div>\r\n<p-fileUpload [ngStyle]=\"{'display': 'none'}\" #fileElement (onSelect)=\"onSelectFileFromComputer($event)\"\r\n multiple=\"multiple\" name=\"fileUpload\" [maxFileSize]=\"model.maxFileSize\" auto=\"false\">\r\n</p-fileUpload>\r\n\r\n<!-- <app-drive-file-dialog *ngIf=\"model.driveFileDialog.show\" [parentDataContext]=\"dataContext\"\r\n []=\"model.driveFileDialog\" #driveFileDialog>\r\n</app-drive-file-dialog> -->\r\n", styles: ["", "@charset \"UTF-8\";@import\"~@angular/material/prebuilt-themes/indigo-pink.css\";@import\"~jsoneditor/dist/jsoneditor.min.css\";.flex{display:flex}.flex .fit{flex:1 1}.flex.flex-column{flex-direction:column}.flex.flex-wrap{flex-wrap:wrap}.flex.center-v{align-items:center}.flex.center-h{justify-content:center}.flex.center-all{align-items:center;justify-content:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap;background-color:#fff}.tn-scroll-bar.bgWhite>div{background-color:#fff}.label-primary{padding:2px;border-radius:.25em;background-color:#1ab394;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-danger{padding:2px 5px;border-radius:.25em;background-color:#ed5565;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-warning{padding:2px;border-radius:.25em;background-color:#b8860b;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-secondary{padding:2px;border-radius:.25em;background-color:#a9a9a9;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-done{padding:2px;border-radius:.25em;background-color:#3b1ef7;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{max-height:calc(100vh - 180px);min-height:80px;overflow-y:hidden;overflow-x:hidden;border:1px solid #eee;border-radius:5px}.has2ScrollZone2 .flexcolumn{max-height:calc(100vh - 180px)}.headerNoBorder>th{border:none!important;border-bottom:1px solid #eee!important}.cellNoBorder table tr td{border:0!important}.layout-wrapper .layout-main{padding:60px 0 0;overflow:hidden}div.circleButton{line-height:32px;border-radius:50%;width:32px;height:32px;text-align:center;position:relative;display:inline-block;transform:perspective(1px);overflow:hidden;margin-top:4px;margin-bottom:4px}div.circleButton>a{padding:0!important;line-height:32px}div.circleButton>a>i{width:24px!important}div.circleButton:before{content:\"\";position:absolute;top:0;left:0;bottom:0;right:0;background:#e6e6e6;z-index:-1;transform:scale(0);transition:all cubic-bezier(.4,.34,.01,.97) .3s;border-radius:50%}div.circleButton:hover:before{transform:scale(1)}.message-notice{text-align:center;background:#e0e0e0}.message-created-by{font-weight:400;font-size:.82em;color:#888;margin-top:5px;margin-bottom:3px;margin-left:45px}.message-created{font-size:.82em;color:#495057;margin-top:0;margin-bottom:0;display:inline-block}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-right:10px;padding-left:6px}.message-content{margin-top:3px;margin-bottom:6px;line-height:20px;position:relative;color:#000}.message-content i{display:none}.message-content:hover i{display:block}.message-content:hover{padding-right:20px!important}.chat-box-content{max-height:500px}.attachment-list .attachment-item{float:left;width:84px;height:84px;margin:8px;position:relative;overflow:hidden;background:#f1f1f1;border-radius:8px;text-align:center;border:1px solid #ccc;box-shadow:1px 2px 3px #0000000f;-webkit-user-select:none;user-select:none}.attachment-list .attachment-item img{width:100%;height:100%}.attachment-list .attachment-item span{position:absolute;top:25px;left:0;padding:5px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{height:120px;width:auto;margin-left:0;float:none}.message-attachment{cursor:pointer;position:relative;font-size:1.5em;margin:0 5px 0 0}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{position:absolute;right:5px;top:5px;cursor:pointer;color:#fff;font-size:20px;background:#495057;border-radius:50%}.attachment-list{position:absolute;bottom:51px;width:calc(100% + 30px);background:#fff;left:-15px;height:100px;display:none;box-shadow:0 -2px 3px -3px #00000036}.attachment-list.attached-file{display:block}.dashboard{margin-top:-5px;margin-bottom:-15px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{white-space:nowrap;color:#555}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{white-space:pre-wrap;text-align:justify;line-height:18px;padding-left:30px}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{position:absolute;left:20px;margin-top:3px}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{display:flex;border:0;text-align:left;margin:0;padding:0}.dashboard .chat .new-message i{color:#495057}.dashboard .chat .new-message .message-attachment{border:0}.dashboard .chat .new-message .button-send{display:inline-block;line-height:40px;position:relative}.dashboard .chat .new-message .button-send .p-button-label{text-align:center}.dashboard .chat .new-message .message-emotion{line-height:40px;display:inline-block;width:40px;height:100%;text-align:center}.dashboard .chat .new-message .message-emotion i{line-height:inherit;font-size:24px}.dashboard .chat .new-message .message-input{width:calc(100% - 155px)}.dashboard .chat ul li.message-from,.dashboard .chat ul li.message-own{padding:0}.dashboard .chat ul li.message-from>span{border-radius:2px 20px 20px 2px;background-color:#f0e3fd;border:0}.dashboard .chat ul li.message-from>.middle,.dashboard .chat ul li.message-from>.first{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{margin-left:45px!important;border-radius:2px 20px 20px}.dashboard .chat ul li.message-from>img{margin-top:5px;width:36px;border-radius:50%;position:absolute}.dashboard .chat ul li.message-own>span{border-radius:20px 2px 2px 20px;background-color:#def6f8;border:0;text-align:right}.dashboard .chat ul li.message-own>span.sending{background-color:#eee}.dashboard .chat ul li.message-own>span.last{border-radius:20px 2px 20px 20px}.dashboard .chat ul li.message-own .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-own>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:right;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:left;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li .attachment span.attachment-item a>i{padding-right:8px}.dashboard .chat ul li div.file p.attachment{display:inline-block;margin-bottom:5px}.dashboard .chat ul li.message-from{text-align:left}.dashboard .chat ul li.message-own{text-align:right}.dashboard .chat ul li>div.file.image{height:170px;width:220px;transition:width .15s linear;padding:15px;max-width:100%}.dashboard .chat ul li>div.file.image p.attachment{height:120px}.dashboard .chat ul li>div.file{padding:15px}.dashboard .chat ul li>div.file p,.dashboard .chat ul li>div.file span{display:inline-block;padding:0;margin:0}.visible{visibility:visible;opacity:1;transition:opacity .15s linear}.hidden{visibility:hidden;opacity:0;transition:visibility 0s .1s,opacity .1s linear}.visible2{visibility:visible;opacity:1;transition:opacity .35s linear}.hidden2{visibility:hidden;opacity:0;transition:visibility 0s .3s,opacity .3s linear}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{position:sticky;bottom:6px;text-align:right;padding-right:12px;min-height:40px}.dashboard .chat .scroll-to-bottom span{cursor:pointer;font-size:20px;color:#fff;background:#495057;box-shadow:0 0 10px #00000059;border:2px solid #fff;border-radius:50%;width:35px;height:35px;display:inline-block;line-height:35px;text-align:center;overflow:hidden}.dashboard .chat .group-info{position:sticky;top:0;background:#fff;margin:-10px;box-shadow:0 0 3px -1px #00000036;z-index:99;line-height:30px;padding:5px 10px}.dashboard .chat .pin{position:sticky;top:40px;z-index:98;background:#fff;margin-left:-10px;margin-bottom:10px;width:calc(100% + 20px);box-shadow:0 0 3px -1px #00000036}.dashboard .chat ul li.message-own.pin>span,.dashboard .chat ul li.message-from.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;font-size:11px;cursor:pointer}.dashboard .chat .pin .message-content i{display:block}.dashboard .chat li.message-from .message-content{padding-left:6px}.dashboard .chat li.message-from .message-content i{padding:5px}.dashboard .chat li.message-own .message-content i{position:absolute;right:-15px;padding:5px}.dashboard .chat .group-info .circleButton{float:right;margin-top:0;margin-bottom:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{outline:none;box-shadow:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml strong,.normalHtml b{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{width:40px;height:40px;margin-top:-6px;border:1px solid #fff;border-radius:50%}a.button>i{margin-right:5px}.dashboard .timeline{padding-top:20px}.ui-inputgroup .ui-inputtext{padding-right:0}.new-message .ui-inputtext{width:100%}.full-screen,.full-screen>.p-dialog{height:100%!important;top:0!important;width:100%!important;left:0!important;max-height:100%;min-width:100%!important;min-height:unset!important}#image-view-list.image-gallery-2{height:calc(100vh - 41px);width:100%;margin:-14px auto 0;background-color:#0006;touch-action:none}#image-view-list.image-gallery-2 .image-container{bottom:0;border:0;height:85%;margin:auto;background-color:transparent}#image-view-list.image-gallery-2 .image-container .iv-snap-view{top:auto;bottom:20px;left:calc(50% - 75px)}#image-view-list.image-gallery-2 .image-container .iv-image-view img{touch-action:auto}#image-view-list .inline-icon{margin-top:-41px}#image-view-list .footer-info,#image-view-list .material-icons.prev,#image-view-list .material-icons.next{display:none}#image-view-list .options-image-viewer{margin-right:37px;-webkit-user-select:none;user-select:none}.mobile-image-viewer-close{color:#fff;position:absolute;top:0;right:0;height:42px;width:37px;text-align:center;vertical-align:middle;line-height:42px;font-size:x-large;padding-right:7px;padding-top:2px;cursor:pointer}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{padding:8px 30px;text-align:right;width:100%;border-top:1px solid #e8e8e8;left:0;position:absolute;bottom:0;background:#fff;border-radius:0 0 5px 5px}.box-function button{margin-left:5px}.quick-note-button-holder{display:none;position:absolute;bottom:40px;right:50px;height:50px;width:50px;z-index:99}.quick-note-button{display:block;font-size:2em;color:#fff;outline:none;height:50px;width:50px;border-radius:50%;background:#ffc107;box-shadow:0 2px 5px #b9b9b9;line-height:50px;text-align:center;border:2px solid #fff}.quick-note-button:hover{color:#fff}.all-note-button{position:absolute;right:5px;top:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{top:5px;position:absolute;right:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{display:none;position:absolute;bottom:20px;left:20px;width:250px;z-index:98}.pinned-notes{display:block;outline:none;background:transparent;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{font-size:.8rem;box-shadow:1px 2px 3px #b98b06a1;padding:0;margin-bottom:10px;background-color:#fff1ac;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{padding-top:5px;width:25px;height:25px;text-align:center;position:absolute;right:-15px;top:-15px;background:#ffc003;box-shadow:1px 2px 3px #b98b06a1;border-radius:50%;cursor:pointer;color:#fff;border:1px solid #fff;z-index:1}.pinned-note-header-line{position:absolute;left:3px;width:13px;box-shadow:1px 1px 2px #0006;border:1px solid #fff;margin-bottom:.5rem;margin-top:.5rem;height:calc(100% - 1rem);max-height:20px}.pinned-note-header-right{cursor:pointer;float:right;margin-left:3px;width:32px}.pinned-note-header-time{font-size:.6rem}.pinned-note-header-button-unpin{opacity:.8;display:none;width:14px;height:14px;float:left;margin-right:2px}.pinned-note-header-button-complete{padding-top:2px;display:none}.pinned-note-body{float:right;width:100%;padding:.5rem .5rem .5rem 25px}.pinned-note-body:hover{background-color:#feeb82}.pinned-note-body:hover .pinned-note-header-time{display:none}.pinned-note-body:hover .pinned-note-header-button-unpin,.pinned-note-body:hover .pinned-note-header-button-complete{display:block}.pinned-note-line-title{display:block;font-weight:700;padding-bottom:6px;color:#333}.pinned-note-line{display:block}.view-port{position:absolute;display:none;height:0;width:0;background:transparent;z-index:999;box-shadow:0 0 0 9999px #00000096;border-radius:5px}.view-port-mask{position:absolute;display:block;height:100%;width:100%;top:0;left:0;background:transparent;z-index:9998}.tinymce-control{width:100%;border:1px solid #ccc;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;display:none}.input-tab-trap{opacity:0!important;filter:alpha(opacity=0)!important;width:0!important;overflow:hidden!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}video,video:focus,audio,audio:focus{outline:none}.iv-image-view img.iv-image{animation:fadein .5s;visibility:hidden!important}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-top:0;padding-bottom:0}.fc-ltr{padding-bottom:7px}.padding-bottom-5px{padding-bottom:5px}.no-margin{margin:0!important}.no-padding{padding:0}.no-padding-left{padding-left:0}.float-left{float:left}body .fc .fc-toolbar .fc-button{color:#fff;background-color:#007ad9;border:1px solid #007ad9;font-size:14px;transition:background-color .2s,box-shadow .2s;border-radius:3px}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;color:#fff;border-color:#116fbf}body .fc .fc-toolbar .fc-button:focus{outline:0 none;outline-offset:0;box-shadow:0 0 0 .2em #8dcdff}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}body .fc .fc-toolbar .fc-right .fc-button{border-radius:0}body .fc .fc-toolbar .fc-right .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.old-content,.fc-axis,.fc-timeGridDay-button,.fc-timeGridWeek-button,.fc-dayGridMonth-button{text-indent:-9999px;line-height:0}.new-content,.fc-axis:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.fc-dayGridMonth-button:after{text-indent:0;display:block;line-height:initial}.fc-dayGridMonth-button:after{content:\"Th\\e1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\\1ea7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\\e0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group p-button,.ui-fluid .button-group button{margin-right:.5em!important;width:auto;text-align:left}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-immediately,.base-status-urgent,.base-status-high,.base-status-medium,.base-status-low,.base-status-ended,.base-status-aborted,.base-status-completed,.base-status-rejected,.base-status-returned,.base-status-approved,.base-status-pending,.base-status-on-conducting,.base-status-on-going,.base-status-create-new{padding:3px;border-radius:.25em;color:#fff;font-size:.8em;text-align:center}.base-status-create-new{color:#666;background-color:#f2f2f2}.base-status-on-going,.base-status-on-conducting{background-color:#337ab7}.base-status-pending{background-color:#ffba01}.base-status-approved{background-color:#34a835}.base-status-returned{background-color:#ffba01}.base-status-rejected{background-color:#d9534f}.base-status-completed{background-color:#34a835}.base-status-aborted{background-color:#ffba01}.base-status-ended{background-color:#34a835}.base-status-low,.base-status-medium{color:#666;background-color:#f2f2f2}.base-status-high{background-color:#ffba01}.base-status-urgent,.base-status-immediately{background-color:#d9534f}.text-align-center{text-align:center}.font-weight-bold{font-weight:700}.landing-body .landing-menu li a:hover{border-bottom:none}.landing-body .landing-menu li:first-child{margin-left:8px}.crud-form .label-control p{margin:0;padding:0}.crud-form .tn-check-box-list .p-row{display:block;padding:.5em;width:100%}.crud-form tn-mask,.crud-form dropdown{width:100%}.crud-form .tn-dropdown{min-height:32px}.crud-form .tn-dropdown.free-text.horizontal{display:flex}.crud-form .tn-dropdown.free-text.horizontal>div{flex-grow:1;padding-left:.5em;padding-right:.5em}.crud-form .tn-dropdown.free-text.horizontal>div:first-child{padding-left:0}.crud-form .tn-dropdown.free-text.horizontal>div:last-child{padding-right:0}.crud-form .tn-dropdown.free-text.vertical input.ui-inputtext.input-free-text{margin-top:.5em}.crud-form.assessment .label-control{font-weight:700}.crud-form.assessment .label-control.haveIndex{position:relative;padding-left:20px;margin-bottom:5px;display:block}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";position:absolute;left:0;top:0}.crud-form.assessment .ViewMode{border-bottom:none}.crud-form.assessment .ViewMode .label-control{margin-bottom:0}body .ui-inputtext.min-width{padding:6px}.ps__rail-x,.ps__rail-y{z-index:2}.zIndex5 .ps__rail-x,.zIndex5 .ps__rail-y{z-index:5}.table-sticky table{border-collapse:separate;border-spacing:0}.table-sticky tr th,.table-sticky tr td{border:none!important;border-right:1px solid #eee!important;border-bottom:1px solid #eee!important}.table-sticky tr th:first-child,.table-sticky tr td:first-child{border-left:1px solid #eee!important}.table-sticky tr th:last-child,.table-sticky tr td:last-child{border-right:none!important}.table-sticky tr:first-child th{border-top:1px solid #eee!important}.table-sticky th{background:#eee}.table-sticky tbody td.disabled{background:#eee!important}.table-sticky tbody td.disabled:not(:last-child){border-right:1px solid white!important}.table-sticky.fix-height tr:first-child th{position:sticky;top:0;z-index:2}.container-flex{display:flex;align-items:center}.container-flex>div:first-child{flex:0 0 auto;margin-right:.5em}.container-flex>div:last-child{flex-grow:1}.container-control{display:flex}.container-control>span.label{flex:0 0 auto;padding-top:.5em;padding-right:.5em}.container-control>span.label+*{flex-grow:1;flex-shrink:1;position:relative}.container-control>span.label+* .tn-dropdown,.container-control>span.label+* .ui-autocomplete-multiple,.container-control>span.label+* .ui-inputgroup .ui-inputtext{width:100%}.container-control>span.label+* .validation-container{margin-top:3px}.container-control>span.label+* .validation-container .validate-item{white-space:unset}.container-control>span.label+*>div{position:absolute;left:0;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{display:flex;justify-content:center;align-items:center}@media print{.isPrinting>*{display:none}.isPrinting app-print-layout{display:block}}.layout-wrapper .topbar .topbar-left,.layout-wrapper .topbar .topbar-right{background:#397ac3}#searchResultPanel-holder{padding:0 .5em}.cus-dropdown{line-height:initial;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-weight:700;font-family:cursive}.layout-wrapper .topbar .topbar-right #menu-button i{font-size:20px;margin-top:4px}.layout-wrapper .layout-menu li a i.menuitem-toggle-icon{font-size:15px;margin-left:auto}.flex-container-main-content{display:flex;flex-direction:column}.flex-container-main-content>div:last-child{background-color:#f4f4f4;flex:1 1;display:flex;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{padding-top:.5em;overflow:hidden;position:absolute;left:0;top:0;width:100%;height:100%}.flex-container-main-content .block-with-button-search{display:flex;justify-content:flex-end}.flex-container-main-content .block-with-button-search>*{margin-left:.5em}.flex-container-main-content .block-with-button-search>input{margin-left:0;max-width:200px;width:100%;height:26px}.flex-container-main-content .block-with-button-search>dropdown{max-width:140px;width:100%}.flex-container-main-content .title-main-component{border-bottom:2px solid #1ca7ff}.clickable-table.clickable-table{cursor:pointer}.main-crud-container{height:calc(100vh - 76px)}.flex-container-fit-child{display:flex;flex-direction:column;height:100%;overflow:hidden}.flex-container-fit-child>div.fit-content{flex:1 1;position:relative}.flex-container-fit-child>div.fit-content>div{position:absolute;height:100%;width:100%;overflow:auto}.waiting-box{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:none}.waiting-box .overlay{background-color:red;background-color:#6d6d6d80;width:100%;height:100%}.waiting-box .content-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.waiting-box.show{display:block}.function-topbar>*{vertical-align:top}.function-topbar button{width:auto}.function-topbar p-fileUpload{margin-right:1em}.function-topbar .container-control{display:inline-flex;line-height:initial}.function-topbar .container-control dropdown{width:100%}*:focus{outline-color:#a6d5fa!important}address{font-style:normal}body .p-toast .p-toast-message{border-radius:0;border-width:0 0 0 4px!important}.status span,.__status span{font-size:.8rem}p-table.single-check .p-datatable .p-datatable-tbody>tr{cursor:pointer}p-table.single-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important;outline:2px solid #a6d5fa}p-table.single-check .p-datatable .p-datatable-tbody>tr td.sticky .fix-sticky.top{display:none}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-right-arrow-icon,.tn-animated-left-arrow-icon{height:32px;width:14px;position:relative;z-index:10}.tn-animated-right-arrow-icon{animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-right-arrow-icon:before,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-left-arrow-icon:after{content:\"\";position:absolute;background-color:#88b0dd;width:5px;height:20px;display:block}.tn-animated-right-arrow-icon:before{left:4px;top:0;transform:rotate(-35deg)}.tn-animated-right-arrow-icon:after{left:4px;top:14px;transform:rotate(35deg)}.tn-animated-left-arrow-icon:before{right:4px;top:0;transform:rotate(35deg)}.tn-animated-left-arrow-icon:after{right:4px;top:14px;transform:rotate(-35deg)}@keyframes arrowBounceToLeft{0%{transform:translate(-3px)}to{transform:translate(3px)}}@keyframes arrowBounceToRight{0%{transform:translate(3px)}to{transform:translate(-3px)}}.pass{color:#49c949;margin:5px;text-align:center}.not-pass{color:red;margin:5px;text-align:center}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i6.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i8.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: i9.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: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.InputText, selector: "[pInputText]" }, { kind: "component", type: i11.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i12.TnCustomScrollbarComponent, selector: "tn-custom-scrollbar", inputs: ["style", "useDefaultScrollBar", "autoMode", "class", "config", "whiteBackGround", "showScrollHorizontal"], outputs: ["scrollY", "scrollUp", "scrollDown", "scrollLeft", "scrollRight", "scrollYReachEnd", "scrollYReachStart", "scrollXReachEnd", "scrollXReachStart"] }, { kind: "pipe", type: i13.SafeUrlPipe, name: "safeUrl" }] });
|
|
234
|
+
ChatSendMessageBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: ChatSendMessageBoxComponent, selector: "chat-send-message-box", providers: [ComponentContextService], viewQueries: [{ propertyName: "fileElement", first: true, predicate: ["fileElement"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, static: true }, { propertyName: "driveFileDialog", first: true, predicate: ["driveFileDialog"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"dashboard\" (mouseup)=\"onMouseUp($event)\">\r\n <div class=\"chat\">\r\n <div class=\"new-message\">\r\n <div class=\"message-emotion\">\r\n <i class=\"far fa-smile\" style=\"color: gray;\" disabled=\"true\"></i>\r\n </div>\r\n <div class=\"message-attachment\" pTooltip=\"\u0110\u00EDnh k\u00E8m file\" tooltipPosition=\"top\" (click)=\"op.toggle($event)\">\r\n <i class=\"fas fa-paperclip\"></i>\r\n </div>\r\n <p-overlayPanel #op [dismissable]=\"true\" [appendTo]=\"'body'\" [styleClass]=\"'paging-advance-overlay'\"\r\n (mouseup)=\"onMouseUp($event)\">\r\n <ul class=\"paging-advance\">\r\n <li (click)=\"browseFileFromPersonal()\">T\u1EEB file c\u00E1 nh\u00E2n</li>\r\n <li (click)=\"browseFileFromComputer()\">T\u1EA3i l\u00EAn t\u1EEB m\u00E1y t\u00EDnh</li>\r\n </ul>\r\n </p-overlayPanel>\r\n <div class=\"message-input p-float-label\">\r\n <input #input pInputText\r\n id=\"message\"\r\n autocomplete=\"off\" autocorrect=\"off\"\r\n spellcheck=\"false\" class=\"ui-inputtext\"\r\n type=\"text\" placeholder=\"N\u1ED9i dung tin nh\u1EAFn\"\r\n [(ngModel)]=\"model.content\"\r\n (keyup.enter)=\"onSendMessage($event.target.value)\" (keydown.shift.tab)=\"cancelBlur($event)\"\r\n (keydown.tab)=\"cancelBlur($event)\" (paste)=\"handlePaste($event)\" (click)=\"clickInputText()\"/>\r\n </div>\r\n <div>\r\n <button pButton class=\"p-button-danger\" icon=\"fas fa-send\" type=\"button\" label=\"G\u1EEDi\"\r\n (click)=\"onSendMessage(model.content)\">\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"attachment-list\" [ngClass]=\"model.classHasAttachment\">\r\n <tn-custom-scrollbar #scrollbar [style]=\"{'height': '100px'}\">\r\n <div *ngFor=\"let item of model.attachments\" class=\"attachment-item\">\r\n <img *ngIf=\"item.type == 'image'\" [src]=\"item.url | safeUrl\"/>\r\n <span *ngIf=\"item.type == 'file'\">{{item.fileName}}</span>\r\n <i class=\"far fa-times-circle label-danger remove-file-attachment\"\r\n (click)=\"removeAttachment(item)\"></i>\r\n </div>\r\n </tn-custom-scrollbar>\r\n <!-- <div class=\"clearfix\"></div>-->\r\n </div>\r\n </div>\r\n</div>\r\n<p-fileUpload [ngStyle]=\"{'display': 'none'}\" #fileElement (onSelect)=\"onSelectFileFromComputer($event)\"\r\n multiple=\"multiple\" name=\"fileUpload\" [maxFileSize]=\"model.maxFileSize\" auto=\"false\">\r\n</p-fileUpload>\r\n\r\n<!-- <app-drive-file-dialog *ngIf=\"model.driveFileDialog.show\" [parentDataContext]=\"dataContext\"\r\n []=\"model.driveFileDialog\" #driveFileDialog>\r\n</app-drive-file-dialog> -->\r\n", styles: ["", "@charset \"UTF-8\";@import\"~@angular/material/prebuilt-themes/indigo-pink.css\";@import\"~jsoneditor/dist/jsoneditor.min.css\";.flex{display:flex}.flex .fit{flex:1 1}.flex.flex-column{flex-direction:column}.flex.flex-wrap{flex-wrap:wrap}.flex.center-v{align-items:center}.flex.center-h{justify-content:center}.flex.center-all{align-items:center;justify-content:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap;background-color:#fff}.tn-scroll-bar.bgWhite>div{background-color:#fff}.label-primary{padding:2px;border-radius:.25em;background-color:#1ab394;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-danger{padding:2px 5px;border-radius:.25em;background-color:#ed5565;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-warning{padding:2px;border-radius:.25em;background-color:#b8860b;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-secondary{padding:2px;border-radius:.25em;background-color:#a9a9a9;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-done{padding:2px;border-radius:.25em;background-color:#3b1ef7;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{max-height:calc(100vh - 180px);min-height:80px;overflow-y:hidden;overflow-x:hidden;border:1px solid #eee;border-radius:5px}.has2ScrollZone2 .flexcolumn{max-height:calc(100vh - 180px)}.headerNoBorder>th{border:none!important;border-bottom:1px solid #eee!important}.cellNoBorder table tr td{border:0!important}.layout-wrapper .layout-main{padding:60px 0 0;overflow:hidden}div.circleButton{line-height:32px;border-radius:50%;width:32px;height:32px;text-align:center;position:relative;display:inline-block;transform:perspective(1px);overflow:hidden;margin-top:4px;margin-bottom:4px}div.circleButton>a{padding:0!important;line-height:32px}div.circleButton>a>i{width:24px!important}div.circleButton:before{content:\"\";position:absolute;top:0;left:0;bottom:0;right:0;background:#e6e6e6;z-index:-1;transform:scale(0);transition:all cubic-bezier(.4,.34,.01,.97) .3s;border-radius:50%}div.circleButton:hover:before{transform:scale(1)}.message-notice{text-align:center;background:#e0e0e0}.message-created-by{font-weight:400;font-size:.82em;color:#888;margin-top:5px;margin-bottom:3px;margin-left:45px}.message-created{font-size:.82em;color:#495057;margin-top:0;margin-bottom:0;display:inline-block}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-right:10px;padding-left:6px}.message-content{margin-top:3px;margin-bottom:6px;line-height:20px;position:relative;color:#000}.message-content i{display:none}.message-content:hover i{display:block}.message-content:hover{padding-right:20px!important}.chat-box-content{max-height:500px}.attachment-list .attachment-item{float:left;width:84px;height:84px;margin:8px;position:relative;overflow:hidden;background:#f1f1f1;border-radius:8px;text-align:center;border:1px solid #ccc;box-shadow:1px 2px 3px #0000000f;-webkit-user-select:none;user-select:none}.attachment-list .attachment-item img{width:100%;height:100%}.attachment-list .attachment-item span{position:absolute;top:25px;left:0;padding:5px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{height:120px;width:auto;margin-left:0;float:none}.message-attachment{cursor:pointer;position:relative;font-size:1.5em;margin:0 5px 0 0}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{position:absolute;right:5px;top:5px;cursor:pointer;color:#fff;font-size:20px;background:#495057;border-radius:50%}.attachment-list{position:absolute;bottom:51px;width:calc(100% + 30px);background:#fff;left:-15px;height:100px;display:none;box-shadow:0 -2px 3px -3px #00000036}.attachment-list.attached-file{display:block}.dashboard{margin-top:-5px;margin-bottom:-15px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{white-space:nowrap;color:#555}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{white-space:pre-wrap;text-align:justify;line-height:18px;padding-left:30px}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{position:absolute;left:20px;margin-top:3px}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{display:flex;border:0;text-align:left;margin:0;padding:0}.dashboard .chat .new-message i{color:#495057}.dashboard .chat .new-message .message-attachment{border:0}.dashboard .chat .new-message .button-send{display:inline-block;line-height:40px;position:relative}.dashboard .chat .new-message .button-send .p-button-label{text-align:center}.dashboard .chat .new-message .message-emotion{line-height:40px;display:inline-block;width:40px;height:100%;text-align:center}.dashboard .chat .new-message .message-emotion i{line-height:inherit;font-size:24px}.dashboard .chat .new-message .message-input{width:calc(100% - 155px)}.dashboard .chat ul li.message-from,.dashboard .chat ul li.message-own{padding:0}.dashboard .chat ul li.message-from>span{border-radius:2px 20px 20px 2px;background-color:#f0e3fd;border:0}.dashboard .chat ul li.message-from>.middle,.dashboard .chat ul li.message-from>.first{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{margin-left:45px!important;border-radius:2px 20px 20px}.dashboard .chat ul li.message-from>img{margin-top:5px;width:36px;border-radius:50%;position:absolute}.dashboard .chat ul li.message-own>span{border-radius:20px 2px 2px 20px;background-color:#def6f8;border:0;text-align:right}.dashboard .chat ul li.message-own>span.sending{background-color:#eee}.dashboard .chat ul li.message-own>span.last{border-radius:20px 2px 20px 20px}.dashboard .chat ul li.message-own .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-own>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:right;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:left;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li .attachment span.attachment-item a>i{padding-right:8px}.dashboard .chat ul li div.file p.attachment{display:inline-block;margin-bottom:5px}.dashboard .chat ul li.message-from{text-align:left}.dashboard .chat ul li.message-own{text-align:right}.dashboard .chat ul li>div.file.image{height:170px;width:220px;transition:width .15s linear;padding:15px;max-width:100%}.dashboard .chat ul li>div.file.image p.attachment{height:120px}.dashboard .chat ul li>div.file{padding:15px}.dashboard .chat ul li>div.file p,.dashboard .chat ul li>div.file span{display:inline-block;padding:0;margin:0}.visible{visibility:visible;opacity:1;transition:opacity .15s linear}.hidden{visibility:hidden;opacity:0;transition:visibility 0s .1s,opacity .1s linear}.visible2{visibility:visible;opacity:1;transition:opacity .35s linear}.hidden2{visibility:hidden;opacity:0;transition:visibility 0s .3s,opacity .3s linear}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{position:sticky;bottom:6px;text-align:right;padding-right:12px;min-height:40px}.dashboard .chat .scroll-to-bottom span{cursor:pointer;font-size:20px;color:#fff;background:#495057;box-shadow:0 0 10px #00000059;border:2px solid #fff;border-radius:50%;width:35px;height:35px;display:inline-block;line-height:35px;text-align:center;overflow:hidden}.dashboard .chat .group-info{position:sticky;top:0;background:#fff;margin:-10px;box-shadow:0 0 3px -1px #00000036;z-index:99;line-height:30px;padding:5px 10px}.dashboard .chat .pin{position:sticky;top:40px;z-index:98;background:#fff;margin-left:-10px;margin-bottom:10px;width:calc(100% + 20px);box-shadow:0 0 3px -1px #00000036}.dashboard .chat ul li.message-own.pin>span,.dashboard .chat ul li.message-from.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;font-size:11px;cursor:pointer}.dashboard .chat .pin .message-content i{display:block}.dashboard .chat li.message-from .message-content{padding-left:6px}.dashboard .chat li.message-from .message-content i{padding:5px}.dashboard .chat li.message-own .message-content i{position:absolute;right:-15px;padding:5px}.dashboard .chat .group-info .circleButton{float:right;margin-top:0;margin-bottom:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{outline:none;box-shadow:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml strong,.normalHtml b{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{width:40px;height:40px;margin-top:-6px;border:1px solid #fff;border-radius:50%}a.button>i{margin-right:5px}.dashboard .timeline{padding-top:20px}.ui-inputgroup .ui-inputtext{padding-right:0}.new-message .ui-inputtext{width:100%}.full-screen,.full-screen>.p-dialog{height:100%!important;top:0!important;width:100%!important;left:0!important;max-height:100%;min-width:100%!important;min-height:unset!important}#image-view-list.image-gallery-2{height:calc(100vh - 41px);width:100%;margin:-14px auto 0;background-color:#0006;touch-action:none}#image-view-list.image-gallery-2 .image-container{bottom:0;border:0;height:85%;margin:auto;background-color:transparent}#image-view-list.image-gallery-2 .image-container .iv-snap-view{top:auto;bottom:20px;left:calc(50% - 75px)}#image-view-list.image-gallery-2 .image-container .iv-image-view img{touch-action:auto}#image-view-list .inline-icon{margin-top:-41px}#image-view-list .footer-info,#image-view-list .material-icons.prev,#image-view-list .material-icons.next{display:none}#image-view-list .options-image-viewer{margin-right:37px;-webkit-user-select:none;user-select:none}.mobile-image-viewer-close{color:#fff;position:absolute;top:0;right:0;height:42px;width:37px;text-align:center;vertical-align:middle;line-height:42px;font-size:x-large;padding-right:7px;padding-top:2px;cursor:pointer}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{padding:8px 30px;text-align:right;width:100%;border-top:1px solid #e8e8e8;left:0;position:absolute;bottom:0;background:#fff;border-radius:0 0 5px 5px}.box-function button{margin-left:5px}.quick-note-button-holder{display:none;position:absolute;bottom:40px;right:50px;height:50px;width:50px;z-index:99}.quick-note-button{display:block;font-size:2em;color:#fff;outline:none;height:50px;width:50px;border-radius:50%;background:#ffc107;box-shadow:0 2px 5px #b9b9b9;line-height:50px;text-align:center;border:2px solid #fff}.quick-note-button:hover{color:#fff}.all-note-button{position:absolute;right:5px;top:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{top:5px;position:absolute;right:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{display:none;position:absolute;bottom:20px;left:20px;width:250px;z-index:98}.pinned-notes{display:block;outline:none;background:transparent;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{font-size:.8rem;box-shadow:1px 2px 3px #b98b06a1;padding:0;margin-bottom:10px;background-color:#fff1ac;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{padding-top:5px;width:25px;height:25px;text-align:center;position:absolute;right:-15px;top:-15px;background:#ffc003;box-shadow:1px 2px 3px #b98b06a1;border-radius:50%;cursor:pointer;color:#fff;border:1px solid #fff;z-index:1}.pinned-note-header-line{position:absolute;left:3px;width:13px;box-shadow:1px 1px 2px #0006;border:1px solid #fff;margin-bottom:.5rem;margin-top:.5rem;height:calc(100% - 1rem);max-height:20px}.pinned-note-header-right{cursor:pointer;float:right;margin-left:3px;width:32px}.pinned-note-header-time{font-size:.6rem}.pinned-note-header-button-unpin{opacity:.8;display:none;width:14px;height:14px;float:left;margin-right:2px}.pinned-note-header-button-complete{padding-top:2px;display:none}.pinned-note-body{float:right;width:100%;padding:.5rem .5rem .5rem 25px}.pinned-note-body:hover{background-color:#feeb82}.pinned-note-body:hover .pinned-note-header-time{display:none}.pinned-note-body:hover .pinned-note-header-button-unpin,.pinned-note-body:hover .pinned-note-header-button-complete{display:block}.pinned-note-line-title{display:block;font-weight:700;padding-bottom:6px;color:#333}.pinned-note-line{display:block}.view-port{position:absolute;display:none;height:0;width:0;background:transparent;z-index:999;box-shadow:0 0 0 9999px #00000096;border-radius:5px}.view-port-mask{position:absolute;display:block;height:100%;width:100%;top:0;left:0;background:transparent;z-index:9998}.tinymce-control{width:100%;border:1px solid #ccc;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;display:none}.input-tab-trap{opacity:0!important;filter:alpha(opacity=0)!important;width:0!important;overflow:hidden!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}video,video:focus,audio,audio:focus{outline:none}.iv-image-view img.iv-image{animation:fadein .5s;visibility:hidden!important}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-top:0;padding-bottom:0}.fc-ltr{padding-bottom:7px}.padding-bottom-5px{padding-bottom:5px}.no-margin{margin:0!important}.no-padding{padding:0}.no-padding-left{padding-left:0}.float-left{float:left}body .fc .fc-toolbar .fc-button{color:#fff;background-color:#007ad9;border:1px solid #007ad9;font-size:14px;transition:background-color .2s,box-shadow .2s;border-radius:3px}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;color:#fff;border-color:#116fbf}body .fc .fc-toolbar .fc-button:focus{outline:0 none;outline-offset:0;box-shadow:0 0 0 .2em #8dcdff}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}body .fc .fc-toolbar .fc-right .fc-button{border-radius:0}body .fc .fc-toolbar .fc-right .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.old-content,.fc-axis,.fc-timeGridDay-button,.fc-timeGridWeek-button,.fc-dayGridMonth-button{text-indent:-9999px;line-height:0}.new-content,.fc-axis:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.fc-dayGridMonth-button:after{text-indent:0;display:block;line-height:initial}.fc-dayGridMonth-button:after{content:\"Th\\e1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\\1ea7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\\e0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group p-button,.ui-fluid .button-group button{margin-right:.5em!important;width:auto;text-align:left}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-immediately,.base-status-urgent,.base-status-high,.base-status-medium,.base-status-low,.base-status-ended,.base-status-aborted,.base-status-completed,.base-status-rejected,.base-status-returned,.base-status-approved,.base-status-pending,.base-status-on-conducting,.base-status-on-going,.base-status-create-new{padding:3px;border-radius:.25em;color:#fff;font-size:.8em;text-align:center}.base-status-create-new{color:#666;background-color:#f2f2f2}.base-status-on-going,.base-status-on-conducting{background-color:#337ab7}.base-status-pending{background-color:#ffba01}.base-status-approved{background-color:#34a835}.base-status-returned{background-color:#ffba01}.base-status-rejected{background-color:#d9534f}.base-status-completed{background-color:#34a835}.base-status-aborted{background-color:#ffba01}.base-status-ended{background-color:#34a835}.base-status-low,.base-status-medium{color:#666;background-color:#f2f2f2}.base-status-high{background-color:#ffba01}.base-status-urgent,.base-status-immediately{background-color:#d9534f}.text-align-center{text-align:center}.font-weight-bold{font-weight:700}.landing-body .landing-menu li a:hover{border-bottom:none}.landing-body .landing-menu li:first-child{margin-left:8px}.crud-form .label-control p{margin:0;padding:0}.crud-form .tn-check-box-list .p-row{display:block;padding:.5em;width:100%}.crud-form tn-mask,.crud-form dropdown{width:100%}.crud-form .tn-dropdown{min-height:32px}.crud-form .tn-dropdown.free-text.horizontal{display:flex}.crud-form .tn-dropdown.free-text.horizontal>div{flex-grow:1;padding-left:.5em;padding-right:.5em}.crud-form .tn-dropdown.free-text.horizontal>div:first-child{padding-left:0}.crud-form .tn-dropdown.free-text.horizontal>div:last-child{padding-right:0}.crud-form .tn-dropdown.free-text.vertical input.ui-inputtext.input-free-text{margin-top:.5em}.crud-form.assessment .label-control{font-weight:700}.crud-form.assessment .label-control.haveIndex{position:relative;padding-left:20px;margin-bottom:5px;display:block}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";position:absolute;left:0;top:0}.crud-form.assessment .ViewMode{border-bottom:none}.crud-form.assessment .ViewMode .label-control{margin-bottom:0}body .ui-inputtext.min-width{padding:6px}.ps__rail-x,.ps__rail-y{z-index:2}.zIndex5 .ps__rail-x,.zIndex5 .ps__rail-y{z-index:5}.table-sticky table{border-collapse:separate;border-spacing:0}.table-sticky tr th,.table-sticky tr td{border:none!important;border-right:1px solid #eee!important;border-bottom:1px solid #eee!important}.table-sticky tr th:first-child,.table-sticky tr td:first-child{border-left:1px solid #eee!important}.table-sticky tr th:last-child,.table-sticky tr td:last-child{border-right:none!important}.table-sticky tr:first-child th{border-top:1px solid #eee!important}.table-sticky th{background:#eee}.table-sticky tbody td.disabled{background:#eee!important}.table-sticky tbody td.disabled:not(:last-child){border-right:1px solid white!important}.table-sticky.fix-height tr:first-child th{position:sticky;top:0;z-index:2}.container-flex{display:flex;align-items:center}.container-flex>div:first-child{flex:0 0 auto;margin-right:.5em}.container-flex>div:last-child{flex-grow:1}.container-control{display:flex}.container-control>span.label{flex:0 0 auto;padding-top:.5em;padding-right:.5em}.container-control>span.label+*{flex-grow:1;flex-shrink:1;position:relative}.container-control>span.label+* .tn-dropdown,.container-control>span.label+* .ui-autocomplete-multiple,.container-control>span.label+* .ui-inputgroup .ui-inputtext{width:100%}.container-control>span.label+* .validation-container{margin-top:3px}.container-control>span.label+* .validation-container .validate-item{white-space:unset}.container-control>span.label+*>div{position:absolute;left:0;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{display:flex;justify-content:center;align-items:center}@media print{.isPrinting>*{display:none}.isPrinting app-print-layout{display:block}}.layout-wrapper .topbar .topbar-left,.layout-wrapper .topbar .topbar-right{background:#397ac3}#searchResultPanel-holder{padding:0 .5em}.cus-dropdown{line-height:initial;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-weight:700;font-family:cursive}.layout-wrapper .topbar .topbar-right #menu-button i{font-size:20px;margin-top:4px}.layout-wrapper .layout-menu li a i.menuitem-toggle-icon{font-size:15px;margin-left:auto}.flex-container-main-content{display:flex;flex-direction:column}.flex-container-main-content>div:last-child{background-color:#f4f4f4;flex:1 1;display:flex;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{padding-top:.5em;overflow:hidden;position:absolute;left:0;top:0;width:100%;height:100%}.flex-container-main-content .block-with-button-search{display:flex;justify-content:flex-end}.flex-container-main-content .block-with-button-search>*{margin-left:.5em}.flex-container-main-content .block-with-button-search>input{margin-left:0;max-width:200px;width:100%;height:26px}.flex-container-main-content .block-with-button-search>dropdown{max-width:140px;width:100%}.flex-container-main-content .title-main-component{border-bottom:2px solid #1ca7ff}.clickable-table.clickable-table{cursor:pointer}.main-crud-container{height:calc(100vh - 76px)}.flex-container-fit-child{display:flex;flex-direction:column;height:100%;overflow:hidden}.flex-container-fit-child>div.fit-content{flex:1 1;position:relative}.flex-container-fit-child>div.fit-content>div{position:absolute;height:100%;width:100%;overflow:auto}.waiting-box{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:none}.waiting-box .overlay{background-color:red;background-color:#6d6d6d80;width:100%;height:100%}.waiting-box .content-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.waiting-box.show{display:block}.function-topbar>*{vertical-align:top}.function-topbar button{width:auto}.function-topbar p-fileUpload{margin-right:1em}.function-topbar .container-control{display:inline-flex;line-height:initial}.function-topbar .container-control dropdown{width:100%}*:focus{outline-color:#a6d5fa!important}address{font-style:normal}body .p-toast .p-toast-message{border-radius:0;border-width:0 0 0 4px!important}.status span,.__status span{font-size:.8rem}p-table.single-check .p-datatable .p-datatable-tbody>tr{cursor:pointer}p-table.single-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important;outline:2px solid #a6d5fa}p-table.single-check .p-datatable .p-datatable-tbody>tr td.sticky .fix-sticky.top{display:none}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-right-arrow-icon,.tn-animated-left-arrow-icon{height:32px;width:14px;position:relative;z-index:10}.tn-animated-right-arrow-icon{animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-right-arrow-icon:before,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-left-arrow-icon:after{content:\"\";position:absolute;background-color:#88b0dd;width:5px;height:20px;display:block}.tn-animated-right-arrow-icon:before{left:4px;top:0;transform:rotate(-35deg)}.tn-animated-right-arrow-icon:after{left:4px;top:14px;transform:rotate(35deg)}.tn-animated-left-arrow-icon:before{right:4px;top:0;transform:rotate(35deg)}.tn-animated-left-arrow-icon:after{right:4px;top:14px;transform:rotate(-35deg)}@keyframes arrowBounceToLeft{0%{transform:translate(-3px)}to{transform:translate(3px)}}@keyframes arrowBounceToRight{0%{transform:translate(3px)}to{transform:translate(-3px)}}.pass{color:#49c949;margin:5px;text-align:center}.not-pass{color:red;margin:5px;text-align:center}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i6.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "label", "icon"] }, { kind: "directive", type: i7.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "component", type: i8.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: i9.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: i9.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i9.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.InputText, selector: "[pInputText]" }, { kind: "component", type: i11.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "autoZIndex", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions", "showCloseIcon", "style", "styleClass", "appendTo", "ariaCloseLabel"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i12.TnCustomScrollbarComponent, selector: "tn-custom-scrollbar", inputs: ["style", "useDefaultScrollBar", "autoMode", "class", "config", "whiteBackGround", "showScrollHorizontal"], outputs: ["scrollY", "scrollUp", "scrollDown", "scrollLeft", "scrollRight", "scrollYReachEnd", "scrollYReachStart", "scrollXReachEnd", "scrollXReachStart"] }, { kind: "pipe", type: i13.SafeUrlPipe, name: "safeUrl" }] });
|
|
235
235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: ChatSendMessageBoxComponent, decorators: [{
|
|
236
236
|
type: Component,
|
|
237
237
|
args: [{ selector: 'chat-send-message-box', providers: [ComponentContextService], template: "<div class=\"dashboard\" (mouseup)=\"onMouseUp($event)\">\r\n <div class=\"chat\">\r\n <div class=\"new-message\">\r\n <div class=\"message-emotion\">\r\n <i class=\"far fa-smile\" style=\"color: gray;\" disabled=\"true\"></i>\r\n </div>\r\n <div class=\"message-attachment\" pTooltip=\"\u0110\u00EDnh k\u00E8m file\" tooltipPosition=\"top\" (click)=\"op.toggle($event)\">\r\n <i class=\"fas fa-paperclip\"></i>\r\n </div>\r\n <p-overlayPanel #op [dismissable]=\"true\" [appendTo]=\"'body'\" [styleClass]=\"'paging-advance-overlay'\"\r\n (mouseup)=\"onMouseUp($event)\">\r\n <ul class=\"paging-advance\">\r\n <li (click)=\"browseFileFromPersonal()\">T\u1EEB file c\u00E1 nh\u00E2n</li>\r\n <li (click)=\"browseFileFromComputer()\">T\u1EA3i l\u00EAn t\u1EEB m\u00E1y t\u00EDnh</li>\r\n </ul>\r\n </p-overlayPanel>\r\n <div class=\"message-input p-float-label\">\r\n <input #input pInputText\r\n id=\"message\"\r\n autocomplete=\"off\" autocorrect=\"off\"\r\n spellcheck=\"false\" class=\"ui-inputtext\"\r\n type=\"text\" placeholder=\"N\u1ED9i dung tin nh\u1EAFn\"\r\n [(ngModel)]=\"model.content\"\r\n (keyup.enter)=\"onSendMessage($event.target.value)\" (keydown.shift.tab)=\"cancelBlur($event)\"\r\n (keydown.tab)=\"cancelBlur($event)\" (paste)=\"handlePaste($event)\" (click)=\"clickInputText()\"/>\r\n </div>\r\n <div>\r\n <button pButton class=\"p-button-danger\" icon=\"fas fa-send\" type=\"button\" label=\"G\u1EEDi\"\r\n (click)=\"onSendMessage(model.content)\">\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"attachment-list\" [ngClass]=\"model.classHasAttachment\">\r\n <tn-custom-scrollbar #scrollbar [style]=\"{'height': '100px'}\">\r\n <div *ngFor=\"let item of model.attachments\" class=\"attachment-item\">\r\n <img *ngIf=\"item.type == 'image'\" [src]=\"item.url | safeUrl\"/>\r\n <span *ngIf=\"item.type == 'file'\">{{item.fileName}}</span>\r\n <i class=\"far fa-times-circle label-danger remove-file-attachment\"\r\n (click)=\"removeAttachment(item)\"></i>\r\n </div>\r\n </tn-custom-scrollbar>\r\n <!-- <div class=\"clearfix\"></div>-->\r\n </div>\r\n </div>\r\n</div>\r\n<p-fileUpload [ngStyle]=\"{'display': 'none'}\" #fileElement (onSelect)=\"onSelectFileFromComputer($event)\"\r\n multiple=\"multiple\" name=\"fileUpload\" [maxFileSize]=\"model.maxFileSize\" auto=\"false\">\r\n</p-fileUpload>\r\n\r\n<!-- <app-drive-file-dialog *ngIf=\"model.driveFileDialog.show\" [parentDataContext]=\"dataContext\"\r\n []=\"model.driveFileDialog\" #driveFileDialog>\r\n</app-drive-file-dialog> -->\r\n", styles: ["@charset \"UTF-8\";@import\"~@angular/material/prebuilt-themes/indigo-pink.css\";@import\"~jsoneditor/dist/jsoneditor.min.css\";.flex{display:flex}.flex .fit{flex:1 1}.flex.flex-column{flex-direction:column}.flex.flex-wrap{flex-wrap:wrap}.flex.center-v{align-items:center}.flex.center-h{justify-content:center}.flex.center-all{align-items:center;justify-content:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap;background-color:#fff}.tn-scroll-bar.bgWhite>div{background-color:#fff}.label-primary{padding:2px;border-radius:.25em;background-color:#1ab394;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-danger{padding:2px 5px;border-radius:.25em;background-color:#ed5565;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-warning{padding:2px;border-radius:.25em;background-color:#b8860b;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-secondary{padding:2px;border-radius:.25em;background-color:#a9a9a9;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.label-done{padding:2px;border-radius:.25em;background-color:#3b1ef7;color:#fff;font-size:12px;margin-right:3px;margin-left:3px;min-width:60px;display:inline-block}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{max-height:calc(100vh - 180px);min-height:80px;overflow-y:hidden;overflow-x:hidden;border:1px solid #eee;border-radius:5px}.has2ScrollZone2 .flexcolumn{max-height:calc(100vh - 180px)}.headerNoBorder>th{border:none!important;border-bottom:1px solid #eee!important}.cellNoBorder table tr td{border:0!important}.layout-wrapper .layout-main{padding:60px 0 0;overflow:hidden}div.circleButton{line-height:32px;border-radius:50%;width:32px;height:32px;text-align:center;position:relative;display:inline-block;transform:perspective(1px);overflow:hidden;margin-top:4px;margin-bottom:4px}div.circleButton>a{padding:0!important;line-height:32px}div.circleButton>a>i{width:24px!important}div.circleButton:before{content:\"\";position:absolute;top:0;left:0;bottom:0;right:0;background:#e6e6e6;z-index:-1;transform:scale(0);transition:all cubic-bezier(.4,.34,.01,.97) .3s;border-radius:50%}div.circleButton:hover:before{transform:scale(1)}.message-notice{text-align:center;background:#e0e0e0}.message-created-by{font-weight:400;font-size:.82em;color:#888;margin-top:5px;margin-bottom:3px;margin-left:45px}.message-created{font-size:.82em;color:#495057;margin-top:0;margin-bottom:0;display:inline-block}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-right:10px;padding-left:6px}.message-content{margin-top:3px;margin-bottom:6px;line-height:20px;position:relative;color:#000}.message-content i{display:none}.message-content:hover i{display:block}.message-content:hover{padding-right:20px!important}.chat-box-content{max-height:500px}.attachment-list .attachment-item{float:left;width:84px;height:84px;margin:8px;position:relative;overflow:hidden;background:#f1f1f1;border-radius:8px;text-align:center;border:1px solid #ccc;box-shadow:1px 2px 3px #0000000f;-webkit-user-select:none;user-select:none}.attachment-list .attachment-item img{width:100%;height:100%}.attachment-list .attachment-item span{position:absolute;top:25px;left:0;padding:5px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{height:120px;width:auto;margin-left:0;float:none}.message-attachment{cursor:pointer;position:relative;font-size:1.5em;margin:0 5px 0 0}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{position:absolute;right:5px;top:5px;cursor:pointer;color:#fff;font-size:20px;background:#495057;border-radius:50%}.attachment-list{position:absolute;bottom:51px;width:calc(100% + 30px);background:#fff;left:-15px;height:100px;display:none;box-shadow:0 -2px 3px -3px #00000036}.attachment-list.attached-file{display:block}.dashboard{margin-top:-5px;margin-bottom:-15px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{white-space:nowrap;color:#555}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{white-space:pre-wrap;text-align:justify;line-height:18px;padding-left:30px}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{position:absolute;left:20px;margin-top:3px}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{display:flex;border:0;text-align:left;margin:0;padding:0}.dashboard .chat .new-message i{color:#495057}.dashboard .chat .new-message .message-attachment{border:0}.dashboard .chat .new-message .button-send{display:inline-block;line-height:40px;position:relative}.dashboard .chat .new-message .button-send .p-button-label{text-align:center}.dashboard .chat .new-message .message-emotion{line-height:40px;display:inline-block;width:40px;height:100%;text-align:center}.dashboard .chat .new-message .message-emotion i{line-height:inherit;font-size:24px}.dashboard .chat .new-message .message-input{width:calc(100% - 155px)}.dashboard .chat ul li.message-from,.dashboard .chat ul li.message-own{padding:0}.dashboard .chat ul li.message-from>span{border-radius:2px 20px 20px 2px;background-color:#f0e3fd;border:0}.dashboard .chat ul li.message-from>.middle,.dashboard .chat ul li.message-from>.first{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{margin-left:45px!important;border-radius:2px 20px 20px}.dashboard .chat ul li.message-from>img{margin-top:5px;width:36px;border-radius:50%;position:absolute}.dashboard .chat ul li.message-own>span{border-radius:20px 2px 2px 20px;background-color:#def6f8;border:0;text-align:right}.dashboard .chat ul li.message-own>span.sending{background-color:#eee}.dashboard .chat ul li.message-own>span.last{border-radius:20px 2px 20px 20px}.dashboard .chat ul li.message-own .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-own>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:right;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-right:0;padding-left:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{display:inline-block;cursor:pointer;font-weight:700;color:#555}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{border-radius:6px;background:#f1f1f1;display:inline-block;margin:1px;text-align:left;border:1px solid #e4e4e4;overflow:hidden}.dashboard .chat ul li .attachment span.attachment-item a>i{padding-right:8px}.dashboard .chat ul li div.file p.attachment{display:inline-block;margin-bottom:5px}.dashboard .chat ul li.message-from{text-align:left}.dashboard .chat ul li.message-own{text-align:right}.dashboard .chat ul li>div.file.image{height:170px;width:220px;transition:width .15s linear;padding:15px;max-width:100%}.dashboard .chat ul li>div.file.image p.attachment{height:120px}.dashboard .chat ul li>div.file{padding:15px}.dashboard .chat ul li>div.file p,.dashboard .chat ul li>div.file span{display:inline-block;padding:0;margin:0}.visible{visibility:visible;opacity:1;transition:opacity .15s linear}.hidden{visibility:hidden;opacity:0;transition:visibility 0s .1s,opacity .1s linear}.visible2{visibility:visible;opacity:1;transition:opacity .35s linear}.hidden2{visibility:hidden;opacity:0;transition:visibility 0s .3s,opacity .3s linear}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{position:sticky;bottom:6px;text-align:right;padding-right:12px;min-height:40px}.dashboard .chat .scroll-to-bottom span{cursor:pointer;font-size:20px;color:#fff;background:#495057;box-shadow:0 0 10px #00000059;border:2px solid #fff;border-radius:50%;width:35px;height:35px;display:inline-block;line-height:35px;text-align:center;overflow:hidden}.dashboard .chat .group-info{position:sticky;top:0;background:#fff;margin:-10px;box-shadow:0 0 3px -1px #00000036;z-index:99;line-height:30px;padding:5px 10px}.dashboard .chat .pin{position:sticky;top:40px;z-index:98;background:#fff;margin-left:-10px;margin-bottom:10px;width:calc(100% + 20px);box-shadow:0 0 3px -1px #00000036}.dashboard .chat ul li.message-own.pin>span,.dashboard .chat ul li.message-from.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;font-size:11px;cursor:pointer}.dashboard .chat .pin .message-content i{display:block}.dashboard .chat li.message-from .message-content{padding-left:6px}.dashboard .chat li.message-from .message-content i{padding:5px}.dashboard .chat li.message-own .message-content i{position:absolute;right:-15px;padding:5px}.dashboard .chat .group-info .circleButton{float:right;margin-top:0;margin-bottom:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{outline:none;box-shadow:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml strong,.normalHtml b{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{width:40px;height:40px;margin-top:-6px;border:1px solid #fff;border-radius:50%}a.button>i{margin-right:5px}.dashboard .timeline{padding-top:20px}.ui-inputgroup .ui-inputtext{padding-right:0}.new-message .ui-inputtext{width:100%}.full-screen,.full-screen>.p-dialog{height:100%!important;top:0!important;width:100%!important;left:0!important;max-height:100%;min-width:100%!important;min-height:unset!important}#image-view-list.image-gallery-2{height:calc(100vh - 41px);width:100%;margin:-14px auto 0;background-color:#0006;touch-action:none}#image-view-list.image-gallery-2 .image-container{bottom:0;border:0;height:85%;margin:auto;background-color:transparent}#image-view-list.image-gallery-2 .image-container .iv-snap-view{top:auto;bottom:20px;left:calc(50% - 75px)}#image-view-list.image-gallery-2 .image-container .iv-image-view img{touch-action:auto}#image-view-list .inline-icon{margin-top:-41px}#image-view-list .footer-info,#image-view-list .material-icons.prev,#image-view-list .material-icons.next{display:none}#image-view-list .options-image-viewer{margin-right:37px;-webkit-user-select:none;user-select:none}.mobile-image-viewer-close{color:#fff;position:absolute;top:0;right:0;height:42px;width:37px;text-align:center;vertical-align:middle;line-height:42px;font-size:x-large;padding-right:7px;padding-top:2px;cursor:pointer}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{padding:8px 30px;text-align:right;width:100%;border-top:1px solid #e8e8e8;left:0;position:absolute;bottom:0;background:#fff;border-radius:0 0 5px 5px}.box-function button{margin-left:5px}.quick-note-button-holder{display:none;position:absolute;bottom:40px;right:50px;height:50px;width:50px;z-index:99}.quick-note-button{display:block;font-size:2em;color:#fff;outline:none;height:50px;width:50px;border-radius:50%;background:#ffc107;box-shadow:0 2px 5px #b9b9b9;line-height:50px;text-align:center;border:2px solid #fff}.quick-note-button:hover{color:#fff}.all-note-button{position:absolute;right:5px;top:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{top:5px;position:absolute;right:5px;display:block;font-size:1.5em;color:#fff;outline:none;height:40px;width:40px;border-radius:50%;background:#ffd24b;box-shadow:0 2px 5px #b9b9b9;line-height:40px;text-align:center;border:2px solid #fff;transition:right;transition-duration:.16s;transition-timing-function:ease-in;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{display:none;position:absolute;bottom:20px;left:20px;width:250px;z-index:98}.pinned-notes{display:block;outline:none;background:transparent;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{font-size:.8rem;box-shadow:1px 2px 3px #b98b06a1;padding:0;margin-bottom:10px;background-color:#fff1ac;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{padding-top:5px;width:25px;height:25px;text-align:center;position:absolute;right:-15px;top:-15px;background:#ffc003;box-shadow:1px 2px 3px #b98b06a1;border-radius:50%;cursor:pointer;color:#fff;border:1px solid #fff;z-index:1}.pinned-note-header-line{position:absolute;left:3px;width:13px;box-shadow:1px 1px 2px #0006;border:1px solid #fff;margin-bottom:.5rem;margin-top:.5rem;height:calc(100% - 1rem);max-height:20px}.pinned-note-header-right{cursor:pointer;float:right;margin-left:3px;width:32px}.pinned-note-header-time{font-size:.6rem}.pinned-note-header-button-unpin{opacity:.8;display:none;width:14px;height:14px;float:left;margin-right:2px}.pinned-note-header-button-complete{padding-top:2px;display:none}.pinned-note-body{float:right;width:100%;padding:.5rem .5rem .5rem 25px}.pinned-note-body:hover{background-color:#feeb82}.pinned-note-body:hover .pinned-note-header-time{display:none}.pinned-note-body:hover .pinned-note-header-button-unpin,.pinned-note-body:hover .pinned-note-header-button-complete{display:block}.pinned-note-line-title{display:block;font-weight:700;padding-bottom:6px;color:#333}.pinned-note-line{display:block}.view-port{position:absolute;display:none;height:0;width:0;background:transparent;z-index:999;box-shadow:0 0 0 9999px #00000096;border-radius:5px}.view-port-mask{position:absolute;display:block;height:100%;width:100%;top:0;left:0;background:transparent;z-index:9998}.tinymce-control{width:100%;border:1px solid #ccc;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;display:none}.input-tab-trap{opacity:0!important;filter:alpha(opacity=0)!important;width:0!important;overflow:hidden!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}video,video:focus,audio,audio:focus{outline:none}.iv-image-view img.iv-image{animation:fadein .5s;visibility:hidden!important}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-top:0;padding-bottom:0}.fc-ltr{padding-bottom:7px}.padding-bottom-5px{padding-bottom:5px}.no-margin{margin:0!important}.no-padding{padding:0}.no-padding-left{padding-left:0}.float-left{float:left}body .fc .fc-toolbar .fc-button{color:#fff;background-color:#007ad9;border:1px solid #007ad9;font-size:14px;transition:background-color .2s,box-shadow .2s;border-radius:3px}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;color:#fff;border-color:#116fbf}body .fc .fc-toolbar .fc-button:focus{outline:0 none;outline-offset:0;box-shadow:0 0 0 .2em #8dcdff}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}body .fc .fc-toolbar .fc-right .fc-button{border-radius:0}body .fc .fc-toolbar .fc-right .fc-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.old-content,.fc-axis,.fc-timeGridDay-button,.fc-timeGridWeek-button,.fc-dayGridMonth-button{text-indent:-9999px;line-height:0}.new-content,.fc-axis:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.fc-dayGridMonth-button:after{text-indent:0;display:block;line-height:initial}.fc-dayGridMonth-button:after{content:\"Th\\e1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\\1ea7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\\e0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group p-button,.ui-fluid .button-group button{margin-right:.5em!important;width:auto;text-align:left}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-immediately,.base-status-urgent,.base-status-high,.base-status-medium,.base-status-low,.base-status-ended,.base-status-aborted,.base-status-completed,.base-status-rejected,.base-status-returned,.base-status-approved,.base-status-pending,.base-status-on-conducting,.base-status-on-going,.base-status-create-new{padding:3px;border-radius:.25em;color:#fff;font-size:.8em;text-align:center}.base-status-create-new{color:#666;background-color:#f2f2f2}.base-status-on-going,.base-status-on-conducting{background-color:#337ab7}.base-status-pending{background-color:#ffba01}.base-status-approved{background-color:#34a835}.base-status-returned{background-color:#ffba01}.base-status-rejected{background-color:#d9534f}.base-status-completed{background-color:#34a835}.base-status-aborted{background-color:#ffba01}.base-status-ended{background-color:#34a835}.base-status-low,.base-status-medium{color:#666;background-color:#f2f2f2}.base-status-high{background-color:#ffba01}.base-status-urgent,.base-status-immediately{background-color:#d9534f}.text-align-center{text-align:center}.font-weight-bold{font-weight:700}.landing-body .landing-menu li a:hover{border-bottom:none}.landing-body .landing-menu li:first-child{margin-left:8px}.crud-form .label-control p{margin:0;padding:0}.crud-form .tn-check-box-list .p-row{display:block;padding:.5em;width:100%}.crud-form tn-mask,.crud-form dropdown{width:100%}.crud-form .tn-dropdown{min-height:32px}.crud-form .tn-dropdown.free-text.horizontal{display:flex}.crud-form .tn-dropdown.free-text.horizontal>div{flex-grow:1;padding-left:.5em;padding-right:.5em}.crud-form .tn-dropdown.free-text.horizontal>div:first-child{padding-left:0}.crud-form .tn-dropdown.free-text.horizontal>div:last-child{padding-right:0}.crud-form .tn-dropdown.free-text.vertical input.ui-inputtext.input-free-text{margin-top:.5em}.crud-form.assessment .label-control{font-weight:700}.crud-form.assessment .label-control.haveIndex{position:relative;padding-left:20px;margin-bottom:5px;display:block}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";position:absolute;left:0;top:0}.crud-form.assessment .ViewMode{border-bottom:none}.crud-form.assessment .ViewMode .label-control{margin-bottom:0}body .ui-inputtext.min-width{padding:6px}.ps__rail-x,.ps__rail-y{z-index:2}.zIndex5 .ps__rail-x,.zIndex5 .ps__rail-y{z-index:5}.table-sticky table{border-collapse:separate;border-spacing:0}.table-sticky tr th,.table-sticky tr td{border:none!important;border-right:1px solid #eee!important;border-bottom:1px solid #eee!important}.table-sticky tr th:first-child,.table-sticky tr td:first-child{border-left:1px solid #eee!important}.table-sticky tr th:last-child,.table-sticky tr td:last-child{border-right:none!important}.table-sticky tr:first-child th{border-top:1px solid #eee!important}.table-sticky th{background:#eee}.table-sticky tbody td.disabled{background:#eee!important}.table-sticky tbody td.disabled:not(:last-child){border-right:1px solid white!important}.table-sticky.fix-height tr:first-child th{position:sticky;top:0;z-index:2}.container-flex{display:flex;align-items:center}.container-flex>div:first-child{flex:0 0 auto;margin-right:.5em}.container-flex>div:last-child{flex-grow:1}.container-control{display:flex}.container-control>span.label{flex:0 0 auto;padding-top:.5em;padding-right:.5em}.container-control>span.label+*{flex-grow:1;flex-shrink:1;position:relative}.container-control>span.label+* .tn-dropdown,.container-control>span.label+* .ui-autocomplete-multiple,.container-control>span.label+* .ui-inputgroup .ui-inputtext{width:100%}.container-control>span.label+* .validation-container{margin-top:3px}.container-control>span.label+* .validation-container .validate-item{white-space:unset}.container-control>span.label+*>div{position:absolute;left:0;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{display:flex;justify-content:center;align-items:center}@media print{.isPrinting>*{display:none}.isPrinting app-print-layout{display:block}}.layout-wrapper .topbar .topbar-left,.layout-wrapper .topbar .topbar-right{background:#397ac3}#searchResultPanel-holder{padding:0 .5em}.cus-dropdown{line-height:initial;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-weight:700;font-family:cursive}.layout-wrapper .topbar .topbar-right #menu-button i{font-size:20px;margin-top:4px}.layout-wrapper .layout-menu li a i.menuitem-toggle-icon{font-size:15px;margin-left:auto}.flex-container-main-content{display:flex;flex-direction:column}.flex-container-main-content>div:last-child{background-color:#f4f4f4;flex:1 1;display:flex;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{padding-top:.5em;overflow:hidden;position:absolute;left:0;top:0;width:100%;height:100%}.flex-container-main-content .block-with-button-search{display:flex;justify-content:flex-end}.flex-container-main-content .block-with-button-search>*{margin-left:.5em}.flex-container-main-content .block-with-button-search>input{margin-left:0;max-width:200px;width:100%;height:26px}.flex-container-main-content .block-with-button-search>dropdown{max-width:140px;width:100%}.flex-container-main-content .title-main-component{border-bottom:2px solid #1ca7ff}.clickable-table.clickable-table{cursor:pointer}.main-crud-container{height:calc(100vh - 76px)}.flex-container-fit-child{display:flex;flex-direction:column;height:100%;overflow:hidden}.flex-container-fit-child>div.fit-content{flex:1 1;position:relative}.flex-container-fit-child>div.fit-content>div{position:absolute;height:100%;width:100%;overflow:auto}.waiting-box{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;display:none}.waiting-box .overlay{background-color:red;background-color:#6d6d6d80;width:100%;height:100%}.waiting-box .content-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.waiting-box.show{display:block}.function-topbar>*{vertical-align:top}.function-topbar button{width:auto}.function-topbar p-fileUpload{margin-right:1em}.function-topbar .container-control{display:inline-flex;line-height:initial}.function-topbar .container-control dropdown{width:100%}*:focus{outline-color:#a6d5fa!important}address{font-style:normal}body .p-toast .p-toast-message{border-radius:0;border-width:0 0 0 4px!important}.status span,.__status span{font-size:.8rem}p-table.single-check .p-datatable .p-datatable-tbody>tr{cursor:pointer}p-table.single-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important;outline:2px solid #a6d5fa}p-table.single-check .p-datatable .p-datatable-tbody>tr td.sticky .fix-sticky.top{display:none}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.p-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-right-arrow-icon,.tn-animated-left-arrow-icon{height:32px;width:14px;position:relative;z-index:10}.tn-animated-right-arrow-icon{animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-right-arrow-icon:before,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-left-arrow-icon:after{content:\"\";position:absolute;background-color:#88b0dd;width:5px;height:20px;display:block}.tn-animated-right-arrow-icon:before{left:4px;top:0;transform:rotate(-35deg)}.tn-animated-right-arrow-icon:after{left:4px;top:14px;transform:rotate(35deg)}.tn-animated-left-arrow-icon:before{right:4px;top:0;transform:rotate(35deg)}.tn-animated-left-arrow-icon:after{right:4px;top:14px;transform:rotate(-35deg)}@keyframes arrowBounceToLeft{0%{transform:translate(-3px)}to{transform:translate(3px)}}@keyframes arrowBounceToRight{0%{transform:translate(3px)}to{transform:translate(-3px)}}.pass{color:#49c949;margin:5px;text-align:center}.not-pass{color:red;margin:5px;text-align:center}\n"] }]
|
|
@@ -176,7 +176,7 @@ CheckBoxListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
|
|
|
176
176
|
useExisting: forwardRef(() => CheckBoxListComponent),
|
|
177
177
|
multi: true,
|
|
178
178
|
},
|
|
179
|
-
], ngImport: i0, template: "<div [class]=\"_styleClass\" [class.flex-end]=\"control.align == 'right'\" [class.flex-center]=\"control.align == 'center'\">\r\n <div [class]=\"classCheckBox\" *ngFor=\"let chk of dataSourceInternal\">\r\n <p-checkbox [disabled]=\"disabled || chk.disabled\" [label]=\"chk[control.displayField]\" [value]=\"chk[fieldValue]\"\r\n [pTooltip]=\"chk.tooltip\" tooltipPosition=\"top\" tooltipStyleClass=\"wrap\" [(ngModel)]=\"selectedValue\"\r\n (onChange)=\"change($event)\">\r\n </p-checkbox>\r\n </div>\r\n <div *ngIf=\"control.freeText\" [class]=\"classCheckBox\">\r\n <label>\r\n <input type=\"text\" placeholder=\"Ph\u01B0\u01A1ng \u00E1n kh\u00E1c\" class=\"ui-inputtext\" [(ngModel)]=\"valueTextBox\"\r\n (blur)=\"change($event)\" />\r\n </label>\r\n </div>\r\n</div>", styles: [".tn-check-box-list.p-grid{margin-bottom:-.5em}.p-col-horizontal{padding:.5em;position:relative}.tn-check-box-list{position:relative}.tn-check-box-list.flex-end{justify-content:flex-end}.tn-check-box-list.flex-center{justify-content:center}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "
|
|
179
|
+
], ngImport: i0, template: "<div [class]=\"_styleClass\" [class.flex-end]=\"control.align == 'right'\" [class.flex-center]=\"control.align == 'center'\">\r\n <div [class]=\"classCheckBox\" *ngFor=\"let chk of dataSourceInternal\">\r\n <p-checkbox [disabled]=\"disabled || chk.disabled\" [label]=\"chk[control.displayField]\" [value]=\"chk[fieldValue]\"\r\n [pTooltip]=\"chk.tooltip\" tooltipPosition=\"top\" tooltipStyleClass=\"wrap\" [(ngModel)]=\"selectedValue\"\r\n (onChange)=\"change($event)\">\r\n </p-checkbox>\r\n </div>\r\n <div *ngIf=\"control.freeText\" [class]=\"classCheckBox\">\r\n <label>\r\n <input type=\"text\" placeholder=\"Ph\u01B0\u01A1ng \u00E1n kh\u00E1c\" class=\"ui-inputtext\" [(ngModel)]=\"valueTextBox\"\r\n (blur)=\"change($event)\" />\r\n </label>\r\n </div>\r\n</div>", styles: [".tn-check-box-list.p-grid{margin-bottom:-.5em}.p-col-horizontal{padding:.5em;position:relative}.tn-check-box-list{position:relative}.tn-check-box-list.flex-end{justify-content:flex-end}.tn-check-box-list.flex-center{justify-content:center}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i6.Checkbox, selector: "p-checkbox", inputs: ["checkboxIcon", "disabled", "value", "name", "binary", "label", "ariaLabelledBy", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "readonly", "required"], outputs: ["onChange"] }] });
|
|
180
180
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CheckBoxListComponent, decorators: [{
|
|
181
181
|
type: Component,
|
|
182
182
|
args: [{ selector: 'check-box-list', providers: [
|
|
@@ -184,7 +184,7 @@ CoCauToChucPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0
|
|
|
184
184
|
useExisting: forwardRef(() => CoCauToChucPickerComponent),
|
|
185
185
|
multi: true
|
|
186
186
|
}
|
|
187
|
-
], viewQueries: [{ propertyName: "dropdown", first: true, predicate: Dropdown, descendants: true }, { propertyName: "multiSelect", first: true, predicate: MultiSelect, descendants: true }], ngImport: i0, template: "<div *ngIf=\"multiple\">\r\n <p-multiSelect [selectedItemsLabel]=\"'\u0110\u00E3 ch\u1ECDn {0} \u0111\u01A1n v\u1ECB'\" [defaultLabel]=\"'Ch\u1ECDn \u0111\u01A1n v\u1ECB'\" [filter]=\"filter\"\r\n [disabled]=\"isDisabled\" [options]=\"lstOrgData\" [disabled]=\"readonly\"\r\n [modifyOptionsWhenFilter]=\"modifyOptionWhenFilterMultiple\" [delayFilter]=\"delayFilter\"\r\n [(ngModel)]=\"selectedItem\" (onChange)=\"onChangeSelectedValue($event)\" [styleClass]=\" required ? 'rq' : ''\"\r\n [style]=\"{'width':'100%'}\" [emptyFilterMessage]=\"'Kh\u00F4ng t\u00ECm th\u1EA5y k\u1EBFt qu\u1EA3' | translate\" appendTo=\"body\">\r\n </p-multiSelect>\r\n</div>\r\n<!-- \u0110\u00E3 ch\u1ECDn {0} \u0111\u01A1n v\u1ECB -->\r\n<div *ngIf=\"!multiple\">\r\n <p-dropdown #dropdown [filter]=\"filter\" [style]=\"{'width': '100%'} \" [autoDisplayFirst]=\"autoDisplayFirst\"\r\n [disabled]=\"isDisabled\" [styleClass]=\" required ? 'rq' : ''\" [disabled]=\"readonly\" [ngStyle]=\"{'width':'100%'}\"\r\n [options]=\"lstOrgData\" [emptyFilterMessage]=\"'Kh\u00F4ng t\u00ECm th\u1EA5y k\u1EBFt qu\u1EA3' | translate\" appendTo=\"body\"\r\n [showClear]=\"true\" [modifyOptionsWhenFilter]=\"modifyOptionWhenFilter\" [delayFilter]=\"delayFilter\"\r\n [(ngModel)]=\"selectedItem\" (onChange)=\"onChangeSelectedSingleValue($event)\"></p-dropdown>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "
|
|
187
|
+
], viewQueries: [{ propertyName: "dropdown", first: true, predicate: Dropdown, descendants: true }, { propertyName: "multiSelect", first: true, predicate: MultiSelect, descendants: true }], ngImport: i0, template: "<div *ngIf=\"multiple\">\r\n <p-multiSelect [selectedItemsLabel]=\"'\u0110\u00E3 ch\u1ECDn {0} \u0111\u01A1n v\u1ECB'\" [defaultLabel]=\"'Ch\u1ECDn \u0111\u01A1n v\u1ECB'\" [filter]=\"filter\"\r\n [disabled]=\"isDisabled\" [options]=\"lstOrgData\" [disabled]=\"readonly\"\r\n [modifyOptionsWhenFilter]=\"modifyOptionWhenFilterMultiple\" [delayFilter]=\"delayFilter\"\r\n [(ngModel)]=\"selectedItem\" (onChange)=\"onChangeSelectedValue($event)\" [styleClass]=\" required ? 'rq' : ''\"\r\n [style]=\"{'width':'100%'}\" [emptyFilterMessage]=\"'Kh\u00F4ng t\u00ECm th\u1EA5y k\u1EBFt qu\u1EA3' | translate\" appendTo=\"body\">\r\n </p-multiSelect>\r\n</div>\r\n<!-- \u0110\u00E3 ch\u1ECDn {0} \u0111\u01A1n v\u1ECB -->\r\n<div *ngIf=\"!multiple\">\r\n <p-dropdown #dropdown [filter]=\"filter\" [style]=\"{'width': '100%'} \" [autoDisplayFirst]=\"autoDisplayFirst\"\r\n [disabled]=\"isDisabled\" [styleClass]=\" required ? 'rq' : ''\" [disabled]=\"readonly\" [ngStyle]=\"{'width':'100%'}\"\r\n [options]=\"lstOrgData\" [emptyFilterMessage]=\"'Kh\u00F4ng t\u00ECm th\u1EA5y k\u1EBFt qu\u1EA3' | translate\" appendTo=\"body\"\r\n [showClear]=\"true\" [modifyOptionsWhenFilter]=\"modifyOptionWhenFilter\" [delayFilter]=\"delayFilter\"\r\n [(ngModel)]=\"selectedItem\" (onChange)=\"onChangeSelectedSingleValue($event)\"></p-dropdown>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.Dropdown, selector: "p-dropdown", inputs: ["scrollHeight", "resetFilterOnHide", "dropdownIcon", "autoDisplayFirst", "emptyFilterMessage", "maxItemDisplay", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "autofocusFilter", "autofocusSelectedItem", "delayFilter", "disabled", "options", "filterValue", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "filterPlaceholder", "filterLocale", "inputId", "selectId", "dataKey", "filterBy", "autofocus", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "group", "showClear", "virtualScroll", "itemSize", "ariaFilterLabel", "ariaLabelledBy", "maxlength", "tooltipStyleClass", "modifyOptionsWhenFilter"], outputs: ["onChange", "onFocus", "onBlur", "onClick", "onShow", "onHide"] }, { kind: "component", type: i5.MultiSelect, selector: "p-multiSelect", inputs: ["filter", "displaySelectedLabel", "maxSelectedLabels", "maxItemDisplay", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "resetFilterOnHide", "dropdownIcon", "showHeader", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "autofocusFilter", "display", "delayFilter", "scrollHeight", "defaultLabel", "placeholder", "options", "filterValue", "disabled", "overlayVisible", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "readonly", "filterPlaceHolder", "filterLocale", "tabindex", "appendTo", "dataKey", "name", "ariaLabelledBy", "selectionLimit", "optionLabel", "optionValue", "optionDisabled", "filterBy", "virtualScroll", "itemSize", "ariaFilterLabel", "tooltipStyleClass", "modifyOptionsWhenFilter"], outputs: ["onChange", "onFocus", "onBlur", "onClick", "onPanelShow", "onPanelHide"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
|
|
188
188
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: CoCauToChucPickerComponent, decorators: [{
|
|
189
189
|
type: Component,
|
|
190
190
|
args: [{ selector: 'cocautochuc-picker', providers: [
|
|
@@ -397,7 +397,7 @@ export class AppTopBarV1Component extends ComponentBase {
|
|
|
397
397
|
}
|
|
398
398
|
}
|
|
399
399
|
AppTopBarV1Component.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: AppTopBarV1Component, deps: [{ token: i1.CustomRouterService }, { token: i2.Router }, { token: i3.CommonService }, { token: i4.AuthenService }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }, { token: i5.PermissionService }, { token: i6.EnvironmentService }, { token: i7.UserService }, { token: i8.NotifierService }, { token: i9.TranslateService }, { token: i10.CustomizeUiService }], target: i0.ɵɵFactoryTarget.Component });
|
|
400
|
-
AppTopBarV1Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: AppTopBarV1Component, selector: "app-topbar-v1", providers: [ComponentContextService], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "notify", first: true, predicate: ["notify"], descendants: true, static: true }, { propertyName: "messages", first: true, predicate: ["messages"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"topbar clearfix tn-l-top-bar\">\r\n <div class=\"topbar-left tn-l-top-bar-left\" [ngClass]=\"{'beta-version': !config.isProduction }\">\r\n <div class=\"tn-l-left-menu-toggle-block\">\r\n <a tabindex=\"1\" id=\"menu-button\" class=\"tn-l-left-menu-toggle\" href=\"#\"\r\n (click)=\"_commonService.onMenuButtonClick($event)\">\r\n <i class=\"pi pi-chevron-left\"></i>\r\n </a>\r\n </div>\r\n\r\n <div class=\"topbar-logo tn-l-logo-wrapper\">\r\n <a tabindex=\"2\" href=\"javascript:\" style=\"display: inline-block;\">\r\n <img class=\"topbar-logo tn-l-logo\" [src]=\"config.logo\" (click)=\"goToHome()\" /></a>\r\n </div>\r\n <div class=\"topbar-title tn-l-logo-title-block\">\r\n <div class=\"topbar-owner\">\r\n {{config.owner}}\r\n </div>\r\n <div class=\"topbar-description\">\r\n {{config.title}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"setting-default-container\">\r\n <ng-container *ngIf=\"showDefaultSetting && currentUser\">\r\n <a tabindex=\"3\" href=\"javascript:void(0)\" class=\"tn-l-m-default-setting pi pi-cog\"\r\n (click)=\"showDefaultSettingForm()\">\r\n </a>\r\n <h3 class=\"tn-l-default-detting\" (click)=\"showDefaultSettingForm()\">\r\n {{defaultSettingModel.data.text}} <i class=\"pi pi-pencil\" style=\"margin-left:10px\"></i></h3>\r\n </ng-container>\r\n </div>\r\n <div #notify class=\"notify-message\">\r\n <marquee (mouseover)=\"handleMouseOver($event)\" (mouseout)=\"handleMouseOut($event)\">{{message}}</marquee>\r\n </div>\r\n <div class=\"topbar-right tn-l-top-bar-right\" [ngClass]=\"{'beta-version': !config.isProduction}\"\r\n oncontextmenu=\"return false\">\r\n <div class=\"tn-l-top-bar-right-block-1\">\r\n <a tabindex=\"4\" class=\"topbar-menu-button\" id=\"topbar-menu-button\" href=\"#\"\r\n (click)=\"_commonService.onTopbarMenuButtonClick($event)\">\r\n <svg focusable=\"false\" class=\"tn-m-topbar-menu-toggle\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <span *ngIf=\"messages && messages.totalUnRead > 0\" class=\"topbar-badge animated rubberBand\"\r\n [ngClass]=\"{'topbar-badge-bounce': messages.bounceNoti}\">{{messages.totalUnRead}}</span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"tn-l-top-bar-right-block-2\">\r\n <ul class=\"topbar-items fadeInDown\" [ngClass]=\"{'topbar-items-visible': _commonService.topbarMenuActive}\">\r\n <li *ngIf=\"_commonService.profileMode==='top'||_commonService.isHorizontal()\" #profile\r\n class=\"profile-item tn-l-top-bar-menu-item\"\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === profile}\">\r\n\r\n <a href=\"#\" tabindex=\"10\" class=\"UserPane tn-l-top-bar-menu-item-inner\"\r\n (click)=\"_commonService.onTopbarItemClick($event,profile)\">\r\n <div class=\"profile-image-wrapper topbar-icon-left\">\r\n <img class=\"profile-image tn-l-profile-img\" [src-fallback]=\"defaultAvatar\"\r\n [src]=\"getCurrentUserAvatar()\" />\r\n </div>\r\n <div class=\"profile-info-wrapper\">\r\n <div class=\"topbar-item-name-wrapper\"\r\n [ngClass]=\"{'not-show-position': !getCurrentUserPosition()}\">\r\n <span class=\"topbar-item-name tn-l-user-name\">{{getCurrentUserFullName()}}</span>\r\n </div>\r\n <div class=\"topbar-item-role-wrapper tn-l-topbar-item-role-wrapper\"><span\r\n class=\"topbar-item-role\">{{getCurrentUserPosition()}}</span></div>\r\n </div>\r\n <i class=\"pi pi-user\" style=\"opacity: 0; position: absolute;\"></i>\r\n </a>\r\n\r\n <ul class=\"layout-menu fadeInDown tn-l-switcher\">\r\n <ng-container *ngIf=\"currentUser\">\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-inbox\"></i>\r\n <span>Th\u01B0 m\u1EE5c c\u00E1 nh\u00E2n</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-user-edit\"></i>\r\n <span>C\u1EADp nh\u1EADt th\u00F4ng tin</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"onTopbarLogout()\">\r\n <i class=\"pi pi-sign-out\"></i>\r\n <span>\u0110\u0103ng xu\u1EA5t</span>\r\n </a>\r\n </li>\r\n </ng-container>\r\n <li *ngIf=\"!currentUser\" role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"login()\">\r\n <i class=\"pi pi-sign-in\"></i>\r\n <span>\u0110\u0103ng nh\u1EADp</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowHelp()\" #help class=\"menu-help tn-l-top-bar-menu-item\" tn-app-help>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowNotification()\" id=\"li-notifications\"\r\n class=\"tn-l-top-bar-menu-item\" #messages\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === messages || _commonService.activeTopbarItem === 0}\"\r\n tn-app-notification (openMenu)=\"_commonService.onTopbarItemClick($event,messages)\"></li>\r\n <li id=\"li-app-switcher\" class=\"tn-l-top-bar-menu-item\" #modules\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === modules || _commonService.activeTopbarItem === 1}\">\r\n <a href=\"#\" tabindex=\"7\" class=\"tn-l-top-bar-menu-item-inner\" style=\"height: 30px;\"\r\n pTooltip=\"Danh s\u00E1ch ph\u00E2n h\u1EC7\" tooltipPosition=\"bottom\"\r\n (click)=\"_commonService.onTopbarItemClick($event,modules)\">\r\n <span class=\"topbar-icon-left tn-l-topbar-icon-left\">\r\n <svg focusable=\"false\" class=\"topbar-icon animated swing svgmodule\" role=\"img\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <!-- <i class=\"pi pi-microsoft\"></i> -->\r\n </span>\r\n <span class=\"topbar-item-name\">{{ 'Danh s\u00E1ch ph\u00E2n h\u1EC7' | translate}}</span>\r\n </a>\r\n <ul class=\"app-switcher layout-menu fadeInDown\">\r\n <tn-custom-scrollbar #scrollbar class=\"app-switcher-holder\">\r\n <li role=\"menuitem\" class=\"wrapper-appswitch\">\r\n <ng-container *ngFor=\"let item of appSwitcherItems; let ind = index;\">\r\n <a class=\"switcher-item tn-l-switcher-item\" href=\"javascript:\"\r\n (click)=\"switchApp(item, true)\">\r\n <span class=\"tn-l-switcher-item-inner\">\r\n <i class=\"{{item.icon}} app-switcher-item-icon tn-l-switcher-item-icon\"></i>\r\n <div class=\"tn-l-switcher-item-label\">\r\n {{ item.title | translate}}\r\n </div>\r\n </span>\r\n </a>\r\n </ng-container>\r\n </li>\r\n </tn-custom-scrollbar>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<tn-dialog *ngIf=\"defaultSettingModel.showEditForm\" [header]=\"defaultSettingModel.header | translate\"\r\n [popupSize]=\"defaultSettingModel.popupSize\" (onHide)=\"defaultSettingModel.showEditForm = false\">\r\n <default-data-settings #formBase (onHide)=\"defaultSettingModel.showEditForm = false;\"></default-data-settings>\r\n</tn-dialog>", styles: [".topBarSearchButton:disabled{opacity:1;background-color:#eee!important;border:1px solid #c8c8c8!important;border-right:none!important;color:#c1c1c1!important}::ng-deep app-topbar a{outline:none}input:disabled::placeholder{color:#b1b1b1}.UserPane.UserPane{display:flex}.profile-image-wrapper{order:1}.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name{margin-top:0;float:none}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{display:inline-flex;flex-direction:column;justify-content:center;order:0;text-align:right;float:none}.tn-l-logo{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.tn-l-default-detting{color:#fff;cursor:pointer;margin:0}.tn-l-left-menu-toggle-block{align-self:stretch;display:flex;align-items:center;box-shadow:0 0 5px #00000060}.tn-l-left-menu-toggle{color:#fff;padding:8px;transition:transform .25s ease-in-out}::ng-deep .layout-menu-static-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-left:0;margin-right:30px}.topbar-logo.topbar-logo.topbar-logo{float:none}.tn-l-logo.tn-l-logo.tn-l-logo.tn-l-logo{width:auto;height:40px;margin:0}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{margin:0;font-size:0;width:auto;height:auto;padding-left:8px;padding-right:8px}.tn-l-top-bar{display:flex}.topbar-owner,.topbar-description{white-space:nowrap}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:15px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:11px;text-transform:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{float:none;width:auto;display:flex}.tn-l-top-bar-left{align-items:center}.tn-m-topbar-menu-toggle{width:30px;height:28px;margin:auto;display:block}.tn-m-topbar-menu-toggle g{stroke:#fff}.tn-m-topbar-menu-toggle path{fill:#fff}.tn-l-m-default-setting{display:none}.setting-default-container{display:flex;align-items:center;justify-content:center;margin-left:30px}.notify-message{flex:1 1;overflow:hidden;margin-left:30px;display:flex;align-items:center}.notify-message>marquee{white-space:nowrap;color:#ff0;font-size:500}.search-item{margin-right:10px}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{background:#fff}.tn-l-switcher-item-label{text-shadow:none;color:#52abff;text-align:center}.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon{font-size:38px;margin:5px auto;text-shadow:none;color:#52abff}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{padding:8px}.tn-l-switcher.tn-l-switcher{margin-bottom:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset;margin-top:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+0){border-left:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1){border-right:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2){border:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a span{line-height:1.2}::ng-deep .layout-wrapper app-topbar-v1 .topbar .topbar-left{box-shadow:none}::ng-deep .layout-wrapper app-topbar-v1 .wrapper-appswitch{text-align:center;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}@media (max-width: 1024px){::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset}}@media (min-width: 1025px){.tn-l-top-bar-right{display:flex;justify-content:space-between;align-items:center}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding:0 15px}.topbar-items.topbar-items.topbar-items{margin:0;display:flex;justify-content:flex-start;flex-direction:row-reverse;align-items:center}.topbar-items.topbar-items.topbar-items,.topbar-items.topbar-items.topbar-items>li{float:none}::ng-deep .topbar .topbar-items>li>a{margin-top:0}::ng-deep .topbar .topbar-items>li>a>span>i{color:#fff;font-size:24px}.topbar .topbar-items>li>a.UserPane{height:auto;line-height:inherit;top:0}a.UserPane .profile-image.profile-image.profile-image.profile-image{margin-top:0}}@media (min-width: 1025px) and (max-width: 1400px){.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-right:19px}.search-item{margin-right:0}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding-left:15px}.topbar-items>li.profile-item{margin-left:14px}}@media (max-width: 1024px){.tn-l-m-default-setting{display:flex;align-items:center;justify-content:center;height:36px;font-size:28px;width:36px;color:#fff}.tn-l-default-detting{display:none}::ng-deep .layout-menu-static-mobile-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{text-align:left}.topbar .topbar-right #topbar-menu-button{display:flex;align-items:center;width:36px;justify-content:center}.tn-l-top-bar-right-block-1{display:flex}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{padding-left:5px;padding-right:5px}.tn-l-top-bar-left,.tn-l-logo-title-block,.topbar-owner,.topbar-description{overflow:hidden}.topbar-owner,.topbar-description{text-overflow:ellipsis}.tn-l-top-bar-menu-item:empty{display:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{padding-left:0;padding-right:0}.topbar-title.topbar-title.topbar-title.topbar-title{margin:0}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:14px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:10px}.tn-l-top-bar-right{flex:1;position:relative}.topbar-menu-button span.topbar-badge{right:-4px}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{display:flex;padding:0 .5em;align-items:center;justify-content:flex-end}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right #topbar-menu-button{position:relative;margin-left:.5em;top:0;right:0}.app-switcher.layout-menu.layout-menu.layout-menu.layout-menu{width:270px}.profile-image-wrapper{order:0}.tn-l-user-name{width:220px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep app-topbar .tn-l-top-bar-menu-item .topbar-icon-left{display:flex;justify-content:center;align-items:center}.tn-l-topbar-item-role-wrapper{display:none}}\n"], dependencies: [{ kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i12.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "fitContent", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i13.ImgFallbackDirective, selector: "[src-fallback]", inputs: ["src-fallback"], outputs: ["loaded"] }, { kind: "component", type: i14.DefaultDataSettingsComponent, selector: "default-data-settings", inputs: ["settingKey"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i15.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: i16.TnCustomScrollbarComponent, selector: "tn-custom-scrollbar", inputs: ["style", "useDefaultScrollBar", "autoMode", "class", "config", "whiteBackGround", "showScrollHorizontal"], outputs: ["scrollY", "scrollUp", "scrollDown", "scrollLeft", "scrollRight", "scrollYReachEnd", "scrollYReachStart", "scrollXReachEnd", "scrollXReachStart"] }, { kind: "component", type: i17.TnAppHelpComponent, selector: "li[tn-app-help]" }, { kind: "component", type: i18.TnAppNotificationComponent, selector: "li[tn-app-notification]", outputs: ["openMenu"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
|
|
400
|
+
AppTopBarV1Component.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.0", type: AppTopBarV1Component, selector: "app-topbar-v1", providers: [ComponentContextService], viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }, { propertyName: "notify", first: true, predicate: ["notify"], descendants: true, static: true }, { propertyName: "messages", first: true, predicate: ["messages"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"topbar clearfix tn-l-top-bar\">\r\n <div class=\"topbar-left tn-l-top-bar-left\" [ngClass]=\"{'beta-version': !config.isProduction }\">\r\n <div class=\"tn-l-left-menu-toggle-block\">\r\n <a tabindex=\"1\" id=\"menu-button\" class=\"tn-l-left-menu-toggle\" href=\"#\"\r\n (click)=\"_commonService.onMenuButtonClick($event)\">\r\n <i class=\"pi pi-chevron-left\"></i>\r\n </a>\r\n </div>\r\n\r\n <div class=\"topbar-logo tn-l-logo-wrapper\">\r\n <a tabindex=\"2\" href=\"javascript:\" style=\"display: inline-block;\">\r\n <img class=\"topbar-logo tn-l-logo\" [src]=\"config.logo\" (click)=\"goToHome()\" /></a>\r\n </div>\r\n <div class=\"topbar-title tn-l-logo-title-block\">\r\n <div class=\"topbar-owner\">\r\n {{config.owner}}\r\n </div>\r\n <div class=\"topbar-description\">\r\n {{config.title}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"setting-default-container\">\r\n <ng-container *ngIf=\"showDefaultSetting && currentUser\">\r\n <a tabindex=\"3\" href=\"javascript:void(0)\" class=\"tn-l-m-default-setting pi pi-cog\"\r\n (click)=\"showDefaultSettingForm()\">\r\n </a>\r\n <h3 class=\"tn-l-default-detting\" (click)=\"showDefaultSettingForm()\">\r\n {{defaultSettingModel.data.text}} <i class=\"pi pi-pencil\" style=\"margin-left:10px\"></i></h3>\r\n </ng-container>\r\n </div>\r\n <div #notify class=\"notify-message\">\r\n <marquee (mouseover)=\"handleMouseOver($event)\" (mouseout)=\"handleMouseOut($event)\">{{message}}</marquee>\r\n </div>\r\n <div class=\"topbar-right tn-l-top-bar-right\" [ngClass]=\"{'beta-version': !config.isProduction}\"\r\n oncontextmenu=\"return false\">\r\n <div class=\"tn-l-top-bar-right-block-1\">\r\n <a tabindex=\"4\" class=\"topbar-menu-button\" id=\"topbar-menu-button\" href=\"#\"\r\n (click)=\"_commonService.onTopbarMenuButtonClick($event)\">\r\n <svg focusable=\"false\" class=\"tn-m-topbar-menu-toggle\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <span *ngIf=\"messages && messages.totalUnRead > 0\" class=\"topbar-badge animated rubberBand\"\r\n [ngClass]=\"{'topbar-badge-bounce': messages.bounceNoti}\">{{messages.totalUnRead}}</span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"tn-l-top-bar-right-block-2\">\r\n <ul class=\"topbar-items fadeInDown\" [ngClass]=\"{'topbar-items-visible': _commonService.topbarMenuActive}\">\r\n <li *ngIf=\"_commonService.profileMode==='top'||_commonService.isHorizontal()\" #profile\r\n class=\"profile-item tn-l-top-bar-menu-item\"\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === profile}\">\r\n\r\n <a href=\"#\" tabindex=\"10\" class=\"UserPane tn-l-top-bar-menu-item-inner\"\r\n (click)=\"_commonService.onTopbarItemClick($event,profile)\">\r\n <div class=\"profile-image-wrapper topbar-icon-left\">\r\n <img class=\"profile-image tn-l-profile-img\" [src-fallback]=\"defaultAvatar\"\r\n [src]=\"getCurrentUserAvatar()\" />\r\n </div>\r\n <div class=\"profile-info-wrapper\">\r\n <div class=\"topbar-item-name-wrapper\"\r\n [ngClass]=\"{'not-show-position': !getCurrentUserPosition()}\">\r\n <span class=\"topbar-item-name tn-l-user-name\">{{getCurrentUserFullName()}}</span>\r\n </div>\r\n <div class=\"topbar-item-role-wrapper tn-l-topbar-item-role-wrapper\"><span\r\n class=\"topbar-item-role\">{{getCurrentUserPosition()}}</span></div>\r\n </div>\r\n <i class=\"pi pi-user\" style=\"opacity: 0; position: absolute;\"></i>\r\n </a>\r\n\r\n <ul class=\"layout-menu fadeInDown tn-l-switcher\">\r\n <ng-container *ngIf=\"currentUser\">\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-inbox\"></i>\r\n <span>Th\u01B0 m\u1EE5c c\u00E1 nh\u00E2n</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-user-edit\"></i>\r\n <span>C\u1EADp nh\u1EADt th\u00F4ng tin</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"onTopbarLogout()\">\r\n <i class=\"pi pi-sign-out\"></i>\r\n <span>\u0110\u0103ng xu\u1EA5t</span>\r\n </a>\r\n </li>\r\n </ng-container>\r\n <li *ngIf=\"!currentUser\" role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"login()\">\r\n <i class=\"pi pi-sign-in\"></i>\r\n <span>\u0110\u0103ng nh\u1EADp</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowHelp()\" #help class=\"menu-help tn-l-top-bar-menu-item\" tn-app-help>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowNotification()\" id=\"li-notifications\"\r\n class=\"tn-l-top-bar-menu-item\" #messages\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === messages || _commonService.activeTopbarItem === 0}\"\r\n tn-app-notification (openMenu)=\"_commonService.onTopbarItemClick($event,messages)\"></li>\r\n <li id=\"li-app-switcher\" class=\"tn-l-top-bar-menu-item\" #modules\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === modules || _commonService.activeTopbarItem === 1}\">\r\n <a href=\"#\" tabindex=\"7\" class=\"tn-l-top-bar-menu-item-inner\" style=\"height: 30px;\"\r\n pTooltip=\"Danh s\u00E1ch ph\u00E2n h\u1EC7\" tooltipPosition=\"bottom\"\r\n (click)=\"_commonService.onTopbarItemClick($event,modules)\">\r\n <span class=\"topbar-icon-left tn-l-topbar-icon-left\">\r\n <svg focusable=\"false\" class=\"topbar-icon animated swing svgmodule\" role=\"img\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <!-- <i class=\"pi pi-microsoft\"></i> -->\r\n </span>\r\n <span class=\"topbar-item-name\">{{ 'Danh s\u00E1ch ph\u00E2n h\u1EC7' | translate}}</span>\r\n </a>\r\n <ul class=\"app-switcher layout-menu fadeInDown\">\r\n <tn-custom-scrollbar #scrollbar class=\"app-switcher-holder\">\r\n <li role=\"menuitem\" class=\"wrapper-appswitch\">\r\n <ng-container *ngFor=\"let item of appSwitcherItems; let ind = index;\">\r\n <a class=\"switcher-item tn-l-switcher-item\" href=\"javascript:\"\r\n (click)=\"switchApp(item, true)\">\r\n <span class=\"tn-l-switcher-item-inner\">\r\n <i class=\"{{item.icon}} app-switcher-item-icon tn-l-switcher-item-icon\"></i>\r\n <div class=\"tn-l-switcher-item-label\">\r\n {{ item.title | translate}}\r\n </div>\r\n </span>\r\n </a>\r\n </ng-container>\r\n </li>\r\n </tn-custom-scrollbar>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<tn-dialog *ngIf=\"defaultSettingModel.showEditForm\" [header]=\"defaultSettingModel.header | translate\"\r\n [popupSize]=\"defaultSettingModel.popupSize\" (onHide)=\"defaultSettingModel.showEditForm = false\">\r\n <default-data-settings #formBase (onHide)=\"defaultSettingModel.showEditForm = false;\"></default-data-settings>\r\n</tn-dialog>", styles: [".topBarSearchButton:disabled{opacity:1;background-color:#eee!important;border:1px solid #c8c8c8!important;border-right:none!important;color:#c1c1c1!important}::ng-deep app-topbar a{outline:none}input:disabled::placeholder{color:#b1b1b1}.UserPane.UserPane{display:flex}.profile-image-wrapper{order:1}.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name{margin-top:0;float:none}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{display:inline-flex;flex-direction:column;justify-content:center;order:0;text-align:right;float:none}.tn-l-logo{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.tn-l-default-detting{color:#fff;cursor:pointer;margin:0}.tn-l-left-menu-toggle-block{align-self:stretch;display:flex;align-items:center;box-shadow:0 0 5px #00000060}.tn-l-left-menu-toggle{color:#fff;padding:8px;transition:transform .25s ease-in-out}::ng-deep .layout-menu-static-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-left:0;margin-right:30px}.topbar-logo.topbar-logo.topbar-logo{float:none}.tn-l-logo.tn-l-logo.tn-l-logo.tn-l-logo{width:auto;height:40px;margin:0}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{margin:0;font-size:0;width:auto;height:auto;padding-left:8px;padding-right:8px}.tn-l-top-bar{display:flex}.topbar-owner,.topbar-description{white-space:nowrap}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:15px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:11px;text-transform:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{float:none;width:auto;display:flex}.tn-l-top-bar-left{align-items:center}.tn-m-topbar-menu-toggle{width:30px;height:28px;margin:auto;display:block}.tn-m-topbar-menu-toggle g{stroke:#fff}.tn-m-topbar-menu-toggle path{fill:#fff}.tn-l-m-default-setting{display:none}.setting-default-container{display:flex;align-items:center;justify-content:center;margin-left:30px}.notify-message{flex:1 1;overflow:hidden;margin-left:30px;display:flex;align-items:center}.notify-message>marquee{white-space:nowrap;color:#ff0;font-size:500}.search-item{margin-right:10px}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{background:#fff}.tn-l-switcher-item-label{text-shadow:none;color:#52abff;text-align:center}.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon{font-size:38px;margin:5px auto;text-shadow:none;color:#52abff}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{padding:8px}.tn-l-switcher.tn-l-switcher{margin-bottom:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset;margin-top:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+0){border-left:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1){border-right:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2){border:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a span{line-height:1.2}::ng-deep .layout-wrapper app-topbar-v1 .topbar .topbar-left{box-shadow:none}::ng-deep .layout-wrapper app-topbar-v1 .wrapper-appswitch{text-align:center;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}@media (max-width: 1024px){::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset}}@media (min-width: 1025px){.tn-l-top-bar-right{display:flex;justify-content:space-between;align-items:center}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding:0 15px}.topbar-items.topbar-items.topbar-items{margin:0;display:flex;justify-content:flex-start;flex-direction:row-reverse;align-items:center}.topbar-items.topbar-items.topbar-items,.topbar-items.topbar-items.topbar-items>li{float:none}::ng-deep .topbar .topbar-items>li>a{margin-top:0}::ng-deep .topbar .topbar-items>li>a>span>i{color:#fff;font-size:24px}.topbar .topbar-items>li>a.UserPane{height:auto;line-height:inherit;top:0}a.UserPane .profile-image.profile-image.profile-image.profile-image{margin-top:0}}@media (min-width: 1025px) and (max-width: 1400px){.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-right:19px}.search-item{margin-right:0}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding-left:15px}.topbar-items>li.profile-item{margin-left:14px}}@media (max-width: 1024px){.tn-l-m-default-setting{display:flex;align-items:center;justify-content:center;height:36px;font-size:28px;width:36px;color:#fff}.tn-l-default-detting{display:none}::ng-deep .layout-menu-static-mobile-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{text-align:left}.topbar .topbar-right #topbar-menu-button{display:flex;align-items:center;width:36px;justify-content:center}.tn-l-top-bar-right-block-1{display:flex}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{padding-left:5px;padding-right:5px}.tn-l-top-bar-left,.tn-l-logo-title-block,.topbar-owner,.topbar-description{overflow:hidden}.topbar-owner,.topbar-description{text-overflow:ellipsis}.tn-l-top-bar-menu-item:empty{display:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{padding-left:0;padding-right:0}.topbar-title.topbar-title.topbar-title.topbar-title{margin:0}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:14px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:10px}.tn-l-top-bar-right{flex:1;position:relative}.topbar-menu-button span.topbar-badge{right:-4px}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{display:flex;padding:0 .5em;align-items:center;justify-content:flex-end}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right #topbar-menu-button{position:relative;margin-left:.5em;top:0;right:0}.app-switcher.layout-menu.layout-menu.layout-menu.layout-menu{width:270px}.profile-image-wrapper{order:0}.tn-l-user-name{width:220px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep app-topbar .tn-l-top-bar-menu-item .topbar-icon-left{display:flex;justify-content:center;align-items:center}.tn-l-topbar-item-role-wrapper{display:none}}\n"], dependencies: [{ kind: "directive", type: i11.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i11.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i11.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i12.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "tooltipZIndex", "escape", "tooltipDisabled", "pTooltip", "positionStyle", "tooltipStyleClass", "showDelay", "hideDelay", "life"] }, { kind: "directive", type: i13.ImgFallbackDirective, selector: "[src-fallback]", inputs: ["src-fallback"], outputs: ["loaded"] }, { kind: "component", type: i14.DefaultDataSettingsComponent, selector: "default-data-settings", inputs: ["settingKey"], outputs: ["onShow", "onHide"] }, { kind: "component", type: i15.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: i16.TnCustomScrollbarComponent, selector: "tn-custom-scrollbar", inputs: ["style", "useDefaultScrollBar", "autoMode", "class", "config", "whiteBackGround", "showScrollHorizontal"], outputs: ["scrollY", "scrollUp", "scrollDown", "scrollLeft", "scrollRight", "scrollYReachEnd", "scrollYReachStart", "scrollXReachEnd", "scrollXReachStart"] }, { kind: "component", type: i17.TnAppHelpComponent, selector: "li[tn-app-help]" }, { kind: "component", type: i18.TnAppNotificationComponent, selector: "li[tn-app-notification]", outputs: ["openMenu"] }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
|
|
401
401
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.0", ngImport: i0, type: AppTopBarV1Component, decorators: [{
|
|
402
402
|
type: Component,
|
|
403
403
|
args: [{ selector: 'app-topbar-v1', providers: [ComponentContextService], template: "<div class=\"topbar clearfix tn-l-top-bar\">\r\n <div class=\"topbar-left tn-l-top-bar-left\" [ngClass]=\"{'beta-version': !config.isProduction }\">\r\n <div class=\"tn-l-left-menu-toggle-block\">\r\n <a tabindex=\"1\" id=\"menu-button\" class=\"tn-l-left-menu-toggle\" href=\"#\"\r\n (click)=\"_commonService.onMenuButtonClick($event)\">\r\n <i class=\"pi pi-chevron-left\"></i>\r\n </a>\r\n </div>\r\n\r\n <div class=\"topbar-logo tn-l-logo-wrapper\">\r\n <a tabindex=\"2\" href=\"javascript:\" style=\"display: inline-block;\">\r\n <img class=\"topbar-logo tn-l-logo\" [src]=\"config.logo\" (click)=\"goToHome()\" /></a>\r\n </div>\r\n <div class=\"topbar-title tn-l-logo-title-block\">\r\n <div class=\"topbar-owner\">\r\n {{config.owner}}\r\n </div>\r\n <div class=\"topbar-description\">\r\n {{config.title}}\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"setting-default-container\">\r\n <ng-container *ngIf=\"showDefaultSetting && currentUser\">\r\n <a tabindex=\"3\" href=\"javascript:void(0)\" class=\"tn-l-m-default-setting pi pi-cog\"\r\n (click)=\"showDefaultSettingForm()\">\r\n </a>\r\n <h3 class=\"tn-l-default-detting\" (click)=\"showDefaultSettingForm()\">\r\n {{defaultSettingModel.data.text}} <i class=\"pi pi-pencil\" style=\"margin-left:10px\"></i></h3>\r\n </ng-container>\r\n </div>\r\n <div #notify class=\"notify-message\">\r\n <marquee (mouseover)=\"handleMouseOver($event)\" (mouseout)=\"handleMouseOut($event)\">{{message}}</marquee>\r\n </div>\r\n <div class=\"topbar-right tn-l-top-bar-right\" [ngClass]=\"{'beta-version': !config.isProduction}\"\r\n oncontextmenu=\"return false\">\r\n <div class=\"tn-l-top-bar-right-block-1\">\r\n <a tabindex=\"4\" class=\"topbar-menu-button\" id=\"topbar-menu-button\" href=\"#\"\r\n (click)=\"_commonService.onTopbarMenuButtonClick($event)\">\r\n <svg focusable=\"false\" class=\"tn-m-topbar-menu-toggle\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\"\r\n viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <span *ngIf=\"messages && messages.totalUnRead > 0\" class=\"topbar-badge animated rubberBand\"\r\n [ngClass]=\"{'topbar-badge-bounce': messages.bounceNoti}\">{{messages.totalUnRead}}</span>\r\n </a>\r\n </div>\r\n\r\n <div class=\"tn-l-top-bar-right-block-2\">\r\n <ul class=\"topbar-items fadeInDown\" [ngClass]=\"{'topbar-items-visible': _commonService.topbarMenuActive}\">\r\n <li *ngIf=\"_commonService.profileMode==='top'||_commonService.isHorizontal()\" #profile\r\n class=\"profile-item tn-l-top-bar-menu-item\"\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === profile}\">\r\n\r\n <a href=\"#\" tabindex=\"10\" class=\"UserPane tn-l-top-bar-menu-item-inner\"\r\n (click)=\"_commonService.onTopbarItemClick($event,profile)\">\r\n <div class=\"profile-image-wrapper topbar-icon-left\">\r\n <img class=\"profile-image tn-l-profile-img\" [src-fallback]=\"defaultAvatar\"\r\n [src]=\"getCurrentUserAvatar()\" />\r\n </div>\r\n <div class=\"profile-info-wrapper\">\r\n <div class=\"topbar-item-name-wrapper\"\r\n [ngClass]=\"{'not-show-position': !getCurrentUserPosition()}\">\r\n <span class=\"topbar-item-name tn-l-user-name\">{{getCurrentUserFullName()}}</span>\r\n </div>\r\n <div class=\"topbar-item-role-wrapper tn-l-topbar-item-role-wrapper\"><span\r\n class=\"topbar-item-role\">{{getCurrentUserPosition()}}</span></div>\r\n </div>\r\n <i class=\"pi pi-user\" style=\"opacity: 0; position: absolute;\"></i>\r\n </a>\r\n\r\n <ul class=\"layout-menu fadeInDown tn-l-switcher\">\r\n <ng-container *ngIf=\"currentUser\">\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-inbox\"></i>\r\n <span>Th\u01B0 m\u1EE5c c\u00E1 nh\u00E2n</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"#\" (click)=\"onEditInfo($event)\">\r\n <i class=\"pi pi-user-edit\"></i>\r\n <span>C\u1EADp nh\u1EADt th\u00F4ng tin</span>\r\n </a>\r\n </li>\r\n <li role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"onTopbarLogout()\">\r\n <i class=\"pi pi-sign-out\"></i>\r\n <span>\u0110\u0103ng xu\u1EA5t</span>\r\n </a>\r\n </li>\r\n </ng-container>\r\n <li *ngIf=\"!currentUser\" role=\"menuitem\">\r\n <a href=\"javascript:;\" (click)=\"login()\">\r\n <i class=\"pi pi-sign-in\"></i>\r\n <span>\u0110\u0103ng nh\u1EADp</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowHelp()\" #help class=\"menu-help tn-l-top-bar-menu-item\" tn-app-help>\r\n </li>\r\n <li *ngIf=\"_customizeUiService.isShowNotification()\" id=\"li-notifications\"\r\n class=\"tn-l-top-bar-menu-item\" #messages\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === messages || _commonService.activeTopbarItem === 0}\"\r\n tn-app-notification (openMenu)=\"_commonService.onTopbarItemClick($event,messages)\"></li>\r\n <li id=\"li-app-switcher\" class=\"tn-l-top-bar-menu-item\" #modules\r\n [ngClass]=\"{'active-top-menu':_commonService.activeTopbarItem === modules || _commonService.activeTopbarItem === 1}\">\r\n <a href=\"#\" tabindex=\"7\" class=\"tn-l-top-bar-menu-item-inner\" style=\"height: 30px;\"\r\n pTooltip=\"Danh s\u00E1ch ph\u00E2n h\u1EC7\" tooltipPosition=\"bottom\"\r\n (click)=\"_commonService.onTopbarItemClick($event,modules)\">\r\n <span class=\"topbar-icon-left tn-l-topbar-icon-left\">\r\n <svg focusable=\"false\" class=\"topbar-icon animated swing svgmodule\" role=\"img\"\r\n xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\">\r\n <path fill=\"currentColor\"\r\n d=\"M0 224h192V32H0v192zm256-192v192h192V32H256zM0 480h192V288H0v192zm256-192v192h192V288H256z\">\r\n </path>\r\n </svg>\r\n <!-- <i class=\"pi pi-microsoft\"></i> -->\r\n </span>\r\n <span class=\"topbar-item-name\">{{ 'Danh s\u00E1ch ph\u00E2n h\u1EC7' | translate}}</span>\r\n </a>\r\n <ul class=\"app-switcher layout-menu fadeInDown\">\r\n <tn-custom-scrollbar #scrollbar class=\"app-switcher-holder\">\r\n <li role=\"menuitem\" class=\"wrapper-appswitch\">\r\n <ng-container *ngFor=\"let item of appSwitcherItems; let ind = index;\">\r\n <a class=\"switcher-item tn-l-switcher-item\" href=\"javascript:\"\r\n (click)=\"switchApp(item, true)\">\r\n <span class=\"tn-l-switcher-item-inner\">\r\n <i class=\"{{item.icon}} app-switcher-item-icon tn-l-switcher-item-icon\"></i>\r\n <div class=\"tn-l-switcher-item-label\">\r\n {{ item.title | translate}}\r\n </div>\r\n </span>\r\n </a>\r\n </ng-container>\r\n </li>\r\n </tn-custom-scrollbar>\r\n </ul>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<tn-dialog *ngIf=\"defaultSettingModel.showEditForm\" [header]=\"defaultSettingModel.header | translate\"\r\n [popupSize]=\"defaultSettingModel.popupSize\" (onHide)=\"defaultSettingModel.showEditForm = false\">\r\n <default-data-settings #formBase (onHide)=\"defaultSettingModel.showEditForm = false;\"></default-data-settings>\r\n</tn-dialog>", styles: [".topBarSearchButton:disabled{opacity:1;background-color:#eee!important;border:1px solid #c8c8c8!important;border-right:none!important;color:#c1c1c1!important}::ng-deep app-topbar a{outline:none}input:disabled::placeholder{color:#b1b1b1}.UserPane.UserPane{display:flex}.profile-image-wrapper{order:1}.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name.tn-l-user-name{margin-top:0;float:none}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{display:inline-flex;flex-direction:column;justify-content:center;order:0;text-align:right;float:none}.tn-l-logo{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.tn-l-default-detting{color:#fff;cursor:pointer;margin:0}.tn-l-left-menu-toggle-block{align-self:stretch;display:flex;align-items:center;box-shadow:0 0 5px #00000060}.tn-l-left-menu-toggle{color:#fff;padding:8px;transition:transform .25s ease-in-out}::ng-deep .layout-menu-static-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-left:0;margin-right:30px}.topbar-logo.topbar-logo.topbar-logo{float:none}.tn-l-logo.tn-l-logo.tn-l-logo.tn-l-logo{width:auto;height:40px;margin:0}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{margin:0;font-size:0;width:auto;height:auto;padding-left:8px;padding-right:8px}.tn-l-top-bar{display:flex}.topbar-owner,.topbar-description{white-space:nowrap}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:15px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:11px;text-transform:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{float:none;width:auto;display:flex}.tn-l-top-bar-left{align-items:center}.tn-m-topbar-menu-toggle{width:30px;height:28px;margin:auto;display:block}.tn-m-topbar-menu-toggle g{stroke:#fff}.tn-m-topbar-menu-toggle path{fill:#fff}.tn-l-m-default-setting{display:none}.setting-default-container{display:flex;align-items:center;justify-content:center;margin-left:30px}.notify-message{flex:1 1;overflow:hidden;margin-left:30px;display:flex;align-items:center}.notify-message>marquee{white-space:nowrap;color:#ff0;font-size:500}.search-item{margin-right:10px}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{background:#fff}.tn-l-switcher-item-label{text-shadow:none;color:#52abff;text-align:center}.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon.tn-l-switcher-item-icon{font-size:38px;margin:5px auto;text-shadow:none;color:#52abff}.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item.tn-l-switcher-item{padding:8px}.tn-l-switcher.tn-l-switcher{margin-bottom:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset;margin-top:0}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+0){border-left:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1){border-right:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2){border:none}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+1):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item:nth-child(3n+2):last-child{width:unset}::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a span{line-height:1.2}::ng-deep .layout-wrapper app-topbar-v1 .topbar .topbar-left{box-shadow:none}::ng-deep .layout-wrapper app-topbar-v1 .wrapper-appswitch{text-align:center;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}@media (max-width: 1024px){::ng-deep .layout-wrapper app-topbar-v1 .layout-menu li a.switcher-item{width:unset}}@media (min-width: 1025px){.tn-l-top-bar-right{display:flex;justify-content:space-between;align-items:center}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding:0 15px}.topbar-items.topbar-items.topbar-items{margin:0;display:flex;justify-content:flex-start;flex-direction:row-reverse;align-items:center}.topbar-items.topbar-items.topbar-items,.topbar-items.topbar-items.topbar-items>li{float:none}::ng-deep .topbar .topbar-items>li>a{margin-top:0}::ng-deep .topbar .topbar-items>li>a>span>i{color:#fff;font-size:24px}.topbar .topbar-items>li>a.UserPane{height:auto;line-height:inherit;top:0}a.UserPane .profile-image.profile-image.profile-image.profile-image{margin-top:0}}@media (min-width: 1025px) and (max-width: 1400px){.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block.tn-l-logo-title-block{margin-right:19px}.search-item{margin-right:0}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{padding-left:15px}.topbar-items>li.profile-item{margin-left:14px}}@media (max-width: 1024px){.tn-l-m-default-setting{display:flex;align-items:center;justify-content:center;height:36px;font-size:28px;width:36px;color:#fff}.tn-l-default-detting{display:none}::ng-deep .layout-menu-static-mobile-inactive app-topbar .tn-l-left-menu-toggle{transform:rotate(180deg)}.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper.profile-info-wrapper{text-align:left}.topbar .topbar-right #topbar-menu-button{display:flex;align-items:center;width:36px;justify-content:center}.tn-l-top-bar-right-block-1{display:flex}.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper.tn-l-logo-wrapper{padding-left:5px;padding-right:5px}.tn-l-top-bar-left,.tn-l-logo-title-block,.topbar-owner,.topbar-description{overflow:hidden}.topbar-owner,.topbar-description{text-overflow:ellipsis}.tn-l-top-bar-menu-item:empty{display:none}.tn-l-top-bar-left.tn-l-top-bar-left.tn-l-top-bar-left{padding-left:0;padding-right:0}.topbar-title.topbar-title.topbar-title.topbar-title{margin:0}.topbar-owner.topbar-owner.topbar-owner.topbar-owner.topbar-owner{font-size:14px}.topbar-description.topbar-description.topbar-description.topbar-description.topbar-description{font-size:10px}.tn-l-top-bar-right{flex:1;position:relative}.topbar-menu-button span.topbar-badge{right:-4px}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right{display:flex;padding:0 .5em;align-items:center;justify-content:flex-end}.tn-l-top-bar-right.tn-l-top-bar-right.tn-l-top-bar-right #topbar-menu-button{position:relative;margin-left:.5em;top:0;right:0}.app-switcher.layout-menu.layout-menu.layout-menu.layout-menu{width:270px}.profile-image-wrapper{order:0}.tn-l-user-name{width:220px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}::ng-deep app-topbar .tn-l-top-bar-menu-item .topbar-icon-left{display:flex;justify-content:center;align-items:center}.tn-l-topbar-item-role-wrapper{display:none}}\n"] }]
|